lightsail-tokyo: add miniflux

This commit is contained in:
Guanran Wang 2024-07-11 23:03:11 +08:00
parent 239dd56bf7
commit 9f419e691b
Signed by: nyancat
GPG key ID: 91F97D9ED12639CF
3 changed files with 73 additions and 77 deletions

View file

@ -107,3 +107,8 @@ git.ny4.dev {
import default
reverse_proxy unix//run/forgejo/forgejo.sock
}
rss.ny4.dev {
import default
reverse_proxy localhost:9300
}

View file

@ -37,6 +37,9 @@
"searx/environment" = {
restartUnits = ["searx.service"];
};
"miniflux/credentials" = {
restartUnits = ["miniflux.service"];
};
};
};
@ -195,80 +198,58 @@
services = let
getDesc = pkg: pkg.meta.description;
in [
{
"Services" = [
{
"SearXNG" = {
description = getDesc pkgs.searxng;
href = "https://searx.ny4.dev";
};
}
{
"Wastebin" = {
description = getDesc pkgs.wastebin;
href = "https://pb.ny4.dev";
};
}
{
"Ntfy" = {
description = getDesc pkgs.ntfy;
href = "https://ntfy.ny4.dev/";
};
}
{
"Mumble" = {
description = "${getDesc pkgs.mumble} (Connect with tyo0.ny4.dev:64738)";
};
}
];
}
{
"Private stuff" = [
{
"Mastodon" = rec {
description = getDesc pkgs.mastodon;
href = "https://mastodon.ny4.dev/";
widget.type = "mastodon";
widget.url = href;
};
}
{
"Matrix" = {
description = getDesc pkgs.element-web;
href = "https://element.ny4.dev/";
};
}
{
"PixivFE" = {
description = "A privacy respecting frontend for Pixiv.";
href = "https://pixiv.ny4.dev";
};
}
{
"Uptime Kuma" = {
description = getDesc pkgs.uptime-kuma;
href = "https://uptime.ny4.dev/";
};
}
{
"Forgejo" = {
description = getDesc pkgs.forgejo;
href = "https://git.ny4.dev/";
};
}
];
}
{
"Links" = [
{"Blog".href = "https://blog.ny4.dev/";}
{"GitHub".href = "https://github.com/Guanran928";}
{"Mastodon".herf = "https://mastodon.ny4.dev/@nyancat";}
{"Matrix".href = "https://matrix.to/#/@root:ny4.dev";}
{"Forgejo".href = "https://git.ny4.dev/nyancat";}
];
}
];
mapAttrsToList' = lib.mapAttrsToList (name: value: {"${name}" = value;}); # also sorts the thing alphabetically
in
mapAttrsToList' {
"Services" = mapAttrsToList' {
"SearXNG" = {
description = getDesc pkgs.searxng;
href = "https://searx.ny4.dev/";
};
"Wastebin" = {
description = getDesc pkgs.wastebin;
href = "https://pb.ny4.dev/";
};
"Ntfy" = {
description = getDesc pkgs.ntfy;
href = "https://ntfy.ny4.dev/";
};
"Mumble" = {
description = "${getDesc pkgs.mumble} (Connect with tyo0.ny4.dev:64738)";
};
};
"Private stuff" = mapAttrsToList' {
"Mastodon" = rec {
description = getDesc pkgs.mastodon;
href = "https://mastodon.ny4.dev/";
widget.type = "mastodon";
widget.url = href;
};
"Matrix" = {
description = getDesc pkgs.element-web;
href = "https://element.ny4.dev/";
};
"PixivFE" = {
description = "Privacy respecting frontend for Pixiv";
href = "https://pixiv.ny4.dev";
};
"Uptime Kuma" = {
description = getDesc pkgs.uptime-kuma;
href = "https://uptime.ny4.dev/";
};
"Forgejo" = {
description = getDesc pkgs.forgejo;
href = "https://git.ny4.dev/";
};
};
"Links" = mapAttrsToList' {
"Blog".href = "https://blog.ny4.dev/";
"Forgejo".href = "https://git.ny4.dev/nyancat";
"GitHub".href = "https://github.com/Guanran928";
"Mastodon".herf = "https://mastodon.ny4.dev/@nyancat";
"Matrix".href = "https://matrix.to/#/@nyancat:ny4.dev";
};
};
};
services.forgejo = {
@ -276,7 +257,6 @@
database.type = "postgres";
settings = {
server = {
# TODO: whats the difference between this and fcgi+unix
DOMAIN = "git.ny4.dev";
PROTOCOL = "http+unix";
ROOT_URL = "https://git.ny4.dev/";
@ -288,6 +268,15 @@
};
};
services.miniflux = {
enable = true;
adminCredentialsFile = config.sops.secrets."miniflux/credentials".path;
config = {
LISTEN_ADDR = "127.0.0.1:9300";
BASE_URL = "https://rss.ny4.dev";
};
};
### Prevents me from bankrupt
# https://fmk.im/p/shutdown-aws/
services.vnstat.enable = true;

View file

@ -4,6 +4,8 @@ searx:
environment: ENC[AES256_GCM,data:Chtb7yhooCMU+Hfnqdgwpd1w5gI2LZm4cz8d3YRgznjveO/4HOZ54XMdQVDoiC6ukojHfEUxl+3qIG1wi/s29rhxJekHLtWgJ++OUQKW,iv:viGQRoWbaSlRoovBV01Vl/d17eRVeM8CQUHYRWrflNQ=,tag:2QMYVCXON129pRpW3oOQXg==,type:str]
pixivfe:
environment: ENC[AES256_GCM,data:/Q/rShBXlXkWOOP+7OhKtKTSrp2zNizMaAOyKfWbKgJMHTjNfmMtRuGKRez9KXM5MDIMIF9iJSQ=,iv:whIAkaWiZcZT4HfmJw4qA+fbQ9zHFp+kTuHxQDE3XoU=,tag:FroLTMtNwGlvZw3osftj3A==,type:str]
miniflux:
credentials: ENC[AES256_GCM,data:vYd964LCV4NCZxbuIhdXznsl7n6jMPIFjWvo0tTTm4V3la93MN4DYLUPy4U=,iv:gqBCf7uqigTxdLs8oSd/KkNb56luUDrtrAOxxUuJgUE=,tag:LzniGyWeZxHrpQAaEOQP8A==,type:str]
sops:
kms: []
gcp_kms: []
@ -28,8 +30,8 @@ sops:
R1ZMMG1jWnljNWl5Nk5MU3RCMlFPYjgKL1ScxzF0D1R18H+oe6dlxUGlL9myHEr3
3HBPoapKCSQ/cT7Xma4bsWD1AVJIf1Ak+MeCs9ItGwKAcnd9JYZ9KA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-07-09T11:50:11Z"
mac: ENC[AES256_GCM,data:kzxia2Bygi0YR24/dJfKZR3jF99IhIGGIZFJnIo5kp7/PZfQE2EbgD5yTFrSX9+Ur5u8a169UVEtveJ+uR59bX3DsjZDPRSWRMmWJodLcZifx+oSSGmhYufC61D3pVa+Jv2mwKf8UTKdb2oQtk/8bNrMuonedX8hPz+wZJQyMD0=,iv:VxBeb5QTaF5snKNtc51XFtwAdydnOyX8CGhxBjyBTQ0=,tag:vQEJJubHv3dRazmr1bAcnQ==,type:str]
lastmodified: "2024-07-10T17:25:33Z"
mac: ENC[AES256_GCM,data:R8V7uckbpDjzukq7W0Tjj3yYCTynU4Ih0C8HiKIf1RQjS0XscJ/3dU5fhalJuODdBNi3aAar0qiX4MJsNexanQxltjJGj01pcHNrM1KUnOPoxmYR8oK64fecQDp8sWahXWfqFFurCsVg1ZHTJM1tMNgbjGDIcTSxZcto/1N3Zwc=,iv:eQge+cAxipyd7kFY7elVATHsymg/JFh9CCYItkkPn0I=,tag:LBR9nNW6RqekGqnLxfyB9w==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.9.0