Commit Graph

6756 Commits

Author SHA1 Message Date
Benedikt Rips
dd71501fb7 treewide: move NixOS-inherited defaults to their option definitions 2026-05-18 13:23:44 +02:00
Benedikt Rips
a2c0bcaff4 fontconfig: document defaulting behavior on NixOS
'fonts.fontconfig.enable' is, according to the documentation, disabled
by default. However, when Home Manager is installed as a NixOS submodule
and 'home-manager.useUserPackages' is enabled, it defaults to NixOS'
'fonts.fontconfig.enable'. This commit makes this behaviour transparent.

Closes #3966.
2026-05-18 13:23:44 +02:00
Austin Horstman
08c9d01457 hyprland: add khaneliman maintainer 2026-05-17 22:35:47 -05:00
Austin Horstman
1bc2cf3eed hyprland: support lua variables in settings 2026-05-17 22:35:47 -05:00
Austin Horstman
d918d22422 walker: add elephant integration
Add an option to order Walker's user service after elephant.service and add a systemd Requires= dependency when enabled.

The option defaults to services.elephant.enable, so Home Manager-managed Elephant setups work automatically while users can still enable the dependency for an externally managed elephant.service.
2026-05-17 22:25:27 -05:00
Austin Horstman
84ddd33ed0 elephant: add module
Add a service module for Elephant with package installation, provider selection, TOML config generation, and a systemd user service.

This gives Elephant its own configuration surface instead of wiring it through Walker.
2026-05-17 22:25:27 -05:00
Austin Horstman
355734d876 treewide: remove literalExpression where unneeded
`literalExpression` is intended just to signify code that needs to stay
a string that gets represented exactly as-is for docs. It has been
misused heavily and people get confused repeatedly on when or not to use
it because of the rampant misuse.
2026-05-17 21:43:25 -05:00
Austin Horstman
917e3469fe mkFirefoxModule: allow per-extension settings force
Fixes the force acknowledgement logic for extension settings so an
extension-specific force flag is sufficient for that extension.

References
https://github.com/nix-community/home-manager/discussions/7910
2026-05-17 21:42:38 -05:00
Tom van Dijk
bcb774cfc3 git-credential-keepassxc: fix misplaced parentheses 2026-05-17 16:14:20 +02:00
Alvaro Viejo
26aaab785b claude-code: fixes enableMcpIntegration option docstring
Fixes typo in enableMcpIntegration option's docstring referencing
opencode's option instead of claude-code's.
2026-05-16 13:00:30 -05:00
Austin Horstman
d5ece85b6d zsh: guard session variables under nounset
Use parameter expansion with a default value when checking Home Manager's session-variable sentinels.

Users with zsh NO_UNSET or shell nounset enabled were seeing parameter-not-set errors before the generated session variables had a chance to export the sentinel variables.

Update the home session-variable and zsh fixtures to cover the generated guards.
2026-05-16 08:20:26 -05:00
kira
32b42d71b4 discord: add option for different config locations
Different discord branches use different config locations, but home-manager
uses `${configDir}/discord` unconditionally. This adds an option that changes
that to `${configDir}/${configName}`.
2026-05-16 09:52:56 +01:00
Austin Horstman
1772e8fb83 qt: pass negative KDE settings as values
Insert the command-option terminator before values passed to kwriteconfig6 so negative numeric settings are not parsed as command flags.

This fixes KDE settings such as DimDisplayIdleTimeoutSec = -1, which previously produced an unknown-option error from kwriteconfig6.

Cover the regression in the existing qt-basic NMT test by checking the generated activation command includes the terminator before the negative value.
2026-05-16 09:24:45 +02:00
Austin Horstman
f63af17f47 podman: quote Quadlet labels with spaces
Quote generated Quadlet key-value entries when attrset-backed values contain whitespace, preserving the value as a single systemd/Quadlet field.

Without quoting, label values such as Traefik rules are split by podman-system-generator into multiple invalid --label arguments.

