263 lines
9.4 KiB
Nix
263 lines
9.4 KiB
Nix
{ config, lib, pkgs, ... }: {
|
|
|
|
services.nginx.virtualHosts."mia.${config.networking.hostName}.private" = {
|
|
|
|
locations."/" = {
|
|
root = pkgs.landingpage.override {
|
|
jsonConfig = {
|
|
items = [{
|
|
items = [
|
|
{
|
|
label = "github";
|
|
href = "https://github.com/miaEngiadina";
|
|
image =
|
|
"https://media.giphy.com/media/l0MYEpMgixXtNRgrK/giphy.gif";
|
|
}
|
|
{
|
|
label = "Confluence";
|
|
href = "https://fysitech.atlassian.net/wiki/spaces/DI/overview";
|
|
image = "https://media.giphy.com/media/TfMcfnr6USBtm/giphy.gif";
|
|
}
|
|
{
|
|
label = "Kanban Board";
|
|
href =
|
|
"https://fysitech.atlassian.net/jira/software/projects/DPE/boards/1";
|
|
image =
|
|
"https://media.giphy.com/media/10zsjaH4g0GgmY/giphy.gif";
|
|
}
|
|
|
|
];
|
|
}];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
services.nginx.virtualHosts."${config.networking.hostName}.private" = {
|
|
default = true;
|
|
locations."/" = {
|
|
root = pkgs.landingpage.override {
|
|
jsonConfig = {
|
|
items = [
|
|
{
|
|
# text = "hallo";
|
|
items = [
|
|
|
|
{
|
|
label = "Dashboard";
|
|
href = "http://grafana.workhorse.private";
|
|
image =
|
|
"https://media.giphy.com/media/eLmaUW5dJak2k/giphy.gif";
|
|
}
|
|
{
|
|
label = "Prometheus";
|
|
href = "http://prometheus.workhorse.private/";
|
|
image =
|
|
"https://media.giphy.com/media/1NLZYcJGLM9mo/giphy.gif";
|
|
}
|
|
{
|
|
label = "Graylog";
|
|
href = "http://graylog.workhorse.private/";
|
|
image =
|
|
"https://media.giphy.com/media/6oeRBKg7mwEZnSnYkn/giphy.gif";
|
|
}
|
|
{
|
|
label = "Jenkins";
|
|
href = "http://jenkins.workhorse.private/";
|
|
image =
|
|
"https://media.giphy.com/media/nQYnLFII2sFcQ/giphy.gif";
|
|
}
|
|
{
|
|
label = "HomeAssistant";
|
|
href = "http://pepe.private:8123/lovelace/view_overview";
|
|
image =
|
|
"https://media.giphy.com/media/3o6ZtosYxN9Eo3AAZq/giphy.gif";
|
|
}
|
|
{
|
|
label = "Kodi";
|
|
href = "http://porani.private:8080/";
|
|
image =
|
|
"https://media.giphy.com/media/d9wPasV7ukkta/giphy.gif";
|
|
}
|
|
{
|
|
label = "Hetzner Cloud";
|
|
href = "https://console.hetzner.cloud/projects";
|
|
image =
|
|
"https://media.giphy.com/media/NECZ8crkbXR0k/giphy.gif";
|
|
}
|
|
{
|
|
label = "Transmission";
|
|
href = "http://transmission.kruck.private/";
|
|
image =
|
|
"https://media.giphy.com/media/9ryQgA3d0BVoe7iZl0/giphy.gif";
|
|
}
|
|
{
|
|
label = "Pass the Popcorn";
|
|
href = "https://passthepopcorn.me/";
|
|
image =
|
|
"https://media.giphy.com/media/NipFetnQOuKhW/giphy.gif";
|
|
}
|
|
{
|
|
label = "redacted";
|
|
href = "https://redacted.ch/";
|
|
image =
|
|
"https://media.giphy.com/media/ku5EcFe4PNGWA/giphy.gif";
|
|
}
|
|
{
|
|
label = "Kibana Workhorse";
|
|
href = "http://kibana.workhorse.private/";
|
|
image =
|
|
"https://media.giphy.com/media/24sVlirH2qPTO/giphy.gif";
|
|
}
|
|
{
|
|
label = "Kibana Workout";
|
|
href = "http://kibana.workout.private/";
|
|
image =
|
|
"https://media.giphy.com/media/24sVlirH2qPTO/giphy.gif";
|
|
}
|
|
{
|
|
label = "Cups";
|
|
href = "http://localhost:631/";
|
|
image =
|
|
"https://media.giphy.com/media/7hU7x4GPurk2c/giphy.gif";
|
|
}
|
|
];
|
|
}
|
|
{
|
|
text = "Betfair";
|
|
items = [
|
|
{
|
|
label = "betfair";
|
|
href = "https://www.betfair.com/exchange/plus/football";
|
|
image =
|
|
"https://media.giphy.com/media/3og0ILXHf8hmHmET1C/giphy.gif";
|
|
}
|
|
{
|
|
label = "token";
|
|
href =
|
|
"https://docs.developer.betfair.com/visualisers/api-ng-account-operations/";
|
|
image =
|
|
"https://media.giphy.com/media/aeIlR57TpTimI/giphy.gif";
|
|
}
|
|
{
|
|
label = "api doku";
|
|
href =
|
|
"https://docs.developer.betfair.com/display/1smk3cen4v3lu3yomq5qye0ni/Reference+Guide";
|
|
image =
|
|
"https://media.giphy.com/media/11bKAQfWd0Yo0w/giphy.gif";
|
|
}
|
|
];
|
|
}
|
|
{
|
|
text = "Lektor";
|
|
items = [
|
|
{
|
|
label = "Terranix";
|
|
href = "http://terranix.schasch.private";
|
|
image =
|
|
"https://media.giphy.com/media/nGtOFccLzujug/giphy.gif";
|
|
}
|
|
{
|
|
label = "tech-blog";
|
|
href = "http://techblog.schasch.private";
|
|
image =
|
|
"https://media.giphy.com/media/nGtOFccLzujug/giphy.gif";
|
|
}
|
|
];
|
|
}
|
|
{
|
|
text = "NixOS";
|
|
items = [
|
|
{
|
|
label = "NixOS Manual";
|
|
href = "https://nixos.org/nixos/manual/";
|
|
image =
|
|
"https://media.giphy.com/media/dsdVyKkSqccEzoPufX/giphy.gif";
|
|
}
|
|
{
|
|
label = "Nixpkgs Manual";
|
|
href = "https://nixos.org/nixpkgs/manual/";
|
|
image =
|
|
"https://media.giphy.com/media/dsdVyKkSqccEzoPufX/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS Reference";
|
|
href =
|
|
"https://storage.googleapis.com/files.tazj.in/nixdoc/manual.html#sec-functions-library";
|
|
image =
|
|
"https://media.giphy.com/media/LkjlH3rVETgsg/giphy.gif";
|
|
}
|
|
{
|
|
label = "Nix Packages";
|
|
href = "https://nixos.org/nixos/packages.html";
|
|
image =
|
|
"https://media.giphy.com/media/l2YWlohvjPnsvkdEc/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS Options";
|
|
href = "https://nixos.org/nixos/options.html";
|
|
image =
|
|
"https://media.giphy.com/media/3fiw51MvIWcGjMhy9a/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS Language specific helpers";
|
|
href =
|
|
"https://nixos.wiki/wiki/Language-specific_package_helpers";
|
|
image =
|
|
"https://media.giphy.com/media/LkjlH3rVETgsg/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS Weekly";
|
|
href = "https://weekly.nixos.org/";
|
|
image =
|
|
"https://media.giphy.com/media/lXiRLb0xFzmreM8k8/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS Security";
|
|
href = "https://broken.sh/";
|
|
image =
|
|
"https://media.giphy.com/media/BqILAHjH1Ttm0/giphy.gif";
|
|
}
|
|
{
|
|
label = "NixOS RFCs";
|
|
href = "https://github.com/NixOS/rfcs/";
|
|
image =
|
|
"https://media.giphy.com/media/Uq9bGjGKg08M0/giphy.gif";
|
|
}
|
|
];
|
|
}
|
|
{
|
|
text = "Syncthings";
|
|
items = map
|
|
({ name, host ? "${name}.private", ... }: {
|
|
label = name;
|
|
href = "http://${host}:8384/";
|
|
image =
|
|
"https://media.giphy.com/media/JoyU4vuzwj6ZA7Ging/giphy.gif";
|
|
})
|
|
(map (name: { inherit name; }) (lib.attrNames
|
|
config.module.cluster.services.tinc."private".hosts));
|
|
}
|
|
{
|
|
text = "netdata";
|
|
items = map
|
|
({ name, host ? "${name}.private", ... }: {
|
|
label = name;
|
|
href = "http://${host}:19999/";
|
|
image = "https://media.giphy.com/media/BkjdN6MQCDPaw/giphy.gif";
|
|
})
|
|
(map (name: { inherit name; }) [
|
|
"workhorse"
|
|
"porani"
|
|
"pepe"
|
|
"sputnik"
|
|
]
|
|
#(lib.attrNames config.module.cluster.services.tinc."private".hosts)
|
|
);
|
|
}
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|