Compare commits
No commits in common. "bfee19ad6de9bedfeb8fb96d7089d703593130ba" and "9fccc2f72ea3be9c1ded03d4c3ef6cb2ec3a43ef" have entirely different histories.
bfee19ad6d
...
9fccc2f72e
|
@ -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
|
||||
|
||||
|
|
|
@ -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.
|
506
flake.lock
506
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": {
|
||||
|
|
|
@ -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
|
||||
'';
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
}
|
|
@ -4,22 +4,21 @@
|
|||
<link
|
||||
rel="stylesheet"
|
||||
type="text/css"
|
||||
href="https://cdn.jsdelivr.net/npm/hack-font@3/build/web/hack.min.css"
|
||||
integrity="sha512-rUsWke5ytml2uw28WnQn51rEy7/KodM+Hsa1vr2+YgaAsEvn38VFlQq/fwiYouOXZyLq/6RvDSFT0jzx/C3Oig=="
|
||||
href="https://cdn.jsdelivr.net/npm/hack-font@3/build/web/hack.css"
|
||||
integrity="sha512-VZssMZ4DFoWOybwn4WosagyfJkBO7pYU5NdVRbCtu/ujv6MVL1DGbENVRCMwMxuEra76muhpcmxr6E8ECl8QAQ=="
|
||||
crossorigin="anonymous"
|
||||
referrerpolicy="no-referrer"
|
||||
/>
|
||||
<link
|
||||
rel="stylesheet"
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css"
|
||||
integrity="sha512-W/zrbCncQnky/EzL+/AYwTtosvrM+YG/V6piQLSe2HuKS6cmbw89kjYkp3tWFn1dkWV7L1ruvJyKbLz73Vlgfg=="
|
||||
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.css"
|
||||
integrity="sha512-/0+jCMeks7Sm7B2Jai6K8JDYQqiwWiY73tw+G6BQkisKhUC0fqKt9Sd8noZvHPHl5rm9/cJ5hcuzzONlFvLMQQ=="
|
||||
crossorigin="anonymous"
|
||||
referrerpolicy="no-referrer"
|
||||
/>
|
||||
{{ $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 }}
|
||||
<link
|
||||
rel="stylesheet"
|
||||
type="text/css"
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue