5096 Commits

Author SHA1 Message Date
Austin Horstman
99814d2a67 fcitx5: capitalize boolean settings
Fcitx5 accepts only exact True/False values for typed boolean options.

Normalize booleans before generating fcitx5 config files so Home Manager emits values that upstream will parse instead of resetting to defaults.
2026-04-23 18:12:37 -05:00
Miles Wirht
5a9efa93c5 qalculate: init module 2026-04-23 17:27:29 -05:00
Austin Horstman
e09259dd2e git: clean up literalExpression 2026-04-23 12:13:58 -05:00
Austin Horstman
30db803c98 git: support ordered settings fragments
Allow programs.git.settings to keep its existing attrset shorthand while also accepting an ordered list of fragments for repeated sections and order-sensitive config. Cover the new list form with a focused Git config snapshot test.
2026-04-23 12:13:58 -05:00
Perchun Pak
6837e0d6c5 wayle: fix example 2026-04-23 08:18:13 -05:00
Austin Horstman
667b3c4732 home-manager-auto-upgrade: state-version gate preSwitchCommands
Migrate the preSwitchCommands default to
lib.hm.deprecations.mkStateVersionOptionDefault instead of using a
null sentinel.

Keep the legacy flake update behavior for older state versions and add
tests for the explicit, legacy, and current flake paths.
2026-04-22 19:34:24 -05:00
Takumi
2706309aeb news: add home-manager-auto-upgrade options entry
Document the new flags and preSwitchCommands options for the
auto-upgrade service.
2026-04-22 19:34:24 -05:00
Takumi
0d1314d6fe home-manager-auto-upgrade: clarify option documentation
Improve the option descriptions for enable, useFlake, flakeDir,
and the systemd timer format.
2026-04-22 19:34:24 -05:00
Takumi
8f259af671 home-manager-auto-upgrade: add switch flags and pre-switch commands
Add a flags option for passing extra arguments to home-manager
switch and a preSwitchCommands option for running commands before the
switch.

Preserve the legacy flake update behavior behind a deprecation warning,
clean up the shell script, and cover the flake path in tests.
2026-04-22 19:34:24 -05:00
soracat
9c7dcc55bd home-manager-auto-upgrade: set maintainer to soracat 2026-04-22 19:34:24 -05:00
soracat
ad16ee43a8 maintainers: add soracat 2026-04-22 19:34:24 -05:00
Perchun Pak
508daf831a equibop: init 2026-04-22 15:50:22 -05:00
Perchun Pak
6a1992acd9 mkVesktopLikeModule: init 2026-04-22 15:50:22 -05:00
Isaac Shiells Thomas
83b3ecce2e wayle: add module
Co-authored-by: Perchun Pak <github@perchun.it>
2026-04-22 15:26:03 -05:00
Isaac Shiells Thomas
78bf0fe29d maintainers: add isaacST08 2026-04-22 15:26:03 -05:00
Thierry Delafontaine
f8e57407f4 proton-pass-agent: adapt the services to match the documentation
See https://protonpass.github.io/pass-cli/commands/ssh-agent/#setting-ssh_auth_sock-automatically-on-login section 'Starting the daemon automatically on login'.
2026-04-22 15:25:18 -05:00
isabel
38d4260bc8 pipewire: add LADSPA plugin path handling 2026-04-22 15:24:44 -05:00
Austin Horstman
d79c987e65 chromium: install plasma browser integration
Reuse existing plasmaSupport option to install browser integration
package.
2026-04-22 14:14:13 -05:00
Austin Horstman
f9d2b2da81 chromium: document finalPackage
Clarify that finalPackage is the customized browser derivation after Home Manager overrides and that it can be referenced from other Home Manager options.
2026-04-22 12:30:51 -05:00
Austin Horstman
5d947202cf chromium: document ungoogled extensions
ungoogled-chromium does not reliably support the default Chrome Web Store update URL workflow, but Home Manager already supports local CRX descriptors via crxPath and version.

Document that Linux users should prefer that path and add a regression test covering pkgs.ungoogled-chromium.
2026-04-22 12:30:51 -05:00
Austin Horstman
14b81a1630 chromium: support google-chrome extensions on Darwin
Allow the Google Chrome browser modules to manage Chrome Web Store extensions on Darwin while keeping Linux explicit via assertions, since Home Manager cannot write Chrome's system-managed extension directories there.

Add focused regression tests for the Linux and Darwin branches, update the existing google-chrome coverage, and add a news entry.
2026-04-22 12:30:51 -05:00
Austin Horstman
f4e008848a chromium: expose google-chrome dictionaries and native hosts
Keep the proprietary Chrome extensions option removed, but make dictionaries and nativeMessagingHosts available for the explicit google-chrome, google-chrome-beta, and google-chrome-dev modules.

Add a focused regression test covering dictionary and native host files for all three browser namespaces.
2026-04-22 12:30:51 -05:00
Austin Horstman
c95595f732 chromium: fix native host paths for google-chrome
Follow the configured browser package when choosing NativeMessagingHosts paths so chromium overrides to google-chrome install manifests in Chrome's config directory. Keep extension and dictionary handling gated for proprietary Chrome, but always generate native messaging hosts, and cover the override case with a focused regression test.
2026-04-22 12:30:51 -05:00
Alex Epelde
936d579f53 obsidian: no IFD, use RFC42 settings
The current communityPlugins and themes implementations do IFD, slowing down evaluation of user configurations. Instead of reading the plugin IDs and theme names from the package outputs' manifest.json, I have made it so the plugin ID / theme name is read from the package's passthru if possible.

