Compare commits
2 Commits
2df1ef27e1
...
feature/ad
Author | SHA1 | Date | |
---|---|---|---|
f063b8827e | |||
84b16ff0c1 |
30
.sops.yaml
30
.sops.yaml
@@ -19,39 +19,39 @@ creation_rules:
|
|||||||
- path_regex: users/alice/secrets.*\.yaml$
|
- path_regex: users/alice/secrets.*\.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *palatine-hill
|
- *palatine-hill
|
||||||
- *artemision
|
- *artemision
|
||||||
- *artemision-home
|
- *artemision-home
|
||||||
- path_regex: systems/palatine-hill/secrets.*\.yaml$
|
- path_regex: systems/palatine-hill/secrets.*\.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *palatine-hill
|
- *palatine-hill
|
||||||
- path_regex: systems/artemision/secrets.*\.yaml$
|
- path_regex: systems/artemision/secrets.*\.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *artemision
|
- *artemision
|
||||||
- path_regex: systems/selinunte/secrets.*\.yaml$
|
- path_regex: systems/selinunte/secrets.*\.yaml$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *artemision
|
- *artemision
|
||||||
- *selinunte
|
- *selinunte
|
||||||
- path_regex: systems/palatine-hill/docker/wg/.*\.conf$
|
- path_regex: systems/palatine-hill/docker/wg/.*\.conf$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *palatine-hill
|
- *palatine-hill
|
||||||
- path_regex: systems/palatine-hill/docker/openvpn/.*\.ovpn$
|
- path_regex: systems/palatine-hill/docker/openvpn/.*\.ovpn$
|
||||||
key_groups:
|
key_groups:
|
||||||
- pgp:
|
- pgp:
|
||||||
- *admin_alice
|
- *admin_alice
|
||||||
age:
|
age:
|
||||||
- *palatine-hill
|
- *palatine-hill
|
||||||
|
48
flake.lock
generated
48
flake.lock
generated
@@ -75,11 +75,11 @@
|
|||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1751618693,
|
"lastModified": 1751515409,
|
||||||
"narHash": "sha256-bAKNekZcZd4QnBO/RUxjQAgaz67bYwFXWfQENA45Scg=",
|
"narHash": "sha256-yu+/TxHkuZ8GHKwpKTv1BpfbYD1wH1CyPsOmY72chTg=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "0c5b037915083a27a260b063b127b31443827bae",
|
"rev": "2e0dcafe8c48470e036908f34a2a1413f75bd804",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -287,11 +287,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751638848,
|
"lastModified": 1751513147,
|
||||||
"narHash": "sha256-7HiC6w4ROEbMmKtj5pilnLOJej9HkkfU9wEd5QSTyNo=",
|
"narHash": "sha256-idSXM3Y0KNf/WDDqGfthiOSQMwZYwis1JZhTkdWrr6A=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "7d9e3c35f0d46f82bac791d76260f15f53d83529",
|
"rev": "426b405d979d893832549b95f23c13537c65d244",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -427,11 +427,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751591814,
|
"lastModified": 1751281697,
|
||||||
"narHash": "sha256-A4lgvuj4v+Pr8MniXz1FBG0DXOygi8tTECR+j53FMhM=",
|
"narHash": "sha256-abHhTXGEGYhCKOc9vQbqHFG7dxwJ6AudIy1h4MUsjm0=",
|
||||||
"owner": "lilyinstarlight",
|
"owner": "lilyinstarlight",
|
||||||
"repo": "nixos-cosmic",
|
"repo": "nixos-cosmic",
|
||||||
"rev": "fef2d0c78c4e4d6c600a88795af193131ff51bdc",
|
"rev": "78b86e37713a1111d9e37c62b242d60be3013bd1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -486,11 +486,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751649523,
|
"lastModified": 1751469444,
|
||||||
"narHash": "sha256-39SLBeXE+bzq5ChXYB7FFzUNa+8SCnXvwe9IEgKcxWQ=",
|
"narHash": "sha256-L5vPflQCt7WWzL66cA0ZbITfg+vzrSf6Ak5m4s6vDds=",
|
||||||
"owner": "SuperSandro2000",
|
"owner": "SuperSandro2000",
|
||||||
"repo": "nixos-modules",
|
"repo": "nixos-modules",
|
||||||
"rev": "d2a834e4f97a1ccb71c62e3091501a4e237fd6cb",
|
"rev": "ed24075c9b4d1cedac253f31aaa2d4729d4fdf53",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -501,11 +501,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751619433,
|
"lastModified": 1751529439,
|
||||||
"narHash": "sha256-5aZFBHQNQzrfCisewtYBDNbiKcHbxPYChiP4dkEcSXQ=",
|
"narHash": "sha256-fn4qiux6lOX2MEB5VU/KFUhjc4HuQON2SexwJnC1ibc=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a2867cc3f8acc944cb19fe0b73c840e9fa1ba589",
|
"rev": "f596e2141c241f5cca21188543cd4dcda32f2c3c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -627,11 +627,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751596734,
|
"lastModified": 1751510438,
|
||||||
"narHash": "sha256-1tQOwmn3jEUQjH0WDJyklC+hR7Bj+iqx6ChtRX2QiPA=",
|
"narHash": "sha256-m8PjOoyyCR4nhqtHEBP1tB/jF+gJYYguSZmUmVTEAQE=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "e28ba067a9368286a8bc88b68dc2ca92181a09f0",
|
"rev": "7f415261f298656f8164bd636c0dc05af4e95b6b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -647,11 +647,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751606940,
|
"lastModified": 1750119275,
|
||||||
"narHash": "sha256-KrDPXobG7DFKTOteqdSVeL1bMVitDcy7otpVZWDE6MA=",
|
"narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "3633fc4acf03f43b260244d94c71e9e14a2f6e0d",
|
"rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -688,11 +688,11 @@
|
|||||||
"tinted-zed": "tinted-zed"
|
"tinted-zed": "tinted-zed"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751648901,
|
"lastModified": 1751498047,
|
||||||
"narHash": "sha256-yC45eAT37H6rOFCGhr2iuV5dzJ/8I2N1QrKq1MwPG7U=",
|
"narHash": "sha256-2T/VKbqqp4KTz3szFl58AaI+LBg9ctLjnP1IQA8sPg8=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "dea0337e0bffeeeb941ca6caffb44e966b13a97b",
|
"rev": "d21cfb364a78ad72935625e79b8c5d497f0b7616",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
31
flake.nix
31
flake.nix
@@ -66,14 +66,6 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
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";
|
|
||||||
# };
|
|
||||||
#};
|
|
||||||
|
|
||||||
nix-index-database = {
|
nix-index-database = {
|
||||||
url = "github:Mic92/nix-index-database";
|
url = "github:Mic92/nix-index-database";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
@@ -175,29 +167,6 @@
|
|||||||
formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.nixfmt-rfc-style);
|
formatter = forEachSystem (system: nixpkgs.legacyPackages.${system}.nixfmt-rfc-style);
|
||||||
|
|
||||||
nixosConfigurations = genSystems inputs outputs src (src + "/systems");
|
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 = {
|
images = {
|
||||||
install-iso = getImages nixosConfigurations "install-iso";
|
install-iso = getImages nixosConfigurations "install-iso";
|
||||||
iso = getImages nixosConfigurations "iso";
|
iso = getImages nixosConfigurations "iso";
|
||||||
|
@@ -10,9 +10,6 @@ let
|
|||||||
getCfg = _: cfg: cfg.config.system.build.toplevel;
|
getCfg = _: cfg: cfg.config.system.build.toplevel;
|
||||||
hostToAgg = _: cfg: cfg;
|
hostToAgg = _: cfg: cfg;
|
||||||
|
|
||||||
getHome = _: cfg: cfg.config.home.activationPackage;
|
|
||||||
homeToAgg = _: cfg: cfg;
|
|
||||||
|
|
||||||
# get per-system check derivation (with optional postfix)
|
# get per-system check derivation (with optional postfix)
|
||||||
mapSystems =
|
mapSystems =
|
||||||
{
|
{
|
||||||
@@ -25,16 +22,11 @@ rec {
|
|||||||
inherit (outputs) formatter devShells checks;
|
inherit (outputs) formatter devShells checks;
|
||||||
|
|
||||||
host = lib.mapAttrs getCfg outputs.nixosConfigurations;
|
host = lib.mapAttrs getCfg outputs.nixosConfigurations;
|
||||||
home = lib.mapAttrs getHome outputs.homeConfigurations; # homeConfigurations.alice.config.home.activationPackage
|
|
||||||
|
|
||||||
hosts = pkgs.releaseTools.aggregate {
|
hosts = pkgs.releaseTools.aggregate {
|
||||||
name = "hosts";
|
name = "hosts";
|
||||||
constituents = lib.mapAttrsToList hostToAgg host;
|
constituents = lib.mapAttrsToList hostToAgg host;
|
||||||
};
|
};
|
||||||
homes = pkgs.releaseTools.aggregate {
|
|
||||||
name = "homes";
|
|
||||||
constituents = lib.mapAttrsToList homeToAgg home;
|
|
||||||
};
|
|
||||||
|
|
||||||
devChecks = pkgs.releaseTools.aggregate {
|
devChecks = pkgs.releaseTools.aggregate {
|
||||||
name = "devChecks";
|
name = "devChecks";
|
||||||
|
@@ -156,7 +156,6 @@ rec {
|
|||||||
modules ? [ ],
|
modules ? [ ],
|
||||||
server ? true,
|
server ? true,
|
||||||
sops ? true,
|
sops ? true,
|
||||||
lix ? false,
|
|
||||||
system ? "x86_64-linux",
|
system ? "x86_64-linux",
|
||||||
}@args:
|
}@args:
|
||||||
lib.nixosSystem {
|
lib.nixosSystem {
|
||||||
@@ -172,7 +171,6 @@ rec {
|
|||||||
modules =
|
modules =
|
||||||
[
|
[
|
||||||
inputs.nixos-modules.nixosModule
|
inputs.nixos-modules.nixosModule
|
||||||
inputs.nix-index-database.nixosModules.nix-index
|
|
||||||
(genHostName hostname)
|
(genHostName hostname)
|
||||||
(configPath + "/hardware.nix")
|
(configPath + "/hardware.nix")
|
||||||
(configPath + "/configuration.nix")
|
(configPath + "/configuration.nix")
|
||||||
@@ -182,7 +180,6 @@ rec {
|
|||||||
++ genWrapper sops genSops args
|
++ genWrapper sops genSops args
|
||||||
++ genWrapper home genHome args
|
++ genWrapper home genHome args
|
||||||
++ genWrapper true genUsers args
|
++ genWrapper true genUsers args
|
||||||
#++ genWrapper lix ({ ... }: [ inputs.lix-module.nixosModules.default ]) args
|
|
||||||
++ genWrapper (system != "x86_64-linux") genNonX86 args;
|
++ genWrapper (system != "x86_64-linux") genNonX86 args;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -3,7 +3,6 @@
|
|||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
home = true;
|
home = true;
|
||||||
sops = true;
|
sops = true;
|
||||||
lix = true;
|
|
||||||
server = false;
|
server = false;
|
||||||
users = [ "alice" ];
|
users = [ "alice" ];
|
||||||
modules = [
|
modules = [
|
||||||
|
@@ -10,6 +10,10 @@
|
|||||||
attic-client
|
attic-client
|
||||||
];
|
];
|
||||||
|
|
||||||
|
systemd.services.atticd.environment = {
|
||||||
|
RUST_LOG = "INFO";
|
||||||
|
};
|
||||||
|
|
||||||
services = {
|
services = {
|
||||||
atticd = {
|
atticd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -67,9 +71,6 @@
|
|||||||
# configured default webstore for this on root user separately
|
# configured default webstore for this on root user separately
|
||||||
systemd = {
|
systemd = {
|
||||||
services = {
|
services = {
|
||||||
atticd.environment = {
|
|
||||||
RUST_LOG = "INFO";
|
|
||||||
};
|
|
||||||
attic-watch-store = {
|
attic-watch-store = {
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
after = [
|
after = [
|
||||||
|
@@ -10,7 +10,7 @@ in
|
|||||||
image = "restic/rest-server:latest";
|
image = "restic/rest-server:latest";
|
||||||
volumes = [ "${restic_path}:/data" ];
|
volumes = [ "${restic_path}:/data" ];
|
||||||
environment = {
|
environment = {
|
||||||
OPTIONS = "--prometheus --private-repos --htpasswd-file /data/.htpasswd";
|
OPTIONS = "--prometheus --htpasswd-file /data/.htpasswd";
|
||||||
};
|
};
|
||||||
ports = [ "8010:8000" ];
|
ports = [ "8010:8000" ];
|
||||||
extraOptions = [
|
extraOptions = [
|
||||||
|
@@ -76,7 +76,6 @@
|
|||||||
nix-prefetch
|
nix-prefetch
|
||||||
nix-tree
|
nix-tree
|
||||||
nh
|
nh
|
||||||
home-manager
|
|
||||||
|
|
||||||
# doom emacs dependencies
|
# doom emacs dependencies
|
||||||
fd
|
fd
|
||||||
|
@@ -72,7 +72,7 @@
|
|||||||
"sgc" = "sudo git -C /root/dotfiles";
|
"sgc" = "sudo git -C /root/dotfiles";
|
||||||
## SSH
|
## SSH
|
||||||
"ssh-init" =
|
"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/id_ed25519";
|
"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";
|
||||||
|
|
||||||
## Backups
|
## Backups
|
||||||
"borgmatic-backup-quick" =
|
"borgmatic-backup-quick" =
|
||||||
|
Reference in New Issue
Block a user