This repository has no description
0

Configure Feed

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

superconfig / nixos / machines / ubik / config.nix
7.5 kB 277 lines
1{ self, config, pkgs, ... }: 2{ 3 imports = [ 4 ../../. 5 ../../2configs 6 ../../2configs/retiolum.nix 7 8 self.inputs.stockholm.nixosModules.exim-smarthost 9 ]; 10 11 krebs.build.host = config.krebs.hosts.ubik; 12 13 krebs.sync-containers3.inContainer = { 14 enable = true; 15 pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPBFGMjH0+Dco6DVFZbByENMci8CFTLXCL7j53yctPnM"; 16 }; 17 18 security.acme = { 19 acceptTerms = true; 20 defaults.email = "acme@lassul.us"; 21 }; 22 networking.firewall.allowedTCPPorts = [ 80 443 ]; 23 24 # nextcloud 25 services.nginx.virtualHosts."c.apanowicz.de" = { 26 enableACME = true; 27 forceSSL = true; 28 }; 29 services.nextcloud = { 30 enable = true; 31 enableBrokenCiphersForSSE = false; 32 hostName = "c.apanowicz.de"; 33 package = pkgs.nextcloud25; 34 config.adminpassFile = "/run/nextcloud.pw"; 35 https = true; 36 maxUploadSize = "9001M"; 37 }; 38 systemd.services.nextcloud-setup.serviceConfig.ExecStartPre = [ 39 "+${pkgs.writeDash "copy-pw" '' 40 ${pkgs.rsync}/bin/rsync \ 41 --chown nextcloud:nextcloud \ 42 --chmod 0700 \ 43 /var/src/secrets/nextcloud.pw /run/nextcloud.pw 44 ''}" 45 ]; 46 47 # mail 48 lass.usershadow.enable = true; 49 services.nginx.virtualHosts."mail.ubikmedia.eu" = { 50 enableACME = true; 51 forceSSL = true; 52 }; 53 services.roundcube = { 54 enable = true; 55 hostName = "mail.ubikmedia.eu"; 56 extraConfig = '' 57 $config['smtp_debug'] = true; 58 $config['smtp_host'] = "localhost:25"; 59 ''; 60 }; 61 services.dovecot2 = { 62 enable = true; 63 showPAMFailure = true; 64 mailLocation = "maildir:~/Mail"; 65 sslServerCert = "/var/lib/acme/mail.ubikmedia.eu/fullchain.pem"; 66 sslServerKey = "/var/lib/acme/mail.ubikmedia.eu/key.pem"; 67 }; 68 krebs.exim-smarthost = { 69 ssl_cert = "/var/lib/acme/mail.ubikmedia.eu/fullchain.pem"; 70 ssl_key = "/var/lib/acme/mail.ubikmedia.eu/key.pem"; 71 authenticators.PLAIN = '' 72 driver = plaintext 73 public_name = PLAIN 74 server_condition = ''${run{/run/wrappers/bin/shadow_verify_arg ${config.lass.usershadow.pattern} $auth2 $auth3}{yes}{no}} 75 ''; 76 authenticators.LOGIN = '' 77 driver = plaintext 78 public_name = LOGIN 79 server_prompts = "Username:: : Password::" 80 server_condition = ''${run{/run/wrappers/bin/shadow_verify_arg ${config.lass.usershadow.pattern} $auth1 $auth2}{yes}{no}} 81 # server_condition = ''${run{/run/current-system/sw/bin/debug_exim ${config.lass.usershadow.pattern} $auth1 $auth2}{yes}{no}} 82 ''; 83 internet-aliases = [ 84 { from = "dma@ubikmedia.de"; to = "domsen"; } 85 { from = "dma@ubikmedia.eu"; to = "domsen"; } 86 { from = "hallo@apanowicz.de"; to = "domsen"; } 87 { from = "bruno@apanowicz.de"; to = "bruno"; } 88 { from = "mail@jla-trading.com"; to = "jla-trading"; } 89 { from = "jms@ubikmedia.eu"; to = "jms"; } 90 { from = "ms@ubikmedia.eu"; to = "ms"; } 91 { from = "ubik@ubikmedia.eu"; to = "domsen, jms, ms"; } 92 { from = "kontakt@alewis.de"; to ="klabusterbeere"; } 93 { from = "hallo@jarugadesign.de"; to ="kasia"; } 94 { from = "noreply@beeshmooth.ch"; to ="besmooth@gmx.ch"; } 95 96 { from = "testuser@ubikmedia.eu"; to = "testuser"; } 97 ]; 98 sender_domains = [ 99 "jla-trading.com" 100 "ubikmedia.eu" 101 "ubikmedia.de" 102 "apanowicz.de" 103 "alewis.de" 104 "jarugadesign.de" 105 "beesmooth.ch" 106 "event-extra.de" 107 ]; 108 dkim = [ 109 { domain = "ubikmedia.eu"; } 110 { domain = "apanowicz.de"; } 111 { domain = "beesmooth.ch"; } 112 ]; 113 }; 114 115 # users 116 users.users.UBIK-SFTP = { 117 uid = pkgs.stockholm.lib.genid_uint31 "UBIK-SFTP"; 118 home = "/home/UBIK-SFTP"; 119 useDefaultShell = true; 120 createHome = true; 121 isNormalUser = true; 122 }; 123 124 users.users.xanf = { 125 uid = pkgs.stockholm.lib.genid_uint31 "xanf"; 126 group = "xanf"; 127 home = "/home/xanf"; 128 useDefaultShell = true; 129 createHome = false; # creathome forces permissions 130 isNormalUser = true; 131 }; 132 133 users.users.domsen = { 134 uid = pkgs.stockholm.lib.genid_uint31 "domsen"; 135 description = "maintenance acc for domsen"; 136 home = "/home/domsen"; 137 useDefaultShell = true; 138 extraGroups = [ "syncthing" "download" "xanf" ]; 139 createHome = true; 140 isNormalUser = true; 141 }; 142 143 users.users.bruno = { 144 uid = pkgs.stockholm.lib.genid_uint31 "bruno"; 145 home = "/home/bruno"; 146 useDefaultShell = true; 147 createHome = true; 148 isNormalUser = true; 149 }; 150 151 users.users.jla-trading = { 152 uid = pkgs.stockholm.lib.genid_uint31 "jla-trading"; 153 home = "/home/jla-trading"; 154 useDefaultShell = true; 155 createHome = true; 156 isNormalUser = true; 157 }; 158 159 users.users.jms = { 160 uid = pkgs.stockholm.lib.genid_uint31 "jms"; 161 home = "/home/jms"; 162 useDefaultShell = true; 163 createHome = true; 164 isNormalUser = true; 165 }; 166 167 users.users.ms = { 168 uid = pkgs.stockholm.lib.genid_uint31 "ms"; 169 home = "/home/ms"; 170 useDefaultShell = true; 171 createHome = true; 172 isNormalUser = true; 173 }; 174 175 users.users.testuser = { 176 uid = pkgs.stockholm.lib.genid_uint31 "testuser"; 177 home = "/home/testuser"; 178 useDefaultShell = true; 179 createHome = true; 180 isNormalUser = true; 181 }; 182 183 users.users.bui = { 184 uid = pkgs.stockholm.lib.genid_uint31 "bui"; 185 home = "/home/bui"; 186 useDefaultShell = true; 187 createHome = true; 188 isNormalUser = true; 189 }; 190 191 users.users.klabusterbeere = { 192 uid = pkgs.stockholm.lib.genid_uint31 "klabusterbeere"; 193 home = "/home/klabusterbeere"; 194 useDefaultShell = true; 195 createHome = true; 196 isNormalUser = true; 197 }; 198 199 users.users.kasia = { 200 uid = pkgs.stockholm.lib.genid_uint31 "kasia"; 201 home = "/home/kasia"; 202 useDefaultShell = true; 203 createHome = true; 204 isNormalUser = true; 205 }; 206 207 users.users.XANF_TEAM = { 208 uid = pkgs.stockholm.lib.genid_uint31 "XANF_TEAM"; 209 group = "xanf"; 210 home = "/home/XANF_TEAM"; 211 useDefaultShell = true; 212 createHome = true; 213 isNormalUser = true; 214 }; 215 216 users.users.dif = { 217 uid = pkgs.stockholm.lib.genid_uint31 "dif"; 218 home = "/home/dif"; 219 useDefaultShell = true; 220 extraGroups = [ "xanf" ]; 221 createHome = true; 222 isNormalUser = true; 223 }; 224 225 users.users.lavafilms = { 226 uid = pkgs.stockholm.lib.genid_uint31 "lavafilms"; 227 home = "/home/lavafilms"; 228 useDefaultShell = true; 229 extraGroups = [ "xanf" ]; 230 createHome = true; 231 isNormalUser = true; 232 }; 233 234 users.users.movematchers = { 235 uid = pkgs.stockholm.lib.genid_uint31 "movematchers"; 236 home = "/home/movematchers"; 237 useDefaultShell = true; 238 extraGroups = [ "xanf" ]; 239 createHome = true; 240 isNormalUser = true; 241 }; 242 243 users.users.blackphoton = { 244 uid = pkgs.stockholm.lib.genid_uint31 "blackphoton"; 245 home = "/home/blackphoton"; 246 useDefaultShell = true; 247 extraGroups = [ "xanf" ]; 248 createHome = true; 249 isNormalUser = true; 250 }; 251 252 users.users.line = { 253 uid = pkgs.stockholm.lib.genid_uint31 "line"; 254 home = "/home/line"; 255 useDefaultShell = true; 256 # extraGroups = [ "xanf" ]; 257 createHome = true; 258 isNormalUser = true; 259 }; 260 261 users.users.avada = { 262 uid = pkgs.stockholm.lib.genid_uint31 "avada"; 263 home = "/home/avada"; 264 useDefaultShell = true; 265 createHome = true; 266 isNormalUser = true; 267 }; 268 269 users.users.familienrat = { 270 uid = pkgs.stockholm.lib.genid_uint31 "familienrat"; 271 home = "/home/familienrat"; 272 useDefaultShell = true; 273 createHome = true; 274 isNormalUser = true; 275 }; 276 277}