diff --git a/agenix/hosts/tanker/config.nix b/agenix/hosts/tanker/config.nix index ca8bd21..5b5ba7b 100644 --- a/agenix/hosts/tanker/config.nix +++ b/agenix/hosts/tanker/config.nix @@ -32,6 +32,10 @@ path = "/var/lib/fedifetcher/config.json"; }; + linkding-environment = { + file = ./linkding/environment.age; + }; + mastodon-database-password = { file = ./mastodon/databasePassword.age; owner = "mastodon"; diff --git a/agenix/hosts/tanker/linkding/environment.age b/agenix/hosts/tanker/linkding/environment.age new file mode 100644 index 0000000..4d2620a Binary files /dev/null and b/agenix/hosts/tanker/linkding/environment.age differ diff --git a/flake.lock b/flake.lock index 213930b..366c10e 100644 --- a/flake.lock +++ b/flake.lock @@ -110,11 +110,11 @@ ] }, "locked": { - "lastModified": 1687517837, - "narHash": "sha256-Ea+JTy6NSf+wWIFrgC8gnOnyt01xwmtDEn2KecvaBkg=", + "lastModified": 1687683133, + "narHash": "sha256-fEjLznHh9vXMphTKupjHX6AaCQYnpkG6f28+bSUNM10=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "6460468e7a3e1290f132fee4170ebeaa127f6f32", + "rev": "53c6748f98fd1e91f1e10f8878f1513743990101", "type": "github" }, "original": { @@ -276,11 +276,11 @@ ] }, "locked": { - "lastModified": 1687627695, - "narHash": "sha256-6Pu7nWb52PRtUmihwuDNShDmsZiXgtXR0OARtH4DSik=", + "lastModified": 1687647343, + "narHash": "sha256-1/o/i9KEFOBdlF9Cs04kBcqDFbYMt6W4SMqGa+QnnaI=", "owner": "nix-community", "repo": "home-manager", - "rev": "172d46d4b2677b32277d903bdf4cff77c2cc6477", + "rev": "0ee5ab611dc1fbb5180bd7d88d2aeb7841a4d179", "type": "github" }, "original": { @@ -299,11 +299,11 @@ }, "locked": { "dir": "contrib", - "lastModified": 1687563195, - "narHash": "sha256-eLdq2jS/CGCUe68V3K7YenGdxhP8Lf2zC9mMj8rDnB8=", + "lastModified": 1687651961, + "narHash": "sha256-xop+7nyPZXbnXPCAW6iQSRB0ILgyBydKMqnhr4ZgVIY=", "owner": "neovim", "repo": "neovim", - "rev": "fa0a25dcb3a4fd2d6f03e09bcc7edac2f9ea8ded", + "rev": "e59cf3b3a9ee0f9e9b4d2e01059dbdf185eb5685", "type": "github" }, "original": { @@ -324,11 +324,11 @@ "weewx-proxy-flake": "weewx-proxy-flake" }, "locked": { - "lastModified": 1687594890, - "narHash": "sha256-Vf4nJWN7Vd+FOgVMhPdfACwtv8Oa+RB2WAV5tqFfBpo=", + "lastModified": 1687681278, + "narHash": "sha256-VCOM3oAW9W0Awnu5dVEgklQGpCt3P9JocQtXBCgQNJg=", "owner": "nifoc", "repo": "nix-overlay", - "rev": "9ff43e8db8a409e01ee8ce9c6d764399eddb5ea1", + "rev": "0da1ca819bf1e1a936b01a3109048b71b7836e2a", "type": "github" }, "original": { diff --git a/home/programs/nvim/plugins.nix b/home/programs/nvim/plugins.nix index 8491c2b..e782885 100644 --- a/home/programs/nvim/plugins.nix +++ b/home/programs/nvim/plugins.nix @@ -30,12 +30,12 @@ in }; nvim-web-devicons = buildVimPluginFrom2Nix { pname = "nvim-web-devicons"; - version = "2023-06-18"; + version = "2023-06-25"; src = fetchFromGitHub { owner = "kyazdani42"; repo = "nvim-web-devicons"; - rev = "14b3a5ba63b82b60cde98d0a40319d80f25e8301"; - sha256 = "0hn54zz5a3zhg796jfryg1vsikv96vpvcgg71mz95wshnqjlr3jr"; + rev = "9ab9b0b894b2388a9dbcdee5f00ce72e25d85bf9"; + sha256 = "1i40jzpx710amxm7hgy0ac8pda6bsmkm4r110z691c1l0i90ppwl"; fetchSubmodules = false; }; }; @@ -107,23 +107,23 @@ in }; nvim-treesitter = buildVimPluginFrom2Nix { pname = "nvim-treesitter"; - version = "2023-06-24"; + version = "2023-06-25"; src = fetchFromGitHub { owner = "nvim-treesitter"; repo = "nvim-treesitter"; - rev = "68c619f2e3bbace5d2e885dbe44289dc68d776e5"; - sha256 = "118pqng7bc61f37w82c1qiq5ird4l5sk8g7bgyycclay1h14xgsi"; + rev = "069cbad8d2938f18a423b4640d3ebfb65dda710d"; + sha256 = "1br5dgsyvhwjny7w2licjyzwcjxinw7dc7zj7ykw1b6s6ab626jf"; fetchSubmodules = false; }; }; nvim-ts-rainbow2 = buildVimPluginFrom2Nix { pname = "nvim-ts-rainbow2"; - version = "2023-06-21"; + version = "2023-06-25"; src = fetchFromGitHub { owner = "HiPhish"; repo = "nvim-ts-rainbow2"; - rev = "3edad7f978513499651d8b068880948f42c16d79"; - sha256 = "0dlsrzfs3kqkcls5y5zp8sfigazhy821yqbkhz5qln6mzvv7sr43"; + rev = "1c7980dadb9d702d063c968cc240e282bb574995"; + sha256 = "0qdy97s7sgf2clmz6x5l5kldwyidk4ha1kqy7wgkypi9c5aa7mj4"; fetchSubmodules = false; }; }; @@ -140,12 +140,12 @@ in }; telescope-nvim = buildVimPluginFrom2Nix { pname = "telescope.nvim"; - version = "2023-06-21"; + version = "2023-06-25"; src = fetchFromGitHub { owner = "nvim-telescope"; repo = "telescope.nvim"; - rev = "ffe35cb433192fcb5080b557c1aef14d37092035"; - sha256 = "1kac34kiwnnz3r80pyfx87r730jryqflh3f12hr8z8crzpz262yk"; + rev = "219584a6efd32d0478dcd62b501c348bc44d9d43"; + sha256 = "0g0bidfvp93p0rs0lbzybik528rzigjx3mysnvxys5xkfqi6lxj5"; fetchSubmodules = false; }; }; @@ -297,12 +297,12 @@ in }; LuaSnip = buildVimPluginFrom2Nix { pname = "LuaSnip"; - version = "2023-06-19"; + version = "2023-06-24"; src = fetchFromGitHub { owner = "L3MON4D3"; repo = "LuaSnip"; - rev = "3d2ad0c0fa25e4e272ade48a62a185ebd0fe26c1"; - sha256 = "01ih6rp99qvip3zpyd663c6fi69r4xfqj2x1k6x679h6gicharl0"; + rev = "c7984d1cca3d8615e4daefc196597872a0b8d590"; + sha256 = "0f612s9wg7kxvca346q87llz2bwncdgwh000sz9w7849hn86qhvx"; fetchSubmodules = false; }; }; @@ -572,12 +572,12 @@ in }; noice-nvim = buildVimPluginFrom2Nix { pname = "noice.nvim"; - version = "2023-06-22"; + version = "2023-06-25"; src = fetchFromGitHub { owner = "folke"; repo = "noice.nvim"; - rev = "7d01b45174d0d642302518275ab7cedf73e2690b"; - sha256 = "1712kai7n0cgz1gq9lxka2x83zh647y1gsvp58mh6hbv8cbv9g14"; + rev = "0d672bd66dc0f77715a20cd149a3afe2ca1fed6d"; + sha256 = "1yv1pqh0559hl9kl9vfkd7vwljnlnzk6xhwfl0vc3zhij4b62bjj"; fetchSubmodules = false; }; }; diff --git a/secrets.nix b/secrets.nix index 4132aab..50e514c 100644 --- a/secrets.nix +++ b/secrets.nix @@ -47,6 +47,8 @@ in "agenix/hosts/tanker/invidious/databasePassword.age".publicKeys = tanker; "agenix/hosts/tanker/invidious/extraSettings.age".publicKeys = tanker; + "agenix/hosts/tanker/linkding/environment.age".publicKeys = tanker; + "agenix/hosts/tanker/proxitok/environment.age".publicKeys = tanker; "agenix/hosts/tanker/synapse/extraConfig.age".publicKeys = tanker; diff --git a/system/hosts/tanker.nix b/system/hosts/tanker.nix index 48b865d..27e7a9c 100644 --- a/system/hosts/tanker.nix +++ b/system/hosts/tanker.nix @@ -37,6 +37,8 @@ in (import ../nixos/libreddit.nix (args // { inherit secret; })) + ../nixos/linkding.nix + ../nixos/mastodon.nix ../nixos/miniflux.nix diff --git a/system/nixos/linkding.nix b/system/nixos/linkding.nix new file mode 100644 index 0000000..1a93efe --- /dev/null +++ b/system/nixos/linkding.nix @@ -0,0 +1,40 @@ +{ config, ... }: + +let + data-dir = "/var/lib/linkding"; +in +{ + virtualisation.oci-containers.containers.linkding = { + image = "docker.io/sissbruecker/linkding:latest"; + ports = [ "127.0.0.1:8011:9090" ]; + environmentFiles = [ config.age.secrets.linkding-environment.path ]; + volumes = [ + "${data-dir}:/etc/linkding/data" + ]; + extraOptions = [ + "--label=com.centurylinklabs.watchtower.enable=true" + "--label=io.containers.autoupdate=registry" + ]; + }; + + systemd.services.podman-linkding.restartTriggers = [ + "${config.age.secrets.linkding-environment.file}" + ]; + + systemd.tmpfiles.rules = [ + "d ${data-dir} 0755 root root" + ]; + + services.nginx.virtualHosts."links.kempkens.io" = { + quic = true; + http3 = true; + + onlySSL = true; + useACMEHost = "kempkens.io"; + + locations."/" = { + recommendedProxySettings = true; + proxyPass = "http://127.0.0.1:8011"; + }; + }; +}