4 Commits

Author SHA1 Message Date
2df1ef27e1 Merge pull request 'feature/home-config' (#130) from feature/home-config into main
Some checks failed
Check flake.lock / Check health of `flake.lock` (push) Successful in 9m39s
Check Nix flake / Perform Nix flake checks (push) Successful in 14m38s
Update flakes / update_lockfile (push) Failing after 27m28s
Reviewed-on: #130
2025-07-08 01:26:38 -04:00
f4ff5a6251 remove lix, add homes to hydra
All checks were successful
Check flake.lock / Check health of `flake.lock` (pull_request) Successful in 9m40s
Check Nix flake / Perform Nix flake checks (pull_request) Successful in 14m52s
2025-07-08 01:10:59 -04:00
8f8bb999a3 make restic repos private 2025-07-04 18:11:28 -04:00
f11b0f9e0a add home-manager module for non-nixos systems 2025-07-04 14:36:37 -04:00
8 changed files with 79 additions and 102 deletions

98
flake.lock generated
View File

@ -75,11 +75,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1751688200,
"narHash": "sha256-4W+Bw2G9bTUuvAVS0g1rTdm5jyxxZoPFSSSk3S5yOPQ=",
"lastModified": 1751618693,
"narHash": "sha256-bAKNekZcZd4QnBO/RUxjQAgaz67bYwFXWfQENA45Scg=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "7dc9a3c333983e3dcc19eb29b8e98184ef7e51e7",
"rev": "0c5b037915083a27a260b063b127b31443827bae",
"type": "gitlab"
},
"original": {
@ -178,21 +178,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"
}
},
"fromYaml": {
"flake": false,
"locked": {
@ -302,11 +287,11 @@
]
},
"locked": {
"lastModified": 1751760902,
"narHash": "sha256-qBGNn7T/zOgUDQTo/RM/D2oxMkB2x36j3ajvpVanEVs=",
"lastModified": 1751638848,
"narHash": "sha256-7HiC6w4ROEbMmKtj5pilnLOJej9HkkfU9wEd5QSTyNo=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "8b0180dde1d6f4cf632e046309e8f963924dfbd0",
"rev": "7d9e3c35f0d46f82bac791d76260f15f53d83529",
"type": "github"
},
"original": {
@ -345,11 +330,11 @@
]
},
"locked": {
"lastModified": 1751715349,
"narHash": "sha256-cP76ijtfGTFTpWFfmyFHA2MpDlIyKpWwW82kqQSQ6s0=",
"lastModified": 1750372088,
"narHash": "sha256-LPwgPRBTfnA76rHUr7KYvwq2pNt5IfxymNAZUJFvn/M=",
"owner": "hyprwm",
"repo": "contrib",
"rev": "dafa5d09b413d08a55a81f6f8e85775d717bacda",
"rev": "189f32f56285aae9646bf1292976392beba5a2e2",
"type": "github"
},
"original": {
@ -358,46 +343,6 @@
"type": "github"
}
},
"lix": {
"flake": false,
"locked": {
"lastModified": 1737234286,
"narHash": "sha256-pgDJZjj4jpzkFxsqBTI/9Yb0n3gW+DvDtuv9SwQZZcs=",
"rev": "079528098f5998ba13c88821a2eca1005c1695de",
"type": "tarball",
"url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/079528098f5998ba13c88821a2eca1005c1695de.tar.gz?rev=079528098f5998ba13c88821a2eca1005c1695de"
},
"original": {
"type": "tarball",
"url": "https://git.lix.systems/lix-project/lix/archive/release-2.92.tar.gz"
}
},
"lix-module": {
"inputs": {
"flake-utils": [
"flake-utils"
],
"flakey-profile": "flakey-profile",
"lix": "lix",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1741892773,
"narHash": "sha256-8oUT6D7VlsuLkms3zBsUaPBUoxucmFq62QdtyVpjq0Y=",
"ref": "stable",
"rev": "ed7a2fa83145868ecb830d6b3c73ebfd81a9e911",
"revCount": 130,
"type": "git",
"url": "https://git.lix.systems/lix-project/nixos-module"
},
"original": {
"ref": "stable",
"type": "git",
"url": "https://git.lix.systems/lix-project/nixos-module"
}
},
"nix": {
"flake": false,
"locked": {
@ -438,11 +383,11 @@
]
},
"locked": {
"lastModified": 1751774635,
"narHash": "sha256-DuOznGdgMxeSlPpUu6Wkq0ZD5e2Cfv9XRZeZlHWMd1s=",
"lastModified": 1751170039,
"narHash": "sha256-3EKpUmyGmHYA/RuhZjINTZPU+OFWko0eDwazUOW64nw=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "85686025ba6d18df31cc651a91d5adef63378978",
"rev": "9c932ae632d6b5150515e5749b198c175d8565db",
"type": "github"
},
"original": {
@ -556,11 +501,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1751743520,
"narHash": "sha256-gk83D6+0KpugopnV6vrumpVHDrqESFjVr39O9u7NNy8=",
"lastModified": 1751619433,
"narHash": "sha256-5aZFBHQNQzrfCisewtYBDNbiKcHbxPYChiP4dkEcSXQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "833775e5731dcd1fd3eb0b61fa7ed2a4fafb4e3e",
"rev": "a2867cc3f8acc944cb19fe0b73c840e9fa1ba589",
"type": "github"
},
"original": {
@ -660,7 +605,6 @@
"home-manager": "home-manager",
"hydra": "hydra",
"hyprland-contrib": "hyprland-contrib",
"lix-module": "lix-module",
"nix-index-database": "nix-index-database",
"nixos-cosmic": "nixos-cosmic",
"nixos-generators": "nixos-generators",
@ -683,11 +627,11 @@
]
},
"locked": {
"lastModified": 1751769931,
"narHash": "sha256-QR2Rp/41NkA5YxcpvZEKD1S2QE1Pb9U415aK8M/4tJc=",
"lastModified": 1751596734,
"narHash": "sha256-1tQOwmn3jEUQjH0WDJyklC+hR7Bj+iqx6ChtRX2QiPA=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "3ac4f630e375177ea8317e22f5c804156de177e8",
"rev": "e28ba067a9368286a8bc88b68dc2ca92181a09f0",
"type": "github"
},
"original": {
@ -744,11 +688,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1751769163,
"narHash": "sha256-5/fDueotC2qqa5r+1UbOO1p6g1FUhVVb5cR5TwweF4c=",
"lastModified": 1751648901,
"narHash": "sha256-yC45eAT37H6rOFCGhr2iuV5dzJ/8I2N1QrKq1MwPG7U=",
"owner": "danth",
"repo": "stylix",
"rev": "50ed5ddd1072a6b10e6368cc338d759ffa02df9b",
"rev": "dea0337e0bffeeeb941ca6caffb44e966b13a97b",
"type": "github"
},
"original": {

View File

@ -66,13 +66,13 @@
inputs.nixpkgs.follows = "nixpkgs";
};
lix-module = {
url = "git+https://git.lix.systems/lix-project/nixos-module?ref=stable";
inputs = {
nixpkgs.follows = "nixpkgs";
flake-utils.follows = "flake-utils";
};
};
#lix-module = {
# url = "git+https://git.lix.systems/lix-project/nixos-module?ref=stable";
# inputs = {
# nixpkgs.follows = "nixpkgs";
# flake-utils.follows = "flake-utils";
# };
#};
nix-index-database = {
url = "github:Mic92/nix-index-database";
@ -175,6 +175,29 @@
formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.nixfmt-rfc-style);
nixosConfigurations = genSystems inputs outputs src (src + "/systems");
homeConfigurations = {
"alice" = inputs.home-manager.lib.homeManagerConfiguration {
pkgs = import nixpkgs { system = "x86_64-linux"; };
modules = [
inputs.stylix.homeModules.stylix
inputs.sops-nix.homeManagerModules.sops
inputs.nix-index-database.hmModules.nix-index
{
nixpkgs.config = {
allowUnfree = true;
allowUnfreePredicate = _: true;
};
}
./users/alice/home.nix
];
extraSpecialArgs = {
inherit inputs outputs;
machineConfig = {
server = false;
};
};
};
};
images = {
install-iso = getImages nixosConfigurations "install-iso";
iso = getImages nixosConfigurations "iso";

View File

@ -10,6 +10,9 @@ let
getCfg = _: cfg: cfg.config.system.build.toplevel;
hostToAgg = _: cfg: cfg;
getHome = _: cfg: cfg.config.home.activationPackage;
homeToAgg = _: cfg: cfg;
# get per-system check derivation (with optional postfix)
mapSystems =
{
@ -22,11 +25,16 @@ rec {
inherit (outputs) formatter devShells checks;
host = lib.mapAttrs getCfg outputs.nixosConfigurations;
home = lib.mapAttrs getHome outputs.homeConfigurations; # homeConfigurations.alice.config.home.activationPackage
hosts = pkgs.releaseTools.aggregate {
name = "hosts";
constituents = lib.mapAttrsToList hostToAgg host;
};
homes = pkgs.releaseTools.aggregate {
name = "homes";
constituents = lib.mapAttrsToList homeToAgg home;
};
devChecks = pkgs.releaseTools.aggregate {
name = "devChecks";

View File

@ -172,6 +172,7 @@ rec {
modules =
[
inputs.nixos-modules.nixosModule
inputs.nix-index-database.nixosModules.nix-index
(genHostName hostname)
(configPath + "/hardware.nix")
(configPath + "/configuration.nix")
@ -181,7 +182,7 @@ rec {
++ genWrapper sops genSops args
++ genWrapper home genHome args
++ genWrapper true genUsers args
++ genWrapper lix ({ ... }: [ inputs.lix-module.nixosModules.default ]) args
#++ genWrapper lix ({ ... }: [ inputs.lix-module.nixosModules.default ]) args
++ genWrapper (system != "x86_64-linux") genNonX86 args;
};

View File

@ -10,7 +10,7 @@ in
image = "restic/rest-server:latest";
volumes = [ "${restic_path}:/data" ];
environment = {
OPTIONS = "--prometheus --htpasswd-file /data/.htpasswd";
OPTIONS = "--prometheus --private-repos --htpasswd-file /data/.htpasswd";
};
ports = [ "8010:8000" ];
extraOptions = [

View File

@ -76,6 +76,7 @@
nix-prefetch
nix-tree
nh
home-manager
# doom emacs dependencies
fd

View File

@ -72,7 +72,7 @@
"sgc" = "sudo git -C /root/dotfiles";
## SSH
"ssh-init" =
"ssh-add -t 2h ~/.ssh/id_rsa_tails ~/.ssh/id_ed25519_tails ~/.ssh/id_rsa_palatine ~/.ssh/id_ed25519_palatine ~/.ssh/id_ed25519_rota ~/.ssh/id_ed25519_gh";
"ssh-add -t 2h ~/.ssh/id_rsa_tails ~/.ssh/id_ed25519_tails ~/.ssh/id_rsa_palatine ~/.ssh/id_ed25519_palatine ~/.ssh/id_ed25519_rota ~/.ssh/id_ed25519_gh ~/.ssh/id_ed25519";
## Backups
"borgmatic-backup-quick" =