Added nix flake (#16)
This commit is contained in:
parent
12eeedc63f
commit
674138f2ae
|
@ -1,102 +0,0 @@
|
||||||
---
|
|
||||||
version: 2
|
|
||||||
jobs:
|
|
||||||
test:
|
|
||||||
docker:
|
|
||||||
- image: cibuilds/hugo:latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
|
|
||||||
# TODO: Uncomment below two lines and install git further up if submodules end up being added
|
|
||||||
# install git submodules for managing third-part dependencies
|
|
||||||
# - run: git submodule sync && git submodule update --init
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Build HTML files
|
|
||||||
command: HUGO_ENV=production hugo -v --minify
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Test generated HTML files
|
|
||||||
command: |
|
|
||||||
htmlproofer public --allow-hash-href --check-html \
|
|
||||||
--empty-alt-ignore --disable-external
|
|
||||||
|
|
||||||
- persist_to_workspace:
|
|
||||||
root: .
|
|
||||||
paths:
|
|
||||||
- public
|
|
||||||
- config
|
|
||||||
- themes
|
|
||||||
lint:
|
|
||||||
docker:
|
|
||||||
- image: cimg/python:3.9
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- checkout
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Install pre-commit
|
|
||||||
command: pip install pre-commit
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Setup pre-commit cache key
|
|
||||||
command: |
|
|
||||||
cp .pre-commit-config.yaml pre-commit-cache-key.txt
|
|
||||||
# Intentionally supplying --version twice to get verbose version information
|
|
||||||
python --version --version >> pre-commit-cache-key.txt
|
|
||||||
|
|
||||||
- restore_cache:
|
|
||||||
keys:
|
|
||||||
- v1-pre-commit-cache-{{ checksum "pre-commit-cache-key.txt" }}
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Run pre-commit hooks
|
|
||||||
command: pre-commit run --from-ref main --to-ref HEAD
|
|
||||||
|
|
||||||
- save_cache:
|
|
||||||
key: v1-pre-commit-cache-{{ checksum "pre-commit-cache-key.txt" }}
|
|
||||||
paths:
|
|
||||||
- ~/.cache/pre-commit
|
|
||||||
|
|
||||||
deploy:
|
|
||||||
docker:
|
|
||||||
- image: cibuilds/hugo:latest
|
|
||||||
environment:
|
|
||||||
PROD_DEPLOY_CONFIG_PATH: config/production/deployment.toml
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- attach_workspace:
|
|
||||||
at: .
|
|
||||||
|
|
||||||
- run:
|
|
||||||
name: Install AWS CLI
|
|
||||||
command: |
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install python3-pip
|
|
||||||
pip3 install awscli
|
|
||||||
|
|
||||||
- deploy:
|
|
||||||
name: Deploy to AWS
|
|
||||||
command: |
|
|
||||||
sed "s~{{S3URL}}~${S3URL}~g" "${PROD_DEPLOY_CONFIG_PATH}.sample" > "${PROD_DEPLOY_CONFIG_PATH}"
|
|
||||||
sed -i "s~{{CLOUDFRONTDISTRIBUTIONID}}~${CLOUDFRONTDISTRIBUTIONID}~g" "${PROD_DEPLOY_CONFIG_PATH}"
|
|
||||||
HUGO_ENV=production hugo deploy --invalidateCDN
|
|
||||||
|
|
||||||
workflows:
|
|
||||||
version: 2
|
|
||||||
main-workflow:
|
|
||||||
jobs:
|
|
||||||
- test
|
|
||||||
|
|
||||||
- lint
|
|
||||||
|
|
||||||
- deploy:
|
|
||||||
context: aws-context
|
|
||||||
requires:
|
|
||||||
- test
|
|
||||||
- lint
|
|
||||||
filters:
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- main
|
|
10
.editorconfig
Normal file
10
.editorconfig
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
end_of_line = lf
|
||||||
|
insert_final_newline = true
|
||||||
|
|
||||||
|
[*.{js,json,yml}]
|
||||||
|
charset = utf-8
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
65
.github/workflows/ci.yml
vendored
Normal file
65
.github/workflows/ci.yml
vendored
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
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
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
needs: [build]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
if: github.ref == 'refs/heads/main'
|
||||||
|
env:
|
||||||
|
PROD_DEPLOY_CONFIG_PATH: config/production/deployment.toml
|
||||||
|
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: 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 env 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 \
|
||||||
|
hugo deploy --invalidateCDN
|
17
.gitignore
vendored
17
.gitignore
vendored
|
@ -4,14 +4,15 @@
|
||||||
# Deployment config
|
# Deployment config
|
||||||
config/production/deployment.toml
|
config/production/deployment.toml
|
||||||
|
|
||||||
|
/node_modules
|
||||||
|
|
||||||
# Hugo build lock
|
# Hugo build lock
|
||||||
.hugo_build.lock
|
.hugo_build.lock
|
||||||
|
|
||||||
# yarn
|
# Nix artifacts
|
||||||
.pnp.*
|
result
|
||||||
.yarn/*
|
|
||||||
!.yarn/patches
|
# devenv artifacts
|
||||||
!.yarn/plugins
|
.devenv
|
||||||
!.yarn/releases
|
.pre-commit-config.yaml
|
||||||
!.yarn/sdks
|
|
||||||
!.yarn/versions
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
---
|
|
||||||
# See https://pre-commit.com for more information
|
|
||||||
# See https://pre-commit.com/hooks.html for more hooks
|
|
||||||
repos:
|
|
||||||
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
||||||
rev: v4.1.0
|
|
||||||
hooks:
|
|
||||||
- id: trailing-whitespace
|
|
||||||
- id: end-of-file-fixer
|
|
||||||
- id: check-yaml
|
|
||||||
- id: check-added-large-files
|
|
||||||
exclude: |
|
|
||||||
(?x)^(
|
|
||||||
.*\.cjs
|
|
||||||
)$
|
|
||||||
- repo: https://github.com/pre-commit/mirrors-eslint
|
|
||||||
rev: v8.5.0
|
|
||||||
hooks:
|
|
||||||
- id: eslint
|
|
||||||
- repo: https://github.com/pre-commit/mirrors-prettier
|
|
||||||
rev: v2.5.1
|
|
||||||
hooks:
|
|
||||||
- id: prettier
|
|
||||||
additional_dependencies:
|
|
||||||
- prettier@2.4.1
|
|
||||||
- prettier-plugin-go-template@0.0.11
|
|
||||||
- repo: https://github.com/codespell-project/codespell
|
|
||||||
rev: v2.1.0
|
|
||||||
hooks:
|
|
||||||
- id: codespell
|
|
||||||
types: [markdown]
|
|
1
.prettierignore
Normal file
1
.prettierignore
Normal file
|
@ -0,0 +1 @@
|
||||||
|
node_modules
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
"plugins": ["prettier-plugin-go-template"],
|
||||||
"overrides": [
|
"overrides": [
|
||||||
{
|
{
|
||||||
"files": ["*.html"],
|
"files": ["*.html"],
|
||||||
|
|
631
.yarn/releases/yarn-3.0.2.cjs
vendored
631
.yarn/releases/yarn-3.0.2.cjs
vendored
File diff suppressed because one or more lines are too long
|
@ -1 +0,0 @@
|
||||||
yarnPath: .yarn/releases/yarn-3.0.2.cjs
|
|
|
@ -1,12 +1,14 @@
|
||||||
[en]
|
[en]
|
||||||
languageName = "English"
|
languageName = "English"
|
||||||
title = "alejandr00"
|
title = "alejandr00"
|
||||||
subtitle = ""
|
|
||||||
owner = ""
|
|
||||||
keywords = ""
|
|
||||||
copyright = ""
|
copyright = ""
|
||||||
menuMore = "Show more"
|
|
||||||
|
[en.params]
|
||||||
|
subtitle = ""
|
||||||
|
keywords = ""
|
||||||
|
owner = ""
|
||||||
readMore = "Read more"
|
readMore = "Read more"
|
||||||
|
menuMore = "Show more"
|
||||||
readOtherPosts = "Read other posts"
|
readOtherPosts = "Read other posts"
|
||||||
missingContentMessage = "Page not found..."
|
missingContentMessage = "Page not found..."
|
||||||
missingBackButtonLabel = "Back to home page"
|
missingBackButtonLabel = "Back to home page"
|
||||||
|
|
270
flake.lock
Normal file
270
flake.lock
Normal file
|
@ -0,0 +1,270 @@
|
||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"devenv": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"nix": "nix",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1692203620,
|
||||||
|
"narHash": "sha256-9SF/H8oCWv166q5o+JtV7tK+koydgFMu02HCB27UWpU=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"rev": "eee80243720b7f284128873a9694a520d9967b2f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1673956053,
|
||||||
|
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1685518550,
|
||||||
|
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689068808,
|
||||||
|
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gitignore": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1660459072,
|
||||||
|
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"lowdown-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1633514407,
|
||||||
|
"narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
|
||||||
|
"owner": "kristapsdz",
|
||||||
|
"repo": "lowdown",
|
||||||
|
"rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "kristapsdz",
|
||||||
|
"repo": "lowdown",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix": {
|
||||||
|
"inputs": {
|
||||||
|
"lowdown-src": "lowdown-src",
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1676545802,
|
||||||
|
"narHash": "sha256-EK4rZ+Hd5hsvXnzSzk2ikhStJnD63odF7SzsQ8CuSPU=",
|
||||||
|
"owner": "domenkozar",
|
||||||
|
"repo": "nix",
|
||||||
|
"rev": "7c91803598ffbcfe4a55c44ac6d49b2cf07a527f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "domenkozar",
|
||||||
|
"ref": "relaxed-flakes",
|
||||||
|
"repo": "nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1678875422,
|
||||||
|
"narHash": "sha256-T3o6NcQPwXjxJMn2shz86Chch4ljXgZn746c2caGxd8=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "126f49a01de5b7e35a43fd43f891ecf6d3a51459",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-regression": {
|
||||||
|
"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": 1685801374,
|
||||||
|
"narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-23.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1692174805,
|
||||||
|
"narHash": "sha256-xmNPFDi/AUMIxwgOH/IVom55Dks34u1g7sFKKebxUm0=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "caac0eb6bdcad0b32cb2522e03e4002c8975c62e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"devenv",
|
||||||
|
"flake-compat"
|
||||||
|
],
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"devenv",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1688056373,
|
||||||
|
"narHash": "sha256-2+SDlNRTKsgo3LBRiMUcoEUb6sDViRNQhzJquZ4koOI=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "5843cf069272d92b60c3ed9e55b7a8989c01d4c7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"devenv": "devenv",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
102
flake.nix
Normal file
102
flake.nix
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
{
|
||||||
|
description = "Alejandro Angulo's Personal Website";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
|
devenv.url = "github:cachix/devenv";
|
||||||
|
};
|
||||||
|
|
||||||
|
nixConfig = {
|
||||||
|
extra-trusted-public-keys = "devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw=";
|
||||||
|
extra-substituters = "https://devenv.cachix.org";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = {
|
||||||
|
self,
|
||||||
|
nixpkgs,
|
||||||
|
flake-utils,
|
||||||
|
devenv,
|
||||||
|
...
|
||||||
|
} @ inputs:
|
||||||
|
flake-utils.lib.eachDefaultSystem (system: let
|
||||||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
|
utf8Locale = pkgs.glibcLocales.override {
|
||||||
|
allLocales = false;
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
packages.alejandr0angul0-dot-dev = pkgs.stdenv.mkDerivation {
|
||||||
|
name = "alejandr0angul0-dot-dev";
|
||||||
|
src = self;
|
||||||
|
|
||||||
|
buildInputs = with pkgs; [
|
||||||
|
git
|
||||||
|
nodePackages.prettier
|
||||||
|
];
|
||||||
|
buildPhase = ''
|
||||||
|
${pkgs.hugo}/bin/hugo --minify
|
||||||
|
'';
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
nativeCheckInputs = with pkgs; [html-proofer utf8Locale];
|
||||||
|
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";
|
||||||
|
};
|
||||||
|
|
||||||
|
defaultPackage = self.packages.${system}.alejandr0angul0-dot-dev;
|
||||||
|
|
||||||
|
apps = rec {
|
||||||
|
hugo = flake-utils.lib.mkApp {drv = pkgs.hugo;};
|
||||||
|
default = hugo;
|
||||||
|
};
|
||||||
|
|
||||||
|
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"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
enterShell = ''
|
||||||
|
export PATH=./node_modules/.bin:$PATH
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
];
|
||||||
|
};
|
||||||
|
});
|
||||||
|
}
|
1051
package-lock.json
generated
Normal file
1051
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,9 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "alejandr0angul0.dev",
|
"name": "alejandr0angul0.dev",
|
||||||
"packageManager": "yarn@3.0.2",
|
"dependencies": {
|
||||||
"devDependencies": {
|
"eslint": "^8.46.0",
|
||||||
"eslint": "^7.32.0",
|
"prettier": "^3",
|
||||||
"prettier": "^2.4.1",
|
"prettier-plugin-go-template": "^0.0.15"
|
||||||
"prettier-plugin-go-template": "^0.0.11"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue