Commit graph

4764 commits

Author SHA1 Message Date
kfiz
769e07ef8f
aerc: add notmuch integration
Currently enabling aerc in accounts.email.accounts.<account> doesn't handle existing configs where accounts.email.accounts.<account>.notmuch.enable is set to true. This pr proposes to automatically set notmuch as backend for aerc if this is the case, see rjarry/aerc@master/doc/aerc-notmuch.5.scd.

For set-ups where accounts.email.notmuch.enable has been enabled this was previously ignored, so this is probably a breaking change for these configs, but from running this set up during the last weeks I would consider the upside of better search and filtering performance as significantly larger than the minor changes in query handling as noted here rjarry/aerc@master/doc/aerc-notmuch.5.scd#usage.
2026-03-28 17:55:35 -05:00
Marko Milovanov
4a8e31396a Translate using Weblate (Serbian)
Currently translated at 25.0% (4 of 16 strings)

Translate using Weblate (Serbian)

Currently translated at 25.6% (10 of 39 strings)

Translate using Weblate (Serbian)

Currently translated at 6.2% (1 of 16 strings)

Translate using Weblate (Serbian)

Currently translated at 5.1% (2 of 39 strings)

Add translation using Weblate (Serbian)

Add translation using Weblate (Serbian)

Co-authored-by: Marko Milovanov <markomilovanov03@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/sr/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/sr/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2026-03-28 14:56:35 -05:00
oneorseveralcats
027539a127 vesktop: make package nullable 2026-03-28 14:50:47 -05:00
teto
6569d9e171 neovim: attempt at reusing nixpkgs upstream config 2026-03-28 18:41:26 +01:00
oneorseveralcats
557f5e38ce swayidle: allow multiple systemd targets 2026-03-28 17:32:51 +01:00
oneorseveralcats
02371c05a0 aria2: use formats.keyValue to generate aria2.conf instead of custom method 2026-03-27 16:42:50 -05: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
r-vdp
2b8f732e15 atuin: use daemon start subcommand on >= 18.13.0
Atuin 18.13.0 deprecated `atuin daemon` in favour of `atuin daemon start`
and prints a warning on every daemon startup. Keep the old invocation for
older versions so NixOS stable (currently shipping 18.10.0) keeps working.

Also drop the 18.2.0 minimum version assertion since all supported
nixpkgs branches ship newer versions.
2026-03-27 10:41:46 -05:00
oneorseveralcats
accd450fcd waybar: allow multiple systemd targets 2026-03-27 09:41:16 -05:00
Austin Horstman
4b1be5c38b vicinae: move lib to separate file
Not used internally and cleaner to separate

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-26 23:01:54 -05:00
Austin Horstman
bf6215e0cb vicinae: support local sources for raycast extensions
Support extensions without fetchgit, useful when providing the sources
from a flake input or derivation for all extensions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-26 23:01:54 -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
Diego Saint Esteben
f7a3fe06c5 maintainers: add dosten 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
Matthias Ahouansou
3aeefa9db2 mpdris2-rs: add module 2026-03-26 16:34:36 -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
Stellessia
0e0e7a072a generic-linux-gpu: Update NVIDIA driver version regex pattern 2026-03-26 16:03:37 -05:00
teto
e2e5f512b3 neovim: support lua plugin transitive dependencies
TODO: 
- add a test
- see if we can pass the list of plugins instead, overriding the final
  list so it doesn't get added to rtp
2026-03-26 16:37:38 +01:00
David Sánchez
86014e836c tldr-update: darwin support 2026-03-26 14:10:44 +00: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
66aa75f6e8 lib/deprecations: support deferred state-version warnings
Extend mkStateVersionOptionDefault so merged attrset callers can defer
warning emission to config.warnings while still exposing the effective
state-version default and option priority metadata.

Add dedicated lib tests for deferred warning behavior on both legacy and
current state versions.

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
Austin Horstman
5068d0b03e news: add qt kvantum entry
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-24 11:02:52 -05:00
Austin Horstman
a8931b2575 kvantum: add enable option
Missed previously, prefer gating enablement on real opt in.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-24 11:02:52 -05:00
mikaeladev
61463d50fc qt: add kvantum options 2026-03-24 08:04:04 -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
Meow
3cea83bf84 rclone: make mounts wait for config 2026-03-23 13:53:26 -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
oneorseveralcats
2c629ba7ed maintainers: add oneorseveralcats 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
Austin Horstman
a49e2f1b5b password-store: warn on settings default change
The default value of programs.password-store.settings changed in 25.11
when Home Manager stopped exporting PASSWORD_STORE_DIR implicitly.
Route the default through the shared state-version helper so users on
older state versions keep the compatibility behavior with a consistent
warning and a single place to remove later.

The existing password-store tests already cover the legacy default, the
current empty default, and explicit override behavior, so no new test
fixture is needed for this migration.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
d3281688bf gtk: warn on gtk4 theme inheritance change
The gtk4 theme option still inherits from gtk.theme for users pinned
before 26.05, but that fallback was previously silent. Move the
default through the shared state-version helper so the compatibility
branch emits the standard deprecation warning and stays consistent
with other future cleanups.

Add a focused test that covers the legacy inheritance path alongside
the existing current-state-version test for the null default.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
acf65ad748 xdg-user-dirs: warn on setSessionVariables default change
Switch xdg.userDirs.setSessionVariables to the shared state-version default helper so older configurations get an explicit warning before the legacy default is removed.

Add focused tests for the legacy and current branches to verify that the session variable exports remain enabled before 26.05 and are disabled by default starting at 26.05.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
db91cbf795 yazi: use state version default helper
Replace the inline shellWrapperName migration logic with the shared state-version default helper. This keeps the existing warning and version-dependent default, but moves the message and defaultText formatting into one reusable implementation.

Inline the helper directly at the option declaration so the module stays small while matching the new deprecation-default pattern for future adoptions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Austin Horstman
95496df8c0 lib/deprecations: add state version default helper
Add a helper for options whose defaults change across home.stateVersion boundaries. This centralizes the warning text and documentation shape so modules do not need to hand-roll the same migration pattern at each call site.

The helper takes legacy and current branches with a runtime value plus optional static documentation text. That keeps the actual default version-gated while avoiding option docs that depend on evaluated config. Add a focused test covering the legacy warning path, the new-value path, and an explicit legacy pin that should not warn.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Malix - Alix Brunet
856b01ebd1 shell: DRY shellIntegrationParameters 2026-03-21 18:24:31 -05:00
Malix - Alix Brunet
887e96cf30 lib: remove rec in shell.nix 2026-03-21 18:23:54 -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
Wildan Nursyamsi
5ae5f8cedf Translate using Weblate (Indonesian)
Currently translated at 100.0% (16 of 16 strings)

Co-authored-by: Wildan Nursyamsi <muhamad11wildan4n@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/id/
Translation: Home Manager/Home Manager Modules
2026-03-19 21:30:15 +01:00