From a9863e394e66a1991b2d644f73e73f5ad7f0895a Mon Sep 17 00:00:00 2001 From: Ivan Malison Date: Fri, 10 Jul 2026 10:18:28 -0700 Subject: [PATCH] ci: checkout submodules for taffybar build --- .github/workflows/cachix.yml | 1 + nixos/flake.lock | 6 +++--- nixos/scrobble-scrubber.nix | 25 +++++++++++++++++++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 nixos/scrobble-scrubber.nix 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; + }; + }; +}