feat: replace buku with selfhosted linkwarden.

This commit is contained in:
CronyAkatsuki 2026-01-11 14:23:02 +01:00
parent 32e68fb934
commit 60fbe35de3
9 changed files with 84 additions and 4 deletions

View file

@ -14,7 +14,6 @@
age
ffmpeg
imagemagick
buku
unzip
p7zip
aria2

View file

@ -55,8 +55,6 @@
free = "free -mht";
# nnn on crack
nnn = ''LC_COLLATE="C" nnn -xeaiH'';
# Buku powerup
b = "buku -p";
# fzf shenanigans
vif = ''nvim $(fzf --preview="bat --color=always {}")'';
emacs = "emacs --init-dir ~/.config/emacs";

View file

@ -10,5 +10,6 @@
./traefik.nix
./home-assistant.nix
./mosquitto.nix
./linkwarden.nix
];
}

View file

@ -86,6 +86,7 @@
''"wallos.home.cronyakatsuki.xyz IN A 192.168.0.5"''
''"assistant.home.cronyakatsuki.xyz IN A 192.168.0.5"''
''"ddns.home.cronyakatsuki.xyz IN A 192.168.0.5"''
''"linkwarden.home.cronyakatsuki.xyz IN A 192.168.0.5"''
];
};
};

View file

@ -0,0 +1,26 @@
{config, ...}: {
services.linkwarden = {
enable = true;
secretFiles = {
NEXTAUTH_SECRET = config.age.secrets.linkwarden.path;
POSTGRES_PASSWORD = config.age.secrets.linkwarden-db.path;
};
};
services.traefik.dynamicConfigOptions.http = {
services.linkwarden.loadBalancer.servers = [
{
url = "http://localhost:3000";
}
];
routers.linkwarden = {
rule = "Host(`linkwarden.home.cronyakatsuki.xyz`)";
tls = {
certResolver = "porkbun";
};
service = "linkwarden";
entrypoints = "websecure";
};
};
}

View file

