Commit Graph
6724 Commits
Author SHA1 Message Date
Austin Horstman acd9d8af2f hyprland: migrate settings to native lua option API 2026-05-13 16:13:28 -05:00
Noah BieweschandRobert Helgesson 7654d90b94 mailmap: map NAHO developer identity to Noah Biewesch 2026-05-13 16:18:10 +02:00
amusingimpala75andGitHub 6a0bbd6b47 wallust: fix config location on darwin
This fixes the path of the wallust config file to be under Library/Application Support/wallust when on Darwin, instead of assuming it always falls under the XDG_CONFIG_HOME (for whatever reason the owner of the Rust dirs package refuses to allow XDG on macOS, since it's non-standard)
2026-05-12 18:32:04 -05:00
Austin Horstman 5878fdadfe tests: avoid removed anime-downloader package 2026-05-12 13:08:25 -05:00
Austin Horstman 2d53d45f6b tests: avoid removed acd-cli package 2026-05-12 13:08:25 -05:00
Austin Horstman a5e92be803 maintainers: drop duplicate ojsef39 entry 2026-05-12 13:08:25 -05:00
Austin Horstman 3f64029740 tests: restore TOML goldens for remarshal 2026-05-12 13:08:25 -05:00
dependabot[bot]andAustin Horstman eb3e569fd4 flake: bump nixpkgs from 1c3fe55 to da5ad66
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `1c3fe55` to `da5ad66`.
- [Commits](https://github.com/NixOS/nixpkgs/compare/1c3fe55ad329cbcb28471bb30f05c9827f724c76...da5ad661ba4e5ef59ba743f0d112cbc30e474f32)

---
updated-dependencies:
- dependency-name: nixpkgs
  dependency-version: da5ad661ba4e5ef59ba743f0d112cbc30e474f32
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-12 13:08:25 -05:00
SunOfLife1andAustin Horstman b7e6cad335 tests/fish: add non-handler function defined as attrset 2026-05-12 12:30:59 -05:00
SunOfLife1andAustin Horstman 755b993165 fish: fix handler function sourcing
The isHandler filter, rather than checking if the function _has_ any
handler attribute, now checks if the function has any handler attribute
_that is not null_. This prevents non-handler functions defined as an
attrset (as opposed to a string) from being sourced in config.fish.
2026-05-12 12:30:59 -05:00
Seong Yong-juandAustin Horstman 1768d4e498 chromium: add Microsoft Edge
Adds `programs.microsoft-edge` to the Chromium-based browser module,
exposing the same `commandLineArgs`, `extensions`, `dictionaries` and
`nativeMessagingHosts` interface as the other supported browsers.

The `microsoft-edge` package in nixpkgs is `x86_64-linux` only, so on
macOS users must either set `programs.microsoft-edge.package = null`
(to manage configuration files only) or supply a custom
darwin-compatible package.
2026-05-12 08:55:12 -05:00
home-manager-ci[bot]andRobert Helgesson b3de8ada63 maintainers: update all-maintainers.nix
Automated update of the master maintainers list combining:
- Home Manager specific maintainers from modules/lib/maintainers.nix
- Nixpkgs maintainers referenced in Home Manager modules

**Added:** 1 maintainers
**Removed:** 0 maintainers
**Total:** 293 → 294 maintainers

** Added:** zh4ngx

Generated by: lib/python/generate-all-maintainers.py
2026-05-12 15:41:30 +02:00
Romain DelhommaisandMatthieu Coudron b659c7ffd4 hyprland: update documentation links
Updated links to the Hyprland wiki in the module documentation for the following pages: XWayland and Submaps.
This change was needed due to a new wiki structure introduced in commit [e99eac80a63d68e050623af2f69629f9423befdb](https://github.com/hyprwm/hyprland-wiki/commit/e99eac80a63d68e050623af2f69629f9423befdb.patch), rendering the current links unaivailable.
2026-05-11 23:37:44 +02:00
5b73f949a1 systemd: install systemd files when user is root (revert c2aa831) (#9274)
* systemd: install systemd files when user is root (revert c2aa831)

* Apply suggestions from code review

Co-authored-by: Anillc <void@anil.lc>

---------

Co-authored-by: Anillc <void@anil.lc>
2026-05-11 23:36:25 +02:00
nesciasandRobert Helgesson bc63bedcab email: add warning to documentation of useStartTls 2026-05-11 23:15:25 +02:00
David Sierra DiazGranadosandMatthieu Coudron 85ba629c79 rofi: change configPath type to nonEmptyStr 2026-05-11 14:45:01 +02:00
Vincent GatineandMatthieu Coudron c0729fa3f0 kanshi: Remove myself from the maintainers
I do not use kanshi anymore and thus cannot meaningfully test changes.

Since it is my only maintained module, also remove myself from the
maintainer lists.
2026-05-11 14:04:26 +02:00
ketalandMatthieu Coudron dcebe66f95 atuin: precompute fish init script 2026-05-10 22:22:32 +02:00
davidaf3andAustin Horstman 2f41903703 mako: allow null package
Make `services.mako.package` nullable and add the corresponding checks.
2026-05-09 17:31:04 -05:00
cinerealandRobert Helgesson fdb2ccba9d modular-services: document ghostunnel as a service that was not written for use as a user-level service
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson 67625b8c31 modular-services: add php-fpm as a service meant to run as a user
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson 4fa2493b30 modular-services: add config files to X-Reload-Triggers
Assisted-by: Claude:claude-sonnet-4-7

Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson 61031d425e modular-services:rewrite multi-user.target to default.target
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson 1aabcdd470 modular-services: simple example using mpd
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson db468b4822 modular-services: make configdata test use assertFileContent
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson f77079ee8a modular-services: rename system-services -> home-services
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson cdea7d89f5 modular-services: rename home-manager -> Home Manager
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
cinerealandRobert Helgesson 7eb987d1a4 manual: fix link in modular services section
Signed-off-by: cinereal <cinereal@riseup.net>
2026-05-08 15:56:35 +02:00
Andy ZhangandBruno BELANYI e4419d3123 zed-editor: add zh4ngx as maintainer 2026-05-07 09:59:16 +01:00
Andy ZhangandBruno BELANYI 838330cc25 zed-editor: add defaultEditor option
Add a 'defaultEditor' option to the zed-editor module. When enabled,
sets EDITOR and VISUAL environment variables using the package's
mainProgram executable with --wait flag.
2026-05-07 09:59:16 +01:00
ketalandMatthieu Coudron 75fac36332 direnv: avoid duplicate fish hook 2026-05-07 01:42:54 +02:00
davidaf3andMatthieu Coudron 7547f8942c quickshell: don't throw error when package is null
`programs.quickshell.package` is marked as nullable, but it will throw an error if set to null. This commit adds the necessary checks to allow setting the package to null.
2026-05-07 01:40:14 +02:00
Ludovic PagèsandRobert Helgesson 00ed86e58b Translate using Weblate (French)
Currently translated at 100.0% (39 of 39 strings)

Co-authored-by: Ludovic Pagès <nanucq@proton.me>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/fr/
Translation: Home Manager/Home Manager CLI
2026-05-05 21:33:49 +02:00
Xen'onandRobert Helgesson 24bac7a6d3 Translate using Weblate (Russian)
Currently translated at 93.7% (15 of 16 strings)

Co-authored-by: Xen'on <saveliyburk@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ru/
Translation: Home Manager/Home Manager Modules
2026-05-05 21:33:49 +02:00
nesciasandRobert Helgesson 02b61230c4 email: extend mailbox.org config flavor
Add IMAP and SMTP ports. See
<https://kb.mailbox.org/en/private/e-mail/e-mail-configuration>.
2026-05-05 21:30:17 +02:00
shimeokiandMatthieu Coudron d987617879 generic-linux-gpu: don't pass kernel 2026-05-05 15:46:31 +02:00
Benedikt RipsandAustin Horstman 5a15505146 Revert "sshAuthSock: assert that at most one agent is enabled"
This reverts commit 9dc93220c1.

On one hand, conflicting definitions for `sshAuthSock.initialization.*`
were triggering before the assertion triggered, hereby making the
assertion redundant. On the other hand, the assertion prevents users
from running multiple agents side-by-side even after resolving the
definition conflict.

See https://github.com/nix-community/home-manager/pull/8533#issuecomment-4224165151.
2026-05-05 07:52:03 -05:00
JessandMatthieu Coudron 7ef1c04d11 rclone: rename remote directory to fix failing tests
`/home/alice/files` is already used by the mount subtest.
2026-05-05 12:40:06 +02:00
Esteve FernandezandMatthieu Coudron 5be632dab0 gpu: use tmpfiles.d to set up the /run/opengl-driver symlink
Signed-off-by: Esteve Fernandez <esteve@apache.org>
2026-05-05 12:30:44 +02:00
Austin Horstman a89686d115 git: avoid implicit signing config
Fixes #6630
2026-05-04 11:53:44 -05:00
Austin Horstman 0ecfc72c7c docs: explain file collision handling
Document how Home Manager handles activation-time file collisions in the usage manual, including standalone backup flags, NixOS and nix-darwin module options, per-file force handling, recursive directory behavior, and out-of-store symlink sources.

Also clarify the home.file-style ignorelinks option description so recursive symlink behavior is easier to understand from the generated option docs.
2026-05-04 11:37:23 -05:00
Austin Horstman 938311a3bd docs: clarify package overrides with flakes
Extend the package override FAQ with flake examples for modules that expose a package option and modules that require an overlay.

Clarify that Home Manager nixpkgs.overlays only applies to standalone configurations or system-module configurations that do not enable home-manager.useGlobalPkgs.

For useGlobalPkgs setups, direct users to put overlays in the system configuration and pass any flake-provided package sets through nixosSystem or darwinSystem specialArgs.
2026-05-04 11:13:36 -05:00
Austin Horstman c3387b41c9 docs: document unstable packages with flakes
Add a flake-based example for using a secondary nixpkgs-unstable input from Home Manager modules, matching the existing channel-based FAQ guidance.

Show how standalone configurations pass the package set with extraSpecialArgs, and explain the equivalent home-manager.extraSpecialArgs path for NixOS and nix-darwin module users.

Document that separate package sets do not automatically inherit the primary package set's nixpkgs.config or overlays, and show how to pass those values when needed.
2026-05-04 11:13:36 -05:00
Austin Horstman e70904b3af docs: clarify update and upgrade workflows
Describe update and release-upgrade workflows separately so users can tell when to update the current branch versus move to a new Home Manager release branch.

Expand routine update instructions for flake users by explaining that flake inputs are pinned in flake.lock, showing all-input and selected-input update commands, and separating the rebuild command for standalone, NixOS module, and nix-darwin module installations.

Keep channel instructions available for standalone and system-module users, including the different channel owner used by NixOS module setups. Also correct nix-darwin terminology in the installation and flakes docs so those sections do not use NixOS-specific wording.
2026-05-04 11:13:36 -05:00
home-manager-ci[bot]andMatthieu Coudron d6c1bb355f maintainers: update all-maintainers.nix
Automated update of the master maintainers list combining:
- Home Manager specific maintainers from modules/lib/maintainers.nix
- Nixpkgs maintainers referenced in Home Manager modules

**Added:** 1 maintainers
**Removed:** 0 maintainers
**Total:** 292 → 293 maintainers

** Added:** sei40kr

Generated by: lib/python/generate-all-maintainers.py
2026-05-04 17:52:56 +02:00
cinerealandMatthieu Coudron fb6a0c6d39 modules: add modular services support
Adds `home.services`, an attribute set of nixpkgs
[modular services](https://nixos.org/manual/nixos/unstable/#modular-services)
sourced from `<nixpkgs/lib/services/lib.nix>`. Each service exposes
`process.argv` and the upstream NixOS-style systemd schema
(`systemd.lib`, `systemd.mainExecStart`, `systemd.service`,
`systemd.services`, `systemd.sockets`) by re-exporting
`nixos/modules/system/service/systemd/service.nix`. Service modules
shipped with `_class = "service"` (e.g.
`pkgs.<name>.passthru.services.default`) drop in unchanged --
service portability across module systems is the point of modular
services.

Lifted units are evaluated and translated from NixOS-style attrs
(`wantedBy`, `serviceConfig`, `unitConfig`, `environment`, ...) into
the section-based INI shape (`{ Unit; Service; Install; }`) that
home-manager's `systemd.user.{services,sockets}` consumes; only the
common keys are mapped, uncommon options remain reachable via
`unitConfig` / `serviceConfig` / `socketConfig`. Sub-services and
their units are dashed under the parent service name;
`process.argv` becomes the default `ExecStart` for the service's
primary unit, which defaults to `WantedBy=default.target`.

Mirrors the surface of nixpkgs' portable systemd module (services +
sockets only); other unit kinds home-manager supports natively
(timers etc.) are intentionally not modeled until upstream grows
them.

Each service's `configData.<name>` entries are materialized at
`$XDG_CONFIG_HOME/system-services/<service-prefix>/<name>` (mirroring
how `nixos/modules/system/service/systemd/{config-data-path,system}.nix`
lifts `configData` to `environment.etc`), with the absolute path
injected back into `configData.<name>.path` so the service can refer
to its files at a stable location.

Includes nmt tests covering: a basic `process.argv`-only service, a
service with a `configData` entry, and importing
`pkgs.ghostunnel.passthru.services.default` to assert the lifted user
unit contains the expected ExecStart flags and `LoadCredential`
entries.
2026-05-04 17:22:16 +02:00
Rachit Kumar VermaandMatthieu Coudron 9c6f1307e1 kitty/fix-git-integration: fix typo trustExistCode -> trustExitCode
see
https://git-scm.com/docs/git-difftool#Documentation/git-difftool.txt-difftooltrustExitCode
2026-05-04 13:41:05 +02:00
c909892de5 vscode: warn when package is a known fork and remove pname option
Existing configs setting `programs.vscode.package` to a fork package
(e.g. `pkgs.vscodium`) silently kept evaluating but wrote files to
Visual Studio Code's paths instead of the fork's. Detect known fork
pnames and emit an actionable warning pointing to the dedicated
module.

The `pname` option, previously used with `package = null`, no longer
has any effect since `nameShort`/`dataFolderName` are now factory
arguments. Replace it with `mkRemovedOptionModule` so the migration
fails loudly rather than silently.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 18:50:49 -05:00
80ab64bb79 vscode: add dedicated modules for VSCode forks
Add standalone modules for Antigravity, Cursor, Kiro, VSCodium, and
Windsurf using the mkVscodeModule factory. Each module provides its own
programs.<name> option namespace, allowing multiple VSCode-based editors
to be configured simultaneously.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 18:50:49 -05:00
26412a220b vscode: extract mkVscodeModule factory function
Extract the core vscode module logic into a reusable factory function
(mkVscodeModule.nix), following the established mkFirefoxModule pattern.
This is a pure refactor with no behavior change — programs.vscode
retains the same interface.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 18:50:49 -05:00