Compare commits

...

10 commits

Author SHA1 Message Date
3d3ae9c9b5 oracle rice 2025-09-26 01:40:43 -05:00
33fe28a76b sept rice v2 2025-09-25 23:04:07 -05:00
66ba28aaf3 sept rice 2025-09-11 23:50:17 -05:00
89ab499605 july rice 2025-07-28 22:12:23 -05:00
73f2340ac0 flake.lock: Update
Flake lock file updates:

• Updated input 'deploy-rs':
    'github:serokell/deploy-rs/aa07eb05537d4cd025e2310397a6adcedfe72c76?narHash=sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE%2Bne0U%3D' (2024-09-27)
  → 'github:serokell/deploy-rs/6bc76b872374845ba9d645a2f012b764fecd765f' (2025-06-05)
• Updated input 'deploy-rs/flake-compat':
    'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33?narHash=sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U%3D' (2023-10-04)
  → 'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec?narHash=sha256-NeCCThCEP3eCl2l/%2B27kNNK7QrwZB1IJCrXfrbv5oqU%3D' (2024-12-04)
• Updated input 'deploy-rs/utils':
    'github:numtide/flake-utils/4022d587cbbfd70fe950c1e2083a02621806a725?narHash=sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8%3D' (2023-12-04)
  → 'github:numtide/flake-utils/11707dc2f618dd54ca8739b309ec4fc024de578b?narHash=sha256-l0KFg5HjrsfsO/JpG%2Br7fRrqm12kzFHyUHqHCVpMMbI%3D' (2024-11-13)
• Updated input 'determinate':
    'https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/3.6.2/01973348-6edf-7091-8b18-54f942b2bf2f/source.tar.gz?narHash=sha256-xXeDMMKuv8A/wlHgq6%2B4E6fcYJm/Munr764E0wyFEOs%3D' (2025-06-03)
  → 'https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/3.8.4/01982b0e-46ed-709c-973b-7096ceb2a596/source.tar.gz?narHash=sha256-jq04XAgT5Rci907wxd69trNwZixpnBLz5tH02h6JcoA%3D' (2025-07-21)
• Updated input 'determinate/determinate-nixd-aarch64-darwin':
    'https://install.determinate.systems/determinate-nixd/tag/v3.6.2/macOS?narHash=sha256-qh0zj1z3zc6wd3vuQIZkfisxDIIQE/oC1l3zpEWoWx0%3D'
  → 'https://install.determinate.systems/determinate-nixd/tag/v3.8.4/macOS?narHash=sha256-tEhYb3OWFIPFvWa/orkyBMvS2joRRrqKHpK2cSd20hU%3D'
• Updated input 'determinate/determinate-nixd-aarch64-linux':
    'https://install.determinate.systems/determinate-nixd/tag/v3.6.2/aarch64-linux?narHash=sha256-PVdj96Pxn9pDP0WrYVlJWsymCXNDBAjzyk/b0qMtRRs%3D'
  → 'https://install.determinate.systems/determinate-nixd/tag/v3.8.4/aarch64-linux?narHash=sha256-BGDnwwbo30fdSAv26G2MFYKx2%2BqIQ8G40%2BmuwKH9SPM%3D'
• Updated input 'determinate/determinate-nixd-x86_64-linux':
    'https://install.determinate.systems/determinate-nixd/tag/v3.6.2/x86_64-linux?narHash=sha256-X3gcLv4dHU3bkDgNN5GaY0sfsWrSqIHoKjVNP8%2BuHHQ%3D'
  → 'https://install.determinate.systems/determinate-nixd/tag/v3.8.4/x86_64-linux?narHash=sha256-P4EJCgSsapE5tggKXiLUeS56PNciGLgonWAm7F1xf6E%3D'
• Updated input 'determinate/nix':
    'https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.6.2/01973342-bafd-782a-bbcf-6606879c0df6/source.tar.gz?narHash=sha256-A/yjYc%2Bvdkjvw3xI7qgfYRI%2BjzyiW9Ay6JPhGu1gFyo%3D' (2025-06-03)
  → 'https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.8.4/01982aff-6f3f-7bcc-85c8-b0d4e0cb35d8/source.tar.gz?narHash=sha256-/WmweOcc4DfQPfGkNxllsuEVgTwX3RVROOy3e/mAvr0%3D' (2025-07-21)
• Updated input 'determinate/nix/flake-parts':
    'github:hercules-ci/flake-parts/205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9?narHash=sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c%3D' (2024-12-04)
  → 'https://api.flakehub.com/f/pinned/hercules-ci/flake-parts/0.1.377%2Brev-49f0870db23e8c1ca0b5259734a02cd9e1e371a1/01972f28-554a-73f8-91f4-d488cc502f08/source.tar.gz?narHash=sha256-F82%2BgS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE%3D' (2025-06-01)
• Updated input 'determinate/nix/git-hooks-nix':
    'github:cachix/git-hooks.nix/aa9f40c906904ebd83da78e7f328cd8aeaeae785?narHash=sha256-NdaCraHPp8iYMWzdXAt5Nv6sA3MUzlCiGiR586TCwo0%3D' (2024-12-15)
  → 'https://api.flakehub.com/f/pinned/cachix/git-hooks.nix/0.1.1026%2Brev-80479b6ec16fefd9c1db3ea13aeb038c60530f46/0196d79a-1b35-7b8e-a021-c894fb62163d/source.tar.gz?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16)
• Updated input 'determinate/nix/git-hooks-nix/flake-compat':
    'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec?narHash=sha256-NeCCThCEP3eCl2l/%2B27kNNK7QrwZB1IJCrXfrbv5oqU%3D' (2024-12-04)
  → 'github:edolstra/flake-compat/0f9255e01c2351cc7d116c072cb317785dd33b33?narHash=sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U%3D' (2023-10-04)
• Removed input 'determinate/nix/git-hooks-nix/nixpkgs-stable'
• Updated input 'determinate/nix/nixpkgs':
    'github:NixOS/nixpkgs/adaa24fbf46737f3f1b5497bf64bae750f82942e?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13)
  → 'https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.1.799423%2Brev-adaa24fbf46737f3f1b5497bf64bae750f82942e/0196d1c3-1974-7bf1-bcf6-06620ac40c8c/source.tar.gz?narHash=sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY%3D' (2025-05-13)
• Updated input 'determinate/nixpkgs':
    'https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.806109%2Brev-3108eaa516ae22c2360928589731a4f1581526ef/01971040-062f-7e68-83d1-5cd2af08d87e/source.tar.gz?narHash=sha256-P3u2PXxMlo49PutQLnk2PhI/imC69hFl1yY4aT5Nax8%3D' (2025-05-26)
  → 'https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.827262%2Brev-be9e214982e20b8310878ac2baa063a961c1bdf6/01980c9a-3044-72c0-b718-a99e9076d3d6/source.tar.gz?narHash=sha256-HM791ZQtXV93xtCY%2BZxG1REzhQenSQO020cu6rHtAPk%3D' (2025-07-09)
• Updated input 'home-manager':
    'github:nix-community/home-manager/c7fdb7e90bff1a51b79c1eed458fb39e6649a82a?narHash=sha256-EB%2BLzYHK0D5aqxZiYoPeoZoOzSAs8eqBDxm3R%2B6wMKU%3D' (2025-06-02)
  → 'github:nix-community/home-manager/72cc1e3134a35005006f06640724319caa424737' (2025-07-27)
• Updated input 'neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/4fb826468dd110892a4784a0106ef6f3a34f0907?narHash=sha256-mSAJD41472sC55IW%2BlUQGAjn9gsh7w/ClNvfukMvHEc%3D' (2025-06-02)
  → 'github:nix-community/neovim-nightly-overlay/06556188ee8c7ddfbe7b39d652cf409d0f912705' (2025-07-27)
• Updated input 'neovim-nightly-overlay/flake-parts':
    'github:hercules-ci/flake-parts/49f0870db23e8c1ca0b5259734a02cd9e1e371a1?narHash=sha256-F82%2BgS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE%3D' (2025-06-01)
  → 'github:hercules-ci/flake-parts/644e0fc48951a860279da645ba77fe4a6e814c5e?narHash=sha256-TVcTNvOeWWk1DXljFxVRp%2BE0tzG1LhrVjOGGoMHuXio%3D' (2025-07-21)
• Updated input 'neovim-nightly-overlay/git-hooks':
    'github:cachix/git-hooks.nix/80479b6ec16fefd9c1db3ea13aeb038c60530f46?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16)
  → 'github:cachix/git-hooks.nix/16ec914f6fb6f599ce988427d9d94efddf25fe6d?narHash=sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg%3D' (2025-06-24)
• Updated input 'neovim-nightly-overlay/hercules-ci-effects':
    'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23)
  → 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15)
• Updated input 'neovim-nightly-overlay/hercules-ci-effects/flake-parts':
    'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01)
  → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01)
• Updated input 'neovim-nightly-overlay/neovim-src':
    'github:neovim/neovim/52991d8728c876366cd28f75be29ee579a0a8605?narHash=sha256-KWkPOptegP3DP%2BY8tPM9KvtZ20pVusfinMM/brTwIIo%3D' (2025-06-01)
  → 'github:neovim/neovim/b4ba27c238ec342bcb01fa59ab1eaf6996a4c6ee?narHash=sha256-QIsckK2f4A1PG8hF3TboXYWrYEv3DtVtz%2BtTFs9V00w%3D' (2025-07-26)
• Updated input 'neovim-nightly-overlay/nixpkgs':
    'github:NixOS/nixpkgs/59138c7667b7970d205d6a05a8bfa2d78caa3643?narHash=sha256-7gGa49iB9nCnFk4h/g9zwjlQAyjtpgcFkODjcOQS0Es%3D' (2025-05-31)
  → 'github:NixOS/nixpkgs/6027c30c8e9810896b92429f0092f624f7b1aace?narHash=sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg%3D' (2025-07-25)
• Updated input 'neovim-nightly-overlay/treefmt-nix':
    'github:numtide/treefmt-nix/1f3f7b784643d488ba4bf315638b2b0a4c5fb007?narHash=sha256-9YzfeN8CB6SzNPyPm2XjRRqSixDopTapaRsnTpXUEY8%3D' (2025-05-26)
  → 'github:numtide/treefmt-nix/2673921c03d6e75fdf4aa93e025772608d1482cf?narHash=sha256-Bv9h1AJegLI8uAhiJ1sZ4XAndYxhgf38tMgCQwiEpmc%3D' (2025-07-25)
• Updated input 'nh':
    'github:nix-community/nh/992aa30f55d35395b129376f16809319a9b23b16' (2025-06-27)
  → 'github:nix-community/nh/d9a869acec8dd35efa658234c158e6fc82e7064a' (2025-07-26)
• Updated input 'nix-index-database':
    'github:nix-community/nix-index-database/2860bee699248d828c2ed9097a1cd82c2f991b43?narHash=sha256-i4GZdKAK97S0ZMU3w4fqgEJr0cVywzqjugt2qZPrScs%3D' (2025-06-01)
  → 'github:nix-community/nix-index-database/f0736b09c43028fd726fb70c3eb3d1f0795454cf' (2025-07-27)
• Updated input 'nixos-hardware':
    'github:NixOS/nixos-hardware/daa628a725ab4948e0e2b795e8fb6f4c3e289a7a?narHash=sha256-pZH4bqbOd8S%2Bsi6UcfjHovWDiWKiIGRNRMpmRWaDIms%3D' (2025-05-30)
  → 'github:NixOS/nixos-hardware/cc66fddc6cb04ab479a1bb062f4d4da27c936a22' (2025-07-21)
• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/910796cabe436259a29a72e8d3f5e180fc6dfacc?narHash=sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8%3D' (2025-05-31)
  → 'github:nixos/nixpkgs/7fd36ee82c0275fb545775cc5e4d30542899511d' (2025-07-25)
• Updated input 'nvim':
    'github:iofq/nvim.nix/d998429cb8364d50f62fadb0c686a8c0bc651b96' (2025-07-07)
  → 'github:iofq/nvim.nix/d7ae87e67182f5fdd00cc08b61efa3436abf9a7b' (2025-07-23)
• Updated input 'nvim/neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/a4252dd30a64aef3fa59ad1f9ded862381df117a' (2025-07-06)
  → 'github:nix-community/neovim-nightly-overlay/e63079523e06e0b7d8d766d40573409d2c5ecc9d' (2025-07-21)
• Updated input 'nvim/neovim-nightly-overlay/hercules-ci-effects':
    'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23)
  → 'github:hercules-ci/hercules-ci-effects/5f2e09654b2e70ba643e41609d9f9b6640f22113?narHash=sha256-CNBgr4OZSuklGtNOa9CnTNo9%2BXceqn/EDAC1Tc43fH8%3D' (2025-07-15)
• Updated input 'nvim/neovim-nightly-overlay/hercules-ci-effects/flake-parts':
    'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01)
  → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01)
• Updated input 'nvim/neovim-nightly-overlay/neovim-src':
    'github:neovim/neovim/8fe4e120a2de558fddbb91ba5438d78f3dbd926a?narHash=sha256-z2PkkcUBuO5IWQrra034YBl8ioerkHXHai9GCeoaRuM%3D' (2025-07-05)
  → 'github:neovim/neovim/8ee82da3cfd228d50816aeb5f5db22175f5a4ede?narHash=sha256-VHCJ/E%2B3iI5pH20rW%2Baqq830erPrAzTfOT8Wndax2pI%3D' (2025-07-20)
• Updated input 'nvim/neovim-nightly-overlay/nixpkgs':
    'github:NixOS/nixpkgs/c860cf0b3a0829f0f6cf344ca8de83a2bbfab428?narHash=sha256-4E7wWftF1ExK5ZEDzj41%2B9mVgxtuRV3wWCId7QAYMAU%3D' (2025-07-04)
  → 'github:NixOS/nixpkgs/6b4955211758ba47fac850c040a27f23b9b4008f?narHash=sha256-dPALCtmik9Wr14MGqVXm%2BOQcv7vhPBXcWNIOThGnB/Q%3D' (2025-07-19)