Using (pkgs.formats.json { }).type gives better type checking than nullOr (attrsOf anything).
2026-04-22 10:56:48 -05:00
Rachit Kumar Verma
875f2fcbb1 kitty: add option to configure $XDG_CONFIG_HOME/kitty/diff.conf
Add option to configure '$XDG_CONFIG_HOME/kitty/diff.conf'.
See sw.kovidgoyal.net/kitty/kittens/diff for more documentation.
2026-04-22 10:55:50 -05:00
Alex Epelde
f2b06589e3 thunderbird: add generic per-calendar settings option 2026-04-22 10:49:55 -05:00
Austin Horstman
afd5607108 rofi: support nested extraConfig sections
Render flat extraConfig entries inside the configuration block and nested attrsets as top-level Rasi sections so mode-specific and filebrowser configuration can be expressed directly in Nix. Fold the reported nested cases into the existing valid-config test instead of keeping issue-specific test files.
2026-04-22 09:59:56 -05:00
Austin Horstman
c77ebe06b4 khal: honor explicit default calendar
Closes #9040
2026-04-22 09:59:17 -05:00
Utkarsh Gupta
5d5640599a atuin: fix logs.dir override for preferXdgDirectories 2026-04-21 08:25:32 -05:00
Austin Horstman
c81775b640 xdg-autostart: allow empty readonly autostart
Create the readonly autostart link even when no managed entries are
present, so the option behavior matches its documentation and stays
covered by a focused regression test.
2026-04-20 11:12:32 -05:00
Austin Horstman
1072f064e2 fish: clarify setCursor option mapping
Explain that the Home Manager option name differs from fish's CLI flag
so users can map setCursor to abbr --set-cursor without guessing.
2026-04-20 10:26:09 -05:00
Bruno BELANYI
78ceb2dd5c rbw: do not serialize 'null' settings 2026-04-20 10:07:54 -05:00
Bruno BELANYI
4bfce11ea8 xdg-user-dirs: add 'projects' 2026-04-20 00:08:02 -05:00
Austin Horstman
b85e8fff94 lib/deprecations: suppress no-op state-version warnings
Closes #9045
2026-04-19 22:48:45 -05:00
Austin Horstman
1e9bdc6d35 swaync: update style documentation link
Closes #9098
2026-04-19 22:47:50 -05:00
Sam
5b56ad02dc modules/helix: fix pkill line on Darwin
On Darwin the previous ordering resulted in `-U` being parsed as a flag
with the value `SR1`. Moving the signal flag to the start of the command
fixes this issue, and pkill from procps doesn't care.
2026-04-19 02:35:31 +01:00
Veselin Ivanov
565e534920 neovim: expose sideloadInitLua option to control the generation of init.lua
Add option to control generation of `init.lua` to allow opting out of the automatic generation. Add news entry about changed behavior and new option.
2026-04-17 14:27:57 -05:00
K900
dee1c38cf0 modules/helix: fix incorrect string escape 2026-04-17 14:11:03 -05:00
Rachit Kumar Verma
08b283aeda yazi: add option for {file}$XDG_CONFIG_HOME/yazi/vfs.toml
Add option to configure the vfs.toml file in yazi
See yazi-rs.github.io/docs/configuration/vfs for more details
2026-04-17 13:28:40 -05:00
Luk-ESC
a0dab60284 helix: reload config with USR1 signal
automatically reload config files onChange by sending USR1 to running processes
2026-04-17 13:27:28 -05:00
betaboon
8941f29d42 opencode: add extraPackages option 2026-04-17 13:26:53 -05:00
Thiago Kenji Okada
6ddeb76a5d zsh: expose internal lib 2026-04-17 13:20:50 -05:00
Aliaksandr
d401492e2a files: prefix relative path literal with './'
Fixes the `warn-short-path-literals` warning:

  warning: relative path literal 'lib/file-type.nix' should be
  prefixed with '.' for clarity

Nix recommends prefixing relative path literals with './' to
distinguish them from other path forms.
2026-04-16 23:01:46 +02:00
Ihar Hrachyshka
3c7524c683 treewide: set git pager for specific commands, not for core.pager
Setting `core.pager` may result in issues like swallowed `git grep` results. 
To avoid this, apply pagers to specific commands where we expect `diff`-ish output only. 
Use a common helper to set pager for all modules that configure it.
2026-04-14 11:31:44 -05:00
Benedikt Rips
970cd853bf hyprland: use previously unused lambda parameter 2026-04-13 22:02:40 -05:00
Benedikt Rips
a93d80bcec treewide: remove unused attrs patterns 2026-04-13 22:02:40 -05:00
Benedikt Rips
71402c5df3 treewide: mark unused lambda arguments 2026-04-13 22:02:40 -05:00
betaboon
287f84846c opencode: align tools directory with upstream documentation 2026-04-12 21:14:59 -05:00
betaboon
26c9d5dca1 opencode: align agents directory with upstream documentation 2026-04-12 21:14:59 -05:00
betaboon
a5e824c862 opencode: align commands directory with upstream documentation 2026-04-12 21:14:59 -05:00