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

4999 commits

Author SHA1 Message Date
Lukas Nagel
0c94fcaee7 aerc: integrate accounts.email.accounts.<name>.signature options 2025-07-12 18:53:11 +02:00
Terje Larsen
83f978812c
podman: support mounts configuration (#7377) 2025-07-03 19:34:57 -05:00
Austin Horstman
402333d5ec ci: concurrency protect tag flow
We just need to run it once properly and dont need to keep running it
for every push until the last.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
03c3576f8b ci: remove unneeded reviewers
We can remove the review from someone if they are no longer affected in
a PR.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
7582cbfabc ci: check for new maintainers on updates
We want to ping maintainers whenever files are affected. Right now it
requires changing a PR to a draft and reopening, but we should be more
clever and request the review whenever the file is updated.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
7044c3eced
ci: tag-maintainers fix fetching maintainers (#7380)
Was relying on flawed logic and fragile parsing to identify maintainers
on changed files. Rework to use nix eval to grab the `meta.maintainers`
to use when requesting a review.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 16:29:14 -05:00
Austin Horstman
09ef413c80 all-maintainers: update
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 15:23:58 -05:00
Austin Horstman
d03fa2d84c ci: generate-all-maintainers use nix eval update
Previously, we had to hack together some string matching to identify and
retrieve the maintainers in the repo. We can just eval the modules to
retrieve the list of maintainers more accurately.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 15:23:58 -05:00
Austin Horstman
b46c693797 lib: add extract-maintainers-meta
Used to eval home-manager and fetch meta.maintainers to accurately
retrieve maintainers for the master list.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 15:23:58 -05:00
Austin Horstman
28639e6470
ci: cancel previous runs (#7378)
Cancel existing runs when a new push happens so we don't unnecessarily
run jobs that are irrelevant.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 14:05:44 -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
Austin Horstman
426b405d97 ci: add validation workflow for maintainers list
We need to make sure that we don't insert invalid maintainers otherwise
it breaks the RFC39 invite workflow. Check that we have valid nix and
the required attributes are able to be parsed properly.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Austin Horstman
66de606f48 ci: update all-maintainers on merge
We want to update the master list for RFC39 invites on master after a
change is merged in.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Thane Gill
a5b5672084
kitty: add config change signal on darwin (#7375) 2025-07-02 18:56:54 -05:00
Yiheng He
89af52d9a8 tests/firefox: add extension user.js test 2025-07-02 15:59:50 -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
Austin Horstman
25f003f8a9
ci: tag maintainers automatically for PR reviews (#6921)
Want to create an easier way to notify maintainers that someone is
working on their module. Added a workflow for requesting a review from any maintainers that have joined the `home-manager-maintainers` team in the organization. 

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 14:45:27 -05:00
Austin Horstman
9347c61bc0
ci: use GITHUB_TOKEN when app config missing (#7374)
Allow testing workflows more on forks when app configuration missing.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 12:17:42 -05:00
Matt Sturgeon
a7820832c6
ci: fix update-maintainers indentation (#7372)
Fixes a regression from be8f7e100f
2025-07-02 11:44:16 -05:00
Matt Sturgeon
bafcf33687 ci: use env in update-maintainers changes summary
Use env variables in the changes summary, to avoid string escape issues
with injecting template strings directly into the script.
2025-07-02 11:25:16 -05:00
Matt Sturgeon
be8f7e100f ci: move update-maintainers commit/pr to env
Define the commit & PR title and body in env variables to make the
script itself more readable and avoid any string escape issues.
2025-07-02 11:25:16 -05:00
Matt Sturgeon
7241b18a7b ci: make update-maintainers check-changes multiline
Use yaml's multiline string syntax for check-changes's run script.
2025-07-02 11:25:16 -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
3d243d4a16
ci: fix which branch to show on pr (#7368)
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:45:36 -05:00
Austin Horstman
77027882a7
ci: prefix flake update prs (#7366)
Make it easier to distinguish which flake.lock update a pr is for.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:41:10 -05:00
Austin Horstman
4bd4634525
ci: fix update-flake branch inputs (#7345)
Help with allowing multiple Prs from actions to different branches.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 08:25:53 -05:00
home-manager-ci[bot]
6c53df3b9c
flake.lock: Update (#7363)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/30e2e2857ba47844aa71991daa6ed1fc678bcbb7?narHash=sha256-krGXKxvkBhnrSC/kGBmg5MyupUUT5R6IBCLEzx9jhMM%3D' (2025-06-27)
  → 'github:NixOS/nixpkgs/3016b4b15d13f3089db8a41ef937b13a9e33a8df?narHash=sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU%2Btt4YY%3D' (2025-06-30)

Co-authored-by: home-manager-ci[bot] <214323736+home-manager-ci[bot]@users.noreply.github.com>
2025-07-02 08:13:41 -05:00
home-manager-ci[bot]
df12269039
maintainers: update all-maintainers.nix (#7361)
Automated update of the master maintainers list combining:
- Home Manager specific maintainers from modules/lib/maintainers.nix
- Nixpkgs maintainers referenced in Home Manager modules

Changes: +6 -4 lines

Generated by: lib/python/generate-all-maintainers.py

Co-authored-by: home-manager-ci[bot] <214323736+home-manager-ci[bot]@users.noreply.github.com>
2025-07-01 23:10:52 -05:00
Austin Horstman
29d717aab5 ci: tests fetch nixpkgs from flake.lock rev
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 23:03:57 -05:00
Austin Horstman
212f4a4fb2 ci: update-maintainers fetch nixpkgs from flake.lock rev
We need a nixpkgs on NIX_PATH. Right now we have been using the latest
from channel. But, we can actually just fetch the nixpkgs from our
flake.lock by parsing the flake.lock.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 23:03:57 -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
e96a8a325c
ci: conditional test step runs (#7358)
Not every PR requires the overhead of spinning up runners and running
our entire test suite. Filter on paths affected and only run the
relevant steps.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 18:11:29 -05:00
Austin Horstman
5d2f3e3e7f
ci: fix update-maintainers reference location (#7357)
Moved from scripts to lib/python and forgot to update action

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:59:53 -05:00
Austin Horstman
77bb9e033b ci: add update-maintainers.yml
Create workflow for updating maintainers list.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:30:06 -05:00
Austin Horstman
11db56137d all-maintainers.nix: initial creation
Create initial master maintainer list from the home manager and nixpkgs
maintainers that are referenced in the repository.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:30:06 -05:00
Austin Horstman
44a2308db9 scripts/generate-all-maintainers.py: add script
Create a script for generating the master maintainer list we will use
for inviting / pinging on changed files.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-01 16:30:06 -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
Adam Dinwoodie
cab8104e92
home-manager: add repl subcommand (#5600)
Similar to the `nixos-rebuild repl` command, `home-manager repl` will
launch the Nix read-evaluate-print-loop environment with the Home
Manager configuration loaded.

To make that more useful, also add the pkgs and options attributes from
the generated Home Manager configuration to the environment.

This doesn't currently work with flakes, because I don't use them and
I'm not confident I could safely test that function.
2025-06-29 18:12:33 -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
home-manager-ci[bot]
522c681ac2
flake.lock: Update (#7326)
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/08f22084e6085d19bcfb4be30d1ca76ecb96fe54?narHash=sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50%3D' (2025-06-19)
  → 'github:NixOS/nixpkgs/30e2e2857ba47844aa71991daa6ed1fc678bcbb7?narHash=sha256-krGXKxvkBhnrSC/kGBmg5MyupUUT5R6IBCLEzx9jhMM%3D' (2025-06-27)

Co-authored-by: home-manager-ci[bot] <214323736+home-manager-ci[bot]@users.noreply.github.com>
2025-06-29 17:35:42 -05:00
jaredmontoya
2b3bb17e87
oh-my-posh: fix nushell with v26.0.0 (#7342) 2025-06-29 17:34:38 -05:00