Compare commits

..

No commits in common. "d08e080d162d0d5fee76635b04d2bcb13d94923e" and "f7c4a7d830a461e7afeb75efd99315ee1e0907cd" have entirely different histories.

18 changed files with 175 additions and 260 deletions

View file

@ -13,7 +13,6 @@ switch specialisation=DEFAULT_SPECIALISATION:
nh os switch {{ FLAKE_HOME }} {{ if specialisation == DEFAULT_SPECIALISATION { "-S" } else { "-s " + specialisation } }} nh os switch {{ FLAKE_HOME }} {{ if specialisation == DEFAULT_SPECIALISATION { "-S" } else { "-s " + specialisation } }}
update: update:
cd pkgs && nvfetcher
nix flake update --log-format internal-json 2>&1 | nom --json nix flake update --log-format internal-json 2>&1 | nom --json
build specialisation=DEFAULT_SPECIALISATION: build specialisation=DEFAULT_SPECIALISATION:

View file

@ -41,8 +41,8 @@ Hey, you. This is my nixos configurations.
| `overlays.additions` | the ovelrays add packages in `<nixpkgs>` | ./overlays/additions | | `overlays.additions` | the ovelrays add packages in `<nixpkgs>` | ./overlays/additions |
| `nixosModules.default` | nixos modules shared on different nixos machines | ./nixos/modules | | `nixosModules.default` | nixos modules shared on different nixos machines | ./nixos/modules |
| `nixosConfigurations.${machine}` | machine-local nixos config | ./nixos/configurations/${machine} | | `nixosConfigurations.${machine}` | machine-local nixos config | ./nixos/configurations/${machine} |
| `homeModules.default` | home-manager modules shared between different user and machine combinations | ./home/modules | | `homeManagerModules.default` | home-manager modules shared between different user and machine combinations | ./home/modules |
| `homeModules.extra` | home-manager modules only for non-nixos | ./home/extra | | `homeManagerModules.extra` | home-manager modules only for non-nixos | ./home/extra |
| `homeModules.${user}` | home-manager modules shared between different users | ./home/${user}/modules | | `homeManagerModules.${user}` | home-manager modules shared between different users | ./home/${user}/modules |
| `homeConfigurations."${user}@${machine}"` | home-manager config for different user and machine combinations | ./home/${user}/configurations/${machine} | | `homeConfigurations."${user}@${machine}"` | home-manager config for different user and machine combinations | ./home/${user}/configurations/${machine} |
| `deploy.nodes.${machine}.system` | deploy-rs profile for deploying `nixosConfiguration.${machine}` remotely | - | | `deploy.nodes.${machine}.system` | deploy-rs profile for deploying `nixosConfiguration.${machine}` remotely | - |

164
flake.lock generated
View file

