Commit graph

1254 commits

Author SHA1 Message Date
Caleb Norton
a7d2aca3f0 opencode: use serve command for web interface 2026-03-31 10:05:09 -05:00
teto
6569d9e171 neovim: attempt at reusing nixpkgs upstream config 2026-03-28 18:41:26 +01:00
oneorseveralcats
2e3550192e aria2: remove extraConfig 2026-03-27 16:42:50 -05:00
oneorseveralcats
13587c3ace aria2p: add module 2026-03-27 16:42:50 -05:00
Miles Wirht
9df3a63900
macchina: add module (#8855) 2026-03-27 10:42:17 -05:00
oneorseveralcats
accd450fcd waybar: allow multiple systemd targets 2026-03-27 09:41:16 -05:00
Pat L.
7126ec6a55
claude-code: Add support for installing plugins (#8934)
Allow for configuring marketplaces or individual plugins.

Both are provided as a list of either paths or packages.

The lone plugins are enabled by adding a --plugin-dir argument to the wrapper script.

Marketplaces are saved to the nix store and enabled by adding to the claude settings and known_marketplaces files.

With the marketplace "installed", the plugin can just be enabled via the enabledPlugins setting.
2026-03-26 22:59:48 -05:00
Diego Saint Esteben
0143d6ca9b grype: add module
Grype is a vulnerability scanner for container images and filesystems.
2026-03-26 22:51:09 -05:00
Miles Wirht
7c046c63ac
Ttyper: add module (#8864) 2026-03-26 16:47:14 -05:00
Ryan Horiguchi
051da45e96 vscode: add null package support 2026-03-26 16:41:41 -05:00
oneorseveralcats
40955dc50a atool: add module
atool is a commandline archive manager that uses packages like gnutar,
p7zip, unrar, and zip as backends for viewing, creating, and extracting
their corresponding archive formats.
2026-03-26 16:24:39 -05:00
Austin Horstman
1eb0549a1a password-store: silence settings default warning
Use the deferred state-version helper mode for programs.password-store.settings
so explicit empty and explicit legacy values silence the warning correctly,
while partial legacy-era settings still inherit PASSWORD_STORE_DIR until the
user resolves the migration.

Add integration coverage for password-store and pass-secret-service to verify
legacy, explicit empty, explicit legacy, and partial-settings behavior.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-24 14:08:36 -05:00
Austin Horstman
b8cb89f2c4 codex: support store-path skill sources
Handle per-skill values that come through as store-path strings, such as fetcher outputs with subdirectories appended. This restores the previously working pattern for packaged skill directories and adds a regression test for both directory and file sources.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-24 12:03:06 -05:00
oneorseveralcats
bc357c75e3 w3m: add module
adds a pretty complete module for w3m, a terminal web browser and pager.
2026-03-23 14:10:42 -05:00
Austin Horstman
b02a36dc79 Revert "swaylock: warn on implicit enable default"
This reverts commit 45e3b622b1.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-23 09:02:01 -05:00
Austin Horstman
c6fe2944ad codex: symlink directories for all skills
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 15:08:53 -05:00
oneorseveralcats
932ca46013 nom: add module
adds a module for nom, a terminal-based rss feed reader.
2026-03-22 12:39:22 -05:00
Utkarsh Gupta
38539206d0 cargo: add cargoHome option 2026-03-22 11:53:53 -05:00
Austin Horstman
b92cad188c git: warn on signing format default change
The default value for programs.git.signing.format changed in 25.05
from an implicit "openpgp" to null. Keep the existing gated
mkOptionDefault behavior so the signing block only materializes when
other signing settings are in use, but route the versioned value and
static docs text through the shared state-version helper.

Add a focused current-state-version test that covers a non-empty
signing configuration with no explicit format, alongside the existing
legacy implicit-openpgp and explicit-format tests.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
45e3b622b1 swaylock: warn on implicit enable default
Before 23.05, programs.swaylock.enable implicitly followed whether
programs.swaylock.settings was non-empty. That compatibility path was
still active for older state versions, but it emitted no warning.

Route the default through the shared state-version helper so legacy
users get the standard deprecation warning before the implicit enable
behavior is removed. Add a focused current-state-version test and keep
the existing legacy and explicit-enable coverage in place.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
111b158a98 beets: warn on implicit enable default
Before 19.03, programs.beets.enable implicitly followed whether
programs.beets.settings was non-empty. That compatibility branch was
still active for older state versions, but it was silent.

Route the default through the shared state-version helper so legacy
users get a consistent deprecation warning before the implicit
enablement is cleaned up. Add focused tests for the legacy and current
default branches alongside the existing beets coverage.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
teto
9670de2921 neovim: reuse more of upstream logic 2026-03-20 12:59:40 +01:00
teto
1c10e6596f neovim: now include nixpkgs wrapper generated lua
now that home-manager always generates an init.lua we can take the
wrapper output instead of reimplemnting stuff in HM (notwithstanding rtp
changes that are not needed in HM).
This is necessary to keep the provider configuration available after
this change https://github.com/NixOS/nixpkgs/pull/487390

Also updated test to reflect ruby disabling
2026-03-19 18:24:53 -05:00
Bob van der Linden
9bc3ca1230 opencode: skill -> skills
The skills option was creating files under ~/.config/opencode/skill/
(singular) but OpenCode documentation only mentions
~/.config/opencode/skills/ (plural). Both work, but using an
undocumented directory can be confusing.

Fixes: https://github.com/nix-community/home-manager/issues/8907
2026-03-19 21:32:45 +01:00
James Davidson
f72ed9c97d smug: add project session setting
Add an optional session setting so that session names can be different
than the smug project name. This also enables using template variables
when naming sessions.
2026-03-19 15:36:43 +00:00
Austin Horstman
4fcef56c15 claude-code: load MCP config via plugin dir
Claude Code rejects `--mcp-config` once the Home Manager wrapper injects
it around subcommands, which breaks commands like `claude mcp list`.
Claude Code 2.1.76 fixed `--plugin-dir` so it no longer consumes
following subcommands, so use that path for the generated MCP config
instead.

Generate a plugin directory with a manifest and `.mcp.json`, wrap
`claude` with `--plugin-dir` before user arguments, and snapshot that
wrapper directly in the tests. Keep the existing LSP support in the
generated plugin directory as well, and add coverage for the combined
MCP+LSP case plus the MCP integration merge path.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-18 23:58:36 -05:00
stuebinm
d47357a4c8 go: remove unneeded string escapes 2026-03-18 00:04:07 -05:00
rsahwe
ba197beccc rizin: cleanup according to feedback
In both prior feature pull requests for this module there was a review
after the pull request got merged, those are addressed here.
2026-03-18 00:02:59 -05:00
natsukium
a455ac1bb3 claude-code: add lsp servers support 2026-03-17 23:52:47 -05:00
RockWolf
54db7915d0 fish: change mode & setsMode bind options to allow arbitrary strings additional to default enum values 2026-03-17 23:47:50 -05:00
RockWolf
51895e1813 fish: add name field to binds module
Resolves: #8795
2026-03-17 23:47:50 -05:00
Austin Horstman
b61330163e tests/gemini-cli: add policy assertions
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-17 23:46:59 -05:00
Austin Horstman
9a40ec3b78 sketchybar: refactor sbarlua support
Needs to handle different lua versions better. Determine lua version for
which luaPackages set to reference

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-15 16:01:32 -05:00
Max Cabrajac
be0c641a6a mergiraf: Prevent warnings related unmanaged VCSs
Add a guard to prevent people from getting warnings related to VCSs they
don't use.
2026-03-12 21:00:48 -05:00
teto
4aeef1941f neovim: update tests to work with latest nixpkgs
Since https://github.com/NixOS/nixpkgs/pull/495392, the wrapper doesn't
create provider executables along with the neovim wrapper. They still
exist but at locations indicated by the g:XXX_provider_host variable.
2026-03-12 17:17:57 +01:00
teto
f9482fd109 neovim: fix test
package.path (mkOrder 100) is expected to be before `vim.cmd` (mkBegin -> mkOrder 500).
Not sure how the error was not detected before ?
2026-03-12 14:49:18 +01:00
Alin
4536603a43 zed-editor: add enableMcpIntegration option
Integrate with the shared MCP module
2026-03-11 22:13:46 -05:00
Bruno BELANYI
d7ef0034e3
mergiraf: add 'enable{Git,Jujutsus}Integration' 2026-03-11 21:52:41 -05:00
teto
2912398c1c kitty: dont add unneeded newlines
triggers my OCD.
2026-03-10 16:01:24 -05:00
teto
27b93804fb neovim: adapt provider tests
This checks the final provider value instead of the wrapper implementation.
This requires to run the real neovim so I removed the stub.

The providers at home-path/bin/nvim-X will disappear from nixpkgs
hopefully so I simplified the pattern to "X".

Probably in future we want to check "assertFileExists" against the
returned value node_host_prog
2026-03-06 19:05:25 -06:00
Bikku
c804204306 lutris: fix proton packages not showing up
For versions of lutris 0.5.20+, it no longer links proton packages under
the proton folder, instead uses wine's folder for both types.
2026-03-06 19:04:28 -06:00
Zhanibek Adilbekov
5a75730e6f bash: support defining aliases beginning with a dash or plus 2026-03-04 08:08:47 -06:00
Austin Horstman
f0e9edfe7f tests/mpv: stub wrapper
Pulling in external dependencies we aren't even trying to test against.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-03 14:24:37 -06:00
leiserfg
9d83727001 vicinae: restart service on config change 2026-03-02 23:37:26 -06:00
magicquark
56c1ceb3c8 pyradio: add per-station player profile option 2026-03-01 09:49:52 -06:00
magicquark
358bafaf95 pyradio: add per-station buffering option 2026-03-01 09:49:52 -06:00
magicquark
e04cf4c16d pyradio: add per-station forceHttp option 2026-03-01 09:49:52 -06:00
magicquark
1efaaf2072 pyradio: add per-station icon url option 2026-03-01 09:49:52 -06:00
magicquark
ebe3ca5c9c pyradio: add per-station encoding option 2026-03-01 09:49:52 -06:00
magicquark
53069c542e pyradio: add per-station volume option 2026-03-01 09:49:52 -06:00