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

126 lines
3.4 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 ];
2024-02-24 03:52:15 +01:00
services.nginx.virtualHosts."lab.moonythm.dev" = {
2024-02-24 03:51:35 +01:00
enableACME = true;
acmeRoot = null;
forceSSL = true;
root = 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
}
{
name = "Commafeed";
subtitle = "RSS reader";
logo = icon "commafeed.png";
url = "https://rss.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-02-24 03:51:35 +01:00
];
};
};
};
}