• Updated input 'nvim/neovim-nightly-overlay/treefmt-nix':
    'github:numtide/treefmt-nix/ac8e6f32e11e9c7f153823abc3ab007f2a65d3e1?narHash=sha256-0IEdQB1nS%2BuViQw4k3VGUXntjkDp7aAlqcxdewb/hAc%3D' (2025-06-26)
  → 'github:numtide/treefmt-nix/421b56313c65a0815a52b424777f55acf0b56ddf?narHash=sha256-tzbhc4XttkyEhswByk5R38l%2BztN9UDbnj0cTcP6Hp9A%3D' (2025-07-20)
• Updated input 'pre-commit-hooks':
    'github:cachix/pre-commit-hooks.nix/80479b6ec16fefd9c1db3ea13aeb038c60530f46?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16)
  → 'github:cachix/pre-commit-hooks.nix/16ec914f6fb6f599ce988427d9d94efddf25fe6d' (2025-06-24)
• Updated input 'sops-nix':
    'github:Mic92/sops-nix/8d215e1c981be3aa37e47aeabd4e61bb069548fd?narHash=sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD%2B9H%2BWc8o%3D' (2025-05-18)
  → 'github:Mic92/sops-nix/2c8def626f54708a9c38a5861866660395bb3461' (2025-07-15)
• Updated input 'systems':
    'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e?narHash=sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768%3D' (2023-04-09)
  → 'github:nix-systems/default/da67096a3b9bf56a91d16901293e51ba5b49a27e' (2023-04-09)
• Updated input 'treefmt-nix':
    'github:numtide/treefmt-nix/1f3f7b784643d488ba4bf315638b2b0a4c5fb007?narHash=sha256-9YzfeN8CB6SzNPyPm2XjRRqSixDopTapaRsnTpXUEY8%3D' (2025-05-26)
  → 'github:numtide/treefmt-nix/2673921c03d6e75fdf4aa93e025772608d1482cf' (2025-07-25)
2025-07-27 17:05:34 -05:00
24d62c642b flake.lock: Update
Flake lock file updates:

• Updated input 'nvim':
    'github:iofq/nvim.nix/5a884a48c23ca3293c33b7e3b52388ed1995a6d0?narHash=sha256-9XpyL7aasic9NXHy8BHFlQArcdRa%2BCf5%2BPTccQOrP3U%3D' (2025-06-17)
  → 'github:iofq/nvim.nix/d998429cb8364d50f62fadb0c686a8c0bc651b96' (2025-07-07)
• Updated input 'nvim/flake-utils':
    'github:numtide/flake-utils/11707dc2f618dd54ca8739b309ec4fc024de578b?narHash=sha256-l0KFg5HjrsfsO/JpG%2Br7fRrqm12kzFHyUHqHCVpMMbI%3D' (2024-11-13)
  → 'github:numtide/flake-utils/11707dc2f618dd54ca8739b309ec4fc024de578b' (2024-11-13)
• Updated input 'nvim/gen-luarc':
    'github:mrcjkb/nix-gen-luarc-json/b36b69c4ded9f31b079523bc452e23458734cf00?narHash=sha256-Q4tgm8ZHAQUdvsNft86MqIbHQAm7OF7RT/wwYWXqSdY%3D' (2024-08-19)
  → 'github:mrcjkb/nix-gen-luarc-json/b36b69c4ded9f31b079523bc452e23458734cf00' (2024-08-19)
• Removed input 'nvim/mini-nvim'
• Updated input 'nvim/neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/5b231a9c0efd15547569bd753dbec420b90c8c98?narHash=sha256-wGa5HXzU9lK4Q7ODv8/n5oY/QbIl8R2wUyDxcLsV3B4%3D' (2025-06-17)
  → 'github:nix-community/neovim-nightly-overlay/a4252dd30a64aef3fa59ad1f9ded862381df117a' (2025-07-06)
• Updated input 'nvim/neovim-nightly-overlay/flake-parts':
    'github:hercules-ci/flake-parts/9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569?narHash=sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98%3D' (2025-06-08)
  → 'github:hercules-ci/flake-parts/77826244401ea9de6e3bac47c2db46005e1f30b5?narHash=sha256-Tyw1RjYEsp5scoigs1384gIg6e0GoBVjms4aXFfRssQ%3D' (2025-07-01)
• Updated input 'nvim/neovim-nightly-overlay/git-hooks':
    'github:cachix/git-hooks.nix/623c56286de5a3193aa38891a6991b28f9bab056?narHash=sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4%3D' (2025-06-11)
  → 'github:cachix/git-hooks.nix/16ec914f6fb6f599ce988427d9d94efddf25fe6d?narHash=sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg%3D' (2025-06-24)
• Updated input 'nvim/neovim-nightly-overlay/neovim-src':
    'github:neovim/neovim/3e984cf02bdcebe2d4f31792505b6a3784fd1b1b?narHash=sha256-JTG1BFIIKmFfuT%2BsIhwrphAIjREgV4FfRcyuztr89P0%3D' (2025-06-16)
  → 'github:neovim/neovim/8fe4e120a2de558fddbb91ba5438d78f3dbd926a?narHash=sha256-z2PkkcUBuO5IWQrra034YBl8ioerkHXHai9GCeoaRuM%3D' (2025-07-05)
• Updated input 'nvim/neovim-nightly-overlay/nixpkgs':
    'github:NixOS/nixpkgs/41da1e3ea8e23e094e5e3eeb1e6b830468a7399e?narHash=sha256-jp0D4vzBcRKwNZwfY4BcWHemLGUs4JrS3X9w5k/JYDA%3D' (2025-06-14)
  → 'github:NixOS/nixpkgs/c860cf0b3a0829f0f6cf344ca8de83a2bbfab428?narHash=sha256-4E7wWftF1ExK5ZEDzj41%2B9mVgxtuRV3wWCId7QAYMAU%3D' (2025-07-04)
• Updated input 'nvim/neovim-nightly-overlay/treefmt-nix':
    'github:numtide/treefmt-nix/a05be418a1af1198ca0f63facb13c985db4cb3c5?narHash=sha256-eEy8cuS0mZ2j/r/FE0/LYBSBcIs/MKOIVakwHVuqTfk%3D' (2025-06-06)
  → 'github:numtide/treefmt-nix/ac8e6f32e11e9c7f153823abc3ab007f2a65d3e1?narHash=sha256-0IEdQB1nS%2BuViQw4k3VGUXntjkDp7aAlqcxdewb/hAc%3D' (2025-06-26)
• Removed input 'nvim/nixpkgs-uns'
2025-07-15 20:41:20 -05:00
60613b0a1d
random rice 2025-07-06 12:51:06 -05:00
f080730c99
flake.lock: Update
Flake lock file updates:

• Updated input 'nvim':
    'github:iofq/nvim.nix/ee647f4338a07d5837479050a6b98b170a283dde?narHash=sha256-tx/SXqbRL6E5pSSBWZgh1e9m85P/lveKTYkb583IEOQ%3D' (2025-06-02)
  → 'github:iofq/nvim.nix/5a884a48c23ca3293c33b7e3b52388ed1995a6d0?narHash=sha256-9XpyL7aasic9NXHy8BHFlQArcdRa%2BCf5%2BPTccQOrP3U%3D' (2025-06-17)
• Updated input 'nvim/mini-nvim':
    'github:echasnovski/mini.nvim/94cae4660a8b2d95dbbd56e1fbc6fcfa2716d152?narHash=sha256-Nym%2BlyfEkAdnEmUT6s8ejd%2BhTIMvC6tMUzJyZLmp6cg%3D' (2025-05-20)
  → 'github:echasnovski/mini.nvim/3f5d06a6f710966cb93baaadc4897eeb6d6210e5?narHash=sha256-vR8sOlGEST8SlknAtvfsP3j40rZaS5Jed8FwDdCBP94%3D' (2025-06-14)
• Updated input 'nvim/neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/1709adcc65a1779b6513db3470dad257de7c24ae?narHash=sha256-9SSsln1nd3SnECH7I466UzLZ2luJS1phTOYG0ehRAxQ%3D' (2025-05-21)
  → 'github:nix-community/neovim-nightly-overlay/5b231a9c0efd15547569bd753dbec420b90c8c98?narHash=sha256-wGa5HXzU9lK4Q7ODv8/n5oY/QbIl8R2wUyDxcLsV3B4%3D' (2025-06-17)
• Updated input 'nvim/neovim-nightly-overlay/flake-parts':
    'github:hercules-ci/flake-parts/c621e8422220273271f52058f618c94e405bb0f5?narHash=sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY%3D' (2025-04-01)
  → 'github:hercules-ci/flake-parts/9305fe4e5c2a6fcf5ba6a3ff155720fbe4076569?narHash=sha256-tYBdgS56eXYaWVW3fsnPQ/nFlgWi/Z2Ymhyu21zVM98%3D' (2025-06-08)
• Updated input 'nvim/neovim-nightly-overlay/git-hooks':
    'github:cachix/git-hooks.nix/80479b6ec16fefd9c1db3ea13aeb038c60530f46?narHash=sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo%2BbnXU9D9k%3D' (2025-05-16)
  → 'github:cachix/git-hooks.nix/623c56286de5a3193aa38891a6991b28f9bab056?narHash=sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4%3D' (2025-06-11)
• Updated input 'nvim/neovim-nightly-overlay/hercules-ci-effects':
    'github:hercules-ci/hercules-ci-effects/7168f6002a6b48a9b6151e1e97e974a0722ecfdc?narHash=sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4%3D' (2025-05-15)
  → 'github:hercules-ci/hercules-ci-effects/231726642197817d20310b9d39dd4afb9e899489?narHash=sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk%3D' (2025-05-23)
• Updated input 'nvim/neovim-nightly-overlay/neovim-src':
    'github:neovim/neovim/cd9d8469b22cedeb5ccad3def6e3cfee2877577f?narHash=sha256-5oDiP8Yn93692CUEH81LJbZxPIprIozLHdkFt5N9Np4%3D' (2025-05-20)
  → 'github:neovim/neovim/3e984cf02bdcebe2d4f31792505b6a3784fd1b1b?narHash=sha256-JTG1BFIIKmFfuT%2BsIhwrphAIjREgV4FfRcyuztr89P0%3D' (2025-06-16)
• Updated input 'nvim/neovim-nightly-overlay/nixpkgs':
    'github:NixOS/nixpkgs/2f9173bde1d3fbf1ad26ff6d52f952f9e9da52ea?narHash=sha256-NnXFQu7g4LnvPIPfJmBuZF7LFy/fey2g2%2BLCzjQhTUk%3D' (2025-05-20)
  → 'github:NixOS/nixpkgs/41da1e3ea8e23e094e5e3eeb1e6b830468a7399e?narHash=sha256-jp0D4vzBcRKwNZwfY4BcWHemLGUs4JrS3X9w5k/JYDA%3D' (2025-06-14)
• Updated input 'nvim/neovim-nightly-overlay/treefmt-nix':
    'github:numtide/treefmt-nix/ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb?narHash=sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg%3D' (2025-05-17)
  → 'github:numtide/treefmt-nix/a05be418a1af1198ca0f63facb13c985db4cb3c5?narHash=sha256-eEy8cuS0mZ2j/r/FE0/LYBSBcIs/MKOIVakwHVuqTfk%3D' (2025-06-06)
• Updated input 'nvim/nixpkgs-uns':
    'github:NixOS/nixpkgs/2795c506fe8fb7b03c36ccb51f75b6df0ab2553f?narHash=sha256-W7lqHp0qZiENCDwUZ5EX/lNhxjMdNapFnbErcbnP11Q%3D' (2025-05-20)
  → 'github:NixOS/nixpkgs/ee930f9755f58096ac6e8ca94a1887e0534e2d81?narHash=sha256-Kh9K4taXbVuaLC0IL%2B9HcfvxsSUx8dPB5s5weJcc9pc%3D' (2025-06-13)
2025-07-06 12:51:05 -05:00
0d29bb90ff
jj sign on push 2025-06-10 21:46:59 -05:00
bf9b9eaafa
jj log revset 2025-06-10 21:41:02 -05:00
30 changed files with 3693 additions and 565 deletions

2493
.aider.chat.history.md Normal file

File diff suppressed because it is too large Load diff

63
.aider.input.history Normal file
View file

@ -0,0 +1,63 @@
# 2025-06-03 01:43:42.121312
+no
# 2025-06-03 01:44:27.240992
+turn home-manager/shared/wayland into a proper nix module with an enable option
# 2025-06-03 01:44:36.865575
+/models
# 2025-06-03 01:47:42.074524
+0528
# 2025-06-03 01:47:50.370737
+/models 0528
# 2025-06-03 01:47:54.475226
+/models deepseek
# 2025-06-03 01:48:14.194735
+/models free
# 2025-06-03 01:48:25.146871
+/model openrouter/deepseek/deepseek-r1:free
# 2025-06-03 01:48:29.778686
+turn home-manager/shared/wayland into a proper nix module with an enable option
# 2025-06-03 01:49:15.946800
+turn home-manager/shared/wayland/alacritty/default.nix into a proper nix module with an enable option
# 2025-06-03 01:49:18.378542
+Y
# 2025-06-03 01:51:09.747592
+how would i integrate that module in home-manager/t14/home.nix?
# 2025-06-03 01:51:11.250817
+y
# 2025-06-03 02:02:23.802624
+create a nix module for home-manager/shared/programs/shell/git.nix, home-manager/shared/programs/shell/llm.nix, and home-manager/shared/programs/shell/tmux.nix, and home-manager/shared/programs/shell/fish/default.nix, including an enable option. then, import them in home-manager/t14/home.nix and enable them
# 2025-06-03 02:02:25.881078
+A
# 2025-06-03 02:04:06.643518
+y
# 2025-06-03 02:06:18.967080
+can you update home-manager/shared/programs/shell.nix and the imported files to use lib.mkEnableOption for each module? i.e i want git.enable = true, not programs.shell.git.enable
# 2025-06-03 02:08:58.825429
+can you update the /programs/ files to use lib.mkEnableOption for each module? similar to how home-manager/shared/wayland/alacritty/default.nix is setup i.e i want git.enable = true, not programs.shell.git.enable
# 2025-06-03 02:09:00.961212
+Y
# 2025-06-03 02:11:05.315129
+y
# 2025-06-03 02:12:57.508779
+n

