diff --git a/config/firefox/bookmarks.nix b/config/firefox/bookmarks.nix index dc9b711..a374657 100644 --- a/config/firefox/bookmarks.nix +++ b/config/firefox/bookmarks.nix @@ -9,6 +9,10 @@ name = "Claude"; url = "https://claude.ai"; } + { + name = "Linkding"; + url = "https://link.yanlincs.com"; + } { name = "Immich"; url = "https://photo.yanlincs.com/photos"; diff --git a/config/firefox/extensions.nix b/config/firefox/extensions.nix index 6347e7f..0a1c3a0 100644 --- a/config/firefox/extensions.nix +++ b/config/firefox/extensions.nix @@ -7,6 +7,7 @@ args: if firefox-addons != null then with firefox-addons.packages.${args.pkgs.stdenv.hostPlatform.system}; [ ublock-origin + linkding-extension vimium cookies-txt darkreader diff --git a/hosts/nixos/hs/containers.nix b/hosts/nixos/hs/containers.nix index 2b2c5fe..a52cdcc 100644 --- a/hosts/nixos/hs/containers.nix +++ b/hosts/nixos/hs/containers.nix @@ -228,12 +228,12 @@ in # qBittorrent torrent client with host networking qbittorrent = { image = "docker.io/linuxserver/qbittorrent:4.6.7"; - + volumes = [ "/var/lib/containers/config/qbittorrent:/config" "/mnt/storage/Media:/data" ]; - + environment = { PUID = commonUID; PGID = commonGID; @@ -241,11 +241,30 @@ in TORRENTING_PORT = "41234"; WEBUI_PORT = "8080"; }; - + extraOptions = [ "--network=host" ]; - + + autoStart = true; + }; + + # Linkding bookmark manager + linkding = { + image = "docker.io/sissbruecker/linkding:latest-plus"; + + volumes = [ + "/var/lib/containers/config/linkding:/etc/linkding/data" + ]; + + ports = [ + "5009:9090" + ]; + + extraOptions = [ + "--network=podman" + ]; + autoStart = true; }; diff --git a/hosts/nixos/vps/proxy.nix b/hosts/nixos/vps/proxy.nix index bc809e5..e9b044d 100644 --- a/hosts/nixos/vps/proxy.nix +++ b/hosts/nixos/vps/proxy.nix @@ -90,6 +90,18 @@ }; }; + # Linkding bookmark manager + link = { + rule = "Host(`link.yanlincs.com`)"; + service = "link"; + tls = { + certResolver = "cloudflare"; + domains = [{ + main = "*.yanlincs.com"; + }]; + }; + }; + }; services = { @@ -157,6 +169,15 @@ }; }; + # Linkding backend (via WireGuard) + link = { + loadBalancer = { + servers = [{ + url = "http://10.2.2.20:5009"; + }]; + }; + }; + }; };