aboutsummaryrefslogtreecommitdiffstats
path: root/openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md
diff options
context:
space:
mode:
authorGravatar Tom van der Lee <t0m.vd.l33@gmail.com>2026-09-21 14:11:48 +0000
committerGravatar Tom van der Lee <t0m.vd.l33@gmail.com>2026-09-21 14:11:48 +0000
commit2b0f41d97e5dbf115d04f148906d3b7e95ad1181 (patch)
treefb9a6a9f71a6f641be1ced08f9e59bd7861dd06c /openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md
parentc3f882fae8f4c1ae84deafc310357846e8b66ad1 (diff)
downloaddesktop-flake-2b0f41d97e5dbf115d04f148906d3b7e95ad1181.tar.gz
desktop-flake-2b0f41d97e5dbf115d04f148906d3b7e95ad1181.tar.bz2
desktop-flake-2b0f41d97e5dbf115d04f148906d3b7e95ad1181.zip
Archive add-claude-code-slack-spotify-discord-teams, sync desktop-applications spec
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md')
-rw-r--r--openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md20
1 files changed, 0 insertions, 20 deletions
diff --git a/openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md b/openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md
deleted file mode 100644
index 82aa94f..0000000
--- a/openspec/changes/add-claude-code-slack-spotify-discord-teams/tasks.md
+++ /dev/null
@@ -1,20 +0,0 @@
1## 1. Unfree package gating
2
3- [ ] 1.1 Create `lib/unfree-allowlist.nix` containing `[ "slack" "discord" "spotify" "claude-code" ]` and verify it evaluates with `nix eval --file lib/unfree-allowlist.nix` (or `nix-instantiate --eval`)
4- [ ] 1.2 Update `lib/mkHome.nix` to construct `pkgs` via `import inputs.nixpkgs { inherit system; config.allowUnfreePredicate = pkg: builtins.elem (inputs.nixpkgs.lib.getName pkg) (import ./unfree-allowlist.nix); }` instead of `inputs.nixpkgs.legacyPackages.${system}`, and verify `nix flake show` still lists both `homeConfigurations` without error
5- [ ] 1.3 Update `lib/mkNixos.nix` to prepend a module setting the same `nixpkgs.config.allowUnfreePredicate` (reusing `lib/unfree-allowlist.nix`), and verify `nix flake check` (or `nix eval .#nixosConfigurations` for any configured host) still evaluates without an "unfree package" error
6
7## 2. Desktop applications module
8
9- [ ] 2.1 Create `modules/home/desktop-apps.nix` with `home.packages = builtins.filter (lib.meta.availableOn pkgs.stdenv.hostPlatform) ([ pkgs.slack pkgs.discord pkgs.spotify ] ++ lib.optional pkgs.stdenv.hostPlatform.isLinux pkgs.teams-for-linux);` and verify the file evaluates standalone via `nix-instantiate --eval --strict -E 'import ./modules/home/desktop-apps.nix { pkgs = import <nixpkgs> {}; lib = (import <nixpkgs> {}).lib; }'` or equivalent
10- [ ] 2.2 Add `./desktop-apps.nix` to the `imports` list in `modules/home/default.nix` and verify `home-manager build --flake .#tom@linux` and `home-manager build --flake .#tom@darwin` both evaluate successfully (run on a machine with Nix installed - not available in this environment)
11- [ ] 2.3 Verify on the build output (or via `nix eval`) that `tom@darwin`'s closure excludes `teams-for-linux` while `tom@linux`'s includes it, confirming the Linux-only guard works as intended
12
13## 3. Claude Code CLI
14
15- [ ] 3.1 Add `pkgs.claude-code` to `modules/home/dev-tools.nix`'s `home.packages`, guarded with `lib.optional (lib.meta.availableOn pkgs.stdenv.hostPlatform pkgs.claude-code) pkgs.claude-code`, and verify `claude-code` appears on `PATH` after `home-manager build --flake .#tom@linux` (or `.#tom@darwin`) followed by activation on a machine with Nix installed
16
17## 4. End-to-end verification
18
19- [ ] 4.1 Run `nix flake check` on a machine with Nix installed and confirm no evaluation errors for either `homeConfigurations` entry
20- [ ] 4.2 Run `statix check` and `deadnix` (already used by this repo's `devShells.default`) over the changed files and fix any findings