nixos-config/nixos/system/all/nginx-landingpage.nix

148 lines
5.1 KiB
Nix
Raw Normal View History

2019-12-20 05:54:26 +01:00
{ config, lib, pkgs, ... }: {
2019-10-24 02:20:38 +02:00
services.nginx.virtualHosts."${config.networking.hostName}.private" = {
default = true;
locations."/" = {
2019-12-20 05:54:26 +01:00
root = pkgs.landingpage.override {
2022-11-24 13:48:18 +01:00
jsonConfig = [
2022-11-27 23:43:07 +01:00
{ title = "System Links"; }
2022-11-24 13:48:18 +01:00
{
text = "Syncthings";
items = map
({ name, host ? "${name}.private", ... }: {
label = name;
href = "http://${host}:8384/";
image = "https://media.giphy.com/media/JoyU4vuzwj6ZA7Ging/giphy.gif";
})
2023-01-26 21:29:47 +01:00
(lib.flatten (lib.mapAttrsToList (name: { ... }: { inherit name; })
config.services.tinc.networks."private".hostSettings));
2022-11-24 13:48:18 +01:00
}
{
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; }) [
"robi"
"pepe"
]);
}
2023-01-15 10:43:10 +01:00
{
2023-01-16 19:37:48 +01:00
text = "Home";
2023-01-15 10:43:10 +01:00
items = [
{
label = "HomeAssistant";
href = "http://pepe.private:8123/";
image = "https://media.giphy.com/media/fyLi0OuWysotq/giphy.gif";
}
{
label = "Zigbee2Mqtt";
href = "http://pepe.private:9666/";
image = "https://media.giphy.com/media/fyLi0OuWysotq/giphy.gif";
}
2023-01-16 19:37:48 +01:00
{
label = "Jellyfin";
href = "http://pepe:8096/";
image = "https://media.giphy.com/media/fyLi0OuWysotq/giphy.gif";
}
2023-01-15 10:43:10 +01:00
];
}
2022-11-24 13:48:18 +01:00
{
2022-11-27 23:43:07 +01:00
title = "Various Links";
2022-11-24 13:48:18 +01:00
items = [
{
label = "NeverSSL";
href = "https://oldslowfreshlight.neverssl.com/";
image = "https://media.giphy.com/media/fyLi0OuWysotq/giphy.gif";
}
{
label = "Hetzner Cloud";
href = "https://console.hetzner.cloud/projects";
image =
"https://media.giphy.com/media/NECZ8crkbXR0k/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 = "Cups";
href = "http://localhost:631/";
image =
"https://media.giphy.com/media/7hU7x4GPurk2c/giphy.gif";
}
];
}
{
2022-11-27 23:43:07 +01:00
text = "NixOS Links";
2022-11-24 13:48:18 +01:00
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 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";
}
];
}
2022-11-27 23:43:07 +01:00
{ urlEncode = true; }
2022-11-24 13:48:18 +01:00
];
2019-12-20 05:54:26 +01:00
};
2019-10-24 02:20:38 +02:00
};
};
}