@ -70,11 +70,11 @@
"bt-tracker": { "bt-tracker": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1741997456, "lastModified": 1741680653,
"narHash": "sha256-4WhLuADRRr8tRnySlDGMiPKUBwVfxaOUjBkfaE7lbHw=", "narHash": "sha256-b5Y241PYSU+H6g1T4gvyT69ELjgCiLIueHIXsmlmDcQ=",
"owner": "XIU2", "owner": "XIU2",
"repo": "TrackersListCollection", "repo": "TrackersListCollection",
"rev": "22a50f839018b5c5c0b4ef2675ea3ad89f12e44e", "rev": "1e195e467d0e5bc12e051d76ed87959a4241fa26",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -137,11 +137,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741786315, "lastModified": 1741684000,
"narHash": "sha256-VT65AE2syHVj6v/DGB496bqBnu1PXrrzwlw07/Zpllc=", "narHash": "sha256-NQykaWIrn5zilncefIvW4jPQ76YMXVK/dMTzkSVDmdk=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "0d8c6ad4a43906d14abd5c60e0ffe7b587b213de", "rev": "2db1d64fc084b1d15e3871dffc02c62a94ed6ed7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -332,11 +332,11 @@
"zig2nix": "zig2nix" "zig2nix": "zig2nix"
}, },
"locked": { "locked": {
"lastModified": 1742002412, "lastModified": 1741594465,
"narHash": "sha256-dw7CLa5+tZmfNCPjH2vSAk7SBfsB2Zp7uOcZ1XAADjE=", "narHash": "sha256-8a/QIgNwV8VGn8JIiACmVVEdue+U3juiMSAO1DEUTC4=",
"owner": "ghostty-org", "owner": "ghostty-org",
"repo": "ghostty", "repo": "ghostty",
"rev": "550edd426257fa1976a5f1b8b9539543578f5a35", "rev": "95daca616db5c24d7bb37fd5a3ac2f8762bb4ead",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -421,11 +421,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1741962962, "lastModified": 1741703648,
"narHash": "sha256-68SVpGxlAFWGmolts5yhWw2v9bx+jmA/0rX3wxIRZkU=", "narHash": "sha256-JR0uyqJPJEbXLSPhlQJZvia3f6Ir7E9kXxXb/N4I45w=",
"owner": "helix-editor", "owner": "helix-editor",
"repo": "helix", "repo": "helix",
"rev": "9574e551cf8ea4d868a8c102647fcfe0d41496df", "rev": "f9360fb27e60b21cfd824c4a68d2b5df4edb745b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -442,11 +442,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741955947, "lastModified": 1741701235,
"narHash": "sha256-2lbURKclgKqBNm7hVRtWh0A7NrdsibD0EaWhahUVhhY=", "narHash": "sha256-gBlb8R9gnjUAT5XabJeel3C2iEUiBHx3+91651y3Sqo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "4e12151c9e014e2449e0beca2c0e9534b96a26b4", "rev": "c630dfa8abcc65984cc1e47fb25d4552c81dd37e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -466,11 +466,11 @@
"rust-overlay": "rust-overlay_2" "rust-overlay": "rust-overlay_2"
}, },
"locked": { "locked": {
"lastModified": 1742003507, "lastModified": 1741682127,
"narHash": "sha256-YqOuNSRC0oduAOWh/EqEaTVHawUyXmNHntqmOVDFaLc=", "narHash": "sha256-KnEVVbmIURr3FFFZm2fAUX8qe4BC67LnIDTpHwyb4YU=",
"owner": "jj-vcs", "owner": "jj-vcs",
"repo": "jj", "repo": "jj",
"rev": "f8082a052d05fe4424e59bbdf7885452726400f9", "rev": "d37a5b1b74db3641da755dc8d5be4e95fa461bdb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -482,11 +482,11 @@
"lix": { "lix": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1741888409, "lastModified": 1738174211,
"narHash": "sha256-gJ7QmlwsJ/QdwUjwTjifNo3v7OBQm2N6xa19l3mMWM4=", "narHash": "sha256-eYmp1mKM4kULV1W+EBtCPk6LmKWl2REivaYfGRl+AWo=",
"rev": "20edd45ae816c73504ddfb9c678756e003ceeafd", "rev": "64e33a7e09a0d1faacf2fd3f6ebd647fe4d8346a",
"type": "tarball", "type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/20edd45ae816c73504ddfb9c678756e003ceeafd.tar.gz?rev=20edd45ae816c73504ddfb9c678756e003ceeafd" "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/64e33a7e09a0d1faacf2fd3f6ebd647fe4d8346a.tar.gz?rev=64e33a7e09a0d1faacf2fd3f6ebd647fe4d8346a"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@ -505,11 +505,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741894565, "lastModified": 1738176840,
"narHash": "sha256-2FD0NDJbEjUHloVrtEIms5miJsj1tvQCc/0YK5ambyc=", "narHash": "sha256-NG3IRvRs3u3btVCN861FqHvgOwqcNT/Oy6PBG86F5/E=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "a6da43f8193d9e329bba1795c42590c27966082e", "rev": "621aae0f3cceaffa6d73a4fb0f89c08d338d729e",
"revCount": 136, "revCount": 133,
"type": "git", "type": "git",
"url": "https://git.lix.systems/lix-project/nixos-module" "url": "https://git.lix.systems/lix-project/nixos-module"
}, },
@ -530,11 +530,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1741985426, "lastModified": 1741686876,
"narHash": "sha256-qtvcOFwWVQqKyjtVYXpC8Mp/cP/xc/Na6L4UXyHyJHA=", "narHash": "sha256-Kt37Zm9YcQoe/aRVbPFydZcfwIrEAg/U+iz3FcxsOZs=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "93a1359e5625bb7724298e92c4cddf0e8022dc00", "rev": "fa230971ab63885ba5666588a7b78f75f73d5a85",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -563,11 +563,11 @@
"niri-unstable": { "niri-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1741982253, "lastModified": 1741684091,
"narHash": "sha256-pQYos0sgmAlf7VFZHB4FZMu0CACTLLARS++H64NRB1I=", "narHash": "sha256-0tcSDfsGZy01XacnJOsUGZ6X36KYART0xT1u7nbWyso=",
"owner": "YaLTeR", "owner": "YaLTeR",
"repo": "niri", "repo": "niri",
"rev": "f6aa8c17937fadd1da3c8f2f080ea402ae17da87", "rev": "b220cdbe7e29d47590147b65a1bfe50f3abeff84",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -583,11 +583,11 @@
"nixpkgs-stable": "nixpkgs-stable_3" "nixpkgs-stable": "nixpkgs-stable_3"
}, },
"locked": { "locked": {
"lastModified": 1742006448, "lastModified": 1741691385,
"narHash": "sha256-8OmMOm7MeuhBYYIu9an/OaeH9+mJLXKVj2g/TY8qAg0=", "narHash": "sha256-Zjs3cBTVm4GLjjLgdi9XS/7nEdjjciKPj2EFOLOrNcE=",
"owner": "lilyinstarlight", "owner": "lilyinstarlight",
"repo": "nixos-cosmic", "repo": "nixos-cosmic",
"rev": "d63e6b46e0d080fa7cab2cb3ee37b46873615fa3", "rev": "5af413f4e97073783ed2dc11fd134ffc7771414d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -598,11 +598,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1741792691, "lastModified": 1741325094,
"narHash": "sha256-f0BVt1/cvA0DQ/q3rB+HY4g4tKksd03ZkzI4xehC2Ew=", "narHash": "sha256-RUAdT8dZ6k/486vnu3tiNRrNW6+Q8uSD2Mq7gTX4jlo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "e1f12151258b12c567f456d8248e4694e9390613", "rev": "b48cc4dab0f9711af296fc367b6108cf7b8ccb16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -613,38 +613,6 @@
} }
}, },
"nixpkgs": { "nixpkgs": {
"locked": {
"lastModified": 1741851582,
"narHash": "sha256-cPfs8qMccim2RBgtKGF+x9IBCduRvd/N5F4nYpU0TVE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6607cf789e541e7873d40d3a8f7815ea92204f32",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-845dc1e9cbc2e48640b8968af58b4a19db67aa8f": {
"locked": {
"lastModified": 1741960758,
"narHash": "sha256-pSGMbfkxF7TSeco54W+B1q+g22YCVp1qXHgtrdgtyR4=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "845dc1e9cbc2e48640b8968af58b4a19db67aa8f",
"type": "github"
},
"original": {
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "845dc1e9cbc2e48640b8968af58b4a19db67aa8f",
"type": "github"
}
},
"nixpkgs-e3e32b642a31e6714ec1b712de8c91a3352ce7e1": {
"locked": { "locked": {
"lastModified": 1741513245, "lastModified": 1741513245,
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=", "narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
@ -655,8 +623,8 @@
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
"type": "github" "type": "github"
} }
}, },
@ -693,11 +661,11 @@
}, },
"nixpkgs-stable_2": { "nixpkgs-stable_2": {
"locked": { "locked": {
"lastModified": 1741862977, "lastModified": 1741600792,
"narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=", "narHash": "sha256-yfDy6chHcM7pXpMF4wycuuV+ILSTG486Z/vLx/Bdi6Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0", "rev": "ebe2788eafd539477f83775ef93c3c7e244421d3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -709,11 +677,11 @@
}, },
"nixpkgs-stable_3": { "nixpkgs-stable_3": {
"locked": { "locked": {
"lastModified": 1741862977, "lastModified": 1741600792,
"narHash": "sha256-prZ0M8vE/ghRGGZcflvxCu40ObKaB+ikn74/xQoNrGQ=", "narHash": "sha256-yfDy6chHcM7pXpMF4wycuuV+ILSTG486Z/vLx/Bdi6Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "cdd2ef009676ac92b715ff26630164bb88fec4e0", "rev": "ebe2788eafd539477f83775ef93c3c7e244421d3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -749,11 +717,11 @@
"nur-rycee": { "nur-rycee": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1741957870, "lastModified": 1741703094,
"narHash": "sha256-5ahYCLPnBcZX7vlmXzn+m0LDRgYiMDglU6UnH/HngPo=", "narHash": "sha256-rM6zVLFGv2BqPPATh2zyDZaBlzbwe5l0RVw04qL8rtQ=",
"owner": "rycee", "owner": "rycee",
"repo": "nur-expressions", "repo": "nur-expressions",
"rev": "4021f5dad2a46ff78c1bf82ee45c1656e12164f2", "rev": "f086e15336227c65af733b221159739c04132a8a",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -817,8 +785,6 @@
"nixos-cosmic", "nixos-cosmic",
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-845dc1e9cbc2e48640b8968af58b4a19db67aa8f": "nixpkgs-845dc1e9cbc2e48640b8968af58b4a19db67aa8f",
"nixpkgs-e3e32b642a31e6714ec1b712de8c91a3352ce7e1": "nixpkgs-e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
"nur-rycee": "nur-rycee", "nur-rycee": "nur-rycee",
"nur-xddxdd": "nur-xddxdd", "nur-xddxdd": "nur-xddxdd",
"oskars-dotfiles": "oskars-dotfiles", "oskars-dotfiles": "oskars-dotfiles",
@ -875,11 +841,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741861888, "lastModified": 1741644481,
"narHash": "sha256-ynOgXAyToeE1UdLNfrUn/hL7MN0OpIS2BtNdLjpjPf0=", "narHash": "sha256-E0RrMykMtEv15V3QhpsFutgoSKhL1JBhidn+iZajOyg=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "d016ce0365b87d848a57c12ffcfdc71da7a2b55f", "rev": "e653d71e82575a43fe9d228def8eddb73887b866",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -916,11 +882,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1741976991, "lastModified": 1741703342,
"narHash": "sha256-74Q3Kpzde+S3pWaZihNFMjCn8lo4wmDVmg+Uvw8YLLQ=", "narHash": "sha256-eU5RTDACahqJSLrR79FdS+dImmrK3YpFByjRWmmqeaU=",
"owner": "danth", "owner": "danth",
"repo": "stylix", "repo": "stylix",
"rev": "e43eb4e2a7dfbd96454df2b1c9418299b4373773", "rev": "9dc48274889d1f5349b8ebc7c83f0907f3c86588",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1083,11 +1049,11 @@
"xwayland-satellite-unstable": { "xwayland-satellite-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1741910413, "lastModified": 1741140299,
"narHash": "sha256-z9bvteu0rf+xmUDj4VifN06XAFJZQGRSOvdN7rn/oDs=", "narHash": "sha256-Y2bPO92Yg5HcH5ORvrVOQb4wRGEapGEteHXGtNvboxk=",
"owner": "Supreeeme", "owner": "Supreeeme",
"repo": "xwayland-satellite", "repo": "xwayland-satellite",
"rev": "0325cb1f48a292d873a6844772cca00251cbf945", "rev": "10cb041a80bb815cc1789cfa305923f1f9e3713d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1111,11 +1077,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741702955, "lastModified": 1738239110,
"narHash": "sha256-Emk3VnNByigCBlBN34IH2cMrsUqIhdex02uw9TSDsN0=", "narHash": "sha256-Y5i9mQ++dyIQr+zEPNy+KIbc5wjPmfllBrag3cHZgcE=",
"owner": "mitchellh", "owner": "mitchellh",
"repo": "zig-overlay", "repo": "zig-overlay",
"rev": "1152ce759114a94134081270affd970ae1b957ed", "rev": "1a8fb6f3a04724519436355564b95fce5e272504",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1132,21 +1098,21 @@
], ],
"nixpkgs": [ "nixpkgs": [
"ghostty", "ghostty",
"nixpkgs-unstable" "nixpkgs-stable"
] ]
}, },
"locked": { "locked": {
"lastModified": 1741816255, "lastModified": 1741368279,
"narHash": "sha256-SJQMnm1vwXy8Td2qp/omjybn+4xZ/MDdZHeK6aa2nb0=", "narHash": "sha256-WTaC8HmnIq6O71iK0g9as404BbmS+YyEP5qS85m2JBY=",
"owner": "jcollie", "owner": "jcollie",
"repo": "zig2nix", "repo": "zig2nix",
"rev": "c2a24405298373123e12ca81805e436da648aaf5", "rev": "672971b5b6911de21446ad4fc76dee677922eda0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "jcollie", "owner": "jcollie",
"repo": "zig2nix", "repo": "zig2nix",
"rev": "c2a24405298373123e12ca81805e436da648aaf5", "rev": "672971b5b6911de21446ad4fc76dee677922eda0",
"type": "github" "type": "github"
} }
} }

118
flake.nix
View file

@ -3,26 +3,8 @@
inputs = { inputs = {
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; # nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
# nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable-small";
# nixpkgs.url = "github:NixOS/nixpkgs/master";
nixpkgs.follows = "nixos-cosmic/nixpkgs"; nixpkgs.follows = "nixos-cosmic/nixpkgs";
# pr: https://github.com/NixOS/nixpkgs/pull/389740
nixpkgs-845dc1e9cbc2e48640b8968af58b4a19db67aa8f = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
rev = "845dc1e9cbc2e48640b8968af58b4a19db67aa8f";
};
# issue: https://github.com/NixOS/nixpkgs/issues/389977
nixpkgs-e3e32b642a31e6714ec1b712de8c91a3352ce7e1 = {
type = "github";
owner = "NixOS";
repo = "nixpkgs";
rev = "e3e32b642a31e6714ec1b712de8c91a3352ce7e1";
};
lix-module = { lix-module = {
url = "git+https://git.lix.systems/lix-project/nixos-module"; url = "git+https://git.lix.systems/lix-project/nixos-module";
inputs = { inputs = {
@ -199,10 +181,7 @@
in in
flake-parts.lib.mkFlake { inherit inputs; } { flake-parts.lib.mkFlake { inherit inputs; } {
systems = flake-utils.lib.defaultSystems; systems = flake-utils.lib.defaultSystems;
imports = [ perSystem = (
inputs.home-manager.flakeModules.home-manager
];
perSystem =
{ pkgs, system, ... }@args: { pkgs, system, ... }@args:
{ {
_module.args.pkgs = import inputs.nixpkgs { _module.args.pkgs = import inputs.nixpkgs {
@ -217,7 +196,8 @@
inherit inputs; inherit inputs;
} }
); );
}; }
);
flake = flake =
{ {
nix.settings = { nix.settings = {
@ -233,7 +213,7 @@
cachix = x: "https://${x}.cachix.org"; cachix = x: "https://${x}.cachix.org";
in in
nixpkgs.lib.flatten [ nixpkgs.lib.flatten [
# mirrors mirrors
(cachix "nix-community") (cachix "nix-community")
"https://cache.nixos.org" "https://cache.nixos.org"
(cachix "cosmic") (cachix "cosmic")
@ -250,11 +230,16 @@
nixosConfigurations = nixosConfigurations =
let let
nixosConfigDir = ./nixos/configurations; nixosConfigDir = ./nixos/configurations;
makeNixConfiguration = in
nixpkgs.lib.genAttrs
(map (f: nixpkgs.lib.removeSuffix ".nix" f) (builtins.attrNames (builtins.readDir nixosConfigDir)))
(
hostName: hostName:
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
modules = modules =
[ outputs.nixosModules.default ] [
outputs.nixosModules.default
]
++ [ ++ [
( (
let let
@ -264,18 +249,11 @@
if builtins.pathExists dirPath then dirPath else filePath if builtins.pathExists dirPath then dirPath else filePath
) )
]; ];
specialArgs = { inherit inputs outputs rootPath; }; specialArgs = {
}; inherit inputs outputs rootPath;
in };
nixosConfigDir }
|> builtins.readDir );
|> builtins.attrNames
|> map (f: nixpkgs.lib.removeSuffix ".nix" f)
|> map (name: {
inherit name;
value = makeNixConfiguration name;
})
|> builtins.listToAttrs;
} }
// ( // (
let let
@ -294,12 +272,12 @@
[ [
"${toString ./home}/${unixName}/configurations/${hostName}" "${toString ./home}/${unixName}/configurations/${hostName}"
] ]
++ (with outputs.homeModules; [ ++ (with outputs.homeManagerModules; [
default default
extra extra
]) ])
++ [ ++ [
outputs.homeModules."${unixName}" outputs.homeManagerModules."${unixName}"
]; ];
extraSpecialArgs = { extraSpecialArgs = {
inherit inherit
@ -326,28 +304,31 @@
hostName = "Cape"; hostName = "Cape";
unixName = "alice"; unixName = "alice";
}; };
homeModules = homeManagerModules =
{ {
default = import ./home/modules; default = import ./home/modules;
extra = import ./home/extra; extra = import ./home/extra;
} }
// ( // (
./home let
|> builtins.readDir allEntries = builtins.readDir ./home;
|> nixpkgs.lib.filterAttrs (key: value: value == "directory") allUsers = nixpkgs.lib.filterAttrs (
|> nixpkgs.lib.filterAttrs ( key: value:
key: value: value == "directory"
!builtins.elem key [ && (
"modules" !builtins.elem key [
"extra" "modules"
] "extra"
]
)
) allEntries;
in
builtins.listToAttrs (
map (name: {
name = name;
value = import "${toString ./home}/${name}/modules";
}) (builtins.attrNames allUsers)
) )
|> builtins.attrNames
|> map (name: {
name = name;
value = import "${toString ./home}/${name}/modules";
})
|> builtins.listToAttrs
); );
} }
) )
@ -377,18 +358,19 @@
}; };
in in
{ {
deploy.nodes = deploy.nodes = nixpkgs.lib.foldr (a: b: a // b) { } (
[ map
"Cape" (
"Akun" hostName:
] mkDeployNode {
|> map ( inherit hostName;
hostName: }
mkDeployNode { )
inherit hostName; [
} "Cape"
) "Akun"
|> nixpkgs.lib.foldr (a: b: a // b) { }; ]
);
} }
); );
}; };

