From f3f4bb391b43b9df5b1da01b5a27cdec1da225a4 Mon Sep 17 00:00:00 2001 From: Victor Date: Tue, 26 Dec 2023 20:41:25 +0100 Subject: [PATCH] add watchstate syncer --- flake.lock | 42 ++++++++++---------- nixos/common/default.nix | 2 + nixos/common/desktop/home.nix | 3 +- nixos/hosts/hades/jellyfin/configuration.nix | 20 ++++++++++ nixos/util.nix | 2 +- 5 files changed, 46 insertions(+), 23 deletions(-) diff --git a/flake.lock b/flake.lock index 6460165a..f457bd12 100644 --- a/flake.lock +++ b/flake.lock @@ -710,11 +710,11 @@ ] }, "locked": { - "lastModified": 1703265279, - "narHash": "sha256-5jVtOwyMH1FzclxHrsFWzBdB+VyjUUSu1wyZhZlR6WU=", + "lastModified": 1703413401, + "narHash": "sha256-pc3SzlsRDe5KW3SqOntNH17Z+/czlln0j2Je2jjeBSg=", "owner": "nix-community", "repo": "home-manager", - "rev": "07c322a7cff03267fd881adae1afe63367c5d608", + "rev": "16fcb9674a71220313f91446e0c259bce5c20f0f", "type": "github" }, "original": { @@ -811,11 +811,11 @@ "nixpkgs": "nixpkgs_5" }, "locked": { - "lastModified": 1703300511, - "narHash": "sha256-lU0sFmNcLTZBDJyeckW5oXtypA62XFZUGFMyGne9EYA=", + "lastModified": 1703330826, + "narHash": "sha256-GGGWtDA0GZArmALQsJX0w0p/mCXPeFGlbNjVJWMS+W0=", "owner": "astro", "repo": "microvm.nix", - "rev": "fa93cd958b42da4657a47f034af9641349d1c7cb", + "rev": "5a76dfa5fec6c3db8954b90d60a66bbec4684d6a", "type": "github" }, "original": { @@ -1194,11 +1194,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1703213509, - "narHash": "sha256-BDVzvjPwKk4/yvdCNzjmm1wlDf7Pdbhsf+hV2ybKkrY=", + "lastModified": 1703395344, + "narHash": "sha256-cAgNsKUbbOjm3s8NJwRa0YEgyLbTVQ5Y+z4SCUIRs4k=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "bc3575c6cda0c5fc9e322c05d97df6a787066b3e", + "rev": "cb574470bb7e360016c254867f7734a95812b47f", "type": "github" }, "original": { @@ -1209,11 +1209,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1702830618, - "narHash": "sha256-lvhwIvRwhOLgzbRuYkqHy4M5cQHYs4ktL6/hyuBS6II=", + "lastModified": 1703013332, + "narHash": "sha256-+tFNwMvlXLbJZXiMHqYq77z/RfmpfpiI3yjL6o/Zo9M=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "91a00709aebb3602f172a0bf47ba1ef013e34835", + "rev": "54aac082a4d9bb5bbc5c4e899603abfb76a3f6d6", "type": "github" }, "original": { @@ -1257,11 +1257,11 @@ }, "nixpkgs_stable": { "locked": { - "lastModified": 1703034876, - "narHash": "sha256-4bMPFv/bs5g1nEsXQwXlrAGJgjv1Ilr0ejdaTkBwQLs=", + "lastModified": 1703351344, + "narHash": "sha256-9FEelzftkE9UaJ5nqxidaJJPEhe9TPhbypLHmc2Mysc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "312ab59e8ade69e6083017bd9b98a2919f1fb86a", + "rev": "7790e078f8979a9fcd543f9a47427eeaba38f268", "type": "github" }, "original": { @@ -1277,11 +1277,11 @@ "pre-commit-hooks": "pre-commit-hooks" }, "locked": { - "lastModified": 1703260550, - "narHash": "sha256-wPe+0oCgzvf9Ixscme+NUS4iRX0n/alJvt3msnu9vPA=", + "lastModified": 1703435563, + "narHash": "sha256-BDnoVc9Kvc9wo9lt8GC0kkqwLedP7lnBBdh1UHl4cPw=", "owner": "pta2002", "repo": "nixvim", - "rev": "e0521dde87825e4ed16e1ac5b6df9f1b7e60af05", + "rev": "c11158c73e9a488d803356127a54af8101fc0051", "type": "github" }, "original": { @@ -1292,11 +1292,11 @@ }, "nur": { "locked": { - "lastModified": 1703324764, - "narHash": "sha256-c5ll8NFOSg+vMvJVDBds/iXNp25VhkSUcmB7jaeV5FM=", + "lastModified": 1703509179, + "narHash": "sha256-mXKRf1iQ4R1LnXdFjR+EC0jZ8hZs9t39mrsmd6Mhnw4=", "owner": "nix-community", "repo": "NUR", - "rev": "8c88bc919c49528c4cc9a65501406cecb74361b7", + "rev": "d436288c594494f2e5dfcc5f822ca88151b3b178", "type": "github" }, "original": { diff --git a/nixos/common/default.nix b/nixos/common/default.nix index e00f4e79..731270c6 100644 --- a/nixos/common/default.nix +++ b/nixos/common/default.nix @@ -20,6 +20,8 @@ sharedModules = [ ./hm-modules inputs.nixvim.homeManagerModules.nixvim ]; }; + virtualisation.oci-containers.backend = lib.mkDefault "podman"; + # Clean /tmp on boot. boot.tmp.cleanOnBoot = true; diff --git a/nixos/common/desktop/home.nix b/nixos/common/desktop/home.nix index 033f235b..7032f2d1 100644 --- a/nixos/common/desktop/home.nix +++ b/nixos/common/desktop/home.nix @@ -12,9 +12,10 @@ in { calibre celluloid cinny-desktop - element-desktop-wayland + element-desktop fusee-launcher fractal-next + foliate gcc gimp helix diff --git a/nixos/hosts/hades/jellyfin/configuration.nix b/nixos/hosts/hades/jellyfin/configuration.nix index 0269363e..be93e566 100644 --- a/nixos/hosts/hades/jellyfin/configuration.nix +++ b/nixos/hosts/hades/jellyfin/configuration.nix @@ -23,6 +23,26 @@ openFirewall = true; }; + users.groups.watchstate = { }; + users.users.watchstate = { + isSystemUser = true; + group = "watchstate"; + }; + + systemd.tmpfiles.rules = + [ "d '/var/lib/watchstate' 0755 watchstate watchstate -" ]; + + + # Managed imperatively through its CLI + virtualisation.oci-containers.containers.watchstate = { + image = "ghcr.io/arabcoders/watchstate:latest"; + extraOptions = [ "--pull=newer" ]; + user = "0:0"; + environment = { WS_TZ = "Europe/Amsterdam"; }; + ports = [ "8080:8080" ]; + volumes = [ "/var/lib/watchstate:/config:rw" ]; + }; + fileSystems."/mnt/storage" = { device = "storage:/mnt/storage"; fsType = "nfs"; diff --git a/nixos/util.nix b/nixos/util.nix index 05de7175..79fe2a0f 100644 --- a/nixos/util.nix +++ b/nixos/util.nix @@ -1,4 +1,4 @@ -{ nixpkgs, home-manager, mailserver, lanzaboote, attic, microvm, ... }: +{ nixpkgs, home-manager, mailserver, lanzaboote, attic, ... }: let inherit (builtins) filter attrValues concatMap mapAttrs; inherit (nixpkgs.lib.attrsets) mapAttrsToList;