{ config, ... }: { services.homepage-dashboard = { enable = true; services = [ { "Filesharing" = [ { "Nextcloud" = { icon = "nextcloud.png"; description = "Nextcloud"; href = "https://${config.services.nextcloud.hostName}/"; widget = { type = "nextcloud"; url = "https://${config.services.nextcloud.hostName}/"; key = "d8287cef8704255787c7207de873c478"; }; }; } { "Syncthing" = { icon = "syncthing.png"; href = "https://syncthing.${config.domainName}/"; }; } ]; } { "Communication" = [ { "Matrix" = { icon = "matrix-light.png"; href = "https://${config.services.dendrite.settings.global.server_name}"; description = "Matrix Powered Chat"; }; } { "Teamspeak" = { icon = "teamspeak.png"; description = "connect to ${config.domainName}"; }; } ]; } { "Games" = [ { "Factorio" = { icon = "https://wiki.factorio.com/images/Factorio-logo.png"; description = "connect to ${config.domainName}"; }; } ]; } { "Development" = [ { "Gitea Server" = { icon = "gitea.png"; href = "https://git.${config.domainName}"; widget = { type = "gitea"; url = "https://git.${config.domainName}"; key = "23a6cc9ffd664d9ba815c9c0ab6beb42c13578b2"; }; }; } ]; } { "FoundryVTT Server" = [ { "Mitchs Keller" = { icon = "https://r2.foundryvtt.com/website-static-public/assets/icons/fvtt.png"; href = "https://mitchskeller.${config.domainName}"; }; } { "Inferno" = { icon = "https://r2.foundryvtt.com/website-static-public/assets/icons/fvtt.png"; href = "https://inferno.${config.domainName}"; }; } { "Nixland" = { icon = "https://r2.foundryvtt.com/website-static-public/assets/icons/fvtt.png"; href = "https://nixland.${config.domainName}"; }; } ]; } ]; }; services.nginx.virtualHosts."${config.domainName}" = { useACMEHost = config.domainName; addSSL = true; locations."/".proxyPass = "http://localhost:${toString config.services.homepage-dashboard.listenPort}"; }; }