View file

@ -42,6 +42,7 @@
helix helix
element-desktop element-desktop
discord-ptb
vlc vlc
btop btop
spotify spotify

View file

@ -5,11 +5,6 @@
image = rootPath + "/assets/wallpaper/01.png"; image = rootPath + "/assets/wallpaper/01.png";
polarity = "dark"; polarity = "dark";
base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml"; base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml";
cursor = {
package = pkgs.rose-pine-cursor;
name = "BreezeX-RosePineDawn-Linux";
size = 24;
};
fonts = { fonts = {
serif = { serif = {
package = pkgs.lxgw-wenkai; package = pkgs.lxgw-wenkai;

View file

@ -1,6 +1,27 @@
{ ... }: { pkgs, rootPath, ... }:
{ {
stylix = { stylix = {
enable = false; enable = true;
image = rootPath + "/assets/wallpaper/01.png";
polarity = "dark";
base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml";
fonts = {
serif = {
package = pkgs.lxgw-wenkai;
name = "LXGW WenKai";
};
sansSerif = {
package = pkgs.noto-fonts-cjk-serif;
name = "Noto Serif CJK SC";
};
monospace = {
package = pkgs.nerd-fonts.fira-code;
name = "FiraCode Nerd Font";
};
emoji = {
package = pkgs.noto-fonts-emoji;
name = "Noto Color Emoji";
};
};
}; };
} }

View file

@ -36,6 +36,7 @@
enable = true; enable = true;
unixName = "david"; unixName = "david";
}; };
open-webui.enable = true;
transmission.enable = true; transmission.enable = true;
nix-ld.enable = true; nix-ld.enable = true;
juicity.client.enable = true; juicity.client.enable = true;
@ -76,6 +77,7 @@
helix helix
element-desktop element-desktop
discord-ptb
vlc vlc
btop btop
handbrake handbrake
@ -91,10 +93,6 @@
fractal fractal
juicity juicity
waypipe
wineWow64Packages.waylandFull
iperf3
nvfetcher
]; ];
environment.variables.EDITOR = "hx"; environment.variables.EDITOR = "hx";

