diff --git a/content/about.md b/content/about.md index abd7701..705ccc5 100644 --- a/content/about.md +++ b/content/about.md @@ -5,15 +5,12 @@ date: 2020-07-16T21:42:33-07:00 ## The Site -This is a static site generated using [Hugo](https://gohugo.io/). There's a -public repo for this site -[here](https://github.com/alejandro-angulo/alejandr0angul0.dev). Nothing fancy -going on. I'm planning on using this site as a sort of personal documentation. -Hopefully what I write here will be useful to whoever stumbles upon it. +This is a static site generated using [Hugo](https://gohugo.io/). There's a public repo for this site +[here](https://github.com/alejandro-angulo/alejandr0angul0.dev). Nothing fancy going on. I'm planning on using this site as a sort +of personal documentation. Hopefully what I write here will be useful to whoever stumbles upon it. -For you vim fans, this site supports scrolling vertically with vim bindings (as -long as you allow this site to run javascript). As of now the following are -supported: +For you vim fans, this site supports scrolling vertically with vim bindings (as long as you allow this site to run javascript). As +of now the following are supported: - `j` (scrolls down) - `k` (scrolls up) @@ -22,10 +19,9 @@ supported: ## Me -I'm Alejandro Angulo, a code monkey living in the Los Angeles area. When I'm -not ~~introducting bugs~~ writing beautiful, performant code I like [working on -random personal projects](https://github.com/alejandro-angulo/qmk_firmware/), -going to the gym, and hanging out with my wife and our chihuahua. +I'm Alejandro Angulo, a code monkey living in the Los Angeles area. When I'm not ~~introducting bugs~~ writing beautiful, +performant code I like [working on random personal projects](https://github.com/alejandro-angulo/qmk_firmware/), going to the gym, +and hanging out with my girlfiend and my chihuahua. ## Contact diff --git a/content/posts/now-with-more-nix.md b/content/posts/now-with-more-nix.md deleted file mode 100644 index e86ba6c..0000000 --- a/content/posts/now-with-more-nix.md +++ /dev/null @@ -1,324 +0,0 @@ -+++ -title = "Now With More Nix" -date = "2023-08-27T17:25:57-07:00" -author = "alejandro" -authorTwitter = "" #do not include @ -cover = "" -tags = ["nix flake", "cachix", "devenv", "meta"] -keywords = ["nix"] -showFullContent = false -+++ - -It's been about a year since my last post into the void. Since [my last -post](/posts/dotfiles) I've completely overhauled how my computers are -configured. I now have [a nix -flake](https://github.com/alejandro-angulo/dotfiles) to manage my personal -machines. I'm going all in on nix and wanted to update the deployment process -for this site to use nix flakes as well. - -## Managing Development Environments with devenv and nix flakes - -It's been a while since I touched anything on this site and I didn't have any -of the right packages installed to work on this. I could have installed -programs like [hugo](https://gohugo.io/) system-wide. But, since I have been -tinkering with nix, I wanted to use [a flake to manage all the -things](https://github.com/alejandro-angulo/alejandr0angul0.dev/blob/b8174db2150f3ac9925f8450bc75264678cf06c9/flake.nix) -needed for development (including writing posts). - -Here's what the devenv configuration looked like at the time I was writing this -post. - -```nix - devShell = devenv.lib.mkShell { - inherit inputs pkgs; - modules = [ - ({pkgs, ...}: { - languages.javascript = { - enable = true; - npm.install.enable = true; - corepack.enable = true; - }; - - packages = with pkgs; [ - actionlint - alejandra - hugo - html-proofer - awscli2 - ]; - - pre-commit = { - hooks = { - actionlint.enable = true; - alejandra.enable = true; - eslint.enable = true; - markdownlint = { - enable = true; - excludes = ["node_modules"]; - }; - prettier = { - enable = true; - excludes = ["flake.lock"]; - }; - }; - - settings.markdownlint.config = { - MD013.code_blocks = false; - }; - }; - - enterShell = '' - export PATH=./node_modules/.bin:$PATH - ''; - }) - ]; - }; -``` - -This completely configures my development environment! It has all the packages -I want and sets up some pre-commit hooks for me in a single file. I don't need -to manage a `.pre-commit-config.yaml` and an `.mdlrc` file separately (these -files configure [pre-commit](https://pre-commit.com/) and -[markdownlint](https://github.com/markdownlint/markdownlint) respectively). The -best part is that I can easily get this development environment set up on any -machine (assuming I have [nix set up with flakes -support](https://nixos.wiki/wiki/Flakes#Enable_flakes) of course). - -My `flake.nix` can accomplish what would traditionally be done with -[make](https://www.gnu.org/software/make/) and a `Makefile`. This section -handles building the site - -```nix - packages.alejandr0angul0-dot-dev = pkgs.stdenv.mkDerivation { - name = "alejandr0angul0-dot-dev"; - src = self; - - buildPhase = '' - ${pkgs.hugo}/bin/hugo --minify - ''; - - doCheck = true; - checkPhase = '' - env LOCALE_ARCHIVE=${utf8Locale}/lib/locale/locale-archive LC_ALL=en_US.UTF-8 \ - ${pkgs.html-proofer}/bin/htmlproofer public \ - --allow-hash-href \ - --ignore-empty-alt \ - --disable-external \ - --no-enforce-https - ''; - - installPhase = '' - cp -r public "$out" - ''; - }; -``` - -This snippet defines how to build a -[derivation](https://nixos.org/manual/nix/stable/language/derivations.html) -that describes the site. It took me a while to make sense of all of this but -basically there are a bunch of [build -phases](https://nixos.org/manual/nixpkgs/stable/#sec-stdenv-phases). I only -needed three phases (build, check, and install). Nothing super special is going -on here. - -I tell `hugo` to build a minified version of the site - -```nix - buildPhase = '' - ${pkgs.hugo}/bin/hugo --minify - ''; -``` - -I enabled an optional check phase which tests the results of the build phase. -Here I run [htmlproofer](https://github.com/gjtorikian/html-proofer) to do some -quick sanity checks (like making sure I don't have broken internal links). - -I did run into a small issue with this. `htmlproofer` was reading file contents -as if it were [US-ASCII](https://en.wikipedia.org/wiki/ASCII) but I have some -unicode characters in my source. The `env` below configures the -[locale](https://wiki.archlinux.org/title/Locale) to be -[UTF-8](https://en.wikipedia.org/wiki/UTF-8). - -```nix - doCheck = true; - checkPhase = '' - env LOCALE_ARCHIVE=${utf8Locale}/lib/locale/locale-archive LC_ALL=en_US.UTF-8 \ - ${pkgs.html-proofer}/bin/htmlproofer public \ - --allow-hash-href \ - --ignore-empty-alt \ - --disable-external \ - --no-enforce-https - ''; -``` - -The results of the build process should live in the `$out` directory. I just -need to move what `hugo` generated (it defaults to creating a `public/` folder) -into `$out`. - -```nix - installPhase = '' - cp -r public "$out" - ''; -``` - -## Updating CI/CD - -This site is deployed to an S3 bucket just like before switching over to using -nix. However, I don't need to use docker containers anymore and can use nix -fully. Here's the [github actions -configuration](https://github.com/alejandro-angulo/alejandr0angul0.dev/blob/97a655bc0c3e18f8c8921b90f14f87f5a07ae837/.github/workflows/ci.yml) -at the time of writing. - -```yaml -name: "CI" - -on: - pull_request: - push: - -jobs: - lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: cachix/install-nix-action@v22 - - uses: cachix/cachix-action@v12 - with: - name: devenv - - uses: cachix/cachix-action@v12 - with: - name: alejandr0angul0-dev - authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" - - name: Run pre-commit hooks - run: | - git fetch origin - nix develop --accept-flake-config --impure --command bash -c \ - "pre-commit run --from-ref origin/main --to-ref $GITHUB_SHA" - build: - needs: [lint] - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - uses: cachix/install-nix-action@v22 - - uses: cachix/cachix-action@v12 - with: - name: devenv - - uses: cachix/cachix-action@v12 - with: - name: alejandr0angul0-dev - authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" - - run: nix build --accept-flake-config -L - # Convoluted upload below is a workaround for #92 - # See: - # - https://github.com/actions/upload-artifact/issues/92 - # - https://github.com/actions/upload-artifact/issues/92#issuecomment-1080347032 - - run: echo "UPLOAD_PATH=$(readlink -f result)" >> "$GITHUB_ENV" - - uses: actions/upload-artifact@v3 - with: - name: built-site - path: ${{ env.UPLOAD_PATH }} - - deploy: - needs: [build] - runs-on: ubuntu-latest - if: github.ref == 'refs/heads/main' - env: - PROD_DEPLOY_CONFIG_PATH: config/production/deployment.toml - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }} - HUGO_ENV: production - steps: - - uses: actions/checkout@v3 - - uses: cachix/install-nix-action@v22 - - uses: cachix/cachix-action@v12 - with: - name: devenv - - uses: cachix/cachix-action@v12 - with: - name: alejandr0angul0-dev - authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" - - uses: actions/download-artifact@v3 - with: - name: built-site - path: public/ - - name: Deploy - run: | - sed 's~{{S3URL}}~${{ secrets.S3URL }}~g' "${PROD_DEPLOY_CONFIG_PATH}.sample" > "${PROD_DEPLOY_CONFIG_PATH}" - sed -i 's~{{CLOUDFRONTDISTRIBUTIONID}}~${{ secrets.CLOUDFRONTDISTRIBUTIONID }}~g' "${PROD_DEPLOY_CONFIG_PATH}" - nix develop --accept-flake-config --impure --command bash \ - -c 'hugo deploy --invalidateCDN' -``` - -[cachix](https://www.cachix.org) is a nix binary cache hosting service ran by -[Domen Kožar](https://github.com/domenkozar). (Cachix also happens to be the -entity behind devenv.) They've also provided some github actions to make that -allow me to cache the results of my nix commands to help speed up CI/CD -run times. I'm taking advantage of the -[install-nix-action](https://github.com/cachix/install-nix-action) (installs -nix on the ubuntu runners I'm using) and -[cachix-action](https://github.com/cachix/cachix-action) (gives me access to -the binaries hosted in cachix caches -- the site has its own cache) actions. - -I only have three steps: lint -> build -> deploy. The lint step runs all the -pre-commit hooks I defined in my flake.nix file. I initially ran into errors -telling me that there was no `main` branch so I had to fetch origin and make -sure to explicitly reference the branch's remote (e.g. `origin/main`) . - -```yaml -- name: Run pre-commit hooks - run: | - git fetch origin - nix develop --accept-flake-config --impure --command bash -c \ - "pre-commit run --from-ref origin/main --to-ref $GITHUB_SHA" -``` - -Notice I didn't need to explicitly install `pre-commit`. That happens -automagically when I run `nix develop`. - -Once those checks are ready it's time to make sure the site can be built -successfully. I ran into another snafu with [a bug in github's -`upload-artifacts` -action](https://github.com/actions/upload-artifact/issues/92); luckily -[`exFalso` shared a -workaround](https://github.com/actions/upload-artifact/issues/92#issuecomment-1080347032). - -```yaml -- run: nix build --accept-flake-config -L -# Convoluted upload below is a workaround for #92 -# See: -# - https://github.com/actions/upload-artifact/issues/92 -# - https://github.com/actions/upload-artifact/issues/92#issuecomment-1080347032 -- run: echo "UPLOAD_PATH=$(readlink -f result)" >> "$GITHUB_ENV" -- uses: actions/upload-artifact@v3 - with: - name: built-site - path: ${{ env.UPLOAD_PATH }} -``` - -Building the site (running `hugo`, `htmlproofer`, and whatever else I decide to -add to my build process) is done with a single call to `nix build`. The output -lives in a `result/` directory which I upload as [a build -artifact](https://docs.github.com/en/actions/using-workflows/storing-workflow-data-as-artifacts) -so it can be deployed later (if the commit being checked is on the `main` -branch). - -The deploy step configures some secrets and uses hugo's provided deploy subcommand. - -```yaml -- uses: actions/download-artifact@v3 - with: - name: built-site - path: public/ -- name: Deploy - run: | - sed 's~{{S3URL}}~${{ secrets.S3URL }}~g' "${PROD_DEPLOY_CONFIG_PATH}.sample" > "${PROD_DEPLOY_CONFIG_PATH}" - sed -i 's~{{CLOUDFRONTDISTRIBUTIONID}}~${{ secrets.CLOUDFRONTDISTRIBUTIONID }}~g' "${PROD_DEPLOY_CONFIG_PATH}" - nix develop --accept-flake-config --impure --command bash \ - -c 'hugo deploy --invalidateCDN' -``` - -## "...cool I guess?" - -So yeah, I have exactly the same site now. Nothing changes from a reader's -perspective but this scratched my tinkering itch. diff --git a/flake.lock b/flake.lock index b69243c..1a3bf73 100644 --- a/flake.lock +++ b/flake.lock @@ -1,158 +1,22 @@ { "nodes": { - "cachix": { - "inputs": { - "devenv": "devenv_2", - "flake-compat": [ - "devenv", - "flake-compat" - ], - "git-hooks": [ - "devenv", - "pre-commit-hooks" - ], - "nixpkgs": [ - "devenv", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1726520618, - "narHash": "sha256-jOsaBmJ/EtX5t/vbylCdS7pWYcKGmWOKg4QKUzKr6dA=", - "owner": "cachix", - "repo": "cachix", - "rev": "695525f9086542dfb09fde0871dbf4174abbf634", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "cachix", - "type": "github" - } - }, - "cachix_2": { - "inputs": { - "devenv": "devenv_3", - "flake-compat": [ - "devenv", - "cachix", - "devenv", - "flake-compat" - ], - "nixpkgs": [ - "devenv", - "cachix", - "devenv", - "nixpkgs" - ], - "pre-commit-hooks": [ - "devenv", - "cachix", - "devenv", - "pre-commit-hooks" - ] - }, - "locked": { - "lastModified": 1712055811, - "narHash": "sha256-7FcfMm5A/f02yyzuavJe06zLa9hcMHsagE28ADcmQvk=", - "owner": "cachix", - "repo": "cachix", - "rev": "02e38da89851ec7fec3356a5c04bc8349cae0e30", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "cachix", - "type": "github" - } - }, "devenv": { "inputs": { - "cachix": "cachix", - "flake-compat": "flake-compat_2", - "nix": "nix_3", - "nixpkgs": "nixpkgs_3", - "pre-commit-hooks": "pre-commit-hooks_2" - }, - "locked": { - "lastModified": 1730213537, - "narHash": "sha256-bWoeNdFISbGK8M0Xw4edmManGCkJ1oNqbfNY0Hlv9Vc=", - "owner": "cachix", - "repo": "devenv", - "rev": "5c046eeafd13f7a2b9fc733f70ea17571b24410f", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "devenv", - "type": "github" - } - }, - "devenv_2": { - "inputs": { - "cachix": "cachix_2", - "flake-compat": [ - "devenv", - "cachix", - "flake-compat" - ], - "nix": "nix_2", - "nixpkgs": [ - "devenv", - "cachix", - "nixpkgs" - ], - "pre-commit-hooks": [ - "devenv", - "cachix", - "git-hooks" - ] - }, - "locked": { - "lastModified": 1723156315, - "narHash": "sha256-0JrfahRMJ37Rf1i0iOOn+8Z4CLvbcGNwa2ChOAVrp/8=", - "owner": "cachix", - "repo": "devenv", - "rev": "ff5eb4f2accbcda963af67f1a1159e3f6c7f5f91", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "devenv", - "type": "github" - } - }, - "devenv_3": { - "inputs": { - "flake-compat": [ - "devenv", - "cachix", - "devenv", - "cachix", - "flake-compat" - ], + "flake-compat": "flake-compat", "nix": "nix", "nixpkgs": "nixpkgs", - "poetry2nix": "poetry2nix", - "pre-commit-hooks": [ - "devenv", - "cachix", - "devenv", - "cachix", - "pre-commit-hooks" - ] + "pre-commit-hooks": "pre-commit-hooks" }, "locked": { - "lastModified": 1708704632, - "narHash": "sha256-w+dOIW60FKMaHI1q5714CSibk99JfYxm0CzTinYWr+Q=", + "lastModified": 1692203620, + "narHash": "sha256-9SF/H8oCWv166q5o+JtV7tK+koydgFMu02HCB27UWpU=", "owner": "cachix", "repo": "devenv", - "rev": "2ee4450b0f4b95a1b90f2eb5ffea98b90e48c196", + "rev": "eee80243720b7f284128873a9694a520d9967b2f", "type": "github" }, "original": { "owner": "cachix", - "ref": "python-rewrite", "repo": "devenv", "type": "github" } @@ -173,54 +37,16 @@ "type": "github" } }, - "flake-compat_2": { - "flake": false, - "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "owner": "edolstra", - "repo": "flake-compat", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "type": "github" - }, - "original": { - "owner": "edolstra", - "repo": "flake-compat", - "type": "github" - } - }, - "flake-parts": { - "inputs": { - "nixpkgs-lib": [ - "devenv", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1712014858, - "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d", - "type": "github" - }, - "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, "flake-utils": { "inputs": { "systems": "systems" }, "locked": { - "lastModified": 1689068808, - "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=", + "lastModified": 1685518550, + "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", "owner": "numtide", "repo": "flake-utils", - "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4", + "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", "type": "github" }, "original": { @@ -230,30 +56,15 @@ } }, "flake-utils_2": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_3": { "inputs": { "systems": "systems_2" }, "locked": { - "lastModified": 1726560853, - "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", + "lastModified": 1689068808, + "narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=", "owner": "numtide", "repo": "flake-utils", - "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", + "rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4", "type": "github" }, "original": { @@ -271,11 +82,11 @@ ] }, "locked": { - "lastModified": 1709087332, - "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "lastModified": 1660459072, + "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=", "owner": "hercules-ci", "repo": "gitignore.nix", - "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73", "type": "github" }, "original": { @@ -284,142 +95,53 @@ "type": "github" } }, - "libgit2": { + "lowdown-src": { "flake": false, "locked": { - "lastModified": 1697646580, - "narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=", - "owner": "libgit2", - "repo": "libgit2", - "rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5", + "lastModified": 1633514407, + "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=", + "owner": "kristapsdz", + "repo": "lowdown", + "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8", "type": "github" }, "original": { - "owner": "libgit2", - "repo": "libgit2", + "owner": "kristapsdz", + "repo": "lowdown", "type": "github" } }, "nix": { "inputs": { - "flake-compat": "flake-compat", + "lowdown-src": "lowdown-src", "nixpkgs": [ - "devenv", - "cachix", - "devenv", - "cachix", "devenv", "nixpkgs" ], "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1712911606, - "narHash": "sha256-BGvBhepCufsjcUkXnEEXhEVjwdJAwPglCC2+bInc794=", + "lastModified": 1676545802, + "narHash": "sha256-EK4rZ+Hd5hsvXnzSzk2ikhStJnD63odF7SzsQ8CuSPU=", "owner": "domenkozar", "repo": "nix", - "rev": "b24a9318ea3f3600c1e24b4a00691ee912d4de12", + "rev": "7c91803598ffbcfe4a55c44ac6d49b2cf07a527f", "type": "github" }, "original": { "owner": "domenkozar", - "ref": "devenv-2.21", - "repo": "nix", - "type": "github" - } - }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "devenv", - "cachix", - "devenv", - "cachix", - "devenv", - "poetry2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1688870561, - "narHash": "sha256-4UYkifnPEw1nAzqqPOTL2MvWtm3sNGw1UTYTalkTcGY=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "165b1650b753316aa7f1787f3005a8d2da0f5301", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-github-actions", - "type": "github" - } - }, - "nix_2": { - "inputs": { - "flake-compat": [ - "devenv", - "cachix", - "devenv", - "flake-compat" - ], - "nixpkgs": [ - "devenv", - "cachix", - "devenv", - "nixpkgs" - ], - "nixpkgs-regression": "nixpkgs-regression_2" - }, - "locked": { - "lastModified": 1712911606, - "narHash": "sha256-BGvBhepCufsjcUkXnEEXhEVjwdJAwPglCC2+bInc794=", - "owner": "domenkozar", - "repo": "nix", - "rev": "b24a9318ea3f3600c1e24b4a00691ee912d4de12", - "type": "github" - }, - "original": { - "owner": "domenkozar", - "ref": "devenv-2.21", - "repo": "nix", - "type": "github" - } - }, - "nix_3": { - "inputs": { - "flake-compat": [ - "devenv", - "flake-compat" - ], - "flake-parts": "flake-parts", - "libgit2": "libgit2", - "nixpkgs": "nixpkgs_2", - "nixpkgs-23-11": "nixpkgs-23-11", - "nixpkgs-regression": "nixpkgs-regression_3", - "pre-commit-hooks": "pre-commit-hooks" - }, - "locked": { - "lastModified": 1727438425, - "narHash": "sha256-X8ES7I1cfNhR9oKp06F6ir4Np70WGZU5sfCOuNBEwMg=", - "owner": "domenkozar", - "repo": "nix", - "rev": "f6c5ae4c1b2e411e6b1e6a8181cc84363d6a7546", - "type": "github" - }, - "original": { - "owner": "domenkozar", - "ref": "devenv-2.24", + "ref": "relaxed-flakes", "repo": "nix", "type": "github" } }, "nixpkgs": { "locked": { - "lastModified": 1692808169, - "narHash": "sha256-x9Opq06rIiwdwGeK2Ykj69dNc2IvUH1fY55Wm7atwrE=", + "lastModified": 1678875422, + "narHash": "sha256-T3o6NcQPwXjxJMn2shz86Chch4ljXgZn746c2caGxd8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "9201b5ff357e781bf014d0330d18555695df7ba8", + "rev": "126f49a01de5b7e35a43fd43f891ecf6d3a51459", "type": "github" }, "original": { @@ -429,22 +151,6 @@ "type": "github" } }, - "nixpkgs-23-11": { - "locked": { - "lastModified": 1717159533, - "narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446", - "type": "github" - } - }, "nixpkgs-regression": { "locked": { "lastModified": 1643052045, @@ -461,93 +167,29 @@ "type": "github" } }, - "nixpkgs-regression_2": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, - "nixpkgs-regression_3": { - "locked": { - "lastModified": 1643052045, - "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - }, - "original": { - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2", - "type": "github" - } - }, "nixpkgs-stable": { "locked": { - "lastModified": 1720386169, - "narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=", + "lastModified": 1685801374, + "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "194846768975b7ad2c4988bdb82572c00222c0d7", + "rev": "c37ca420157f4abc31e26f436c1145f8951ff373", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.05", + "ref": "nixos-23.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_2": { "locked": { - "lastModified": 1717432640, - "narHash": "sha256-+f9c4/ZX5MWDOuB1rKoWj+lBNm0z0rs4CK47HBLxy1o=", + "lastModified": 1692174805, + "narHash": "sha256-xmNPFDi/AUMIxwgOH/IVom55Dks34u1g7sFKKebxUm0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "88269ab3044128b7c2f4c7d68448b2fb50456870", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "release-24.05", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1716977621, - "narHash": "sha256-Q1UQzYcMJH4RscmpTkjlgqQDX5yi1tZL0O345Ri6vXQ=", - "owner": "cachix", - "repo": "devenv-nixpkgs", - "rev": "4267e705586473d3e5c8d50299e71503f16a6fb6", - "type": "github" - }, - "original": { - "owner": "cachix", - "ref": "rolling", - "repo": "devenv-nixpkgs", - "type": "github" - } - }, - "nixpkgs_4": { - "locked": { - "lastModified": 1729880355, - "narHash": "sha256-RP+OQ6koQQLX5nw0NmcDrzvGL8HDLnyXt/jHhL1jwjM=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "18536bf04cd71abd345f9579158841376fdd0c5a", + "rev": "caac0eb6bdcad0b32cb2522e03e4002c8975c62e", "type": "github" }, "original": { @@ -557,75 +199,13 @@ "type": "github" } }, - "poetry2nix": { - "inputs": { - "flake-utils": "flake-utils", - "nix-github-actions": "nix-github-actions", - "nixpkgs": [ - "devenv", - "cachix", - "devenv", - "cachix", - "devenv", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1692876271, - "narHash": "sha256-IXfZEkI0Mal5y1jr6IRWMqK8GW2/f28xJenZIPQqkY0=", - "owner": "nix-community", - "repo": "poetry2nix", - "rev": "d5006be9c2c2417dafb2e2e5034d83fabd207ee3", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "poetry2nix", - "type": "github" - } - }, "pre-commit-hooks": { - "inputs": { - "flake-compat": [ - "devenv", - "nix" - ], - "flake-utils": "flake-utils_2", - "gitignore": [ - "devenv", - "nix" - ], - "nixpkgs": [ - "devenv", - "nix", - "nixpkgs" - ], - "nixpkgs-stable": [ - "devenv", - "nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1712897695, - "narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=", - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8", - "type": "github" - }, - "original": { - "owner": "cachix", - "repo": "pre-commit-hooks.nix", - "type": "github" - } - }, - "pre-commit-hooks_2": { "inputs": { "flake-compat": [ "devenv", "flake-compat" ], + "flake-utils": "flake-utils", "gitignore": "gitignore", "nixpkgs": [ "devenv", @@ -634,11 +214,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1726745158, - "narHash": "sha256-D5AegvGoEjt4rkKedmxlSEmC+nNLMBPWFxvmYnVLhjk=", + "lastModified": 1688056373, + "narHash": "sha256-2+SDlNRTKsgo3LBRiMUcoEUb6sDViRNQhzJquZ4koOI=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "4e743a6920eab45e8ba0fbe49dc459f1423a4b74", + "rev": "5843cf069272d92b60c3ed9e55b7a8989c01d4c7", "type": "github" }, "original": { @@ -650,8 +230,8 @@ "root": { "inputs": { "devenv": "devenv", - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_4" + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs_2" } }, "systems": { diff --git a/flake.nix b/flake.nix index f46ad3d..c87f1cd 100644 --- a/flake.nix +++ b/flake.nix @@ -49,10 +49,6 @@ ''; }; - # Workaround for cachix/devenv#756 - # See here: https://github.com/cachix/devenv/issues/756 - packages.devenv-up = self.devShell.${system}.config.procfileScript; - defaultPackage = self.packages.${system}.alejandr0angul0-dot-dev; apps = rec { @@ -86,9 +82,6 @@ markdownlint = { enable = true; excludes = ["node_modules"]; - settings.configuration = { - MD013.code_blocks = false; - }; }; prettier = { enable = true; @@ -97,8 +90,6 @@ }; }; - processes.hugo-server.exec = "${pkgs.hugo}/bin/hugo server"; - enterShell = '' export PATH=./node_modules/.bin:$PATH ''; diff --git a/themes/alejandro-angulo/assets/css/main.css b/themes/alejandro-angulo/assets/css/main.css index 921a4bc..7582679 100644 --- a/themes/alejandro-angulo/assets/css/main.css +++ b/themes/alejandro-angulo/assets/css/main.css @@ -1,19 +1,9 @@ -:root { - --main-page-max-width: 1000px; -} - body { background-color: #1d2021; color: #ffffdf; margin: 1em; - max-width: var(--main-page-max-width); + max-width: 800px; margin: 1em auto 0; - font-family: OpenSans, sans-serif; - font-size: 1.2em; -} - -pre, -code { font-family: Hack, monospace; } @@ -22,16 +12,12 @@ code { font-size: 20px; } -i.fab { - font-style: normal; -} - a { color: #00a7af; padding: 0.1em; } a:visited { - color: #961ee1; + color: #005f87; } a:hover { background-color: #00a7af; @@ -59,7 +45,7 @@ a:hover { } #banner { - max-width: var(--main-page-max-width); + max-width: 800px; margin: 0 auto; padding: 0.3em 0; } diff --git a/themes/alejandro-angulo/assets/css/opensans.css b/themes/alejandro-angulo/assets/css/opensans.css deleted file mode 100644 index 7be70cb..0000000 --- a/themes/alejandro-angulo/assets/css/opensans.css +++ /dev/null @@ -1,37 +0,0 @@ -/*! - * Open Sans typeface https://github.com/FontFaceKit/open-sans - * License: ??? - */ -/* FONT PATHS - * -------------------------- */ -@font-face { - font-family: "OpenSans"; - src: url("/fonts/OpenSans-Regular.woff2") format("woff2"); - font-weight: 400; - font-style: normal; - font-display: swap; -} - -@font-face { - font-family: "OpenSans"; - src: url("/fonts/OpenSans-Bold.woff2") format("woff2"); - font-weight: 700; - font-style: normal; - font-display: swap; -} - -@font-face { - font-family: "OpenSans"; - src: url("/fonts/OpenSans-Italic.woff2") format("woff2"); - font-weight: 400; - font-style: italic; - font-display: swap; -} - -@font-face { - font-family: "OpenSans"; - src: url("/fonts/OpenSans-BoldItalic.woff2") format("woff2"); - font-weight: 700; - font-style: italic; - font-display: swap; -} diff --git a/themes/alejandro-angulo/layouts/partials/head.html b/themes/alejandro-angulo/layouts/partials/head.html index 3de2f10..b8faee8 100644 --- a/themes/alejandro-angulo/layouts/partials/head.html +++ b/themes/alejandro-angulo/layouts/partials/head.html @@ -4,22 +4,21 @@ {{ $main_style := resources.Get "css/main.css" | minify }} {{ $highlight_style := resources.Get "css/highlight.css" | minify }} - {{ $opensans_style := resources.Get "css/opensans.css" | minify }} - {{ $css := slice $main_style $highlight_style $opensans_style | resources.Concat "css/style.css" | fingerprint }} + {{ $css := slice $main_style $highlight_style | resources.Concat "css/style.css" | fingerprint }}