diff --git a/hosts/phantom/default.nix b/hosts/phantom/default.nix index a0e99b7..7bb0fb0 100644 --- a/hosts/phantom/default.nix +++ b/hosts/phantom/default.nix @@ -10,11 +10,12 @@ ./syncthing.nix ./users.nix ./writefreely.nix + ./renawiki.nix ./email.nix ./forgejo.nix ]; - services.nginx.virtualHosts."lelgenio.com" = { + services.nginx.virtualHosts."lelgenio.xyz" = { enableACME = true; forceSSL = true; root = pkgs.runCommand "www-dir" { } '' @@ -50,7 +51,7 @@ dates = "04:40"; operation = "switch"; flags = [ "--update-input" "nixpkgs" "--no-write-lock-file" "-L" ]; - flake = "git+https://git.lelgenio.com/lelgenio/nixos-config#phantom"; + flake = "git+https://git.lelgenio.xyz/lelgenio/nixos-config#phantom"; }; system.stateVersion = "23.05"; # Never change this diff --git a/hosts/phantom/email.nix b/hosts/phantom/email.nix index b431807..e778de4 100644 --- a/hosts/phantom/email.nix +++ b/hosts/phantom/email.nix @@ -8,30 +8,20 @@ mailserver = { enable = true; - fqdn = "lelgenio.com"; + fqdn = "lelgenio.xyz"; domains = [ "lelgenio.xyz" "git.lelgenio.xyz" - "lelgenio.com" - "git.lelgenio.com" - "social.lelgenio.com" ]; certificateScheme = "acme-nginx"; # Create passwords with # nix-shell -p mkpasswd --run 'mkpasswd -sm bcrypt' loginAccounts = { - "lelgenio@lelgenio.com" = { - hashedPassword = "$2y$05$z5s7QCXcs5uTFsfyYpwNJeWzb3RmzgWxNgcPCr0zjSytkLFF/qZmS"; - aliases = [ "postmaster@lelgenio.com" ]; - }; "lelgenio@lelgenio.xyz" = { hashedPassword = "$2y$05$z5s7QCXcs5uTFsfyYpwNJeWzb3RmzgWxNgcPCr0zjSytkLFF/qZmS"; aliases = [ "postmaster@lelgenio.xyz" ]; }; - "noreply@git.lelgenio.com" = { - hashedPassword = "$2b$05$TmR1R7ZwXfec7yrOfeBL7u3ZtyXf0up5dEO6uMWSvb/O7LPEm.j0."; - }; - "noreply@social.lelgenio.com" = { + "noreply@git.lelgenio.xyz" = { hashedPassword = "$2b$05$TmR1R7ZwXfec7yrOfeBL7u3ZtyXf0up5dEO6uMWSvb/O7LPEm.j0."; }; }; @@ -46,7 +36,7 @@ services.roundcube = { enable = true; package = pkgs.roundcube.withPlugins (p: [ p.carddav ]); - hostName = "mail.lelgenio.com"; + hostName = "mail.lelgenio.xyz"; extraConfig = '' $config['smtp_host'] = "tls://${config.mailserver.fqdn}:587"; $config['smtp_user'] = "%u"; diff --git a/hosts/phantom/forgejo.nix b/hosts/phantom/forgejo.nix index 61f0a51..4e6327b 100644 --- a/hosts/phantom/forgejo.nix +++ b/hosts/phantom/forgejo.nix @@ -26,15 +26,15 @@ in DEFAULT_ACTIONS_URL = "github"; }; server = { - DOMAIN = "git.lelgenio.com"; + DOMAIN = "git.lelgenio.xyz"; HTTP_PORT = 3000; ROOT_URL = "https://${srv.DOMAIN}/"; }; mailer = { ENABLED = true; - SMTP_ADDR = "mail.lelgenio.com"; - FROM = "noreply@git.lelgenio.com"; - USER = "noreply@git.lelgenio.com"; + SMTP_ADDR = "mail.lelgenio.xyz"; + FROM = "noreply@git.lelgenio.xyz"; + USER = "noreply@git.lelgenio.xyz"; }; }; mailerPasswordFile = config.age.secrets.phantom-forgejo-mailer-password.path; diff --git a/hosts/phantom/mastodon.nix b/hosts/phantom/mastodon.nix index cf85b07..adfaf0d 100644 --- a/hosts/phantom/mastodon.nix +++ b/hosts/phantom/mastodon.nix @@ -2,14 +2,8 @@ services.mastodon = { enable = true; configureNginx = true; - localDomain = "social.lelgenio.com"; - smtp = { - authenticate = true; - host = "lelgenio.com"; - fromAddress = "noreply@social.lelgenio.com"; - user = "noreply@social.lelgenio.com"; - passwordFile = config.age.secrets.phantom-forgejo-mailer-password.path; - }; + localDomain = "social.lelgenio.xyz"; + smtp.fromAddress = "lelgenio@disroot.org"; streamingProcesses = 2; extraConfig.SINGLE_USER_MODE = "true"; mediaAutoRemove.olderThanDays = 10; diff --git a/hosts/phantom/nextcloud.nix b/hosts/phantom/nextcloud.nix index 20c7173..5bddece 100644 --- a/hosts/phantom/nextcloud.nix +++ b/hosts/phantom/nextcloud.nix @@ -2,7 +2,7 @@ services.nextcloud = { enable = true; package = pkgs.nextcloud27; - hostName = "cloud.lelgenio.com"; + hostName = "cloud.lelgenio.xyz"; https = true; config = { adminpassFile = config.age.secrets.phantom-nextcloud.path; diff --git a/hosts/phantom/renawiki.nix b/hosts/phantom/renawiki.nix new file mode 100644 index 0000000..5b21907 --- /dev/null +++ b/hosts/phantom/renawiki.nix @@ -0,0 +1,23 @@ +{ config, pkgs, inputs, ... }: { + services.mediawiki = { + enable = true; + name = "Rena Wiki"; + + webserver = "nginx"; + nginx.hostName = "renawiki.lelgenio.xyz"; + passwordFile = config.age.secrets.phantom-renawiki.path; + + extensions.VisualEditor = null; + }; + services.nginx.virtualHosts."renawiki.lelgenio.xyz" = { + enableACME = true; + forceSSL = true; + }; + + age.secrets.phantom-renawiki = { + file = ../../secrets/phantom-renawiki.age; + mode = "400"; + owner = "mediawiki"; + }; +} + diff --git a/hosts/phantom/syncthing.nix b/hosts/phantom/syncthing.nix index 55e4cbc..a971b86 100644 --- a/hosts/phantom/syncthing.nix +++ b/hosts/phantom/syncthing.nix @@ -7,7 +7,7 @@ openDefaultPorts = true; }; - services.nginx.virtualHosts."syncthing.lelgenio.com" = { + services.nginx.virtualHosts."syncthing.lelgenio.xyz" = { enableACME = true; forceSSL = true; locations."/" = { diff --git a/hosts/phantom/writefreely.nix b/hosts/phantom/writefreely.nix index 3530e06..6a2652e 100644 --- a/hosts/phantom/writefreely.nix +++ b/hosts/phantom/writefreely.nix @@ -4,7 +4,7 @@ acme.enable = true; nginx.enable = true; nginx.forceSSL = true; - host = "blog.lelgenio.com"; + host = "blog.lelgenio.xyz"; admin.name = "lelgenio"; admin.initialPasswordFile = config.age.secrets.phantom-writefreely.path; settings.app = {