1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-11-30 06:01:03 +01:00
Commit graph

3722 commits

Author SHA1 Message Date
Aguirre Matteo
5751fa774f
twitch-tui: add module (#7416) 2025-07-08 09:52:03 -05:00
Aguirre Matteo
c00730550e
tray-tui: add module (#7415) 2025-07-08 09:51:45 -05:00
Austin Horstman
753ea0b324 librewolf: allow bookmark configuration
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-06 12:50:40 -05:00
Austin Horstman
dbac1fbcd6 mkFirefoxModule: set NoDefaultBookmarks when a profile has bookmarks are enabled
This resolves issue that someone might try and configure bookmarks and a
policy will prevent it from applying properly.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-06 12:50:40 -05:00
Austin Horstman
9d21f9985e
i3-sway/lib: modifier accepts any string (#7398)
Currently, we aggressively limit what modifier can be used in the module
system that blocks valid configurations. Allow any strings to unblock
these configs. But, could be refactored further to support list of
modifiers and automatically convert to a config string.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-06 12:42:26 -05:00
Austin Horstman
b4486ff44a
mkFirefoxModule: add extension settings example to policies (#7397)
Add an example of using extension settings to control installation and
accesibility of a extension in the policies option.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-06 10:40:29 -05:00
bricked
153e680c42
firefox: add release option (#6784)
Adds the `release` option to declare what upstream release version is
used to fetch rom `releases.mozilla.org`. Used to fetch
language packs. See
https://github.com/nix-community/home-manager/issues/6758#issuecomment-2781465236.
2025-07-06 09:35:49 -05:00
Thierry Delafontaine
502d9b7d30
codex: starting with v0.2.0 codex uses a TOML configuration file (#7388)
Updated related settings and test files to reflect the new format.
2025-07-06 08:58:22 -05:00
Ludovic Ortega
af8a884164 kubeswitch: add module
Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>
Co-authored-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 16:30:54 -05:00
Ludovic Ortega
92db5be8e1 maintainers: add m0nsterrr
Signed-off-by: Ludovic Ortega <ludovic.ortega@adminafk.fr>
2025-07-05 16:30:54 -05:00
Thierry Delafontaine
5a49fe448e
opencode: init (#7320) 2025-07-05 16:02:49 -05:00
Alex Hamilton
f117b383dd numbat: Allow specifying a path for initFile 2025-07-05 10:32:48 -05:00
Alex Hamilton
26d405da41 numbat: Add initFile option 2025-07-05 10:32:48 -05:00
Matthieu Coudron
d75a547415
programs.msmtp: merge extraConfig and extraAccount into configContent (#7385)
We can simplify maintainance of HM while providing more consistency
across modules by relying on the nixpkgs module primitive mkBefore /
mkOrder as it was done in the Zsh module.


Deprecates:
- programs.msmtp.extraConfig
- programs.msmtp.extraAccounts

programs.msmtp: merge extraConfig and extraAccount into configContent

We can simplify maintainance of HM while providing more consistency
across modules by relying on the nixpkgs module primitive mkBefore /
mkOrder as it was done in the Zsh module.


Deprecates:
- programs.msmtp.extraConfig
- programs.msmtp.extraAccounts
2025-07-05 17:26:30 +02:00
Austin Horstman
36c57c6a1d lib/deprecations: add ignore parameter to remapAttrsRecursive
Needed to allow exclusionary keys easily without complex predicates.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 00:26:25 -05:00
Austin Horstman
650a38ebe8 ashell: support yaml and toml config
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 00:26:25 -05:00
Austin Horstman
f62e9a8114 lib/strings: add extra string matching predicates
Centralize logic to avoid needing to rewrite it elsewhere.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 00:26:25 -05:00
Austin Horstman
19f0ba9c52 lib/deprecations: add remapAttrsRecursive
Similar purpose to the `mkSettingsRenamedOptionsModule` for migrating
users configuration to the new format needed by a module. But,
supporting freeform options that shouldn't get option definitions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 00:26:25 -05:00
Dan Lock
a4fc77c63d ashell: new ashell 0.5.0 config standards
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-05 00:26:25 -05:00
June Stepp
e8da7372fd
anki: add module (#7274) 2025-07-04 23:45:35 -05:00
Lukas Nagel
57d1027e1e
aerc: allow config sections to be lines (#7280)
There are some sections that are order sensitive, e.g. filters,
so just lines will preserve that order.

Fixes: #6059
2025-07-04 19:54:53 -05:00
Austin Horstman
b8bb556ce5 maintainers: remove duplicate HM entries
We can remove duplicate entries and redirect to the nixpkgs entry.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-04 09:20:48 -05:00
Austin Horstman
31242bdf8f polybar: fix meta.maintainer position
We generate the maintainer list from `meta.maintainers` and need the
attribute to be available on eval of all modules. It was set in the
`config` option which would only be evaluated when a module was enabled.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-04 09:20:48 -05:00
Terje Larsen
83f978812c
podman: support mounts configuration (#7377) 2025-07-03 19:34:57 -05:00
Lucas Servén Marín
1fa73bb2cc
fix(service/gpg-agent): allow SSH ForwardAgent compatibility (#7355)
https://github.com/nix-community/home-manager/pull/7117#issuecomment-3018582819
noted that #7117 broke compatibility with forwarding ssh-agents using
`ssh -A`/`ForwardAgent`. In order to continue supporting the fix for
the issue raised in #5997 and address the compatibility problem
mentioned by @euank, this commit introduces the solution described in
https://github.com/nix-community/home-manager/pull/7117#issuecomment-3025001779.

The code now checks the following:
1. is this shell part of an SSH connection and is `SSH_AUTH_SOCK` set?
   if so, assume the socket variable was set by sshd to point at a
   forwarded socket; bail out to skip setting `SSH_AUTH_SOCK".
1. is the current process a child of `gpg-agent --daemon`? if so, then
   bail out to skip setting `SSH_AUTH_SOCK`.
1. if we got this far, then set `SSH_AUTH_SOCK`.

I've tested this fix locally and can confirm that both #5997 as well as
the regression are fixed.

Signed-off-by: squat <lserven@gmail.com>
2025-07-03 08:24:16 -05:00
Jairo Llopis
b182e64c01
zed-editor: survive if previous files are not JSON5 (#7351) 2025-07-03 07:44:20 -05:00
Thane Gill
a5b5672084
kitty: add config change signal on darwin (#7375) 2025-07-02 18:56:54 -05:00
Yiheng He
1b25908d1d firefox: fix user.js extensions.settings creation
Creates the user.js if profile.extensions.settings is set.
This fixes the case when profile.extensions.settings is set but every
other option in the mkIf is false, resulting in no user.js creation.
2025-07-02 15:59:50 -05:00
Tarow
7c45553340
mpvpaper: fix eval if no settings are defined (#7370)
Do not attempt to evaluate the xdg config files if no settings for
pauseList and stopList are defined.
2025-07-02 10:25:41 -05:00
Austin Horstman
121b430df7
maintainers: fix incorrect entries (#7360)
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 23:01:12 -05:00
Austin Horstman
479f888967
bash: support path in sessionVariables again (#7354)
Upstream shell environment variables support paths.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 10:47:16 -05:00
Winter
96354906f5
files: show better error when file would be clobbered (#7348)
Before:

> Existing file '' would be clobbered by backing up '/home/winter/.config/fish/config.fish'

After:

> Existing file '/home/winter/.config/fish/config.fish' would be clobbered
2025-06-30 21:16:25 -05:00
Ali Jamadi
4074121796 nh: update maintainers 2025-06-30 21:12:20 -05:00
Ali Jamadi
e8a3e2c1e0 nh: fix clean option behaviour for Darwin 2025-06-30 21:12:20 -05:00
Kira
78fc50f1cf
direnv: fix nushell cell-path handling (#7339)
After https://github.com/nushell/nushell/pull/15692, this integration breaks
$PATH conversions again as cell-paths are now case-sensitive.
2025-06-30 13:49:04 -05:00
Austin Horstman
ee2189cb2f
gh: insert empty helper when using credential helper (#7347)
Resets previous helpers so the only one being used is the `gh` cli

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-30 12:12:19 -05:00
Matthieu Coudron
0f21ed5182
bash: change sessionVariables to attrsOf ... (#7300)
I had programs.bash.sessionVariables.CDPATH = ... defined in the
different nix files. One was taken into account and the other one
ignored.

Turns out plain "types.attrs" has the following merging strategy:

===
merge = loc: foldl' (res: def: res // def.value) { };
===

Changing it to "attrsOf", the module system warned me of the conflicting
values.
2025-06-30 17:19:07 +02:00
Devin Droddy
f6deff178c
quickshell: add module (#7316) 2025-06-29 18:28:19 -05:00
Maximilian Dietrich
3faf4a1507
syncthing: add guiAddress to configuration (#7281)
We have a configuration option services.syncthing.guiAddress which is an explicit option because we need it in the syncthing-init service, but why not also set it in the actual syncthing config as well as (or instead of?) the current CLI override? This way other software that parses the config file / REST API like syncthingtray just works with it instead of erroring out and unexpectedly requesting user interaction.

I guess we could actually also scrap the explicit services.syncthing.guiAddress option in favor of the syncthing-native services.syncthing.settings.gui.address because these two (valid!) options conflict otherwise.

Also, a next PR (or addition to this one) could be to make sure the syncthing-init service treats services.syncthing.settings.gui differently by not PUTting but PATCHing the configuration as PUTting triggers an API key regeneration, again breaking REST API access for other tools.
2025-06-29 18:11:18 -05:00
winston
a4f9ab0005
sway: add wayland.windowManager.sway.systemd.dbusImplementation (#7271)
Allows the user to choose the dbus implementation for the environment
import.

See https://github.com/swaywm/sway/wiki#systemd-and-dbus-activation-environments
2025-06-29 18:09:58 -05:00
jaredmontoya
2b3bb17e87
oh-my-posh: fix nushell with v26.0.0 (#7342) 2025-06-29 17:34:38 -05:00
awwpotato
76d0c31fce
formatter: add deadnix (#7331) 2025-06-28 16:28:39 -05:00
Lucas Servén Marín
da077f20db
fix(service/gpg-agent): ensure SSH_AUTH_SOCK is set on Darwin (#7117)
This commit addresses https://github.com/nix-community/home-manager/issues/5997
At the root, the gpg-agent SSH integration is not working on Darwin
because shells are started with `SSH_AUTH_SOCK` already set to something
like `/private/tmp/com.apple.launchd.ozLmoURHDC/Listeners`, which
prevents the hook from setting the variable to the gpg-agent's socket.

This commit fixes the issue using a different mechanism to detect if the
current shell has already had the `SSH_AUTH_SOCK` variable set to the
gpg-agent's socket, namely by checking for `gnupg_SSH_AUTH_SOCK_by` as
documented in
https://www.gnupg.org/documentation/manuals/gnupg/Agent-Examples.html#Agent-Examples.

This is essentially a simplified version of
https://github.com/nix-community/home-manager/pull/5901 that does not
attempt to migrate gpg-agent over to launchd.

Signed-off-by: squat <lserven@gmail.com>
2025-06-28 12:30:46 -05:00
Matthias Beyer
080e8b48b0
mako: "settings" is an attrset, so use that as example too (#7330)
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2025-06-26 16:36:45 -05:00
Jairo Llopis
ff31a4677c
fix(zed): support preexisting JSON5 settings (#7317)
Zed uses JSON5 for settings files. JQ doesn't understand that format and
fails if found, when merging with preexisting settings.

Here I add a conversion step that converts JSON5 to JSON before handling
the contents to JQ.

Besides, I changed the arguments in the jq function, so instead of using
`[0]` and `[1]`, we now use `$dynamic` and `$static` respectively. This
should make scripts more readable.

Fixes https://github.com/nix-community/home-manager/issues/7247
Fixes https://github.com/nix-community/home-manager/issues/7226
2025-06-24 15:48:03 -05:00
Jonathan Davies
a4bac2b9ba
helix: fix configuration file creation logic (#7319)
without this change, an extraConfig file always gets created, even when
none is specified
2025-06-24 11:06:11 -05:00
damidoug
d33444e63a aerospace: Add launchd agent and enhance configuration 2025-06-23 20:30:43 -05:00
Austin Horstman
86402a17b6 treewide: flatten single file modules
Some files don't need nesting and can be root level again to reduce
conflicts with other PRs.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-23 16:20:26 -05:00
Austin Horstman
bda9deb791 modules: allow root level nix files
More flexibility in allowing root level files to import, for those that
don't need nesting.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-06-23 16:20:26 -05:00
Perchun Pak
f5098b0740
programs/hyprpanel: init (#7303) 2025-06-23 15:48:27 -05:00