Binary file not shown.

View file

@ -2,9 +2,11 @@
keys: keys:
- &t14 age14e2d2y8e2avzfrsyxg9dudxd36svm24t7skw6e969n0c42znlp3shffdtg - &t14 age14e2d2y8e2avzfrsyxg9dudxd36svm24t7skw6e969n0c42znlp3shffdtg
- &consensus age16pdhm238k63uye3rf4cwwe7ddyzds6xj9jv4wpsfggkghyarjqtsjzkxna - &consensus age16pdhm238k63uye3rf4cwwe7ddyzds6xj9jv4wpsfggkghyarjqtsjzkxna
- &oracle age12tz2r7clep9e450qhr5a6ctnx29ywmu0llq8uk9kcwhpp82zsa0sk9la9h
creation_rules: creation_rules:
- path_regex: secrets/[^/]+\.yaml$ - path_regex: secrets/[^/]+\.yaml$
key_groups: key_groups:
- age: - age:
- *t14 - *t14
- *consensus - *consensus
- *oracle

573
flake.lock generated
View file

@ -1,5 +1,21 @@
{ {
"nodes": { "nodes": {
"dart": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_5"
},
"locked": {
"lastModified": 1758080529,
"narHash": "sha256-Sup4+HacL6Xe6mTk23N6sD4uXoU9dcoqRgc9Mu0oQ5E=",
"path": "/home/e/dev/dart.nvim",
"type": "path"
},
"original": {
"path": "/home/e/dev/dart.nvim",
"type": "path"
}
},
"deploy-rs": { "deploy-rs": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
@ -9,11 +25,10 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1727447169, "lastModified": 1756719547,
"narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=",
"owner": "serokell", "owner": "serokell",
"repo": "deploy-rs", "repo": "deploy-rs",
"rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", "rev": "125ae9e3ecf62fb2c0fd4f2d894eb971f1ecaed2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -35,12 +50,12 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1748911895, "lastModified": 1757699119,
"narHash": "sha256-xXeDMMKuv8A/wlHgq6+4E6fcYJm/Munr764E0wyFEOs=", "narHash": "sha256-iOOoVdrkcyk95Xg68TuPeAwpz+v80mgZCqil0jpPZuY=",
"rev": "0bfc40897a765936318cad1076c915308bf33855", "rev": "1e16c8f8a44573bb0648c76b6c98352436f5171e",
"revCount": 246, "revCount": 304,
"type": "tarball", "type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/3.6.2/01973348-6edf-7091-8b18-54f942b2bf2f/source.tar.gz" "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/determinate/3.11.2/01993f0b-1215-7072-ac1a-f2b27b566115/source.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -50,47 +65,47 @@
"determinate-nixd-aarch64-darwin": { "determinate-nixd-aarch64-darwin": {
"flake": false, "flake": false,
"locked": { "locked": {
"narHash": "sha256-qh0zj1z3zc6wd3vuQIZkfisxDIIQE/oC1l3zpEWoWx0=", "narHash": "sha256-q1tqDvmfjDgLk/wbYf4pRhyHDS94iY85Q79FPBtcv7g=",
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/macOS" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/macOS"
}, },
"original": { "original": {
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/macOS" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/macOS"
} }
}, },
"determinate-nixd-aarch64-linux": { "determinate-nixd-aarch64-linux": {
"flake": false, "flake": false,
"locked": { "locked": {
"narHash": "sha256-PVdj96Pxn9pDP0WrYVlJWsymCXNDBAjzyk/b0qMtRRs=", "narHash": "sha256-E1vGfcQ5dqtRG9EDP6eOQWCnCIRB2XFkFBp2C4FgQ8c=",
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/aarch64-linux" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/aarch64-linux"
}, },
"original": { "original": {
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/aarch64-linux" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/aarch64-linux"
} }
}, },
"determinate-nixd-x86_64-linux": { "determinate-nixd-x86_64-linux": {
"flake": false, "flake": false,
"locked": { "locked": {
"narHash": "sha256-X3gcLv4dHU3bkDgNN5GaY0sfsWrSqIHoKjVNP8+uHHQ=", "narHash": "sha256-GtxtkI0cOC2A30Xw6gCDTN7JxN1zJGh7/eIXr6AlTSA=",
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/x86_64-linux" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/x86_64-linux"
}, },
"original": { "original": {
"type": "file", "type": "file",
"url": "https://install.determinate.systems/determinate-nixd/tag/v3.6.2/x86_64-linux" "url": "https://install.determinate.systems/determinate-nixd/tag/v3.11.2/x86_64-linux"
} }
}, },
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1733328505,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -102,11 +117,11 @@
"flake-compat_2": { "flake-compat_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1733328505, "lastModified": 1696426674,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -134,11 +149,11 @@
"flake-compat_4": { "flake-compat_4": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1747046372,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -182,11 +197,11 @@
"flake-compat_7": { "flake-compat_7": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1747046372,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -198,11 +213,11 @@
"flake-compat_8": { "flake-compat_8": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1747046372,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -220,17 +235,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1733312601, "lastModified": 1748821116,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=", "narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=",
"owner": "hercules-ci", "rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1",
"repo": "flake-parts", "revCount": 377,
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9", "type": "tarball",
"type": "github" "url": "https://api.flakehub.com/f/pinned/hercules-ci/flake-parts/0.1.377%2Brev-49f0870db23e8c1ca0b5259734a02cd9e1e371a1/01972f28-554a-73f8-91f4-d488cc502f08/source.tar.gz"
}, },
"original": { "original": {
"owner": "hercules-ci", "type": "tarball",
"repo": "flake-parts", "url": "https://flakehub.com/f/hercules-ci/flake-parts/0.1"
"type": "github"
} }
}, },
"flake-parts_2": { "flake-parts_2": {
@ -241,11 +255,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1748821116, "lastModified": 1756770412,
"narHash": "sha256-F82+gS044J1APL0n4hH50GYdPRv/5JWm34oCJYmVKdE=", "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "49f0870db23e8c1ca0b5259734a02cd9e1e371a1", "rev": "4524271976b625a4a605beefd893f270620fd751",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -255,27 +269,6 @@
} }
}, },
"flake-parts_3": { "flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"neovim-nightly-overlay",
"hercules-ci-effects",
"nixpkgs"
]
},
"locked": {
"lastModified": 1743550720,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5",
"type": "github"
},
"original": {
"id": "flake-parts",
"type": "indirect"
}
},
"flake-parts_4": {
"inputs": { "inputs": {
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
@ -293,7 +286,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_5": { "flake-parts_4": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"nvim", "nvim",
@ -302,11 +295,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743550720, "lastModified": 1756770412,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5", "rev": "4524271976b625a4a605beefd893f270620fd751",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -315,7 +308,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_6": { "flake-parts_5": {
"inputs": { "inputs": {
"nixpkgs-lib": [ "nixpkgs-lib": [
"nvim", "nvim",
@ -325,11 +318,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1743550720, "lastModified": 1754487366,
"narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "narHash": "sha256-pHYj8gUBapuUzKV/kN/tR3Zvqc7o6gdFB9XKXIp1SQ8=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "c621e8422220273271f52058f618c94e405bb0f5", "rev": "af66ad14b28a127c5c0f3bbb298218fc63528a18",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -355,9 +348,44 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_2": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1731533236,
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_4"
},
"locked": {
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"gen-luarc": { "gen-luarc": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_4", "flake-parts": "flake-parts_3",
"git-hooks": "git-hooks_2", "git-hooks": "git-hooks_2",
"luvit-meta": "luvit-meta", "luvit-meta": "luvit-meta",
"nixpkgs": [ "nixpkgs": [
@ -366,11 +394,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1724097937, "lastModified": 1755304025,
"narHash": "sha256-Q4tgm8ZHAQUdvsNft86MqIbHQAm7OF7RT/wwYWXqSdY=", "narHash": "sha256-xVKfjFwc0zMbLMjLTiHz+0llggkjs93SmHkhaa9S3M4=",
"owner": "mrcjkb", "owner": "mrcjkb",
"repo": "nix-gen-luarc-json", "repo": "nix-gen-luarc-json",
"rev": "b36b69c4ded9f31b079523bc452e23458734cf00", "rev": "1865b0ebb753ae5324d7381b1fa8c98c04ec7509",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -389,11 +417,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747372754, "lastModified": 1758108966,
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -413,25 +441,19 @@
"determinate", "determinate",
"nix", "nix",
"nixpkgs" "nixpkgs"
],
"nixpkgs-stable": [
"determinate",
"nix",
"nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1734279981, "lastModified": 1747372754,
"narHash": "sha256-NdaCraHPp8iYMWzdXAt5Nv6sA3MUzlCiGiR586TCwo0=", "narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
"owner": "cachix", "rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46",
"repo": "git-hooks.nix", "revCount": 1026,
"rev": "aa9f40c906904ebd83da78e7f328cd8aeaeae785", "type": "tarball",
"type": "github" "url": "https://api.flakehub.com/f/pinned/cachix/git-hooks.nix/0.1.1026%2Brev-80479b6ec16fefd9c1db3ea13aeb038c60530f46/0196d79a-1b35-7b8e-a021-c894fb62163d/source.tar.gz"
}, },
"original": { "original": {
"owner": "cachix", "type": "tarball",
"repo": "git-hooks.nix", "url": "https://flakehub.com/f/cachix/git-hooks.nix/0.1.941"
"type": "github"
} }
}, },
"git-hooks_2": { "git-hooks_2": {
@ -470,11 +492,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747372754, "lastModified": 1755960406,
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=", "narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -574,18 +596,21 @@
}, },
"hercules-ci-effects": { "hercules-ci-effects": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_3", "flake-parts": [
"neovim-nightly-overlay",
"flake-parts"
],
"nixpkgs": [ "nixpkgs": [
"neovim-nightly-overlay", "neovim-nightly-overlay",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1748000383, "lastModified": 1758022363,
"narHash": "sha256-EaAJhwfJGBncgIV/0NlJviid2DP93cTMc9h0q6P6xXk=", "narHash": "sha256-ENUhCRWgSX4ni751HieNuQoq06dJvApV/Nm89kh+/A0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "hercules-ci-effects", "repo": "hercules-ci-effects",
"rev": "231726642197817d20310b9d39dd4afb9e899489", "rev": "1a3667d33e247ad35ca250698d63f49a5453d824",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -596,7 +621,7 @@
}, },
"hercules-ci-effects_2": { "hercules-ci-effects_2": {
"inputs": { "inputs": {
"flake-parts": "flake-parts_6", "flake-parts": "flake-parts_5",
"nixpkgs": [ "nixpkgs": [
"nvim", "nvim",
"neovim-nightly-overlay", "neovim-nightly-overlay",
@ -604,11 +629,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747284884, "lastModified": 1755233722,
"narHash": "sha256-lTSKhRrassMcJ1ZsuUVunyl/F04vvCKY80HB/4rvvm4=", "narHash": "sha256-AavrbMltJKcC2Fx0lfJoZfmy7g87ebXU0ddVenhajLA=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "hercules-ci-effects", "repo": "hercules-ci-effects",
"rev": "7168f6002a6b48a9b6151e1e97e974a0722ecfdc", "rev": "99e03e72e3f7e13506f80ef9ebaedccb929d84d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -624,11 +649,10 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1748830238, "lastModified": 1758593331,
"narHash": "sha256-EB+LzYHK0D5aqxZiYoPeoZoOzSAs8eqBDxm3R+6wMKU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "c7fdb7e90bff1a51b79c1eed458fb39e6649a82a", "rev": "9a2dc0efbc569ce9352a6ffb8e8ec8dbc098e142",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -638,6 +662,27 @@
"type": "github" "type": "github"
} }
}, },
"jj": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"nixpkgs"
],
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1758574386,
"owner": "jj-vcs",
"repo": "jj",
"rev": "86bbe5a3cb5ea3bf79c97f907dc476c79fdc4aa3",
"type": "github"
},
"original": {
"owner": "jj-vcs",
"repo": "jj",
"type": "github"
}
},
"luvit-meta": { "luvit-meta": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -654,22 +699,6 @@
"type": "github" "type": "github"
} }
}, },
"mini-nvim": {
"flake": false,
"locked": {
"lastModified": 1747734615,
"narHash": "sha256-Nym+lyfEkAdnEmUT6s8ejd+hTIMvC6tMUzJyZLmp6cg=",
"owner": "echasnovski",
"repo": "mini.nvim",
"rev": "94cae4660a8b2d95dbbd56e1fbc6fcfa2716d152",
"type": "github"
},
"original": {
"owner": "echasnovski",
"repo": "mini.nvim",
"type": "github"
}
},
"neovim-nightly-overlay": { "neovim-nightly-overlay": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
@ -681,11 +710,10 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1748838808, "lastModified": 1758585901,
"narHash": "sha256-mSAJD41472sC55IW+lUQGAjn9gsh7w/ClNvfukMvHEc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "4fb826468dd110892a4784a0106ef6f3a34f0907", "rev": "095a690e04f89107ba15c3b7ebd1954e0802adfe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -697,19 +725,19 @@
"neovim-nightly-overlay_2": { "neovim-nightly-overlay_2": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_6", "flake-compat": "flake-compat_6",
"flake-parts": "flake-parts_5", "flake-parts": "flake-parts_4",
"git-hooks": "git-hooks_3", "git-hooks": "git-hooks_3",
"hercules-ci-effects": "hercules-ci-effects_2", "hercules-ci-effects": "hercules-ci-effects_2",
"neovim-src": "neovim-src_2", "neovim-src": "neovim-src_2",
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_6",
"treefmt-nix": "treefmt-nix_2" "treefmt-nix": "treefmt-nix_2"
}, },
"locked": { "locked": {
"lastModified": 1747786187, "lastModified": 1756771594,
"narHash": "sha256-9SSsln1nd3SnECH7I466UzLZ2luJS1phTOYG0ehRAxQ=", "narHash": "sha256-Ln3i7qWzBThCgsetcPgotG1TK7TCZPzPudwKzGKtmPc=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "1709adcc65a1779b6513db3470dad257de7c24ae", "rev": "68c0096bd5d0ff8b9c436cf5338f1fb24957d980",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -721,11 +749,11 @@
"neovim-src": { "neovim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1748816622, "lastModified": 1758583287,
"narHash": "sha256-KWkPOptegP3DP+Y8tPM9KvtZ20pVusfinMM/brTwIIo=", "narHash": "sha256-Sg1Ge7rBC3jL9kg/xlkdr9rbvJILIUu6jkMnV28zMEE=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "52991d8728c876366cd28f75be29ee579a0a8605", "rev": "78371610769f980cd0a629853628de5fe9127cee",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -737,11 +765,11 @@
"neovim-src_2": { "neovim-src_2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1747760768, "lastModified": 1756770793,
"narHash": "sha256-5oDiP8Yn93692CUEH81LJbZxPIprIozLHdkFt5N9Np4=", "narHash": "sha256-qlgoWy70c9Qcr/jpru16XwSQlkq0tFbFOZcyfmQRPu4=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "cd9d8469b22cedeb5ccad3def6e3cfee2877577f", "rev": "4f374bf938283b2d8c842bddb4583337aba0555d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -759,12 +787,12 @@
"nixpkgs-regression": "nixpkgs-regression" "nixpkgs-regression": "nixpkgs-regression"
}, },
"locked": { "locked": {
"lastModified": 1748909153, "lastModified": 1757694985,
"narHash": "sha256-A/yjYc+vdkjvw3xI7qgfYRI+jzyiW9Ay6JPhGu1gFyo=", "narHash": "sha256-3Ia+y7Hbwnzcuf1hyuVnFtbnSR6ErQeFjemHdVxjCNE=",
"rev": "a18fd9b131eb713eba11a746beb3d79628016936", "rev": "766f43aa6acb1b3578db488c19fbbedf04ed9f24",
"revCount": 20936, "revCount": 22340,
"type": "tarball", "type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.6.2/01973342-bafd-782a-bbcf-6606879c0df6/source.tar.gz" "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nix-src/3.11.2/01993ee9-f8e7-7b80-80df-ec0a20a32514/source.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -778,11 +806,10 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1748751003, "lastModified": 1758427679,
"narHash": "sha256-i4GZdKAK97S0ZMU3w4fqgEJr0cVywzqjugt2qZPrScs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-index-database", "repo": "nix-index-database",
"rev": "2860bee699248d828c2ed9097a1cd82c2f991b43", "rev": "fd2569ca2ef7d69f244cd9ffcb66a0540772ff85",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -793,11 +820,10 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1748634340, "lastModified": 1757943327,
"narHash": "sha256-pZH4bqbOd8S+si6UcfjHovWDiWKiIGRNRMpmRWaDIms=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "daa628a725ab4948e0e2b795e8fb6f4c3e289a7a", "rev": "67a709cfe5d0643dafd798b0b613ed579de8be05",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -808,18 +834,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1747179050, "lastModified": 1755922037,
"narHash": "sha256-qhFMmDkeJX9KJwr5H32f1r7Prs7XbQWtO0h3V0a0rFY=", "narHash": "sha256-wY1+2JPH0ZZC4BQefoZw/k+3+DowFyfOxv17CN/idKs=",
"owner": "NixOS", "rev": "b1b3291469652d5a2edb0becc4ef0246fff97a7c",
"repo": "nixpkgs", "revCount": 808723,
"rev": "adaa24fbf46737f3f1b5497bf64bae750f82942e", "type": "tarball",
"type": "github" "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2505.808723%2Brev-b1b3291469652d5a2edb0becc4ef0246fff97a7c/0198daf7-011a-7703-95d7-57146e794342/source.tar.gz"
}, },
"original": { "original": {
"owner": "NixOS", "type": "tarball",
"ref": "nixos-unstable", "url": "https://flakehub.com/f/NixOS/nixpkgs/0.2505"
"repo": "nixpkgs",
"type": "github"
} }
}, },
"nixpkgs-23-11": { "nixpkgs-23-11": {
@ -882,30 +906,14 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-uns": {
"locked": {
"lastModified": 1747744144,
"narHash": "sha256-W7lqHp0qZiENCDwUZ5EX/lNhxjMdNapFnbErcbnP11Q=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2795c506fe8fb7b03c36ccb51f75b6df0ab2553f",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1748217807, "lastModified": 1757034884,
"narHash": "sha256-P3u2PXxMlo49PutQLnk2PhI/imC69hFl1yY4aT5Nax8=", "narHash": "sha256-PgLSZDBEWUHpfTRfFyklmiiLBE1i1aGCtz4eRA3POao=",
"rev": "3108eaa516ae22c2360928589731a4f1581526ef", "rev": "ca77296380960cd497a765102eeb1356eb80fed0",
"revCount": 806109, "revCount": 856744,
"type": "tarball", "type": "tarball",
"url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.806109%2Brev-3108eaa516ae22c2360928589731a4f1581526ef/01971040-062f-7e68-83d1-5cd2af08d87e/source.tar.gz" "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/nixpkgs-weekly/0.1.856744%2Brev-ca77296380960cd497a765102eeb1356eb80fed0/01992cf9-9347-761a-8963-9cbe43abe2fa/source.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -914,11 +922,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1748662220, "lastModified": 1758446476,
"narHash": "sha256-7gGa49iB9nCnFk4h/g9zwjlQAyjtpgcFkODjcOQS0Es=", "narHash": "sha256-5rdAi7CTvM/kSs6fHe1bREIva5W3TbImsto+dxG4mBo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "59138c7667b7970d205d6a05a8bfa2d78caa3643", "rev": "a1f79a1770d05af18111fbbe2a3ab2c42c0f6cd0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -930,11 +938,10 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1748693115, "lastModified": 1758277210,
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc", "rev": "8eaee110344796db060382e15d3af0a9fc396e0e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -946,11 +953,26 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1747728033, "lastModified": 1755660401,
"narHash": "sha256-NnXFQu7g4LnvPIPfJmBuZF7LFy/fey2g2+LCzjQhTUk=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2f9173bde1d3fbf1ad26ff6d52f952f9e9da52ea", "rev": "5788de501b965d7413f2beaac10aeeb56f9a19a8",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "master",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_6": {
"locked": {
"lastModified": 1756696532,
"narHash": "sha256-6FWagzm0b7I/IGigOv9pr6LL7NQ86mextfE8g8Q6HBg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "58dcbf1ec551914c3756c267b8b9c8c86baa1b2f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -960,28 +982,74 @@
"type": "github" "type": "github"
} }
}, },
"nvim": { "nixpkgs_7": {
"inputs": {
"flake-utils": "flake-utils",
"gen-luarc": "gen-luarc",
"mini-nvim": "mini-nvim",
"neovim-nightly-overlay": "neovim-nightly-overlay_2",
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-uns": "nixpkgs-uns"
},
"locked": { "locked": {
"lastModified": 1748846777, "lastModified": 1756785263,
"narHash": "sha256-tx/SXqbRL6E5pSSBWZgh1e9m85P/lveKTYkb583IEOQ=", "narHash": "sha256-EPOPPfDnxKZna6Qt1Pl2OsECN8SMLVw7QKeRntWJUa4=",
"owner": "iofq", "owner": "NixOS",
"repo": "nvim.nix", "repo": "nixpkgs",
"rev": "ee647f4338a07d5837479050a6b98b170a283dde", "rev": "10bee29e15dab2dd3f406aebbdf79ea4af52ceeb",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "iofq", "owner": "NixOS",
"repo": "nvim.nix", "ref": "master",
"repo": "nixpkgs",
"type": "github"
}
},
"nvim": {
"inputs": {
"dart": "dart",
"flake-utils": "flake-utils_3",
"gen-luarc": "gen-luarc",
"neovim-nightly-overlay": "neovim-nightly-overlay_2",
"nixpkgs": "nixpkgs_7",
"nvim-treesitter": "nvim-treesitter",
"nvim-treesitter-textobjects": "nvim-treesitter-textobjects"
},
"locked": {
"lastModified": 1758080920,
"narHash": "sha256-0songGRyfBLDBIHqQKMi0JL9I1fjCT8c3wYEnxDvr3o=",
"path": "/home/e/dev/nvim.nix",
"type": "path"
},
"original": {
"path": "/home/e/dev/nvim.nix",
"type": "path"
}
},
"nvim-treesitter": {
"flake": false,
"locked": {
"lastModified": 1756620408,
"narHash": "sha256-UR9cj1pYXSZ5gYvY1tj+/8ZLsK2uzY2owxCOeqb08f4=",
"owner": "nvim-treesitter",
"repo": "nvim-treesitter",
"rev": "802195d8f1980db25a7a39a55f9a25df21756c73",
"type": "github"
},
"original": {
"owner": "nvim-treesitter",
"ref": "main",
"repo": "nvim-treesitter",
"type": "github"
}
},
"nvim-treesitter-textobjects": {
"flake": false,
"locked": {
"lastModified": 1756368113,
"narHash": "sha256-+KmOpRi4JAqm6UqYdtk80jwFrJhLCs0lZM/Liofq0R4=",
"owner": "nvim-treesitter",
"repo": "nvim-treesitter-textobjects",
"rev": "1b2d85d3de6114c4bcea89ffb2cd1ce9e3a19931",
"type": "github"
},
"original": {
"owner": "nvim-treesitter",
"ref": "main",
"repo": "nvim-treesitter-textobjects",
"type": "github" "type": "github"
} }
}, },
@ -994,11 +1062,10 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747372754, "lastModified": 1758108966,
"narHash": "sha256-2Y53NGIX2vxfie1rOW0Qb86vjRZ7ngizoo+bnXU9D9k=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "80479b6ec16fefd9c1db3ea13aeb038c60530f46", "rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1012,6 +1079,7 @@
"deploy-rs": "deploy-rs", "deploy-rs": "deploy-rs",
"determinate": "determinate", "determinate": "determinate",
"home-manager": "home-manager", "home-manager": "home-manager",
"jj": "jj",
"neovim-nightly-overlay": "neovim-nightly-overlay", "neovim-nightly-overlay": "neovim-nightly-overlay",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
@ -1019,10 +1087,31 @@
"nvim": "nvim", "nvim": "nvim",
"pre-commit-hooks": "pre-commit-hooks", "pre-commit-hooks": "pre-commit-hooks",
"sops-nix": "sops-nix", "sops-nix": "sops-nix",
"systems": "systems_3", "systems": "systems_5",
"treefmt-nix": "treefmt-nix_3" "treefmt-nix": "treefmt-nix_3"
} }
}, },
"rust-overlay": {
"inputs": {
"nixpkgs": [
"jj",
"nixpkgs"
]
},
"locked": {
"lastModified": 1755139244,
"narHash": "sha256-SN1BFA00m+siVAQiGLtTwjv9LV9TH5n8tQcSziV6Nv4=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "aeae248beb2a419e39d483dd9b7fec924aba8d4d",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
},
"sops-nix": { "sops-nix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -1030,11 +1119,10 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747603214, "lastModified": 1758425756,
"narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd", "rev": "e0fdaea3c31646e252a60b42d0ed8eafdb289762",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1083,8 +1171,38 @@
"type": "github" "type": "github"
}, },
"original": { "original": {
"id": "systems", "owner": "nix-systems",
"type": "indirect" "repo": "default",
"type": "github"
}
},
"systems_4": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_5": {
"locked": {
"lastModified": 1681028828,
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
} }
}, },
"treefmt-nix": { "treefmt-nix": {
@ -1095,11 +1213,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1748243702, "lastModified": 1758206697,
"narHash": "sha256-9YzfeN8CB6SzNPyPm2XjRRqSixDopTapaRsnTpXUEY8=", "narHash": "sha256-/DbPkh6PZOgfueCbs3uzlk4ASU2nPPsiVWhpMCNkAd0=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "1f3f7b784643d488ba4bf315638b2b0a4c5fb007", "rev": "128222dc911b8e2e18939537bed1762b7f3a04aa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1117,11 +1235,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1747469671, "lastModified": 1756662192,
"narHash": "sha256-bo1ptiFoNqm6m1B2iAhJmWCBmqveLVvxom6xKmtuzjg=", "narHash": "sha256-F1oFfV51AE259I85av+MAia221XwMHCOtZCMcZLK2Jk=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "ab0378b61b0d85e73a8ab05d5c6029b5bd58c9fb", "rev": "1aabc6c05ccbcbf4a635fb7a90400e44282f61c4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1137,11 +1255,10 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1748243702, "lastModified": 1758206697,
"narHash": "sha256-9YzfeN8CB6SzNPyPm2XjRRqSixDopTapaRsnTpXUEY8=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "1f3f7b784643d488ba4bf315638b2b0a4c5fb007", "rev": "128222dc911b8e2e18939537bed1762b7f3a04aa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1155,11 +1272,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1701680307, "lastModified": 1731533236,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725", "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github" "type": "github"
}, },
"original": { "original": {

139
flake.nix
View file

@ -23,73 +23,102 @@
url = "github:nix-community/home-manager/master"; url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
# nvim = {
# url = "github:iofq/nvim.nix";
# };
nvim = { nvim = {
url = "github:iofq/nvim.nix"; url = "path:/home/e/dev/nvim.nix";
inputs.nixpkgs.follows = "nixpkgs";
}; };
deploy-rs = { deploy-rs = {
url = "github:serokell/deploy-rs"; url = "github:serokell/deploy-rs";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
jj = {
url = "github:jj-vcs/jj";
inputs.nixpkgs.follows = "nixpkgs";
};
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/*"; determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/*";
systems.url = "github:nix-systems/default";
}; };
outputs = { outputs =
self, {
nixpkgs, self,
systems, nixpkgs,
... systems,
} @ inputs: let ...
attrs = { }@inputs:
username = "e"; let
}; attrs = {
system = "x86_64-linux"; username = "e";
pkgs = import nixpkgs { };
inherit system; system = "x86_64-linux";
config.allowUnfree = true; pkgs = import nixpkgs {
overlays = [ inherit system;
inputs.nvim.overlays.default config.allowUnfree = true;
inputs.neovim-nightly-overlay.overlays.default overlays = [
]; inputs.neovim-nightly-overlay.overlays.default
}; inputs.nvim.overlays.default
eachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system}); (old: new: {
treefmtEval = eachSystem (pkgs: inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix); jujutsu = inputs.jj.packages.${system}.jujutsu;
in { })
nixosConfigurations = import ./nixos {inherit inputs pkgs attrs system;}; (import ./pkgs/overlay.nix)
homeConfigurations = import ./home-manager {inherit inputs pkgs attrs;}; ];
checks = { };
pre-commit-check = inputs.pre-commit-hooks.lib.${system}.run { eachSystem = f: nixpkgs.lib.genAttrs (import systems) (system: f nixpkgs.legacyPackages.${system});
src = ./.; treefmtEval = eachSystem (pkgs: inputs.treefmt-nix.lib.evalModule pkgs ./treefmt.nix);
hooks = { in
treefmt.enable = true; {
treefmt.package = treefmtEval.${system}.config.build.wrapper; nixosConfigurations = import ./nixos {
inherit
inputs
pkgs
attrs
system
;
};
homeConfigurations = import ./home-manager { inherit inputs pkgs attrs; };
checks = {
pre-commit-check = inputs.pre-commit-hooks.lib.${system}.run {
src = inputs.self;
hooks = {
treefmt.enable = true;
treefmt.package = treefmtEval.${system}.config.build.wrapper;
};
}; };
}; };
}; deploy.nodes = {
deploy.nodes = { consensus = {
consensus = { hostname = "consensus";
hostname = "consensus"; sshUser = "root";
sshUser = "root"; remoteBuild = true;
remoteBuild = true; profiles.system = {
profiles.system = { user = "root";
user = "root"; path = inputs.deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.consensus;
path = inputs.deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.consensus; };
};
oracle = {
hostname = "oracle";
sshUser = "root";
remoteBuild = false;
profiles.system = {
user = "root";
path = inputs.deploy-rs.lib.${system}.activate.nixos self.nixosConfigurations.oracle;
};
}; };
}; };
formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
devShells.${system}.default = pkgs.mkShell {
inherit (self.checks.pre-commit-check) shellHook;
buildInputs = [
pkgs.home-manager
pkgs.git
pkgs.ssh-to-age
pkgs.sops
pkgs.age
pkgs.deploy-rs
treefmtEval.${system}.config.build.wrapper
];
};
}; };
formatter = eachSystem (pkgs: treefmtEval.${pkgs.system}.config.build.wrapper);
devShells.${system}.default = pkgs.mkShell {
inherit (self.checks.pre-commit-check) shellHook;
buildInputs = [
pkgs.nix
pkgs.home-manager
pkgs.git
pkgs.ssh-to-age
pkgs.sops
pkgs.age
pkgs.deploy-rs
treefmtEval.${system}.config.build.wrapper
];
};
};
} }

View file

@ -4,11 +4,11 @@
attrs, attrs,
... ...
}: { }: {
inputs.home-manager.useGlobalPkgs = true;
"e" = inputs.home-manager.lib.homeManagerConfiguration { "e" = inputs.home-manager.lib.homeManagerConfiguration {
inherit pkgs; inherit pkgs;
extraSpecialArgs = { extraSpecialArgs = {
inherit inputs attrs; inherit inputs attrs;
useGlobalPkgs = true;
host = { host = {
hostName = "t14"; hostName = "t14";
inherit (attrs) username; inherit (attrs) username;
@ -20,10 +20,10 @@
]; ];
}; };
"minimal" = inputs.home-manager.lib.homeManagerConfiguration { "minimal" = inputs.home-manager.lib.homeManagerConfiguration {
inherit pkgs;
extraSpecialArgs = { extraSpecialArgs = {
inherit inputs attrs; inherit inputs attrs;
targets.genericLinux.enable = true; targets.genericLinux.enable = true;
useGlobalPkgs = true;
host = { host = {
hostName = "e"; hostName = "e";
inherit (attrs) username; inherit (attrs) username;

View file

@ -1,12 +1,5 @@
{ {attrs, ...}: {
inputs,
attrs,
...
}: {
programs.home-manager.enable = true; programs.home-manager.enable = true;
nix = {
registry.nixpkgs.flake = inputs.nixpkgs;
};
home = { home = {
inherit (attrs) username; inherit (attrs) username;
stateVersion = "22.11"; stateVersion = "22.11";

View file

@ -5,7 +5,7 @@
gnumake gnumake
jq jq
tree tree
jujutsu jjui
emacs-nox emacs-nox
#devops #devops
@ -21,5 +21,8 @@
#c #c
gcc gcc
#llm
aider-chat
]; ];
} }

View file

@ -1,7 +1,5 @@
{ pkgs, ... }:
{ {
pkgs,
...
}: {
imports = [ imports = [
./tmux.nix ./tmux.nix
./git.nix ./git.nix
@ -20,7 +18,7 @@
programs.bash = { programs.bash = {
enable = true; enable = true;
enableCompletion = true; enableCompletion = true;
historyControl = ["ignorespace"]; historyControl = [ "ignorespace" ];
historyIgnore = [ historyIgnore = [
":q" ":q"
"exit" "exit"
@ -73,7 +71,7 @@
}; };
programs.fzf = { programs.fzf = {
enable = true; enable = true;
historyWidgetOptions = ["--height 60% --preview ''"]; historyWidgetOptions = [ "--height 60% --preview ''" ];
fileWidgetCommand = "command find -L . -mindepth 1 -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' -prune"; fileWidgetCommand = "command find -L . -mindepth 1 -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' -prune";
}; };
programs.direnv = { programs.direnv = {
@ -88,17 +86,20 @@
pinentry-mode = "loopback"; pinentry-mode = "loopback";
}; };
}; };
programs.zoxide = {
enable = true;
enableFishIntegration = true;
};
services.gpg-agent = { services.gpg-agent = {
enable = true; enable = true;
enableSshSupport = true; enableSshSupport = true;
pinentry.package = pkgs.pinentry-rofi;
extraConfig = '' extraConfig = ''
allow-loopback-pinentry allow-loopback-pinentry
''; '';
}; };
programs = { programs.nix-index = {
nix-index = { enableBashIntegration = false;
enableBashIntegration = false; enableFishIntegration = true;
enableFishIntegration = true;
};
}; };
} }

View file

@ -1,4 +1,4 @@
{pkgs, host, ...}: { {pkgs, ...}: {
programs.fish = { programs.fish = {
enable = true; enable = true;
interactiveShellInit = '' interactiveShellInit = ''
@ -6,17 +6,21 @@
set show_startup_tips false set show_startup_tips false
''; '';
shellInit = " shellInit = "
fish_add_path /usr/local/go/bin
fish_add_path ~/go/bin fish_add_path ~/go/bin
fish_add_path ~/.local/bin fish_add_path ~/.local/bin
set -gx MANPAGER 'nvim +Man!' set -gx MANPAGER 'nvim +Man!'
set -gx EDITOR 'nvim' set -gx EDITOR 'nvim'
set -gx _JAVA_AWT_WM_NONREPARENTING 1 set -gx NH_FLAKE '/home/e/dev/nix'
set -gx NIX_FLAKE '/home/e/dev/nix'
"; ";
plugins = [ plugins = [
{name = "fzf"; inherit (pkgs.fishPlugins.fzf-fish) src;} {
{name = "puffer"; inherit (pkgs.fishPlugins.puffer) src;} name = "fzf";
inherit (pkgs.fishPlugins.fzf-fish) src;
}
{
name = "puffer";
inherit (pkgs.fishPlugins.puffer) src;
}
]; ];
functions = import ./functions.nix; functions = import ./functions.nix;
shellAbbrs = { shellAbbrs = {
@ -25,14 +29,11 @@
}; };
shellAliases = { shellAliases = {
":q" = "exit"; ":q" = "exit";
hms = "home-manager switch --flake $NIX_FLAKE#${host.username}";
rbs = "sudo nixos-rebuild switch --flake $NIX_FLAKE#${host.hostName}";
mpv = "mpv --no-keepaspect-window"; mpv = "mpv --no-keepaspect-window";
cat = "bat -pp"; cat = "bat -pp";
tcd = "cd $(mktemp -d)"; tcd = "cd $(mktemp -d)";
docker = "nerdctl"; docker = "nerdctl";
vimdiff = "nvim -d"; vimdiff = "nvim -d";
ls = "eza";
}; };
}; };
} }

View file

@ -16,19 +16,29 @@
end end
''; '';
}; };
nix-prefetch-hash = {
body = ''
nix-hash --type sha256 --to-base64 (nix-prefetch-url $argv)
'';
};
fish_jj_prompt = { fish_jj_prompt = {
body = '' body = ''
if not command -sq jj if not command -sq jj
return 1 return 1
end end
if not command -sq timeout
if not jj root &>/dev/null return 1
end
if set -q FISH_JJ
return 0
end
if not jj workspace root --ignore-working-copy &>/dev/null
return 1 return 1
end end
# Generate prompt # Generate prompt
set -l info "$( set -l info "$(
jj log --ignore-working-copy --no-graph --color=always --revisions=@ --template " timeout 5 jj log --ignore-working-copy --no-graph --color=always --revisions=@ --template "
separate( separate(
' ', ' ',
self.change_id().shortest(), self.change_id().shortest(),

View file

@ -1,4 +1,5 @@
{pkgs, ...}: { { pkgs, config, ... }:
{
programs.git = { programs.git = {
enable = true; enable = true;
userEmail = "cjriddz@protonmail.com"; userEmail = "cjriddz@protonmail.com";
@ -24,9 +25,12 @@
programs.jujutsu = { programs.jujutsu = {
enable = true; enable = true;
settings = { settings = {
core = { # core = {
fsmonitor = "watchman"; # fsmonitor = "watchman";
}; # watchman = {
# register-snapshot-trigger = true;
# };
# };
user = { user = {
email = "cjriddz@protonmail.com"; email = "cjriddz@protonmail.com";
name = "iofq"; name = "iofq";
@ -35,50 +39,86 @@
username = "iofq"; username = "iofq";
}; };
signing = { signing = {
behavior = "own"; behavior = "drop";
backend = "gpg"; backend = "gpg";
key = "cjriddz@protonmail.com"; key = "cjriddz@protonmail.com";
}; };
ui = { ui = {
default-command = ["log"]; default-command = [ "log" ];
conflict-marker-style = "git"; conflict-marker-style = "git";
merge-editor = "vimdiff"; merge-editor = "vimdiff";
diff-editor = "diffview"; diff-editor = "diffview";
diff.format = "git"; diff-formatter = ":git";
paginate = "never"; paginate = "never";
movement = { movement = {
edit = true; edit = true;
}; };
}; };
merge-tools.vimdiff = { merge-tools.vimdiff = {
program = "nvim"; program = "nvim";
}; };
merge-tools.diffview = { merge-tools.diffview = {
program = "sh"; program = "sh";
edit-args = [ edit-args = [
"-c" "-c"
'' ''
set -eu set -eu
rm -f "$right/JJ-INSTRUCTIONS" rm -f "$right/JJ-INSTRUCTIONS"
git -C "$left" init -q git -C "$left" init -q
git -C "$left" add -A git -C "$left" add -A
git -C "$left" commit -q -m baseline --allow-empty git -C "$left" commit -q -m baseline --allow-empty
mv "$left/.git" "$right" mv "$left/.git" "$right"
git -C "$right" add --intent-to-add -A git -C "$right" add --intent-to-add -A
(cd "$right"; nvim -c "lua vim.g.snacks_indent=false" -c "lua require('lazy').load({plugins = {'diffview.nvim'}})" -c DiffviewOpen) (cd "$right"; nvim -c "lua vim.g.snacks_indent=false" -c "lua require('lazy').load({plugins = {'diffview.nvim'}})" -c DiffviewOpen)
git -C "$right" diff-index --quiet --cached HEAD && { echo "No changes done, aborting split."; exit 1; } git -C "$right" diff-index --quiet --cached HEAD && { echo "No changes done, aborting split."; exit 1; }
git -C "$right" commit -q -m split git -C "$right" commit -q -m split
git -C "$right" restore . # undo changes in modified files git -C "$right" restore . # undo changes in modified files
git -C "$right" reset . # undo --intent-to-add git -C "$right" reset . # undo --intent-to-add
git -C "$right" clean -q -df # remove untracked files git -C "$right" clean -q -df # remove untracked files
'' ''
]; ];
diff-args = [
"-c"
''
set -eu
rm -f "$right/JJ-INSTRUCTIONS"
git -C "$left" init -q
git -C "$left" add -A
git -C "$left" commit -q -m baseline --allow-empty
mv "$left/.git" "$right"
git -C "$right" add --intent-to-add -A
(cd "$right"; nvim -c "lua vim.g.snacks_indent=false" -c "lua require('lazy').load({plugins = {'diffview.nvim'}})" -c DiffviewOpen)
git -C "$right" diff-index --quiet --cached HEAD && { echo "No changes done, aborting split."; exit 1; }
git -C "$right" commit -q -m split
git -C "$right" restore . # undo changes in modified files
git -C "$right" reset . # undo --intent-to-add
git -C "$right" clean -q -df # remove untracked files
''
];
}; };
snapshot = { snapshot = {
max-new-file-size = "10MiB"; max-new-file-size = "10MiB";
}; };
revsets = {
anc = "ancestors(@,10) | trunk()";
};
aliases = { aliases = {
tug = ["bookmark" "move" "--from" "heads(::@- & bookmarks())" "--to" "@"]; tug = [
"bookmark"
"move"
"--from"
"heads(::@- & bookmarks())"
"--to"
"@"
];
};
fix = {
tools = {
treefmt = {
command = [ "treefmt" ];
patterns = [ "glob:**/*.nix" ];
};
};
}; };
}; };
}; };