View file

@ -20,10 +20,10 @@
} }
]; ];
matchConfig.Name = "eno2"; matchConfig.Name = "eno2";
networkConfig = { # networkConfig = {
DHCP = "yes"; # DHCP = "yes";
IPv6AcceptRA = true; # IPv6AcceptRA = true;
}; # };
}; };
}; };
}; };

View file

@ -5,11 +5,6 @@
image = rootPath + "/assets/wallpaper/01.png"; image = rootPath + "/assets/wallpaper/01.png";
polarity = "dark"; polarity = "dark";
base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml"; base16Scheme = "${pkgs.base16-schemes}/share/themes/ayu-dark.yaml";
cursor = {
package = pkgs.rose-pine-cursor;
name = "BreezeX-RosePineDawn-Linux";
size = 32;
};
fonts = { fonts = {
serif = { serif = {
package = pkgs.lxgw-wenkai; package = pkgs.lxgw-wenkai;

View file

@ -1,9 +1,4 @@
{ { config, lib, ... }:
pkgs,
config,
lib,
...
}:
let let
cfg = config.youthlic.containers.forgejo; cfg = config.youthlic.containers.forgejo;
in in
@ -64,8 +59,6 @@ in
./../programs/postgresql.nix ./../programs/postgresql.nix
]; ];
nixpkgs.pkgs = pkgs;
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [
"d /var/lib/forgejo 770 forgejo forgejo -" "d /var/lib/forgejo 770 forgejo forgejo -"
"d /var/lib/postgresql 770 postgres postgres -" "d /var/lib/postgresql 770 postgres postgres -"

View file

@ -1,9 +1,4 @@
{ { config, lib, ... }:
pkgs,
config,
lib,
...
}:
let let
cfg = config.youthlic.containers.miniflux; cfg = config.youthlic.containers.miniflux;
in in
@ -46,8 +41,6 @@ in
./../programs/postgresql.nix ./../programs/postgresql.nix
]; ];
nixpkgs.pkgs = pkgs;
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [
"d /var/lib/miniflux 770 miniflux miniflux -" "d /var/lib/miniflux 770 miniflux miniflux -"
"d /var/lib/postgresql 770 postgres postgres -" "d /var/lib/postgresql 770 postgres postgres -"

View file

@ -47,7 +47,7 @@
{ ... }: { ... }:
{ {
imports = [ imports = [
outputs.homeModules."${unixName}" outputs.homeManagerModules."${unixName}"
(rootPath + "/home/${unixName}/configurations/${hostName}") (rootPath + "/home/${unixName}/configurations/${hostName}")
]; ];
} }
@ -58,7 +58,7 @@
inherit (pkgs) system; inherit (pkgs) system;
}; };
backupFileExtension = "backup"; backupFileExtension = "backup";
sharedModules = [ outputs.homeModules.default ]; sharedModules = [ outputs.homeManagerModules.default ];
}; };
}; };
} }