@ -1,4 +1,4 @@
{
{config, ...}: {
age = {
secrets = {
wg-tyr = {
@ -33,6 +33,13 @@
group = "nogroup";
symlink = false;
};
linkwarden = {
file = ../../../secrets/linkwarden.age;
owner = config.services.linkwarden.user;
};
linkwarden-db = {
file = ../../../secrets/linkwarden.age;
};
};
};
}

23
secrets/linkwarden-db.age Normal file
View file

@ -0,0 +1,23 @@
age-encryption.org/v1
-> ssh-ed25519 2P4nKw LAG9N+gKMlkEIIIWVOmSqZB2BWMtF/FghReGmPNFxhY
2oKU1gQYIUVAB+P67FOT6BRaLi5jGPLnzOWZ9IU4xl0
-> ssh-ed25519 l/ODWA Jln+2+SxwuW6V74CYfeTwH5svYeNlYnW5Fh2saLUeEM
ckWBbHxnhnbztU6zez/vmTNYyQ80P4/oqfaMHSe3DLY
-> ssh-ed25519 7+5K3Q /PylnaNBPbBDJywedCtS5yfQ9M6i8aw7lHKuRL3NwU8
91EjdCrxTwhY2vLjj3N5Y+jLHHN2mZR2gs5u66iuUSU
-> ssh-ed25519 Ow0TGw ji2cRzza1QfMU4NjxLvs/FoWdOjA5zC2Two95QkBdgg
jms7qW3IRRCZBRx1JOxJai2yendpq7a5tkGKB5Xz3NA
-> ssh-ed25519 cEINMA O8qtM8rt2GtD61npXT4Uo0MTqL7WFkfAFTcNoMuG/mo
iqoqGZC3kQIm04UbB4sC0x1uAMBVL51ZZgpKdt72lkE
-> ssh-ed25519 qbMKrQ bfX7xlujcdA936Z850CEWRAp4kpwkp3TE2/eP1PXLTQ
Z/j7TN7KsZP0tDdXX4+Hn3mZPlYPvJI6ptqLfrdr+Xc
-> ssh-ed25519 Z0mAzw c0P6bG+Ofk7J+b9GPcltXY9/D0irg08JsBTYZytSj0w
goQkgQcF/dgU66yHSbpthUF8Wzxsyhuh/BWd4C5tjQw
-> ssh-ed25519 GNZYRg bCJ4Pi804hgNsS4kP0inQHCH8OO7R/rANIli7o+eNjE
k4jsFHVNQf3/bC5Ng6MQrqfHnF5EISpxPjBL7kVBJ4g
-> ssh-ed25519 fd/ZLQ 9HDKRyNfup005bDSfuNbpmLYA9KhLXQxTCKIg8SNn2Y
s+unIILVjge/bDi8p3uTp2INzFE6Yu0KZRx+A8iqUWQ
-> ssh-ed25519 zQBiZw bZs+bzLZMwTKpeSX1Krw+26LkdZWtgoYSY1idImRPBE
Ln+ScG3Umts5TPbG62SnPXsp38TcUeJIW1euKEpEczQ
--- 9CooKM8lZCPs8gU7MK1tHdKq9eP4VFByOrfu2vBLdlM
ñyÍíº±4S¸÷`ña­tÖ|T=”=©•ô³¬‰Mhͤ¡Ô3&Ið"jKÆq˜Ö§Ô!> “ô—ö¢È¤’ñè ÂæÜÌÊÏïóÜ_©éw¥<77>U}CxÓzíh`yˆÛz~…Úùoó¤Yʼnö–

23
secrets/linkwarden.age Normal file
View file

@ -0,0 +1,23 @@
age-encryption.org/v1
-> ssh-ed25519 2P4nKw pqHv6tVgg4NGbvJBqpIFtwydgvxhXcbjUayauscAjAM
7ndxrnbhRYFLBNkcq20M3sGk2iYTqFcUGITt2ohC3ZE
-> ssh-ed25519 l/ODWA 8CfNI/TYGc1ZEMobpMkPJPhlSPDR01g+ID+LGwFP7Ho
JNi6J2XF4AdTln0qQyazjaY20GafpZTR8WObsFbx32k
-> ssh-ed25519 7+5K3Q cl0qQz/Ka4EfCxFvS4qW/4YRtdl9xOmf+rASUD2DfEA
VbNwkI/7d7q5TG7hu5oTegoYlWM+hBrjjoserfW0cPc
-> ssh-ed25519 Ow0TGw uOqLfWmgN4qOrD8tmTvCwnWwDfG39Ah9GM4L16uqIyg
08vRLkwJDzHbVBzQLsG0UZaFshulsRmWG/3g5cgsKjE
-> ssh-ed25519 cEINMA ha346dMkU6GsPNiaM6MvNQsIjUxNt1oamBPmdp9G2HQ
VN7fuSOHj8Uq475R0CjDLUw7HmWlxJsDqXAZQydCH80
-> ssh-ed25519 qbMKrQ LKuX+RHA/EDHYcJLRIp/R4L5vNceRH0OhwFdslDaQlI
ObAyhd9asKCy1h9c8p+RjXG1OO/HBecBR7j3Jn4IU6s
-> ssh-ed25519 Z0mAzw GIBK8Iu8f3VUVQRejIMvgxMN62Bb6+5WeUE6TOzPIHg
/peHXAP56g3H9S+LcOBSd3RsgfSXxa5KnRICCcW59tY
-> ssh-ed25519 GNZYRg E2bifEpa7bTJ+jKJ1m4hgIS4HuzhIXe2Y8pL3MlJa2M
f3Zjanf4LC4xrCO1cRP5EodxSH0qmmro10XEWerGeW0
-> ssh-ed25519 fd/ZLQ a6y9qazlK3YPjaGFVOK14c188tULG5JwzYH9FipC/Fs
tIjxSBavgTrCMfs8YoclpAz+isvUfiU6Ow4DtONp+hU
-> ssh-ed25519 zQBiZw 1BjropucF9WfJYGaBoywU/HS7kU+wFktRqyp6liSkmM
12PJmiPbtJTZ/FC4dSDIWQfwfJqpAwsbLqF52Fqzl2Q
--- DAw1DPxqX2HWwewc56B7PLoFy15WEzSLoQKRMxHRzhw
D×p[\Õ<>ç\Æjlf?m1Íg¢ŠÏ €×èn3Ñ÷ºÉnî¡R3#Ëm«zJÄ¿<C384>ö}” `æî¬ûŠ­[2ȹ·šR¾µyÃÿ±æ=øÅ“èÃÎÆ­tæÏŒZ6Ƈ

View file

@ -43,4 +43,6 @@ in {
"duckdns.age".publicKeys = systems ++ users;
"glance.age".publicKeys = systems ++ users;
"ddns.age".publicKeys = systems ++ users;
"linkwarden.age".publicKeys = systems ++ users;
"linkwarden-db.age".publicKeys = systems ++ users;
}