This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

superconfig / machines / green / config.nix
2.4 kB 95 lines
1{ 2 self, 3 config, 4 pkgs, 5 ... 6}: 7{ 8 clan.core.vars.password-store.secretLocation = "/var/state/secret-vars"; 9 10 imports = [ 11 ../../2configs 12 ../../2configs/retiolum.nix 13 ../../2configs/exim-retiolum.nix 14 ../../2configs/mail.nix 15 16 ../../2configs/syncthing.nix 17 18 ../../2configs/weechat.nix 19 ../../2configs/bitlbee.nix 20 21 ../../2configs/pass.nix 22 23 ../../2configs/git-brain.nix 24 ../../2configs/et-server.nix 25 26 ../../2configs/atuin-server.nix 27 ../../2configs/autoupdate.nix 28 ]; 29 30 krebs.build.host = config.krebs.hosts.green; 31 32 krebs.sync-containers3.inContainer = { 33 enable = true; 34 pubkey = config.clan.core.vars.generators.green-container.files."green.sync.pub".path; 35 }; 36 37 clan.core.vars.generators.green-container = { 38 files."green.sync.key" = { }; 39 files."green.sync.pub".secret = false; 40 runtimeInputs = with pkgs; [ 41 coreutils 42 openssh 43 ]; 44 script = '' 45 ssh-keygen -t ed25519 -N "" -f "$out"/green.sync.key 46 mv "$out"/green.sync.key.pub "$out"/green.sync.pub 47 ''; 48 }; 49 50 systemd.tmpfiles.rules = [ 51 "d /home/lass/.local/share 0700 lass users -" 52 "d /home/lass/.local 0700 lass users -" 53 "d /home/lass/.config 0700 lass users -" 54 55 "d /var/state/lass_mail 0700 lass users -" 56 "L+ /home/lass/Maildir - - - - ../../var/state/lass_mail" 57 58 "d /var/state/lass_ssh 0700 lass users -" 59 "L+ /home/lass/.ssh - - - - ../../var/state/lass_ssh" 60 "d /var/state/lass_gpg 0700 lass users -" 61 "L+ /home/lass/.gnupg - - - - ../../var/state/lass_gpg" 62 "d /var/state/lass_sync 0700 lass users -" 63 "L+ /home/lass/sync - - - - ../../var/state/lass_sync" 64 65 "d /var/state/git 0700 git nogroup -" 66 "L+ /var/lib/git - - - - ../../var/state/git" 67 68 "d /var/state/zerotier-one 0700 root root -" 69 "L+ /var/lib/zerotier-one - - - - ../../var/state/zerotier-one" 70 ]; 71 72 krebs.iptables.tables.nat.PREROUTING.rules = [ 73 { 74 predicate = "-i eth0 -p tcp -m tcp --dport 22"; 75 target = "ACCEPT"; 76 } 77 ]; 78 79 # workaround for ssh access from yubikey via android 80 services.openssh.extraConfig = '' 81 HostKeyAlgorithms +ssh-rsa 82 PubkeyAcceptedAlgorithms +ssh-rsa 83 ''; 84 85 services.dovecot2 = { 86 enable = true; 87 mailLocation = "maildir:~/Maildir"; 88 }; 89 90 networking.firewall.allowedTCPPorts = [ 143 ]; 91 92 environment.systemPackages = [ 93 self.packages.${pkgs.system}.muchsync 94 ]; 95}