View file

@ -1,6 +1,8 @@
{config, ...}: { { config, pkgs, ... }:
{
programs.tmux = { programs.tmux = {
enable = true; enable = true;
terminal = "xterm-256color";
keyMode = "vi"; keyMode = "vi";
mouse = true; mouse = true;
newSession = true; newSession = true;
@ -11,10 +13,13 @@
customPaneNavigationAndResize = true; customPaneNavigationAndResize = true;
extraConfig = '' extraConfig = ''
bind-key -T copy-mode-vi 'v' send -X begin-selection bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe-and-cancel 'xclip -sel clip -i' bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe-and-cancel '${pkgs.wl-clipboard}/bin/wl-copy'
set -g status-right "" set -g status-right ""
setw -g status-style 'bg=colour0 fg=colour7' setw -g status-style 'bg=terminal fg=colour7'
setw -g window-status-current-format '[#P:#W*] ' setw -g window-status-current-format '[#P:#W*] '
set-option -g history-limit 50000
bind-key C-a last-window
bind-key C-s run-shell 'export tmpfile=$(mktemp) && tmux capture-pane -pS -32768 > "$tmpfile" && tmux new-window "nvim $tmpfile"'
''; '';
}; };
@ -26,7 +31,8 @@
default_mode "locked" default_mode "locked"
keybinds { keybinds {
tmux { tmux {
bind "Ctrl a" { Write 2; SwitchToMode "Locked"; } bind "Ctrl a" { SwitchToMode "Locked"; }
bind "Ctrl b" { Write 1; }
bind "[" { SwitchToMode "Scroll"; } bind "[" { SwitchToMode "Scroll"; }
bind "\"" { NewPane "Down"; SwitchToMode "Locked"; } bind "\"" { NewPane "Down"; SwitchToMode "Locked"; }
bind "%" { NewPane "Right"; SwitchToMode "Locked"; } bind "%" { NewPane "Right"; SwitchToMode "Locked"; }
@ -60,6 +66,9 @@
bind "8" { GoToTab 8; SwitchToMode "Locked"; } bind "8" { GoToTab 8; SwitchToMode "Locked"; }
bind "9" { GoToTab 9; SwitchToMode "Locked"; } bind "9" { GoToTab 9; SwitchToMode "Locked"; }
} }
locked {
unbind "Ctrl g"
}
shared_except "tmux" { shared_except "tmux" {
bind "Ctrl a" { bind "Ctrl a" {
SwitchToMode "Tmux" SwitchToMode "Tmux"

View file

@ -7,66 +7,76 @@
./alacritty ./alacritty
./hyprland ./hyprland
]; ];
home = {
home.packages = with pkgs; [ packages = with pkgs; [
pulseaudio pulseaudio
pulsemixer pulsemixer
alsa-utils alsa-utils
wlogout wlogout
wf-recorder wf-recorder
wdisplays wdisplays
wl-clipboard wl-clipboard
gammastep gammastep
sway-contrib.grimshot sway-contrib.grimshot
xdg-utils xdg-utils
]; ];
home.sessionVariables = { sessionVariables = {
MOZ_DBUS_REMOTE = 1; MOZ_DBUS_REMOTE = 1;
};
file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/DMZ-Black";
}; };
programs.wofi = { services = {
enable = true; gammastep = {
style = '' enable = true;
window, #input, #entry, #scroll, #text, #inner-box { dawnTime = "6:00-8:00";
background-color: #152528; duskTime = "20:00-22:00";
color: #e6eaea; latitude = 43.0;
} longitude = -89.0;
#entry:selected, #text:selected { temperature.day = 6000;
background-color: #a1cdd8; temperature.night = 3500;
color: #152528; };
} swayidle = {
''; enable = true;
}; events = [
services.gammastep = { {
enable = true; event = "before-sleep";
dawnTime = "6:00-8:00"; command = "${config.programs.swaylock.package}/bin/swaylock";
duskTime = "20:00-22:00"; }
latitude = 43.0; {
longitude = -89.0; event = "lock";
temperature.day = 6000; command = "${config.programs.swaylock.package}/bin/swaylock";
temperature.night = 3500; }
}; ];
programs.swaylock = { };
enable = true; mako.enable = true;
package = pkgs.swaylock-effects; mako.settings = {
settings = { default-timeout = 5;
color = "#152528";
daemonize = true;
clock = true;
ignore-empty-password = true;
}; };
}; };
services.swayidle = { programs = {
enable = true; wofi = {
events = [ enable = true;
{ style = ''
event = "before-sleep"; window, #input, #entry, #scroll, #text, #inner-box {
command = "${config.programs.swaylock.package}/bin/swaylock"; background-color: #152528;
} color: #e6eaea;
{ }
event = "lock"; #entry:selected, #text:selected {
command = "${config.programs.swaylock.package}/bin/swaylock"; background-color: #a1cdd8;
} color: #152528;
]; }
'';
};
swaylock = {
enable = true;
package = pkgs.swaylock-effects;
settings = {
color = "#152528";
daemonize = true;
clock = true;
ignore-empty-password = true;
};
};
}; };
xdg = { xdg = {
configFile."mimeapps.list".force = true; configFile."mimeapps.list".force = true;
@ -92,6 +102,4 @@
}; };
}; };
}; };
services.mako.enable = true;
home.file.".icons/default".source = "${pkgs.vanilla-dmz}/share/icons/DMZ-Black";
} }

