Compare commits

..

No commits in common. "75152ae5ab16171804b3dd3538ef10135a431a3a" and "b35e6362a00148ff1c8ff17036b4aad6457bd4b6" have entirely different histories.

18 changed files with 154 additions and 274 deletions

View file

@ -47,30 +47,25 @@
# Structure
- Everything is built upon [flake-parts](https://flake.parts/), with [flake modules](./modules/flake/) for automatic *stuff* extraction
- Everything is built upon [flake-parts](https://flake.parts/), with [flake modules](./modules/flake/) for automatic packages, modules && configurations extraction
- Automatic classic (`callPackage`) and `dream2nix` packages extraction
- Automatic `nixos`, `nix-darwin`, `nix-on-droid`, `home-manager` and `flake` modules extraction
- Automatic `nixos`, `nix-darwin`, `nix-on-droid` and `home-manager` configurations extraction
- Automatic overlays extraction
- Automatic devShells extraction
- Hosts can be found under `./hosts/${config-type}/${system}/${hostname}/...`
- Check [`./modules/flake/configurations`](./modules/flake/configurations) for more info on what is extracted from those directories
- Check [`./modules/flake/configurations.nix`](./modules/flake/configurations.nix) for more info on what is extracted from those directories
- Modules can be found under `./modules/${config-type}/...`
- Check [`./modules/flake/modules`](./modules/flake/modules) for more info on what is extracted from that directory
- Check [`./modules/flake/modules.nix`](./modules/flake/modules.nix) for more info on what is extracted from that directory
- Packages can be found under `./pkgs/...`
- Check [`./modules/flake/packages`](./modules/flake/packages) for more info on what is extracted from that directory
- Overlays can be found under `./overlays/...`
- Check [`./modules/flake/overlays`](./modules/flake/overlays) for more info on what is extracted from that directory
- Shells can be found under `./shells/...`
- Check [`./modules/flake/shells`](./modules/flake/shells) for more info on what is extracted from that directory
- Default one puts a recent `nix` (as of recently - `lix`) together with some other useful tools for working with the repo (`deploy-rs`, `rage`, `agenix-rekey`, etc.), see [`./shells/default/default.nix`](./shells/default/default.nix) for more info
- Default one puts a recent `nix` together with some other useful tools for working with the repo (`deploy-rs`, `rage`, `agenix-rekey`, etc.), see [`./shells/default/default.nix`](./shells/default/default.nix) for more info
# Topology
You can see the overall topology of the hosts by running
```sh
nix build ".#topology"
nix build .#topology
```
And opening the resulting `./result/main.svg` and `./result/network.svg`

View file

@ -37,11 +37,11 @@
"pre-commit-hooks": "pre-commit-hooks"
},
"locked": {
"lastModified": 1726360516,
"narHash": "sha256-PcnbNb6SFg/y1zE36vRdhuWd50nLM4Hu2DKmtsrLHmA=",
"lastModified": 1722597419,
"narHash": "sha256-YbMzll0Dh2ln/TryDP+S3IGm8nRHkzcSQIubI4ZEOAw=",
"owner": "oddlama",
"repo": "agenix-rekey",
"rev": "524425f44b1f9717bfabf483ec9c990c3712e6df",
"rev": "126b4a5133eb361cbf5bf90e44c71b6f830845ec",
"type": "github"
},
"original": {
@ -83,11 +83,11 @@
},
"crane": {
"locked": {
"lastModified": 1725409566,
"narHash": "sha256-PrtLmqhM6UtJP7v7IGyzjBFhbG4eOAHT6LPYOFmYfbk=",
"lastModified": 1725125250,
"narHash": "sha256-CB20rDD5eHikF6mMTTJdwPP1qvyoiyyw1RDUzwIaIF8=",
"owner": "ipetkov",
"repo": "crane",
"rev": "7e4586bad4e3f8f97a9271def747cf58c4b68f3c",
"rev": "96fd12c7100e9e05fa1a0a5bd108525600ce282f",
"type": "github"
},
"original": {
@ -142,7 +142,7 @@
},
"devshell_2": {
"inputs": {
"flake-utils": "flake-utils_4",
"flake-utils": "flake-utils_3",
"nixpkgs": [
"nix-topology",
"nixpkgs"
@ -169,11 +169,11 @@
]
},
"locked": {
"lastModified": 1726396892,
"narHash": "sha256-KRGuT5nGRAOT3heigRWg41tbYpTpapGhsWc+XjnIx0w=",
"lastModified": 1725377834,
"narHash": "sha256-tqoAO8oT6zEUDXte98cvA1saU9+1dLJQe3pMKLXv8ps=",
"owner": "nix-community",
"repo": "disko",
"rev": "51e3a7e51279fedfb6669a00d21dc5936c78a6ce",
"rev": "e55f9a8678adc02024a4877c2a403e3f6daf24fe",
"type": "github"
},
"original": {
@ -340,11 +340,11 @@
]
},
"locked": {
"lastModified": 1726153070,
"narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
"lastModified": 1725234343,
"narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
"rev": "567b938d64d4b4112ee253b9274472dc3a346eb6",
"type": "github"
},
"original": {
@ -361,11 +361,11 @@
]
},
"locked": {
"lastModified": 1726153070,
"narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
"lastModified": 1725234343,
"narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
"rev": "567b938d64d4b4112ee253b9274472dc3a346eb6",
"type": "github"
},
"original": {
@ -444,9 +444,8 @@
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
"id": "flake-utils",
"type": "indirect"
}
},
"flake-utils_3": {
@ -454,16 +453,17 @@
"systems": "systems_6"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"type": "github"
},
"original": {
"id": "flake-utils",
"type": "indirect"
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
@ -471,11 +471,11 @@
"systems": "systems_7"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@ -506,24 +506,6 @@
"inputs": {
"systems": "systems_9"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_7": {
"inputs": {
"systems": "systems_10"
},
"locked": {
"lastModified": 1685518550,
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
@ -538,9 +520,9 @@
"type": "github"
}
},
"flake-utils_8": {
"flake-utils_7": {
"inputs": {
"systems": "systems_11"
"systems": "systems_10"
},
"locked": {
"lastModified": 1705309234,
@ -556,9 +538,9 @@
"type": "github"
}
},
"flake-utils_9": {
"flake-utils_8": {
"inputs": {
"systems": "systems_12"
"systems": "systems_11"
},
"locked": {
"lastModified": 1710146030,
@ -574,21 +556,6 @@
"type": "github"
}
},
"flakey-profile": {
"locked": {
"lastModified": 1712898590,
"narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=",
"owner": "lf-",
"repo": "flakey-profile",
"rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d",
"type": "github"
},
"original": {
"owner": "lf-",
"repo": "flakey-profile",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": "flake-compat_6",
@ -603,11 +570,11 @@
]
},
"locked": {
"lastModified": 1725513492,
"narHash": "sha256-tyMUA6NgJSvvQuzB7A1Sf8+0XCHyfSPRx/b00o6K0uo=",
"lastModified": 1724857454,
"narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "7570de7b9b504cfe92025dd1be797bf546f66528",
"rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6",
"type": "github"
},
"original": {
@ -705,11 +672,11 @@
},
"hardware": {
"locked": {
"lastModified": 1725885300,
"narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=",
"lastModified": 1725477728,
"narHash": "sha256-ahej1VRqKmWbG7gewty+GlrSBEeGY/J2Zy8Nt8+3fdg=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e",
"rev": "880be1ab837e1e9fe0449dae41ac4d034694d4ce",
"type": "github"
},
"original": {
@ -747,11 +714,11 @@
]
},
"locked": {
"lastModified": 1726357542,
"narHash": "sha256-p4OrJL2weh0TRtaeu1fmNYP6+TOp/W2qdaIJxxQay4c=",
"lastModified": 1725180166,
"narHash": "sha256-fzssXuGR/mCeGbzM1ExaTqDz7QDGta3WA4jJsZyRruo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e524c57b1fa55d6ca9d8354c6ce1e538d2a1f47f",
"rev": "471e3eb0a114265bcd62d11d58ba8d3421ee68eb",
"type": "github"
},
"original": {
@ -762,11 +729,11 @@
},
"impermanence": {
"locked": {
"lastModified": 1725690722,
"narHash": "sha256-4qWg9sNh5g1qPGO6d/GV2ktY+eDikkBTbWSg5/iD2nY=",
"lastModified": 1724489415,
"narHash": "sha256-ey8vhwY/6XCKoh7fyTn3aIQs7WeYSYtLbYEG87VCzX4=",
"owner": "nix-community",
"repo": "impermanence",
"rev": "63f4d0443e32b0dd7189001ee1894066765d18a5",
"rev": "c7f5b394397398c023000cf843986ee2571a1fd7",
"type": "github"
},
"original": {
@ -783,11 +750,11 @@
]
},
"locked": {
"lastModified": 1726115155,
"narHash": "sha256-VDylz5VX4JD4/TZv6xUJDwuvNdgLRGoOpue1dlZGdIQ=",
"lastModified": 1725559615,
"narHash": "sha256-q24lAKpBubomTHcNKLoVyvnNwVJJyBwcb/Gkhl0LLbs=",
"owner": "Jovian-Experiments",
"repo": "Jovian-NixOS",
"rev": "02cf60ce20b6034fc0459e5116cec7016aaff6e4",
"rev": "45e6dcff8489d75941468462c41fad0948a2c94b",
"type": "github"
},
"original": {
@ -809,46 +776,11 @@
"url": "https://gist.github.com/duairc/5c9bb3c922e5d501a1edb9e7b3b845ba/archive/3885f7cd9ed0a746a9d675da6f265d41e9fd6704.tar.gz"
}
},
"lix": {
"flake": false,
"locked": {
"lastModified": 1723503926,
"narHash": "sha256-Rosl9iA9MybF5Bud4BTAQ9adbY81aGmPfV8dDBGl34s=",
"rev": "bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2.tar.gz?rev=bcaeb6388b8916ac6d1736e3aa2b13313e6a6bd2"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/2.91.0.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": "flake-utils_2",
"flakey-profile": "flakey-profile",
"lix": "lix",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1723510904,
"narHash": "sha256-zNW/rqNJwhq2lYmQf19wJerRuNimjhxHKmzrWWFJYts=",
"rev": "622a2253a071a1fb97a4d3c8103a91114acc1140",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/622a2253a071a1fb97a4d3c8103a91114acc1140.tar.gz?rev=622a2253a071a1fb97a4d3c8103a91114acc1140"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/nixos-module/archive/2.91.0.tar.gz"
}
},
"mac-app-util": {
"inputs": {
"cl-nix-lite": "cl-nix-lite",
"flake-compat": "flake-compat_4",
"flake-utils": "flake-utils_3",
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs"
},
"locked": {
@ -877,11 +809,11 @@
]
},
"locked": {
"lastModified": 1726396311,
"narHash": "sha256-+5XiPehXPmVym1LGgd8bK3VRSX5TRdku639TNA/H3VY=",
"lastModified": 1725515460,
"narHash": "sha256-ybr3YTmjhVOuCWdacABUPxfUlVNqy0ya3s2sZ8zgyTw=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "a97833a4f127d2723032afa6661adb15a020bbe1",
"rev": "e8df4bbcb3a2d18a32d8a50bd72c3175227f7468",
"type": "github"
},
"original": {
@ -893,11 +825,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1726314671,
"narHash": "sha256-KwsP2EVfcKexBaqrt3QGUX7GRFieDKEP/bx521dUOso=",
"lastModified": 1725446059,
"narHash": "sha256-N+XyobzJsFXVivL/uu8lHSc9vxlM3j5SSOc4G9B0SyA=",
"owner": "neovim",
"repo": "neovim",
"rev": "3b54adc6c6d25dd146fa1eac21321f6bd612f50a",
"rev": "b6e350a6b4df40fcc99931c460668c36fadc9989",
"type": "github"
},
"original": {
@ -932,11 +864,11 @@
]
},
"locked": {
"lastModified": 1726188813,
"narHash": "sha256-Vop/VRi6uCiScg/Ic+YlwsdIrLabWUJc57dNczp0eBc=",
"lastModified": 1725544312,
"narHash": "sha256-ETyDNLOF5YvFO2lVlKttXgdHTqSGdp9ZCRRCjv2gaoM=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "21fe31f26473c180390cfa81e3ea81aca0204c80",
"rev": "a55b3f1ab41bb6d5025ebeebb4da5fd240b9b3b3",
"type": "github"
},
"original": {
@ -1028,11 +960,11 @@
"nmd": "nmd"
},
"locked": {
"lastModified": 1725658585,
"narHash": "sha256-P29z4Gt89n5ps1U7+qmIrj0BuRXGZQSIaOe2+tsPgfw=",
"lastModified": 1721670745,
"narHash": "sha256-rjTQ14dqQ90EaHQy4g/mGylrJ1aZJYc3wCXc4A3GHJg=",
"owner": "t184256",
"repo": "nix-on-droid",
"rev": "5d88ff2519e4952f8d22472b52c531bb5f1635fc",
"rev": "248cc0806120fac9214f503dee0eaf0f47740dd0",
"type": "github"
},
"original": {
@ -1044,7 +976,7 @@
"nix-topology": {
"inputs": {
"devshell": "devshell_2",
"flake-utils": "flake-utils_5",
"flake-utils": "flake-utils_4",
"nixpkgs": [
"nixpkgs"
],
@ -1173,11 +1105,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1726062873,
"narHash": "sha256-IiA3jfbR7K/B5+9byVi9BZGWTD4VSbWe8VLpp9B/iYk=",
"lastModified": 1725432240,
"narHash": "sha256-+yj+xgsfZaErbfYM3T+QvEE2hU7UuE+Jf0fJCJ8uPS0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "4f807e8940284ad7925ebd0a0993d2a1791acb2f",
"rev": "ad416d066ca1222956472ab7d0555a6946746a80",
"type": "github"
},
"original": {
@ -1189,11 +1121,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1725634671,
"narHash": "sha256-v3rIhsJBOMLR8e/RNWxr828tB+WywYIoajrZKFM+0Gg=",
"lastModified": 1725103162,
"narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "574d1eac1c200690e27b8eb4e24887f8df7ac27c",
"rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b",
"type": "github"
},
"original": {
@ -1275,11 +1207,11 @@
},
"nur": {
"locked": {
"lastModified": 1726393490,
"narHash": "sha256-LVGtTtPzF0rxy3nKzegvaLVsTKSM0IMLjfbxnh7FKP0=",
"lastModified": 1725568280,
"narHash": "sha256-CqrpCr0WQPtDR8lX+KF1iqv1KW3w1fT08zlAssIdpMQ=",
"owner": "nix-community",
"repo": "NUR",
"rev": "1a4d47c6fc08986702c185ef0409d59dd42269a1",
"rev": "0899f7e1d8fd4646c1ccd524e333c05907c1b40a",
"type": "github"
},
"original": {
@ -1389,16 +1321,16 @@
"agenix"
],
"crane": "crane",
"flake-utils": "flake-utils_6",
"flake-utils": "flake-utils_5",
"nixpkgs": "nixpkgs_3",
"rust-overlay": "rust-overlay"
},
"locked": {
"lastModified": 1725794804,
"narHash": "sha256-QJvZDYfbcOM1Pt6YUPl+Xmw+JDJQtokdYj4P7sXuF7U=",
"lastModified": 1725344070,
"narHash": "sha256-YX2npWHeTV9SxfI7P4IcPqxkO7sp/twYpdo/SGxNTbk=",
"owner": "yaxitech",
"repo": "ragenix",
"rev": "7f6c227f86c5b4e6e7f6d2d62c614acd28d25627",
"rev": "e977cf6d792e7959c8bb24d62a6b4bea14daa00f",
"type": "github"
},
"original": {
@ -1421,7 +1353,6 @@
"impermanence": "impermanence",
"jovian-nixos": "jovian-nixos",
"lib-net": "lib-net",
"lix-module": "lix-module",
"mac-app-util": "mac-app-util",
"neovim-nightly-overlay": "neovim-nightly-overlay",
"nix-colors": "nix-colors",
@ -1446,11 +1377,11 @@
]
},
"locked": {
"lastModified": 1725675754,
"narHash": "sha256-hXW3csqePOcF2e/PYnpXj72KEYyNj2HzTrVNmS/F7Ug=",
"lastModified": 1725330199,
"narHash": "sha256-oUkdPJIxP3r3YyVOBLkDVLIJiQV9YlrVqA+jNcdpCvM=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "8cc45e678e914a16c8e224c3237fb07cf21e5e54",
"rev": "a562172c72d00350f9f2ff830e6515b6e7bee6d5",
"type": "github"
},
"original": {
@ -1517,7 +1448,7 @@
},
"spicetify-nix": {
"inputs": {
"flake-utils": "flake-utils_7",
"flake-utils": "flake-utils_6",
"nixpkgs": "nixpkgs_4"
},
"locked": {
@ -1579,21 +1510,6 @@
"type": "github"
}
},
"systems_12": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
@ -1757,17 +1673,17 @@
"zig-overlay": {
"inputs": {
"flake-compat": "flake-compat_8",
"flake-utils": "flake-utils_8",
"flake-utils": "flake-utils_7",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1726360294,
"narHash": "sha256-YhSxws05ILQzwIdzy2Mc6lPicS9yAFDhSrza6Kfeew4=",
"lastModified": 1725538257,
"narHash": "sha256-J8UYDbHm8zSU+MruQ0VGEFL7eOJUkYsi7O4rCc0EcCk=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "2f41d3cc1c2f71210f98e524e10a20ad4bcf17df",
"rev": "5848c57bc396697ae4ed69f5e1295fe655c3ffae",
"type": "github"
},
"original": {
@ -1778,7 +1694,7 @@
},
"zls-overlay": {
"inputs": {
"flake-utils": "flake-utils_9",
"flake-utils": "flake-utils_8",
"gitignore": "gitignore_4",
"nixpkgs": [
"nixpkgs"
@ -1788,11 +1704,11 @@
]
},
"locked": {
"lastModified": 1725812318,
"narHash": "sha256-kqPJwnlhGByYBE1gqr7WI7O/Em8LmLPTBhPEST8OA8s=",
"lastModified": 1725202623,
"narHash": "sha256-+UdfnVQIMYEBNN5lVK/Pn6fs2YMohP+f/4XAU7qTTHo=",
"owner": "zigtools",
"repo": "zls",
"rev": "dd78968d4c8deefd33addc2b1cc14f60d89ec1a9",
"rev": "ace6f6da90a4420cd6632363b30762e577e2b922",
"type": "github"
},
"original": {

View file

@ -69,11 +69,6 @@
url = "github:nixos/nixpkgs/nixos-unstable";
};
lix-module = {
url = "https://git.lix.systems/lix-project/nixos-module/archive/2.91.0.tar.gz";
inputs.nixpkgs.follows = "nixpkgs";
};
flake-parts = {
url = "github:hercules-ci/flake-parts";
inputs.nixpkgs-lib.follows = "nixpkgs";

View file

@ -8,12 +8,33 @@
# Auto upgrade nix package and the daemon service.
services.nix-daemon.enable = true;
nix = {
nix = let
flakeInputs = lib.filterAttrs (lib.const (lib.isType "flake")) inputs;
in {
# Ensure we can work with flakes
# TODO: add to `README.md`
# NOTE: run `sudo -i nix-env --uninstall nix` to uninstall the global `nix`
package = pkgs.lix-monitored;
package = pkgs.nixVersions.monitored.latest;
# This will add each flake input as a registry
# To make nix3 commands consistent with your flake
registry = lib.mapAttrs (_: value: { flake = value; }) flakeInputs;
# This will additionally add your inputs to the system's legacy channels
# Making legacy nix commands consistent as well, awesome!
nixPath = lib.mapAttrsToList (key: value: "${key}=flake:${key}") flakeInputs;
# extraOptions = ''
# # Enable flakes and new 'nix' command
# experimental-features = nix-command flakes
# # Allow building multiple derivations in parallel
# max-jobs = auto
# # Deduplicate and optimize nix store
# auto-optimise-store = true
# # Keep outputs and derivations
# keep-outputs = true
# keep-derivations = true
# '';
settings = {
# Enable flakes and new 'nix' command

View file

@ -70,7 +70,7 @@
programs.neovim = {
enable = true;
package = pkgs.neovim;
defaultEditor = true;
# defaultEditor = true;
viAlias = true;
vimAlias = true;

View file

@ -1,31 +0,0 @@
{ inputs, lib, pkgs, config, ... }:
{
age.secrets."anki.reo101" = {
rekeyFile = "${inputs.self}/secrets/home/jeeves/anki/reo101.age";
mode = "400";
};
services.anki-sync-server = {
enable = true;
package = pkgs.anki-sync-server;
users = [
{
username = "reo101";
passwordFile = config.age.secrets."anki.reo101".path;
}
];
address = "0.0.0.0";
port = 27701;
};
services.nginx = {
virtualHosts."anki.jeeves.local" = {
enableACME = false;
forceSSL = false;
locations."/" = {
proxyPass = "http://127.0.0.1:${builtins.toString config.services.anki-sync-server.port}";
};
};
};
}

View file

@ -20,7 +20,6 @@
# ./nextcloud.nix
./paperless.nix
./podman.nix
./anki.nix
];
# services.kanidm = { };
@ -44,8 +43,16 @@
hardware.enableRedistributableFirmware = true;
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
nix = {
package = pkgs.lix-monitored;
nix = let
flakeInputs = lib.filterAttrs (lib.const (lib.isType "flake")) inputs;
in {
# This will add each flake input as a registry
# To make nix3 commands consistent with your flake
registry = lib.mapAttrs (_: value: { flake = value; }) flakeInputs;
# This will additionally add your inputs to the system's legacy channels
# Making legacy nix commands consistent as well, awesome!
nixPath = lib.mapAttrsToList (key: value: "${key}=flake:${key}") flakeInputs;
settings = {
trusted-users = [

View file

@ -32,7 +32,7 @@
DO_NOT_TRACK = "True";
SCARF_NO_ANALYTICS = "True";
TRANSFORMERS_CACHE = "${config.services.open-webui.stateDir}/cache";
OLLAMA_API_BASE_URL = "http://127.0.0.1:${builtins.toString config.services.ollama.port}";
OLLAMA_API_BASE_URL = "http://127.0.0.1:11434";
# Disable authentication
WEBUI_AUTH = "False";
};

View file

@ -15,35 +15,33 @@
enable = true;
package = pkgs.sambaFull;
openFirewall = true;
settings = {
global = {
# Files
"workgroup" = "WORKGROUP";
"server string" = "Jeeves";
"netbios name" = "jeeves";
"security" = "user";
# "use sendfile" = "yes";
# "max protocol" = "smb2";
# NOTE: localhost is the ipv6 localhost ::1
# TODO: keep glogal network metadata somehow
"hosts allow" = "192.168.0. 192.168.1. 10.100.0. 127.0.0.1 localhost";
"hosts deny" = "0.0.0.0/0";
"guest account" = "nobody";
"map to guest" = "bad user";
securityType = "user";
extraConfig = ''
# Files
workgroup = WORKGROUP
server string = Jeeves
netbios name = jeeves
security = user
#use sendfile = yes
#max protocol = smb2
# NOTE: localhost is the ipv6 localhost ::1
hosts allow = 192.168.0. 192.168.1. 10.100.0. 127.0.0.1 localhost
hosts deny = 0.0.0.0/0
guest account = nobody
map to guest = bad user
# Symlinks;
"allow insecure wide links" = "yes";
# Symlinks
allow insecure wide links = yes
# Printers;
"load printers" = "yes";
"printing" = "cups";
"printcap name" = "cups";
};
# Shares
# Printers
load printers = yes
printing = cups
printcap name = cups
'';
shares = {
public = {
"path" = "/data/samba/public";
"browseable" = "yes";
path = "/data/samba/public";
browseable = "yes";
"read only" = "no";
"guest ok" = "yes";
"create mask" = "0644";
@ -52,8 +50,8 @@
"force group" = "users";
};
private = {
"path" = "/data/samba/private";
"browseable" = "yes";
path = "/data/samba/private";
browseable = "yes";
"read only" = "no";
"guest ok" = "no";
"create mask" = "0644";

View file

@ -15,8 +15,8 @@
rekeyFile = "${inputs.self}/secrets/home/jeeves/wireguard/key.age";
generator = {
script = { lib, pkgs, file, ... }: /* bash */ ''
priv=$(${lib.getExe' pkgs.wireguard-tools "wg"} genkey)
${lib.getExe' pkgs.wireguard-tools "wg"} pubkey <<< "$priv" > ${lib.escapeShellArg (lib.removeSuffix ".age" file + ".pub")}
priv=$(${pkgs.wireguard-tools}/bin/wg genkey)
${pkgs.wireguard-tools}/bin/wg pubkey <<< "$priv" > ${lib.escapeShellArg (lib.removeSuffix ".age" file + ".pub")}
echo "$priv"
'';
};

View file

@ -74,7 +74,6 @@
(name: { package, systems }:
let
# TODO: put in `autoThings` `handle`?
# TODO: keep source `dream2nix` module for overriding?
isDream2Nix = lib.pipe package
[
builtins.functionArgs

View file

@ -29,7 +29,6 @@ in
config = let
# TODO: agenix???
# TODO: module options???
name = "reo101";
email = "pavel.atanasov2001@gmail.com";
key = "675AA7EF13964ACB";

View file

@ -3,9 +3,6 @@
(wezterm.config_builder)
{}))
;; https://github.com/NixOS/nixpkgs/issues/336069
(set config.front_end "WebGpu")
;;;;;;;;;;;;;;;;;;;;
;;; Font Options ;;;
;;;;;;;;;;;;;;;;;;;;

View file

@ -2,9 +2,6 @@ local M = {}
local wezterm = require("wezterm")
-- https://github.com/NixOS/nixpkgs/issues/336069
M.front_end = "WebGpu"
----------
-- Font --
----------

View file

@ -23,11 +23,6 @@ final: prev:
nix-output-monitor = prev.nix-output-monitor;
};
lix-monitored = inputs.nix-monitored.packages.${prev.system}.default.override {
nix = inputs.lix-module.packages.${prev.system}.default;
nix-output-monitor = prev.nix-output-monitor;
};
nixVersions = prev.nixVersions // {
monitored =
final.lib.flip final.lib.concatMapAttrs prev.nixVersions (version: package:

View file

@ -1,8 +0,0 @@
age-encryption.org/v1
-> X25519 jROnYoLUU52v0VQuZVBUlfa/U1+LxqaaHXJkWLqis1Q
tDZKi1bq3h08JOyobEZq7fqAbe/Pyf1YPQj3y9CY8cM
-> KWa-grease bQ\#u]
XzYchZjVfR7y1kZp2PmXyZXyrYqGwZd5iKPERhSdc+3Pd2qU1pxVNJEZcAwcwpyM
/+x8jADcUcWs9+MzgW0qHKzM4vcpLCE
--- 0znfnFvlzrqKXsKHkbH5K7fS+vLMSfEKc84Wm0hFVGg
=ã$þš ‘¦ ôÂ/àÝœzË»©P©íß2“<1F>yg# º¯?7Qcsq<73>

View file

@ -7,7 +7,7 @@
extra-experimental-features = nix-command flakes
'';
nativeBuildInputs = with pkgs; [
lix-monitored
nixVersions.monitored.latest
home-manager
git
wireguard-tools