1
Fork 0
satellite/hosts/nixos/lapetus/services/homer.nix

180 lines
5.2 KiB
Nix
Raw Normal View History

2024-02-24 03:51:35 +01:00
{ pkgs, config, ... }:
let
2024-02-24 08:57:24 +01:00
# {{{ Colors
2024-02-24 03:51:35 +01:00
colors = with config.lib.stylix.scheme.withHashtag; {
2024-02-24 04:39:42 +01:00
highlight-primary = base09;
highlight-secondary = base01;
highlight-hover = base00;
text-header = base05;
2024-02-24 04:03:21 +01:00
text-title = base05;
text-subtitle = base05;
2024-02-24 03:51:35 +01:00
text = base05;
link = base08;
background = base00;
card-background = base01;
};
2024-02-24 08:57:24 +01:00
# }}}
2024-02-24 03:51:35 +01:00
fa = name: "fas fa-${name}";
2024-02-24 04:30:47 +01:00
iconPath = ../../../../common/icons;
icon = file: "assets/${iconPath}/${file}";
2024-02-24 03:51:35 +01:00
in
{
2024-02-24 06:52:01 +01:00
imports = [ ../../common/optional/services/nginx.nix ];
services.nginx.virtualHosts."lab.moonythm.dev" =
config.satellite.static (pkgs.homer.withAssets {
2024-02-24 04:30:47 +01:00
extraAssets = [ iconPath ];
2024-02-24 03:51:35 +01:00
config = {
title = " The celestial citadel ";
2024-02-24 04:14:19 +01:00
header = false;
2024-02-24 03:51:35 +01:00
footer = false;
connectivityCheck = true;
colors.light = colors;
colors.dark = colors;
services = [
2024-02-24 08:57:24 +01:00
# {{{ Infrastructure
{
name = "Infrastructure";
icon = fa "code";
items = [
{
name = "Prometheus";
type = "Prometheus";
2024-02-24 08:57:24 +01:00
subtitle = "Monitoring system";
logo = icon "prometheus.png";
url = "https://prometheus.moonythm.dev";
}
{
name = "Grafana";
subtitle = "Pretty dashboards :3";
logo = icon "grafana.png";
url = "https://grafana.moonythm.dev";
}
{
name = "Syncthing";
subtitle = "File synchronization";
logo = icon "syncthing.png";
2024-02-28 07:32:58 +01:00
url = "https://lapetus.syncthing.moonythm.dev";
}
2024-02-24 08:57:24 +01:00
];
}
# }}}
# {{{ Pillars
2024-02-24 03:51:35 +01:00
{
name = "Pillars";
icon = fa "toolbox";
items = [
{
name = "Vaultwarden";
subtitle = "Password manager";
logo = icon "bitwarden.png";
2024-02-24 04:32:30 +01:00
url = "https://warden.moonythm.dev";
2024-02-24 03:51:35 +01:00
}
{
name = "Whoogle";
subtitle = "Search engine";
2024-02-24 03:53:52 +01:00
logo = icon "whoogle.webp";
2024-02-24 04:32:30 +01:00
url = "https://search.moonythm.dev";
2024-02-24 03:51:35 +01:00
}
{
2024-04-01 06:24:29 +02:00
name = "Radicale";
subtitle = "Calendar server";
logo = icon "radicale.svg";
url = "https://cal.moonythm.dev";
}
2024-02-24 03:51:35 +01:00
];
}
2024-02-24 08:57:24 +01:00
# }}}
# {{{ Productivity
2024-02-24 03:51:35 +01:00
{
2024-02-24 04:03:21 +01:00
name = "Productivity";
icon = fa "rocket";
2024-02-24 03:51:35 +01:00
items = [
{
name = "Intray";
subtitle = "GTD capture tool";
2024-02-24 08:57:24 +01:00
icon = fa "inbox";
2024-02-24 04:32:30 +01:00
url = "https://intray.moonythm.dev";
2024-02-24 03:51:35 +01:00
}
{
name = "Smos";
subtitle = "A comprehensive self-management system.";
2024-02-24 08:57:24 +01:00
icon = fa "cubes-stacked";
2024-02-24 04:32:30 +01:00
url = "https://smos.moonythm.dev";
2024-02-24 03:51:35 +01:00
}
{
name = "Actual";
subtitle = "Budgeting tool";
logo = icon "actual.png";
2024-02-24 04:32:30 +01:00
url = "https://actual.moonythm.dev";
2024-02-24 03:51:35 +01:00
}
];
}
2024-02-24 08:57:24 +01:00
# }}}
2024-03-11 15:46:27 +01:00
# {{{ Entertainment
{
name = "Entertainment";
icon = fa "gamepad";
items = [
{
name = "Invidious";
subtitle = "Youtube client";
logo = icon "invidious.png";
url = "https://yt.moonythm.dev";
}
2024-04-22 22:45:08 +02:00
{
name = "Redlib";
subtitle = "Reddit client";
logo = icon "libreddit.png";
url = "https://redlib.moonythm.dev";
}
{
name = "Diptime";
subtitle = "Diplomacy timer";
icon = fa "globe";
url = "https://diptime.moonythm.dev";
}
2024-04-01 06:24:29 +02:00
{
name = "Commafeed";
subtitle = "RSS reader";
logo = icon "commafeed.png";
url = "https://rss.moonythm.dev";
}
2024-03-11 15:46:27 +01:00
];
}
# }}}
2024-04-23 08:33:17 +02:00
# {{{ External
{
name = "External";
icon = fa "arrow-up-right-from-square";
items = [
{
name = "Tailscale";
subtitle = "Access this homelab from anywhere";
logo = icon "tailscale.png";
url = "https://tailscale.com/";
}
2024-04-23 08:40:22 +02:00
{
name = "Dotfiles";
subtitle = "Configuration for all my machines";
logo = icon "github.png";
url = "https://github.com/mateiadrielrafael/everything-nix";
}
2024-04-23 08:33:17 +02:00
{
name = "Porkbun";
subtitle = "Domain management";
logo = icon "porkbun.png";
url = "https://porkbun.com/account/domainsSpeedy";
}
];
}
# }}}
2024-02-24 03:51:35 +01:00
];
};
});
2024-02-24 03:51:35 +01:00
}