View file

@ -1,11 +1,12 @@
{pkgs, ...}: { { pkgs, ... }:
{
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
systemd.enable = true; systemd.enable = true;
extraConfig = '' extraConfig = ''
monitor=,preferred,auto,1 monitor=,preferred,auto,1
''; '';
plugins = [pkgs.hyprlandPlugins.hyprexpo]; plugins = [ pkgs.hyprlandPlugins.hyprexpo ];
settings = { settings = {
"$mod" = "SUPER"; "$mod" = "SUPER";
general = { general = {
@ -49,6 +50,7 @@
accel_profile = "flat"; accel_profile = "flat";
sensitivity = 0.4; sensitivity = 0.4;
touchpad = { touchpad = {
disable_while_typing = true;
natural_scroll = true; natural_scroll = true;
tap_button_map = "lrm"; tap_button_map = "lrm";
middle_button_emulation = false; middle_button_emulation = false;
@ -68,61 +70,68 @@
"$mod ALT, j, resizeactive, 0 50" "$mod ALT, j, resizeactive, 0 50"
"$mod ALT, k, resizeactive, 0 -50" "$mod ALT, k, resizeactive, 0 -50"
]; ];
bind = bind = [
[ "$mod, a, hyprexpo:expo, toggle"
"$mod, a, hyprexpo:expo, toggle" "$mod, Return, exec, alacritty"
"$mod, Return, exec, alacritty" "$mod, x, killactive"
"$mod, x, killactive" "$mod, f, fullscreen"
"$mod, f, fullscreen" "$mod SHIFT, Escape, exit"
"$mod SHIFT, Escape, exit" "$mod SHIFT, f, fullscreenstate, 0 3"
"$mod SHIFT, f, fullscreenstate, 0 3" "$mod, Space, exec, ${pkgs.wofi}/bin/wofi --show run"
"$mod, Space, exec, ${pkgs.wofi}/bin/wofi --show run" "$mod, Escape, exec, ${pkgs.wlogout}/bin/wlogout"
"$mod, Escape, exec, ${pkgs.wlogout}/bin/wlogout" "$mod, t, togglefloating"
"$mod, t, togglefloating" "$mod, g, togglegroup"
"$mod, bracketleft, exec, grimshot --notify save area /tmp/scrot-$(date \"+%Y-%m-%d\"T\"%H:%M:%S\").png" "$mod, b, exec, pkill -SIGUSR1 waybar"
"$mod, bracketright, exec, grimshot --notify copy area" "$mod, bracketleft, exec, grimshot --notify save area /tmp/scrot-$(date \"+%Y-%m-%d\"T\"%H:%M:%S\").png"
"$mod SHIFT, q, exec, swaylock" "$mod, bracketright, exec, grimshot --notify copy area"
",XF86MonBrightnessDown, exec, light -U 10" "$mod SHIFT, q, exec, swaylock"
",XF86MonBrightnessUp, exec, light -A 10" ",XF86MonBrightnessDown, exec, light -U 10"
",XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +1%" ",XF86MonBrightnessUp, exec, light -A 10"
",XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -1%" ",XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +1%"
",XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle" ",XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -1%"
",XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle"
## Movement ## Movement
"$mod, p, layoutmsg, swapwithmaster" "$mod, m, layoutmsg, swapwithmaster"
"$mod, e, layoutmsg, orientationnext" "$mod, e, layoutmsg, orientationnext"
"$mod, i, layoutmsg, addmaster" "$mod, i, layoutmsg, addmaster"
"$mod, d, layoutmsg, removemaster" "$mod, d, layoutmsg, removemaster"
"$mod, h, movefocus, l" "$mod, h, movefocus, l"
"$mod, l, movefocus, r" "$mod, l, movefocus, r"
"$mod, k, movefocus, u" "$mod, k, movefocus, u"
"$mod, j, movefocus, d" "$mod, j, movefocus, d"
"$mod SHIFT, h, movewindow, l" "$mod, n, changegroupactive, f"
"$mod SHIFT, l, movewindow, r" "$mod, p, changegroupactive, b"
"$mod SHIFT, k, movewindow, u" "$mod SHIFT, h, movewindoworgroup, l"
"$mod SHIFT, j, movewindow, d" "$mod SHIFT, l, movewindoworgroup, r"
"$mod, COMMA, focusmonitor, l" "$mod SHIFT, k, movewindoworgroup, u"
"$mod, PERIOD, focusmonitor, r" "$mod SHIFT, j, movewindoworgroup, d"
"$mod SHIFT, COMMA, movewindow, mon:l" "$mod, COMMA, focusmonitor, l"
"$mod SHIFT, PERIOD, movewindow, mon:r" "$mod, PERIOD, focusmonitor, r"
"$mod, s, togglespecialworkspace" "$mod SHIFT, COMMA, movewindow, mon:l"
] "$mod SHIFT, PERIOD, movewindow, mon:r"
++ ( "$mod, s, togglespecialworkspace"
# workspaces ]
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10} ++ (
builtins.concatLists (builtins.genList ( # workspaces
x: let # binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
ws = let builtins.concatLists (
builtins.genList (
x:
let
ws =
let
c = (x + 1) / 10; c = (x + 1) / 10;
in in
builtins.toString (x + 1 - (c * 10)); builtins.toString (x + 1 - (c * 10));
in [ in
"$mod, ${ws}, focusworkspaceoncurrentmonitor, ${toString (x + 1)}" [
"$mod SHIFT, ${ws}, movetoworkspacesilent, ${toString (x + 1)}" "$mod, ${ws}, focusworkspaceoncurrentmonitor, ${toString (x + 1)}"
] "$mod SHIFT, ${ws}, movetoworkspacesilent, ${toString (x + 1)}"
) ]
10) ) 10
); )
);
windowrulev2 = [ windowrulev2 = [
"workspace 9, class:^(Discord|discord)$" "workspace 9, class:^(Discord|discord)$"
"workspace 9, class:^(Signal|signal)$" "workspace 9, class:^(Signal|signal)$"
@ -149,7 +158,7 @@
services.hyprpaper = { services.hyprpaper = {
enable = true; enable = true;
settings = { settings = {
preload = ["/home/pape"]; preload = [ "/home/pape" ];
wallpaper = ",/home/pape"; wallpaper = ",/home/pape";
ipc = "off"; ipc = "off";
splash = false; splash = false;

View file

@ -2,7 +2,8 @@
pkgs, pkgs,
lib, lib,
... ...
}: { }:
{
imports = [ imports = [
../shared/programs/default.nix ../shared/programs/default.nix
../shared/wayland/default.nix ../shared/wayland/default.nix
@ -13,6 +14,7 @@
prismlauncher prismlauncher
runelite runelite
jdk21 jdk21
august-rsps
# comms # comms
signal-desktop signal-desktop
@ -26,20 +28,31 @@
mpv mpv
piper piper
calibre calibre
yt-dlp
# sysutils # sysutils
appimage-run appimage-run
wireguard-tools wireguard-tools
android-tools android-tools
]; ];
sessionVariables = {
MOZ_ENABLE_WAYLAND = 1;
JAVA_AWT_WM_NONREPARENTING = 1;
};
}; };
programs.librewolf.enable = true; programs.librewolf.enable = true;
programs.ssh = { programs.ssh = {
enable = true; enable = true;
enableDefaultConfig = false;
matchBlocks = { matchBlocks = {
"consensus" = { "consensus" = {
port = 2022; port = 2022;
hostname = "192.168.1.251"; hostname = "consensus.tailc353f.ts.net";
identityFile = "/home/e/.ssh/id_ed25519";
};
"oracle" = {
port = 2022;
hostname = "129.213.119.29";
identityFile = "/home/e/.ssh/id_ed25519"; identityFile = "/home/e/.ssh/id_ed25519";
}; };
"10110110.xyz" = { "10110110.xyz" = {

View file

@ -1,7 +1,9 @@
{ {
host, inputs,
... host,
}: { # Create plugdev group ...
}: {
# Create plugdev group
networking.hostName = host.hostName; networking.hostName = host.hostName;
time.timeZone = "America/Chicago"; time.timeZone = "America/Chicago";
users = { users = {
@ -15,6 +17,7 @@ host,
"plugdev" "plugdev"
"video" "video"
"adbusers" "adbusers"
"network"
]; ];
}; };
}; };
@ -28,6 +31,7 @@ host,
# Enable flakes and unfree packages # Enable flakes and unfree packages
nix = { nix = {
registry.nixpkgs.flake = inputs.nixpkgs;
settings = { settings = {
auto-optimise-store = true; auto-optimise-store = true;
substituters = [ substituters = [
@ -40,11 +44,15 @@ host,
]; ];
trusted-users = [host.username]; trusted-users = [host.username];
experimental-features = ["nix-command" "flakes"]; experimental-features = ["nix-command" "flakes"];
lazy-trees = true;
}; };
channel.enable = false;
nixPath = ["nixpkgs=flake:nixpkgs"];
gc = { gc = {
automatic = true; automatic = true;
dates = "00:00"; dates = "00:00";
options = "--delete-older-than 14d"; options = "--delete-older-than 14d";
}; };
}; };
security.sudo-rs.enable = true;
} }

View file

@ -1,10 +1,11 @@
{config, ...}: { { config, ... }:
{
sops = { sops = {
defaultSopsFile = ../../secrets/restic.yaml; defaultSopsFile = ../../secrets/restic.yaml;
secrets = { secrets = {
"b2-immich/env" = {}; "b2-immich/env" = { };
"b2-immich/repo" = {}; "b2-immich/repo" = { };
"b2-immich/password" = {}; "b2-immich/password" = { };
}; };
}; };
services.restic.backups = { services.restic.backups = {
@ -15,7 +16,7 @@
passwordFile = config.sops.secrets."b2-immich/password".path; passwordFile = config.sops.secrets."b2-immich/password".path;
paths = [ paths = [
"/rice/immich" "/srv/immich"
]; ];
timerConfig = { timerConfig = {
OnCalendar = "06:00"; OnCalendar = "06:00";

View file

@ -1,11 +1,19 @@
{lib, pkgs, config, ...}: { {
lib,
pkgs,
config,
...
}:
{
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
./backups.nix ./backups.nix
]; ];
sops = { sops = {
secrets = { secrets = {
"env" = { sopsFile = ../../secrets/cf-acme.yaml; }; "env" = {
sopsFile = ../../secrets/cf-acme.yaml;
};
}; };
}; };
documentation = { documentation = {
@ -16,13 +24,14 @@
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
git git
nvim-pkg vim
docker-compose docker-compose
tmux tmux
]; ];
services = { services = {
zfs.autoScrub.enable = true; # zfs.autoScrub.enable = true;
zfs.autoSnapshot.enable = true; # zfs.autoSnapshot.enable = true;
fstrim.enable = true;
tailscale.enable = true; tailscale.enable = true;
k3s = { k3s = {
enable = true; enable = true;
@ -31,53 +40,90 @@
"--disable=traefik" "--disable=traefik"
]; ];
}; };
fail2ban = {
enable = true;
maxretry = 5;
bantime = "1h";
ignoreIP = [
"172.16.0.0/12"
"192.168.0.0/16"
"10.0.0.0/8"
"tailc353f.ts.net"
];
bantime-increment = {
enable = true;
multipliers = "1 2 4 8 16 32 64 128 256";
maxtime = "24h";
overalljails = true;
};
};
openssh = { openssh = {
enable = true; enable = true;
ports = [2022]; ports = [ 2022 ];
settings = { settings = {
PasswordAuthentication = false; PasswordAuthentication = false;
PermitRootLogin = "prohibit-password"; PermitRootLogin = "prohibit-password";
PermitEmptyPasswords = false;
PermitTunnel = false;
UseDns = false;
KbdInteractiveAuthentication = false;
X11Forwarding = false;
MaxAuthTries = 3;
MaxSessions = 2;
ClientAliveInterval = 300;
ClientAliveCountMax = 0;
TCPKeepAlive = false;
AllowTcpForwarding = false;
AllowAgentForwarding = false;
LogLevel = "VERBOSE";
}; };
hostKeys = [
{
path = "/etc/ssh/ssh_host_ed25519_key";
type = "ed25519";
}
];
}; };
immich = { immich = {
enable = true; enable = false;
port = 2283; port = 2283;
host = "localhost"; host = "localhost";
openFirewall = true; openFirewall = true;
machine-learning.enable = false; machine-learning.enable = true;
mediaLocation = "/rice/immich"; mediaLocation = "/srv/immich";
}; };
nginx = { nginx = {
enable = true; enable = false;
virtualHosts."img.10110110.xyz" = { virtualHosts."img.10110110.xyz" = {
useACMEHost = "10110110.xyz"; forceSSL = true;
forceSSL = true; useACMEHost = "10110110.xyz";
locations."/" = { locations."/" = {
proxyPass = "http://localhost:${toString config.services.immich.port}"; proxyPass = "http://localhost:${toString config.services.immich.port}";
proxyWebsockets = true; proxyWebsockets = true;
recommendedProxySettings = true; recommendedProxySettings = true;
extraConfig = '' extraConfig = ''
client_max_body_size 50000M; client_max_body_size 50000M;
proxy_read_timeout 600s; proxy_read_timeout 600s;
proxy_send_timeout 600s; proxy_send_timeout 600s;
send_timeout 600s; send_timeout 600s;
''; '';
};
}; };
};
}; };
}; };
boot = { boot = {
tmp.cleanOnBoot = true; tmp.cleanOnBoot = true;
supportedFilesystems = ["zfs"]; # supportedFilesystems = ["zfs"];
zfs.forceImportRoot = false; # zfs.forceImportRoot = false;
zfs.extraPools = ["rice"]; # zfs.extraPools = ["rice"];
}; };
networking.hostId = "91238132"; networking.hostId = "91238132";
zramSwap.enable = false; zramSwap.enable = false;
swapDevices = [ swapDevices = [
{ {
device = "/var/swapfile"; device = "/swapfile";
size = 4 * 1024; size = 16 * 1024;
} }
]; ];
virtualisation.docker.enable = true; virtualisation.docker.enable = true;
@ -103,31 +149,33 @@
}; };
users.users = { users.users = {
root = { root = {
openssh.authorizedKeys.keys = [''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM4Zr0PFN7QdOG2aJ+nuzRCK6caulrpY6bphA1Ppl8Y e@t14'']; openssh.authorizedKeys.keys = [
''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM4Zr0PFN7QdOG2aJ+nuzRCK6caulrpY6bphA1Ppl8Y e@t14''
];
}; };
e = { e = {
isNormalUser = true; isNormalUser = true;
extraGroups = ["wheel"]; extraGroups = [ "wheel" ];
home = "/home/e"; home = "/home/e";
openssh.authorizedKeys.keys = [ openssh.authorizedKeys.keys = [
''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM4Zr0PFN7QdOG2aJ+nuzRCK6caulrpY6bphA1Ppl8Y e@t14'' ''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM4Zr0PFN7QdOG2aJ+nuzRCK6caulrpY6bphA1Ppl8Y e@t14''
''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAdo4PS8myKaKAdyIqSFj2VJ+oZ9DNRIp7PBz8IWKjjy'' ''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJou+k8HtIWdlztpWog7fVfJgxJnRIo7c5xVPUBhBxhi'' # phone
]; ];
}; };
}; };
security.sudo.wheelNeedsPassword = false; security.sudo-rs.wheelNeedsPassword = false;
security.acme = { # security.acme = {
acceptTerms = true; # acceptTerms = true;
defaults.email = "acme@10110110.xyz"; # defaults.email = "acme@10110110.xyz";
certs = { # certs = {
"10110110.xyz" = { # "10110110.xyz" = {
domain = "*.10110110.xyz"; # domain = "*.10110110.xyz";
group = config.services.nginx.group; # group = config.services.nginx.group;
dnsProvider = "cloudflare"; # dnsProvider = "cloudflare";
environmentFile = config.sops.secrets."env".path; # environmentFile = config.sops.secrets."env".path;
}; # };
}; # };
}; # };
nix.settings.trusted-users = ["e"]; nix.settings.trusted-users = [ "e" ];
system.stateVersion = "23.11"; system.stateVersion = "23.11";
} }

View file

@ -1,10 +1,29 @@
{ lib, modulesPath, ... }: {
lib,
modulesPath,
...
}:
{ {
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
boot.loader.grub.device = "/dev/nvme0n1"; boot.loader.grub.device = "/dev/nvme0n1";
boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi" ]; boot.initrd.availableKernelModules = [
"ata_piix"
"uhci_hcd"
"xen_blkfront"
"vmw_pvscsi"
];
boot.initrd.kernelModules = [ "nvme" ]; boot.initrd.kernelModules = [ "nvme" ];
fileSystems."/" = { device = "/dev/mapper/vg-root"; fsType = "btrfs"; }; fileSystems."/" = {
fileSystems."/var" = { device = "/dev/mapper/vg-var"; fsType = "btrfs"; }; device = "/dev/mapper/vg-root";
fsType = "btrfs";
};
fileSystems."/var" = {
device = "/dev/mapper/vg-var";
fsType = "btrfs";
};
fileSystems."/srv" = {
device = "/dev/ext/srv";
fsType = "ext4";
};
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
} }

View file

@ -4,13 +4,16 @@
attrs, attrs,
system, system,
... ...
}: let }:
let
defaultModules = [ defaultModules = [
./configuration.nix
inputs.sops-nix.nixosModules.sops inputs.sops-nix.nixosModules.sops
inputs.nix-index-database.nixosModules.nix-index inputs.nix-index-database.nixosModules.nix-index
inputs.determinate.nixosModules.default inputs.determinate.nixosModules.default
]; ];
in { in
{
t14 = inputs.nixpkgs.lib.nixosSystem { t14 = inputs.nixpkgs.lib.nixosSystem {
inherit pkgs; inherit pkgs;
specialArgs = { specialArgs = {
@ -20,13 +23,10 @@ in {
inherit (attrs) username; inherit (attrs) username;
}; };
}; };
modules = modules = defaultModules ++ [
defaultModules ./t14/configuration.nix
++ [ inputs.nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1
./configuration.nix ];
./t14/configuration.nix
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-t14-amd-gen1
];
}; };
consensus = inputs.nixpkgs.lib.nixosSystem { consensus = inputs.nixpkgs.lib.nixosSystem {
inherit pkgs; inherit pkgs;
@ -37,11 +37,21 @@ in {
inherit (attrs) username; inherit (attrs) username;
}; };
}; };
modules = modules = defaultModules ++ [
defaultModules ./consensus/configuration.nix
++ [ ];
./configuration.nix };
./consensus/configuration.nix oracle = inputs.nixpkgs.lib.nixosSystem {
]; inherit pkgs;
specialArgs = {
inherit inputs system attrs;
host = {
hostName = "oracle1";
inherit (attrs) username;
};
};
modules = defaultModules ++ [
./oracle/configuration.nix
];
}; };
} }

View file

@ -0,0 +1,80 @@
{ ... }:
{
imports = [
./hardware-configuration.nix
./forgejo.nix
];
boot.tmp.cleanOnBoot = true;
boot.kernel.sysctl = {
"net.ipv4.ip_forward" = 1;
"net.ipv6.conf.all.forwarding" = 1;
};
zramSwap.enable = true;
swapDevices = [
{
device = "/swapfile";
size = 2 * 1024;
}
];
services = {
fail2ban.enable = true;
fail2ban.maxretry = 5;
fail2ban.bantime = "1h";
fail2ban.ignoreIP = [
"172.16.0.0/12"
"192.168.0.0/16"
"10.0.0.0/8"
"tailc353f.ts.net"
];
fail2ban.bantime-increment = {
enable = true;
multipliers = "1 2 4 8 16 32 64 128 256";
maxtime = "24h";
overalljails = true;
};
tailscale.enable = true;
openssh = {
enable = true;
ports = [
2022
];
settings = {
PasswordAuthentication = false;
PermitRootLogin = "prohibit-password";
PermitEmptyPasswords = false;
UseDns = false;
KbdInteractiveAuthentication = false;
X11Forwarding = false;
AllowTcpForwarding = false;
AllowAgentForwarding = false;
};
hostKeys = [
{
path = "/etc/ssh/ssh_host_ed25519_key";
type = "ed25519";
}
];
};
};
networking = {
domain = "";
hostId = "81238132";
hostName = "oracle1";
firewall = {
enable = true;
allowedTCPPorts = [
22
2022
80
443
];
logRefusedConnections = true;
};
};
users.users.root.openssh.authorizedKeys.keys = [
''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDcL53Gdrj5V9YDwKlCBIcgqiS+zHtOQpJlnOHTevJCJ e@t14''
''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHM4Zr0PFN7QdOG2aJ+nuzRCK6caulrpY6bphA1Ppl8Y e@t14''
];
system.stateVersion = "23.11";
}

56
nixos/oracle/forgejo.nix Normal file
View file

@ -0,0 +1,56 @@
{ config, ... }:
let
cfg = config.services.forgejo;
srv = cfg.settings.server;
in
{
sops = {
secrets = {
"env" = {
sopsFile = ../../secrets/cf-acme.yaml;
};
};
};
security.acme = {
acceptTerms = true;
defaults = {
email = "acme@10110110.xyz";
dnsProvider = "cloudflare";
environmentFile = config.sops.secrets."env".path;
};
};
services.nginx = {
enable = true;
virtualHosts.${cfg.settings.server.DOMAIN} = {
forceSSL = true;
enableACME = true;
acmeRoot = null; # use DNS
locations."/" = {
recommendedProxySettings = true;
proxyPass = "http://localhost:${toString srv.HTTP_PORT}";
extraConfig = ''
client_max_body_size 512M;
'';
};
};
};
services.forgejo = {
enable = true;
database.type = "sqlite3";
dump.enable = true;
settings = {
server = {
DOMAIN = "git.10110110.xyz";
# You need to specify this to remove the port from URLs in the web UI.
ROOT_URL = "https://${srv.DOMAIN}/";
HTTP_PORT = 3000;
};
service.DISABLE_REGISTRATION = true;
session.COOKIE_SECURE = true;
actions = {
ENABLED = true;
DEFAULT_ACTIONS_URL = "github";
};
};
};
}

View file

@ -0,0 +1,25 @@
{ lib, modulesPath, ... }:
{
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
boot.loader.grub = {
efiSupport = true;
efiInstallAsRemovable = true;
device = "nodev";
};
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/DC8B-AC35";
fsType = "vfat";
};
boot.initrd.availableKernelModules = [
"ata_piix"
"uhci_hcd"
"xen_blkfront"
"vmw_pvscsi"
];
boot.initrd.kernelModules = [ "nvme" ];
fileSystems."/" = {
device = "/dev/sda1";
fsType = "ext4";
};
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
}

View file

@ -1,11 +1,12 @@
{config, ...}: { { config, ... }:
{
sops = { sops = {
defaultSopsFile = ../../secrets/restic.yaml; defaultSopsFile = ../../secrets/restic.yaml;
age.keyFile = "/home/e/.config/sops/age/keys.txt"; age.keyFile = "/home/e/.config/sops/age/keys.txt";
secrets = { secrets = {
"b2-home/env" = {}; "b2-home/env" = { };
"b2-home/repo" = {}; "b2-home/repo" = { };
"b2-home/password" = {}; "b2-home/password" = { };
}; };
}; };
services.restic.backups = { services.restic.backups = {
@ -17,9 +18,11 @@
paths = [ paths = [
"/home/e/backmeup" "/home/e/backmeup"
"/home/e/orgfiles"
"/home/e/.ssh" "/home/e/.ssh"
"/home/e/.librewolf" "/home/e/.librewolf"
"/home/e/.runelite" "/home/e/.runelite"
"/home/e/.local/share/PrismLauncher/instances"
]; ];
timerConfig = { timerConfig = {
OnCalendar = "01:00"; OnCalendar = "01:00";

View file

@ -1,7 +1,7 @@
{ {
pkgs, pkgs,
attrs, attrs,
... ...
}: let }: let
# Horrid workaround for https://github.com/nix-community/home-manager/issues/1011 # Horrid workaround for https://github.com/nix-community/home-manager/issues/1011
homeManagerSessionVars = "/etc/profiles/per-user/${attrs.username}/etc/profile.d/hm-session-vars.sh"; homeManagerSessionVars = "/etc/profiles/per-user/${attrs.username}/etc/profile.d/hm-session-vars.sh";
@ -15,6 +15,7 @@ in {
cryptsetup cryptsetup
nfs-utils nfs-utils
nerdctl nerdctl
(lib.hiPrio uutils-coreutils-noprefix)
]; ];
extraInit = "[[ -f ${homeManagerSessionVars} ]] && source ${homeManagerSessionVars} && echo 'x' > /tmp/test"; extraInit = "[[ -f ${homeManagerSessionVars} ]] && source ${homeManagerSessionVars} && echo 'x' > /tmp/test";
}; };
@ -23,11 +24,15 @@ in {
loader.systemd-boot.enable = true; loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;
kernelPackages = pkgs.linuxPackages_latest; kernelPackages = pkgs.linuxPackages_latest;
blacklistedKernelModules = ["bluetooth"];
}; };
# Networking # Networking
networking = { networking = {
hostId = "1185c58e"; hostId = "1185c58e";
nameservers = ["9.9.9.9" "1.1.1.1"]; nameservers = [
"9.9.9.9"
"1.1.1.1"
];
networkmanager = { networkmanager = {
enable = true; enable = true;
dns = "systemd-resolved"; dns = "systemd-resolved";
@ -62,13 +67,17 @@ in {
}; };
steam.enable = true; steam.enable = true;
adb.enable = true; adb.enable = true;
fish.enable = true; #enable vendor completions fish.enable = true; # enable vendor completions
nh.enable = true;
}; };
# workaround for wait-online killing nixos build # workaround for wait-online killing nixos build
systemd.services.NetworkManager-wait-online = { systemd.services.NetworkManager-wait-online = {
serviceConfig = { serviceConfig = {
ExecStart = ["" "${pkgs.networkmanager}/bin/nm-online -q"]; ExecStart = [
""
"${pkgs.networkmanager}/bin/nm-online -q"
];
}; };
}; };
@ -83,6 +92,7 @@ in {
]; ];
}; };
ledger.enable = true; ledger.enable = true;
enableAllFirmware = true;
}; };
services = { services = {
resolved = { resolved = {
@ -102,8 +112,8 @@ in {
tlp = { tlp = {
enable = true; enable = true;
settings = { settings = {
START_CHARGE_THRESH_BAT0 = 40; START_CHARGE_THRESH_BAT0 = 60;
STOP_CHARGE_THRESH_BAT0 = 80; STOP_CHARGE_THRESH_BAT0 = 90;
CPU_BOOST_ON_AC = 1; CPU_BOOST_ON_AC = 1;
CPU_BOOST_ON_BAT = 0; CPU_BOOST_ON_BAT = 0;
CPU_SCALING_GOVERNOR_ON_AC = "performance"; CPU_SCALING_GOVERNOR_ON_AC = "performance";
@ -112,14 +122,29 @@ in {
CPU_ENERGY_PERF_POLICY_ON_AC = "performance"; CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
PLATFORM_PROFILE_ON_BAT = "low-power"; PLATFORM_PROFILE_ON_BAT = "low-power";
PLATFORM_PROFILE_ON_AC = "performance"; PLATFORM_PROFILE_ON_AC = "performance";
DEVICES_TO_DISABLE_ON_STARTUP = "bluetooth";
CPU_MIN_PERF_ON_AC = 0; CPU_MIN_PERF_ON_AC = 0;
CPU_MAX_PERF_ON_AC = 100; CPU_MAX_PERF_ON_AC = 100;
CPU_MIN_PERF_ON_BAT = 0; CPU_MIN_PERF_ON_BAT = 0;
CPU_MAX_PERF_ON_BAT = 20; CPU_MAX_PERF_ON_BAT = 40;
}; };
}; };
ratbagd.enable = true; # Logitech ratbagd.enable = true; # Logitech
keyd = {
enable = true;
keyboards = {
default = {
ids = ["*"];
settings = {
main = {
pause = "timeout(esc, 150, space)";
scrolllock = "layer(shift)";
};
};
};
};
};
udev.packages = [ udev.packages = [
pkgs.ledger-udev-rules pkgs.ledger-udev-rules
pkgs.trezor-udev-rules pkgs.trezor-udev-rules
@ -127,6 +152,7 @@ in {
trezord.enable = true; trezord.enable = true;
udisks2.enable = true; # kindle udisks2.enable = true; # kindle
ollama.enable = true;
}; };
fonts = { fonts = {
# Set a sane system-wide default font # Set a sane system-wide default font

View file

@ -10,15 +10,20 @@
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot = {
boot.initrd.availableKernelModules = ["nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"]; initrd.availableKernelModules = ["nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
boot.initrd.kernelModules = ["amdgpu"]; initrd.kernelModules = ["amdgpu"];
boot.kernelModules = ["kvm-amd"]; kernelModules = ["kvm-amd"];
boot.extraModulePackages = []; extraModulePackages = [];
tmp = {
useTmpfs = true;
};
};
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/f56e8356-3915-4ff8-957c-de7f9a72b326"; device = "/dev/disk/by-uuid/f56e8356-3915-4ff8-957c-de7f9a72b326";
fsType = "btrfs"; fsType = "btrfs";
options = ["compress=lzo"];
}; };
fileSystems."/boot" = { fileSystems."/boot" = {

47
pkgs/overlay.nix Normal file
View file

@ -0,0 +1,47 @@
final: prev: {
august-rsps = prev.stdenv.mkDerivation rec {
pname = "august-rsps";
version = "0.0.1";
jar = prev.fetchurl {
url = "https://cdn.discordapp.com/attachments/1223340813317308580/1291311940165046302/AugustRSPS_Launcher.jar?ex=68cfb375&is=68ce61f5&hm=33c31fbfe089624dc8aced1ddf1e663dc5c6eccec3072e36b458d38bbca2edc8&";
hash = "sha256-RY191f/LjNaJiobwoSMNm1yWEBSV7dFRfqru/BNNhv4=";
};
jogl = prev.fetchurl {
url = "https://repo.runelite.net/net/runelite/jogl/jogl-all/2.4.0-rc-20200429/jogl-all-2.4.0-rc-20200429-natives-linux-amd64.jar";
hash = "sha512-OmJIbk5pKtvf1n1I5UHu6iaOKNrPgmaJTPhqC8yMjaRh/Hso1vV/+Eu+zKu7d5UiVggVUzJxqDKatmEnqFrzbg==";
};
gluegen = prev.fetchurl {
url = "https://repo.runelite.net/net/runelite/gluegen/gluegen-rt/2.4.0-rc-20220318/gluegen-rt-2.4.0-rc-20220318-natives-linux-amd64.jar";
hash = "sha512-kF+RdDzYEhBuZOJ6ZwMhaEVcjYLxiwR8tYAm08FXDML45iP4HBEfmqHOLJpIakK06aQFj99/296vx810eDFX5A==";
};
dontUnpack = true;
nativeBuildInputs = [
prev.makeWrapper
prev.unzip
];
installPhase = ''
mkdir -p $out/share/august-rsps
mkdir -p $out/natives
unzip ${jogl} 'natives/*' -d $out
unzip ${gluegen} 'natives/*' -d $out
ln -s ${jar} $out/share/august-rsps/AugustRSPS_Launcher.jar
makeWrapper ${prev.jre}/bin/java $out/bin/august-rsps \
--chdir "$out" \
--prefix LD_LIBRARY_PATH : "${prev.xorg.libXxf86vm}/lib" \
--prefix LD_LIBRARY_PATH : "/run/opengl-driver/lib:/run/opengl-driver-32/lib" \
--add-flags "-jar $out/share/august-rsps/AugustRSPS_Launcher.jar"
'';
meta = with prev.lib; {
description = "August RSPS Launcher";
maintainers = with maintainers; [iofq];
platforms = ["x86_64-linux"];
};
};
}

View file

@ -4,20 +4,29 @@ sops:
- recipient: age14e2d2y8e2avzfrsyxg9dudxd36svm24t7skw6e969n0c42znlp3shffdtg - recipient: age14e2d2y8e2avzfrsyxg9dudxd36svm24t7skw6e969n0c42znlp3shffdtg
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA3ei9idzZZTmtXSHB5bnhB YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBITExOYlBkVlRKSHVpc2U2
WjdOeDJBc3l0MjEvbHlHczRtTCt3cG05M0JzCnMvM05SWWJsU1h6VXFxOWVlN21x L3BJNUV1UER0M0JldzNMTm9qam1nWGIwa2pnCnptZ2I3SU5rV3pwQTcvV3E4YWVI
MmJxcFpVbEpKaUliRmJBM2FhN1d6cm8KLS0tIElibU4xUTNScWM2cEI2YXdWRzdr LzlQa1NxWVVDcHJma1lmSWt6ZUZuV3MKLS0tIFlXK3UzR2JDOEFOUmJYZFpkLzE1
cjFKUzJENlVUVlpoQ3RNelFUV2h3WkkKIOHlJ72UWGnOxvO6mm6f1wnWZ5acWQCX QVQ3MVpueENUTmdaNCtKcjhBVkRDUjAKSze6cNG0BfETuDylwUGZD02P/NL3O3O4
AmG5ATn3WYvUt9nthMUMFpX3ICFiLHp73eKz1vMsA6DloVpi58FAlg== LBIhQAyShgzAqqmus/aCoYPfVChuuH9sEspZHWFSQV8aTJL1kFX0yw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
- recipient: age16pdhm238k63uye3rf4cwwe7ddyzds6xj9jv4wpsfggkghyarjqtsjzkxna - recipient: age16pdhm238k63uye3rf4cwwe7ddyzds6xj9jv4wpsfggkghyarjqtsjzkxna
enc: | enc: |
-----BEGIN AGE ENCRYPTED FILE----- -----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4M2ZNcndhUFdkT2JmYWxw YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOTUtpYzJYbU1oRDlTc295
Sk14Sk1OWUQ1MzZ3SDZLdnR6TW9xK3h1bGpvCmlVUkRxbnFWc1gzRGduZURTOWNI YVQySmdvbjhwK2pBaU5XRlFsVDNJSHl5blE0Cjh1bjNrY0wrMUdvVExpMXJSVTc1
WDdsakRRelhId1RKSEIvRWJpQUozYk0KLS0tIDlrY1E0NG5ydWRoT1QyMXZmVXpN R1ZKRGpQSmE1N09nYzZNTXFHT1pqbmcKLS0tIDRYYys3WUhTQnJkS0hMT2lRS01o
TzlHa0h2SFlUZnAvcjJ1NGdFL3ppWWsKm/aU+oAbTH7kC/k+VbGoxBGQzWxe8SRD bUt2RVdUZzdFZFVOTWNOOHBkSlZ4bmsK350/b+SL+0TT1ZJ6AIB9iDibf4L5ySpg
8Glhaq/ctBcr09dbkWl43GTXkNoEx8/wKA30HTvEq0yWEBworrSQ8w== P9ZkCmiDd3Le7ehlxJRBP+ynQOq+B0+zsoAUrS2AAcCo7nSKLnfZ0A==
-----END AGE ENCRYPTED FILE-----
- recipient: age12tz2r7clep9e450qhr5a6ctnx29ywmu0llq8uk9kcwhpp82zsa0sk9la9h
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAxSW5Fc3pUblI3dll6OEcx
NkVVcndybkZkOW93WmdjaE9zQnVFVGdHVkRBCnlZMWFLalloZ0xEOVVwVU9QTVd2
TS9aRnpSdU9uTzV3SlVxL0tkQ3R2aFEKLS0tIE1PSEV4UnBCSXc1S1BQb3VNeVlt
c0pldlQ5UFN5NWh3QWRwSnZCejZXcVUKY7vVyf567eOBhwZvy1E8MyDtLo3ljwST
5mgOLRaEU+G9bVOPGfClaBHK94sJMlHABa9M8bhd7Naws+OeUyKI4A==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2025-06-02T00:02:47Z" lastmodified: "2025-06-02T00:02:47Z"
mac: ENC[AES256_GCM,data:l3I8KNMoZGrUUS/RzY0fAr7DkvyhynOqPW/09IfI8sKYBP+gavdf3/OpW3uwhYzuS6pRWwCaUTa0F+HELu7rBG8FwpvyBpdeAgZb1hVFtKeBuaCjXDieuxKjj27IKLx3UbHx2iRm91oB7bIMZaXYMrlYVmrs/BkgoT8vHj5j7Rc=,iv:KaB9qaUTYbnS6ix297MjIHxl+LSazZnRW0Lu2bP/kmk=,tag:bbncBMsk/qOfz0LRmrqiUQ==,type:str] mac: ENC[AES256_GCM,data:l3I8KNMoZGrUUS/RzY0fAr7DkvyhynOqPW/09IfI8sKYBP+gavdf3/OpW3uwhYzuS6pRWwCaUTa0F+HELu7rBG8FwpvyBpdeAgZb1hVFtKeBuaCjXDieuxKjj27IKLx3UbHx2iRm91oB7bIMZaXYMrlYVmrs/BkgoT8vHj5j7Rc=,iv:KaB9qaUTYbnS6ix297MjIHxl+LSazZnRW0Lu2bP/kmk=,tag:bbncBMsk/qOfz0LRmrqiUQ==,type:str]