diff --git a/systems/aarch64-linux/neptunium/default.nix b/systems/aarch64-linux/neptunium/default.nix deleted file mode 100644 index a1da04d..0000000 --- a/systems/aarch64-linux/neptunium/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -# ++ 93_Np: Neptunium -# -# Raspberry Pi / Mini home server environment -{...}: { - elements = { - hostname = "neptunium"; - secrets = { - key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPjqieS4GkYAa1WRYZpxjgYsj7VGZ9U+rTFCkX8M0umD"; - }; - }; -} diff --git a/systems/x86_64-linux/alvin/default.nix b/systems/x86_64-linux/alvin/default.nix deleted file mode 100644 index e38760c..0000000 --- a/systems/x86_64-linux/alvin/default.nix +++ /dev/null @@ -1,52 +0,0 @@ -{...}: { - imports = [ - ./hardware.nix - ./traefik.nix - ./radicle.nix - ./static.nix - ./victoria.nix - ./solid.nix - ./oxigraph.nix - ./matrix.nix - ]; - - elements = { - hostname = "alvin"; - - secrets = { - key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBzji6twM8/QdDgFGSUKNmvCm/kEfFMYWZdmgRBbs5Nc"; - needs.radiclePrivateKey.rekeyFile = "radicle.age"; - needs.radiclePublicKey.rekeyFile = "radicle.pub.age"; - needs.victoriametricsPasswordFile.rekeyFile = "victoria-password.age"; - }; - }; - - boot.tmp.cleanOnBoot = true; - zramSwap.enable = true; - - networking = { - enableIPv6 = true; - firewall = { - enable = true; - allowedTCPPorts = [22 80 443]; - }; - domain = "contaboserver.net"; - - defaultGateway = "62.169.24.1"; - nameservers = ["8.8.8.8" "8.8.4.4"]; - interfaces.ens18 = { - useDHCP = false; - ipv4.addresses = [ - { - address = "62.169.31.37"; - prefixLength = 21; - } - ]; - }; - }; - - services.openssh.enable = true; - users.users.root.openssh.authorizedKeys.keys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO+XpUv6qTqJ7NmYDz9hjvobDBJY9NN3S0TjXD0q2kt2 christopher@cobalt"]; - - system.stateVersion = "23.11"; -} diff --git a/systems/x86_64-linux/alvin/hardware.nix b/systems/x86_64-linux/alvin/hardware.nix deleted file mode 100644 index 329ed8a..0000000 --- a/systems/x86_64-linux/alvin/hardware.nix +++ /dev/null @@ -1,10 +0,0 @@ -{modulesPath, ...}: { - imports = [(modulesPath + "/profiles/qemu-guest.nix")]; - boot.loader.grub.device = "/dev/sda"; - boot.initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "xen_blkfront" "vmw_pvscsi"]; - boot.initrd.kernelModules = ["nvme"]; - fileSystems."/" = { - device = "/dev/sda1"; - fsType = "ext4"; - }; -} diff --git a/systems/x86_64-linux/alvin/matrix.nix b/systems/x86_64-linux/alvin/matrix.nix deleted file mode 100644 index 136a212..0000000 --- a/systems/x86_64-linux/alvin/matrix.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - inputs, - pkgs, - ... -}: { - services = { - matrix-synapse = { - enable = true; - - settings = { - server_name = "aleph.garden"; - public_baseurl = "https://matrix.aleph.garden"; - - listeners = [ - { - port = 8008; - type = "http"; - x_forwarded = true; - tls = false; - resources = [{names = ["client" "federation"];}]; - } - ]; - }; - }; - - # mautrix-whatsapp.enable = true; - # mautrix-telegram.registerToSynapse = {}; - # mautrix-signal.registerToSynapse = {}; - # mautrix-discord.enable = true; - - traefik.routes.matrix = { - rule = "Host(`matrix.aleph.garden`)"; - url = "http://localhost:8008"; - }; - }; -} diff --git a/systems/x86_64-linux/alvin/oxigraph.nix b/systems/x86_64-linux/alvin/oxigraph.nix deleted file mode 100644 index 92c3d15..0000000 --- a/systems/x86_64-linux/alvin/oxigraph.nix +++ /dev/null @@ -1,38 +0,0 @@ -{pkgs, ...}: { - # Create dedicated user and group - users.users.oxigraph = { - isSystemUser = true; - group = "oxigraph"; - description = "Oxigraph SPARQL database service user"; - }; - - users.groups.oxigraph = {}; - - # Configure systemd service - systemd.services.oxigraph = { - description = "Oxigraph SPARQL database server"; - after = ["network.target"]; - wantedBy = ["multi-user.target"]; - - serviceConfig = { - ExecStart = "${pkgs._elements.oxigraph}/bin/oxigraph serve --location /var/lib/oxigraph --bind 127.0.0.1:7878"; - Restart = "on-failure"; - User = "oxigraph"; - Group = "oxigraph"; - StateDirectory = "oxigraph"; - - # Security hardening - NoNewPrivileges = true; - PrivateTmp = true; - ProtectSystem = "strict"; - ProtectHome = true; - ReadWritePaths = "/var/lib/oxigraph"; - }; - }; - - # Configure Traefik route for public access - services.traefik.routes.sparql = { - rule = "Host(`sparql.toph.so`)"; - url = "http://localhost:7878"; - }; -} diff --git a/systems/x86_64-linux/alvin/radicle.nix b/systems/x86_64-linux/alvin/radicle.nix deleted file mode 100644 index c083d57..0000000 --- a/systems/x86_64-linux/alvin/radicle.nix +++ /dev/null @@ -1,68 +0,0 @@ -{config, ...}: let - nodeAddress = "seed.toph.so"; - radConfig = config.services.radicle; - - followed = [ - "z6Mkm1WGVW5Zr6Ubn2aJU7S26Knjum3Y3iSC39zJ8EojRkt9" # toph - ]; - seedRepositories = [ - "rad:zBNXLtTqUu9LBZHCPFShAeXnp5Gz" # radicle-ci - "rad:z254T5p17bdFPmzfDojsdjo4HjpoZ" # radicle-infra - ]; -in { - services = { - radicle = { - enable = true; - - publicKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEihs1RjZ52Vcy+NJuFhiRbEp5SfwND3b3oSjD2V0HTG"; - privateKeyFile = config.age.secrets.radiclePrivateKey.path; - - httpd = { - enable = true; - nginx.serverName = nodeAddress; - }; - - # Seeding node - node = { - listenAddress = "[::0]"; - openFirewall = true; - }; - - settings = { - preferredSeeds = [ - ]; - node = { - alias = nodeAddress; - # externalAddresses = ["${nodeAddress}:${builtins.toString radConfig.node.listenPort}"]; - - follow = followed; - seeds = seedRepositories; - - seedingPolicy = { - default = "allow"; - scope = "all"; - }; - }; - web = { - description = '' - Hi there! I'm toph, a passionate federated and semantic web developer. - This is my main Radicle seed node that I also use to showcase my projects. - - I'll try to seed every repo that I actively use for my code that's also - hosted on Radicle. - - Be sure to also check out my GitHub at https://github.com/tophcodes. - ''; - pinned.repositories = [ - "rad:z4VmSKKMbAqbwqsMXWvyvrxTSAZFS" - ]; - }; - }; - }; - - traefik.routes.radicle-seed = { - rule = "Host(`${nodeAddress}`)"; - url = "http://localhost:${builtins.toString radConfig.httpd.listenPort}"; - }; - }; -} diff --git a/systems/x86_64-linux/alvin/solid.nix b/systems/x86_64-linux/alvin/solid.nix deleted file mode 100644 index 0af4ae4..0000000 --- a/systems/x86_64-linux/alvin/solid.nix +++ /dev/null @@ -1,83 +0,0 @@ -{ - inputs, - pkgs, - ... -}: { - imports = [ - inputs.community-solid-server.nixosModules.default - ]; - - services = { - solid-server = { - enable = true; - rootFilePath = "/var/lib/solid"; - baseUrl = "https://pod.toph.so"; - - configFile = pkgs.writeTextFile { - name = "solid.config.json"; - text = '' - { - "@context": "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^7.0.0/components/context.jsonld", - "import": [ - "css:config/app/init/initialize-root-pod.json", - "css:config/app/main/default.json", - "css:config/app/variables/default.json", - "css:config/http/handler/default.json", - "css:config/http/middleware/default.json", - "css:config/http/notifications/all.json", - "css:config/http/server-factory/http.json", - "css:config/http/static/default.json", - "css:config/identity/access/public.json", - "css:config/identity/email/default.json", - "css:config/identity/handler/no-accounts-pods.json", - "css:config/identity/oidc/default.json", - "css:config/identity/ownership/token.json", - "css:config/identity/pod/static.json", - "css:config/ldp/authentication/dpop-bearer.json", - "css:config/ldp/authorization/webacl.json", - "css:config/ldp/handler/default.json", - "css:config/ldp/metadata-parser/default.json", - "css:config/ldp/metadata-writer/default.json", - "css:config/ldp/modes/default.json", - "css:config/storage/backend/file.json", - "css:config/storage/key-value/resource-store.json", - "css:config/storage/location/root.json", - "css:config/storage/middleware/default.json", - "css:config/util/auxiliary/acl.json", - "css:config/util/identifiers/suffix.json", - "css:config/util/index/default.json", - "css:config/util/logging/winston.json", - "css:config/util/representation-conversion/default.json", - "css:config/util/resource-locker/file.json", - "css:config/util/variables/default.json" - ], - "@graph": [ - { - "comment": [ - "A Solid server that stores its resources on disk and uses WAC for authorization.", - "A pod will be created in the root with the email/password login defined here.", - "It is advised to immediately change this password after starting the server." - ] - }, - { - "@id": "urn:solid-server:default:RootPodInitializer", - "@type": "AccountInitializer", - "email": "toki@toph.so", - "password": "ssecretohno!" - } - ] - } - ''; - }; - }; - - traefik.routes.solid-pod = { - rule = "Host(`pod.toph.so`)"; - url = "http://localhost:3000"; - }; - }; - - systemd.tmpfiles.rules = [ - "d /var/lib/solid - - - - -" - ]; -} diff --git a/systems/x86_64-linux/alvin/static.nix b/systems/x86_64-linux/alvin/static.nix deleted file mode 100644 index ace3ce3..0000000 --- a/systems/x86_64-linux/alvin/static.nix +++ /dev/null @@ -1,21 +0,0 @@ -{...}: let - root = "/var/lib/sws"; -in { - imports = [ - ./static/tophso.nix - ./static/radicle-explorer.nix - ]; - - services = { - static-web-server = { - enable = true; - listen = "[::]:89"; - inherit root; - configuration = {}; - }; - }; - - systemd.tmpfiles.rules = [ - "d ${root} - - - - -" - ]; -} diff --git a/systems/x86_64-linux/alvin/static/radicle-explorer.nix b/systems/x86_64-linux/alvin/static/radicle-explorer.nix deleted file mode 100644 index 992d485..0000000 --- a/systems/x86_64-linux/alvin/static/radicle-explorer.nix +++ /dev/null @@ -1,35 +0,0 @@ -{pkgs, ...}: let - name = "radicle.toph.so"; - - explorer = pkgs.radicle-explorer.withConfig { - preferredSeeds = [ - { - hostname = "seed.toph.so"; - port = 443; - scheme = "https"; - } - ]; - }; -in { - services = { - static-web-server.configuration.advanced = { - rewrites = [ - { - source = "{**}"; - destination = "https://${name}/"; - } - ]; - virtual-hosts = [ - { - host = name; - root = explorer; - } - ]; - }; - - traefik.routes.radicle = { - rule = "Host(`${name}`)"; - url = "http://localhost:89"; - }; - }; -} diff --git a/systems/x86_64-linux/alvin/static/tophso.nix b/systems/x86_64-linux/alvin/static/tophso.nix deleted file mode 100644 index 0b48119..0000000 --- a/systems/x86_64-linux/alvin/static/tophso.nix +++ /dev/null @@ -1,34 +0,0 @@ -{pkgs, ...}: let - name = "toph.so"; - - tophso = pkgs.writeTextFile { - inherit name; - destination = "/index.html"; - text = '' - - -
-