Extend the container NMT fixture with a label containing spaces and assert the generated service preserves it as one label.
2026-05-16 09:20:22 +02:00
Robert Helgesson
92a8736142 ci: quote some shell variables 2026-05-15 23:21:38 -05:00
Robert Helgesson
3c71cec05d ci: use grep -c instead of grep|wc -l 2026-05-15 23:21:38 -05:00
znmz
c7fad81970 sherlock: update aliases example to use the official NixOS Wiki link
nixos.wiki -> wiki.nixos.org
2026-05-15 15:24:41 -05:00
angel
ca77575d39 t3code: add module
Adds programs.t3code so T3 Code can be installed and configured from Home
Manager, including optional merge semantics when the app mutates its config
files. Includes a news entry and tests for empty, merged, and immutable setups.
2026-05-15 10:21:14 -05:00
Garklein
1bedcc8740 exwm: add module
adapted from nixpkgs's exwm service
2026-05-15 08:59:43 -05:00
Garklein
2cb4f4db37 maintainers: add garklein 2026-05-15 08:59:43 -05:00
jiezhuzzz
e7a7c550e2 claude-code: add configDir option
Make the location of Claude Code's configuration files configurable.
The option defaults to `~/.claude` so existing setups are unaffected,
and exports the `CLAUDE_CONFIG_DIR` environment variable automatically
whenever the directory differs from the upstream default so the CLI
reads from the same location home-manager wrote to.

The option follows the convention established by
`programs.github-copilot-cli`: an absolute-path string with a
`defaultText` for clean documentation rendering, an `upstreamConfigDir`
constant, and a session variable wired only when the user opts out of
the upstream default.
2026-05-15 08:13:54 -05:00
SunOfLife1
3e707f5f93 eww: remove shell integration
Shell integration was only used to source completions on shell startup, but shell completions have been installed with eww by nixpkgs since December 2024 (cc419ccaef)
2026-05-15 11:13:18 +01:00
soweli Emi
9846abe15e Translate using Weblate (Toki Pona)
Currently translated at 87.5% (14 of 16 strings)

Translate using Weblate (Toki Pona)

Currently translated at 94.8% (37 of 39 strings)

Co-authored-by: soweli Emi <emi@alchemi.dev>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/tok/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/tok/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2026-05-14 19:35:20 -05:00
Ilan Joselevich
c68d2a2437 ssh-tpm-agent: add extraArgs option 2026-05-14 12:56:08 -05:00
cyberworm
2809b9e3f8 ssh: allow explicit "no" for identitiesOnly in matchBlocks
Allows overriding identitiesOnly from "yes" to "no" under a more specific matchBlock.
2026-05-14 12:28:56 -05:00
Austin Horstman
3d4f5477f0 hyprland: remove old removed options
Been several years, don't need hanging around anymore.
2026-05-14 10:29:02 -05:00
Marien Zwart
c3e7eb98c3 podman: fix tests
Commit f4bcc1ae1c contains what looks like
a merge issue in some golden testdata (only used by some tests that
require enableLegacyIfd). Fix this.

`nix build .#test-all-enableBig-false-enableLegacyIfd-true` does not
pass (on my NixOS / Linux system) without this change, but does with it.
2026-05-14 10:18:50 -05:00
Marien Zwart
4f9cbe4384 tailscale-systray: make theme configurable 2026-05-14 15:07:00 +02:00
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕
f04b141d1a yazi: test plugin setup generation 2026-05-13 22:12:52 -05:00
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕
41d5f1e504 yazi: add plugin setup options 2026-05-13 22:12:52 -05:00
Austin Horstman
9760b31dab hyprland: generate LuaLS config 2026-05-13 16:13:28 -05:00
Austin Horstman
03d2aa6317 hyprland: submaps option lua support 2026-05-13 16:13:28 -05:00
Austin Horstman
acd9d8af2f hyprland: migrate settings to native lua option API 2026-05-13 16:13:28 -05:00
Noah Biewesch
7654d90b94 mailmap: map NAHO developer identity to Noah Biewesch 2026-05-13 16:18:10 +02:00
amusingimpala75
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]
eb3e569fd4 flake: bump nixpkgs from 1c3fe55 to da5ad66
Bumps [nixpkgs](https://github.com/NixOS/nixpkgs) from `1c3fe55` to `da5ad66`.
- [Commits](1c3fe55ad3...da5ad661ba)

---
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
SunOfLife1
b7e6cad335 tests/fish: add non-handler function defined as attrset 2026-05-12 12:30:59 -05:00
SunOfLife1
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-ju
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]
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 Delhommais
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](e99eac80a6.patch), rendering the current links unaivailable.
2026-05-11 23:37:44 +02:00
David Alcalde
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
nescias
bc63bedcab email: add warning to documentation of useStartTls 2026-05-11 23:15:25 +02:00
David Sierra DiazGranados
85ba629c79 rofi: change configPath type to nonEmptyStr 2026-05-11 14:45:01 +02:00
Vincent Gatine
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
ketal
dcebe66f95 atuin: precompute fish init script 2026-05-10 22:22:32 +02:00