Compare commits
50 Commits
0efcf8f3fc
...
4f6e2c3369
Author | SHA1 | Date | |
---|---|---|---|
4f6e2c3369 | |||
f9ba8473d2 | |||
20b7117560 | |||
aa7121fe93 | |||
6929594da9 | |||
8f76ad3037 | |||
5a2f7eee0d | |||
3c5f72aed0 | |||
ae3dc094f9 | |||
7160858f57 | |||
883a9fb28f | |||
4c4ee017e0 | |||
feb006a99d | |||
6575977ce1 | |||
80774e8778 | |||
9af90be28b | |||
fba5ac6c2b | |||
307dee979a | |||
df9a227358 | |||
f332e415cf | |||
1040a10e16 | |||
ad198eb473 | |||
b3b9e58ea3 | |||
c44ab55aa0 | |||
71ba560b37 | |||
cd5df4cb29 | |||
ababb5b6b7 | |||
2a8f76e955 | |||
de17d7c9dd | |||
82c2bf81b7 | |||
a48c0a3b2a | |||
e019fccbd2 | |||
358a0ffeed | |||
908b9c7b29 | |||
f4b3ec91eb | |||
bdc0dd5656 | |||
d9127c7623 | |||
c99b8619b8 | |||
c2dd0b3330 | |||
90601f7744 | |||
97318fed84 | |||
34bc79b30d | |||
233cfce663 | |||
2cc4973a88 | |||
d47198998b | |||
da9193067d | |||
886c4c5250 | |||
b83f28df91 | |||
b913e5b2f8 | |||
1b6b284fa3 |
@ -37,10 +37,6 @@ in
|
|||||||
# catchall for all domains
|
# catchall for all domains
|
||||||
aliases = map (domain: "@${domain}") domains;
|
aliases = map (domain: "@${domain}") domains;
|
||||||
};
|
};
|
||||||
"cris@runyan.org" = {
|
|
||||||
hashedPasswordFile = "/run/agenix/cris-hashed-email-pw";
|
|
||||||
aliases = [ "chris@runyan.org" ];
|
|
||||||
};
|
|
||||||
"robot@runyan.org" = {
|
"robot@runyan.org" = {
|
||||||
aliases = [
|
aliases = [
|
||||||
"no-reply@neet.dev"
|
"no-reply@neet.dev"
|
||||||
@ -59,7 +55,6 @@ in
|
|||||||
certificateScheme = 3; # use let's encrypt for certs
|
certificateScheme = 3; # use let's encrypt for certs
|
||||||
};
|
};
|
||||||
age.secrets.hashed-email-pw.file = ../../secrets/hashed-email-pw.age;
|
age.secrets.hashed-email-pw.file = ../../secrets/hashed-email-pw.age;
|
||||||
age.secrets.cris-hashed-email-pw.file = ../../secrets/cris-hashed-email-pw.age;
|
|
||||||
age.secrets.hashed-robots-email-pw.file = ../../secrets/hashed-robots-email-pw.age;
|
age.secrets.hashed-robots-email-pw.file = ../../secrets/hashed-robots-email-pw.age;
|
||||||
|
|
||||||
# sendmail to use xxx@domain instead of xxx@mail.domain
|
# sendmail to use xxx@domain instead of xxx@mail.domain
|
||||||
|
18
flake.nix
18
flake.nix
@ -55,7 +55,7 @@
|
|||||||
{
|
{
|
||||||
nixosConfigurations =
|
nixosConfigurations =
|
||||||
let
|
let
|
||||||
modules = system: hostname: with inputs; [
|
modules = system: with inputs; [
|
||||||
./common
|
./common
|
||||||
simple-nixos-mailserver.nixosModule
|
simple-nixos-mailserver.nixosModule
|
||||||
agenix.nixosModules.default
|
agenix.nixosModules.default
|
||||||
@ -63,13 +63,9 @@
|
|||||||
archivebox.nixosModule
|
archivebox.nixosModule
|
||||||
nix-index-database.nixosModules.nix-index
|
nix-index-database.nixosModules.nix-index
|
||||||
({ lib, ... }: {
|
({ lib, ... }: {
|
||||||
config = {
|
config.environment.systemPackages = [
|
||||||
environment.systemPackages = [
|
agenix.packages.${system}.agenix
|
||||||
agenix.packages.${system}.agenix
|
];
|
||||||
];
|
|
||||||
|
|
||||||
networking.hostName = hostname;
|
|
||||||
};
|
|
||||||
|
|
||||||
# because nixos specialArgs doesn't work for containers... need to pass in inputs a different way
|
# because nixos specialArgs doesn't work for containers... need to pass in inputs a different way
|
||||||
options.inputs = lib.mkOption { default = inputs; };
|
options.inputs = lib.mkOption { default = inputs; };
|
||||||
@ -77,9 +73,9 @@
|
|||||||
})
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
mkSystem = system: nixpkgs: path: hostname:
|
mkSystem = system: nixpkgs: path:
|
||||||
let
|
let
|
||||||
allModules = modules system hostname;
|
allModules = modules system;
|
||||||
|
|
||||||
# allow patching nixpkgs, remove this hack once this is solved: https://github.com/NixOS/nix/issues/3920
|
# allow patching nixpkgs, remove this hack once this is solved: https://github.com/NixOS/nix/issues/3920
|
||||||
patchedNixpkgsSrc = nixpkgs.legacyPackages.${system}.applyPatches {
|
patchedNixpkgsSrc = nixpkgs.legacyPackages.${system}.applyPatches {
|
||||||
@ -103,7 +99,7 @@
|
|||||||
in
|
in
|
||||||
nixpkgs.lib.mapAttrs
|
nixpkgs.lib.mapAttrs
|
||||||
(hostname: cfg:
|
(hostname: cfg:
|
||||||
mkSystem cfg.arch nixpkgs cfg.configurationPath hostname)
|
mkSystem cfg.arch nixpkgs cfg.configurationPath)
|
||||||
machines;
|
machines;
|
||||||
|
|
||||||
packages =
|
packages =
|
||||||
|
@ -5,6 +5,8 @@
|
|||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
networking.hostName = "ponyo";
|
||||||
|
|
||||||
system.autoUpgrade.enable = true;
|
system.autoUpgrade.enable = true;
|
||||||
|
|
||||||
# p2p mesh network
|
# p2p mesh network
|
||||||
|
@ -5,6 +5,8 @@
|
|||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
networking.hostName = "ray";
|
||||||
|
|
||||||
# for luks onlock over tor
|
# for luks onlock over tor
|
||||||
services.tor.enable = true;
|
services.tor.enable = true;
|
||||||
services.tor.client.enable = true;
|
services.tor.client.enable = true;
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
# https://github.com/skogsbrus/os/blob/master/sys/router.nix
|
# https://github.com/skogsbrus/os/blob/master/sys/router.nix
|
||||||
# http://trac.gateworks.com/wiki/wireless/wifi
|
# http://trac.gateworks.com/wiki/wireless/wifi
|
||||||
|
|
||||||
|
networking.hostName = "router";
|
||||||
|
|
||||||
system.autoUpgrade.enable = true;
|
system.autoUpgrade.enable = true;
|
||||||
|
|
||||||
services.tailscale.exitNode = true;
|
services.tailscale.exitNode = true;
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
# boot
|
# boot
|
||||||
boot.loader.systemd-boot.enable = true;
|
efi.enable = true;
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "uas" "sd_mod" "rtsx_pci_sdmmc" ];
|
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "uas" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
age-encryption.org/v1
|
|
||||||
-> ssh-ed25519 6AT2/g q8AlvC9Dt+b8320A4BP92FghOoPyKttivfrsxqG6DGM
|
|
||||||
GWz2QJY3QFc748DjHrybNxyAS/BmDgzIU8yoRFGbLjA
|
|
||||||
-> ssh-ed25519 dMQYog i/6mNjO8XZGAxnN1SxJGr5uD+hzCIrh28+N7cvvXZGA
|
|
||||||
hC+J+F9hVs8HZjLhCQ6RnGAHRE45G+p1oBPnwB+nBtE
|
|
||||||
-> ]d^>n#.%-grease Qe6&35Kb ,",Wb`% 0SRX@d
|
|
||||||
yXZqn1+E675gpQyFGk/c15Sc1/iwjI/6VrOE1RTcp0gJcsbtVv4kgYCkY+mK
|
|
||||||
--- ykoio7g3wxV3VDvo2d3p/Y39NCh+cWPh7uL+Go30BLY
|
|
||||||
i“˜Q+€hnïI¼_MßGrrf¯EE~µ(fFyâÿé&ȃ>sÀX<C380>›ú¤9~<7E>ä*Ç~ŽBãÕ4R¯ü=;’Â{Ý´+^<5E>P…¨ûrFza·C䢞î4V’
|
|
BIN
secrets/gitea-runner-registration-token.age
Normal file
BIN
secrets/gitea-runner-registration-token.age
Normal file
Binary file not shown.
@ -14,11 +14,13 @@ with roles;
|
|||||||
{
|
{
|
||||||
# email
|
# email
|
||||||
"hashed-email-pw.age".publicKeys = email-server;
|
"hashed-email-pw.age".publicKeys = email-server;
|
||||||
"cris-hashed-email-pw.age".publicKeys = email-server;
|
|
||||||
"sasl_relay_passwd.age".publicKeys = email-server;
|
"sasl_relay_passwd.age".publicKeys = email-server;
|
||||||
"hashed-robots-email-pw.age".publicKeys = email-server;
|
"hashed-robots-email-pw.age".publicKeys = email-server;
|
||||||
"robots-email-pw.age".publicKeys = gitea;
|
"robots-email-pw.age".publicKeys = gitea;
|
||||||
|
|
||||||
|
# gitea
|
||||||
|
"gitea-runner-registration-token.age".publicKeys = gitea-runner;
|
||||||
|
|
||||||
# vpn
|
# vpn
|
||||||
"iodine.age".publicKeys = iodine;
|
"iodine.age".publicKeys = iodine;
|
||||||
"pia-login.age".publicKeys = pia;
|
"pia-login.age".publicKeys = pia;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user