Compare commits
1 Commits
r0-persist
...
2114c6c347
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2114c6c347 |
@@ -4,10 +4,6 @@
|
|||||||
machine,
|
machine,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
|
||||||
./impermanence.nix
|
|
||||||
(modulesPath + "/profiles/qemu-guest.nix")
|
|
||||||
];
|
|
||||||
# roundcube config
|
# roundcube config
|
||||||
services.roundcube = {
|
services.roundcube = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -29,7 +25,7 @@
|
|||||||
x509.useACMEHost = config.mailserver.fqdn;
|
x509.useACMEHost = config.mailserver.fqdn;
|
||||||
loginAccounts = {
|
loginAccounts = {
|
||||||
"test@${config.networking.domain}" = {
|
"test@${config.networking.domain}" = {
|
||||||
hashedPasswordFile = builtins.toString config.age.secrets.secret3.path;
|
hashedPasswordFile = builtins.toString config.age.secrets.mailserver-acc-test-pw.path;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -50,12 +46,8 @@
|
|||||||
# system config
|
# system config
|
||||||
system.stateVersion = "25.11";
|
system.stateVersion = "25.11";
|
||||||
nix.settings.experimental-features = ["flakes" "nix-command"];
|
nix.settings.experimental-features = ["flakes" "nix-command"];
|
||||||
|
imports = [(modulesPath + "/profiles/qemu-guest.nix")];
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "none";
|
|
||||||
fsType = "tmpfs";
|
|
||||||
options = ["defaults" "size=60%" "mode=755"];
|
|
||||||
};
|
|
||||||
fileSystems."/nix" = {
|
|
||||||
device = "/dev/sda1";
|
device = "/dev/sda1";
|
||||||
fsType = "ext4";
|
fsType = "ext4";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,30 +0,0 @@
|
|||||||
{
|
|
||||||
environment.persistence."/nix/persist" = {
|
|
||||||
enable = true;
|
|
||||||
hideMounts = true;
|
|
||||||
directories = [
|
|
||||||
# logs
|
|
||||||
"/var/log"
|
|
||||||
"/var/lib/systemd/coredump"
|
|
||||||
|
|
||||||
# users
|
|
||||||
"/var/lib/nixos"
|
|
||||||
|
|
||||||
# private ssh keys
|
|
||||||
"/etc/ssh"
|
|
||||||
|
|
||||||
# mailserver
|
|
||||||
"/var/vmail"
|
|
||||||
"/var/dkim"
|
|
||||||
"/var/lib/dovecot"
|
|
||||||
"/var/lib/postfix"
|
|
||||||
"/var/lib/postgresql"
|
|
||||||
"/var/lib/redis-rspamd"
|
|
||||||
"/var/lib/roundcube"
|
|
||||||
"/var/lib/secrets"
|
|
||||||
];
|
|
||||||
files = [
|
|
||||||
"/etc/machine-id"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@@ -9,10 +9,6 @@
|
|||||||
./impermanence.nix
|
./impermanence.nix
|
||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
age.secrets = {
|
|
||||||
secret0.file = ../../secrets/secret0.age;
|
|
||||||
secret1.file = ../../secrets/secret1.age;
|
|
||||||
};
|
|
||||||
boot.loader = {
|
boot.loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
systemd-boot.enable = true;
|
systemd-boot.enable = true;
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
{
|
{
|
||||||
age.secrets = {
|
age.secrets = {
|
||||||
secret0.file = ./secrets/secret0.age;
|
andromeda-pw.file = ./secrets/andromeda-pw.age;
|
||||||
secret1.file = ./secrets/secret1.age;
|
mtgmonkey-pw.file = ./secrets/mtgmonkey-pw.age;
|
||||||
secret2.file = ./secrets/secret2.age;
|
mailserver-acc-test-pw.file = ./secrets/mailserver-acc-test-pw.age;
|
||||||
secret3.file = ./secrets/secret3.age;
|
|
||||||
};
|
};
|
||||||
pub-keys = {
|
pub-keys = {
|
||||||
ssh = {
|
ssh = {
|
||||||
|
|||||||
Binary file not shown.
@@ -4,8 +4,7 @@ let
|
|||||||
lenovo = pub-keys.ssh.lenovo;
|
lenovo = pub-keys.ssh.lenovo;
|
||||||
_109-199-104-83 = pub-keys.ssh._109-199-104-83;
|
_109-199-104-83 = pub-keys.ssh._109-199-104-83;
|
||||||
in {
|
in {
|
||||||
"secret0.age".publicKeys = [andromeda lenovo];
|
"andromeda-pw.age".publicKeys = [andromeda lenovo];
|
||||||
"secret1.age".publicKeys = [andromeda lenovo];
|
"mtgmonkey-pw.age".publicKeys = [andromeda lenovo];
|
||||||
"secret2.age".publicKeys = [andromeda lenovo _109-199-104-83];
|
"mailserver-acc-test-pw.age".publicKeys = [andromeda lenovo _109-199-104-83];
|
||||||
"secret3.age".publicKeys = [andromeda lenovo _109-199-104-83];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ in {
|
|||||||
"andromeda" = {
|
"andromeda" = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "andromeda";
|
description = "andromeda";
|
||||||
hashedPasswordFile = builtins.toString config.age.secrets.secret0.path;
|
hashedPasswordFile = builtins.toString config.age.secrets.andromeda-pw.path;
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
"networkmanager"
|
"networkmanager"
|
||||||
"wheel"
|
"wheel"
|
||||||
@@ -22,7 +22,7 @@ in {
|
|||||||
"mtgmonkey" = {
|
"mtgmonkey" = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "mtgmonkey";
|
description = "mtgmonkey";
|
||||||
hashedPasswordFile = builtins.toString config.age.secrets.secret1.path;
|
hashedPasswordFile = builtins.toString config.age.secrets.mtgmonkey-pw.path;
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
(lib.mkIf
|
(lib.mkIf
|
||||||
(machine == machines.lenovo)
|
(machine == machines.lenovo)
|
||||||
|
|||||||
Reference in New Issue
Block a user