View file

@ -2,16 +2,14 @@
final: prev: final: prev:
let let
inherit (prev) lib; inherit (prev) lib;
overlay-files = [
./spotify.nix
./niri.nix
./ghostty.nix
./juicity.nix
./dae.nix
./jujutsu.nix
];
overlay-list = map (file: import file args) overlay-files;
in in
[ (lib.composeManyExtensions overlay-list) final prev
./spotify.nix
./niri.nix
./ghostty.nix
./juicity.nix
./dae.nix
./jujutsu.nix
./fix-pwvucontrol.nix
./fix-forgejo-lts.nix
]
|> map (file: import file args)
|> (overlays: (lib.composeManyExtensions overlays) final prev)

View file

@ -1,10 +0,0 @@
{ inputs, ... }:
final: prev:
let
inherit (final) stdenv;
inherit (stdenv.hostPlatform) system;
in
{
forgejo-lts =
inputs.nixpkgs-e3e32b642a31e6714ec1b712de8c91a3352ce7e1.legacyPackages."${system}".forgejo-lts;
}

View file

@ -1,10 +0,0 @@
{ inputs, ... }:
final: prev:
let
inherit (final) stdenv;
inherit (stdenv.hostPlatform) system;
in
{
pwvucontrol =
inputs.nixpkgs-845dc1e9cbc2e48640b8968af58b4a19db67aa8f.legacyPackages."${system}".pwvucontrol;
}

