diff --git a/.github/workflows/cachix.yml b/.github/workflows/cachix.yml index de36402d..a81a38d7 100644 --- a/.github/workflows/cachix.yml +++ b/.github/workflows/cachix.yml @@ -42,6 +42,7 @@ jobs: uses: actions/checkout@v4 with: fetch-depth: 0 + submodules: recursive - name: Free disk space run: | diff --git a/nixos/flake.lock b/nixos/flake.lock index 8aa04b2f..368437e1 100644 --- a/nixos/flake.lock +++ b/nixos/flake.lock @@ -114,11 +114,11 @@ ] }, "locked": { - "lastModified": 1783642944, - "narHash": "sha256-YuaeZs+6565YrJU0xDJ+mZIVn5zmqF9Rth6pMcbnh2E=", + "lastModified": 1783545757, + "narHash": "sha256-ujyh71rjKf0frYqn4HDZ7baSp5+BNhYpux5Q/8nITRM=", "owner": "sadjow", "repo": "claude-code-nix", - "rev": "d120e1bfc6c5e24995178ac8485e98938f2d68d4", + "rev": "1a4322b6de8b5f99968cb342ac4a1b25d0712698", "type": "github" }, "original": { diff --git a/nixos/scrobble-scrubber.nix b/nixos/scrobble-scrubber.nix new file mode 100644 index 00000000..3311ceca --- /dev/null +++ b/nixos/scrobble-scrubber.nix @@ -0,0 +1,25 @@ +# scrobble-scrubber.nix - last.fm scrobble metadata cleanup daemon. +# +# Runs as a home-manager user service on a single always-on host (ryzen-shine). +# Running it on multiple hosts would mean several daemons editing the same +# last.fm account concurrently, so keep the `enable` gate to one machine. +# +# One-time bootstrap on the target host: the daemon loads a *persisted session*, +# not a password. Log in once with the `lastfm-edit` CLI (handles MFA) to write +# ~/.local/share/lastfm-edit/users//session.json before it can run. +{ + inputs, + config, + lib, + ... +}: { + home-manager.users.imalison = {...}: { + imports = [inputs.lastfm-edit.homeManagerModules.scrobble-scrubber]; + + services.scrobble-scrubber = lib.mkIf (config.networking.hostName == "ryzen-shine") { + enable = true; + username = "IvanMalison"; + interval = 300; + }; + }; +}