View file

@ -38,7 +38,7 @@ let
delve delve
lldb lldb
rust-analyzer rust-analyzer
# nil nil
haskell-language-server haskell-language-server
neocmakelsp neocmakelsp
] ]

View file

@ -61,26 +61,20 @@ let
runHook postFixup runHook postFixup
''; '';
}; };
grammars = srcs |> lib.filterAttrs (key: _: lib.hasPrefix "tree-sitter-" key); grammars = lib.filterAttrs (key: _: lib.hasPrefix "tree-sitter-" key) srcs;
queries = queries = lib.mapAttrsToList (_: value: ''
grammars mkdir -p $out/${value.name}
|> lib.mapAttrsToList (
_: value: ''
mkdir -p $out/${value.name}
ln -s ${value.src}/queries/* $out/${value.name}/ ln -s ${value.src}/queries/* $out/${value.name}/
'' '') grammars;
); builtGrammars = builtins.mapAttrs (_: v: {
grammarLinks = inherit (v) name;
grammars value = buildGrammar v;
|> builtins.mapAttrs ( }) grammars;
_: v: { grammarLinks = lib.mapAttrsToList (
inherit (v) name; _: value: "ln -s ${value.value}/${value.name}.so $out/${value.name}.so"
value = buildGrammar v; ) builtGrammars;
}
)
|> lib.mapAttrsToList (_: value: "ln -s ${value.value}/${value.name}.so $out/${value.name}.so");
grammarDir = runCommandNoCCLocal "helix-grammars" { } '' grammarDir = runCommandNoCCLocal "helix-grammars" { } ''
mkdir -p $out mkdir -p $out