298 Commits

Author SHA1 Message Date
Austin Horstman
d33c97ec1b lib/strings: add isPathLike helper 2026-06-05 11:39:28 -05:00
Nikhil Singh
5fadbec07a maintainers: add semi710 2026-06-05 11:13:52 -05:00
Austin Horstman
5ded124f91 lib: add deprecated option warning helpers 2026-06-04 12:20:09 -05:00
Kays
a7c15f4f65 maintainers: add kayskayskays 2026-06-02 08:56:09 -05:00
Austin Horstman
c7c139f742 zsh: escape double-quoted values
The zsh value renderer emits strings in double quotes so session variables can still expand references such as $HOME. Embedded quotes, backslashes, and backticks were not escaped, which could corrupt generated zsh code or trigger command substitution.

Escape those double-quote-sensitive characters while preserving dollar expansion for existing session-variable semantics.
2026-06-01 21:22:13 -05:00
SunOfLife1
f9be3dd495 maintainers: add SunOfLife1 2026-05-20 23:09:02 -05:00
Garklein
2cb4f4db37 maintainers: add garklein 2026-05-15 08:59:43 -05:00
Austin Horstman
a5e92be803 maintainers: drop duplicate ojsef39 entry 2026-05-12 13:08:25 -05: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
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
9ce9f7f128 shell: support boolean sessionVariables
Allow boolean values in sessionVariables for Home Manager shell modules and serialize them consistently in generated session files.

- modules/lib/shell: stringify boolean values using lib.boolToString in export helper

- modules/home-environment, programs.bash, programs.zsh: include lib.types.bool in sessionVariables option type

- tests: add IS_TRUE/IS_FALSE assertions in home-environment, bash, and zsh session-variables tests
2026-05-02 09:50:08 -05:00
0xdsqr
7a45713b5d maintainers: add dsqr 2026-04-29 22:07:11 -05:00
Josef Hofer
f92e976f40 maintainers: add ojsef39 2026-04-29 16:37:13 -05:00
Andrew Marshall
d45a13f96c {home-environment,bash,zsh}: support ignoring null sessionVariables
Some applications consider environment variables to be “true” simply if
they are set. Previously it was not possible to have a var set and later
override (e.g. with `lib.mkForce`) to *unset* it. This makes that
possible. The filtering must be done in the `exportAll` as attempting to
do it in the option’s `apply` causing infinite recursion (likely why it
is `lazyAttrsOf`).
2026-04-27 11:20:51 -05:00
Tae Song
38bf0202ca files: change target type to disallow empty strings 2026-04-26 11:47:55 +02:00
soracat
ad16ee43a8 maintainers: add soracat 2026-04-22 19:34:24 -05:00
Isaac Shiells Thomas
78bf0fe29d maintainers: add isaacST08 2026-04-22 15:26:03 -05:00
Austin Horstman
b85e8fff94 lib/deprecations: suppress no-op state-version warnings
Closes #9045
2026-04-19 22:48:45 -05: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
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
yaaaarn
ffa740c0df syshud: add module
PR #9075
2026-04-12 17:45:41 +02:00
Austin Horstman
fbc97e23f6 lib/deprecations: improve submodule warning support
Allow warning on specific submodule options with trigger fields and
omitted fields that trigger the warning.
2026-04-09 19:09:46 -05:00
Lorenzo Manacorda
c975a66a56 niriswitcher: remove module
The upstream project has been archived.
2026-04-09 14:16:59 -05:00
Austin Horstman
de90ee2408 statix: enable eta_reduction
Enable statix's eta_reduction rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
74b0e97937 statix: enable empty_pattern
Enable statix's empty_pattern rule and apply its auto-fixes across the affected modules and tests.
2026-04-08 16:00:28 -05:00
Austin Horstman
01ea51d706 treewide: use inherit for attribute assignments
This change converts redundant attribute assignments of the form `a =
a;` or `a = someSet.a;` into cleaner `inherit` statements. This reduces
verbosity and follows common Nix style for bringing attributes into
scope.

Statix Codes: W03 (manual_inherit), W04 (manual_inherit_from)

Also include statix and the rule in our configuration.
2026-04-08 14:47:48 -05:00
philip-730
d65fb79dcc maintainers: add philip-730 2026-04-07 13:39:56 -05:00
Diego Saint Esteben
f7a3fe06c5 maintainers: add dosten 2026-03-26 22:51:09 -05:00
Austin Horstman
66aa75f6e8 lib/deprecations: support deferred state-version warnings
Extend mkStateVersionOptionDefault so merged attrset callers can defer
warning emission to config.warnings while still exposing the effective
state-version default and option priority metadata.

Add dedicated lib tests for deferred warning behavior on both legacy and
current state versions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-24 14:08:36 -05:00
oneorseveralcats
2c629ba7ed maintainers: add oneorseveralcats 2026-03-22 12:39:22 -05:00
Austin Horstman
95496df8c0 lib/deprecations: add state version default helper
Add a helper for options whose defaults change across home.stateVersion boundaries. This centralizes the warning text and documentation shape so modules do not need to hand-roll the same migration pattern at each call site.

The helper takes legacy and current branches with a runtime value plus optional static documentation text. That keeps the actual default version-gated while avoiding option docs that depend on evaluated config. Add a focused test covering the legacy warning path, the new-value path, and an explicit legacy pin that should not warn.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-22 11:46:51 -05:00
Malix - Alix Brunet
887e96cf30 lib: remove rec in shell.nix 2026-03-21 18:23:54 -05:00
Austin Horstman
c4ab19c919 lib: extend lib to include hm maintainers
Upstream change is validating all maintainers against lib.maintainers,
need to merge our maintainer list in to pass doc building.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-19 15:16:56 -05:00
luo jiyin
7d06e0cefe treewide: fix spelling errors 2026-03-11 22:32:16 -05:00
Austin Horstman
d76a12d115 maintainers: drop duplicated mikaeladev from HM
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-03 14:24:37 -06:00
Austin Horstman
8f7638b4db maintainers: drop duplicated karaolidis from HM
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-03 14:24:37 -06:00
rsahwe
1dcebb44c6 maintainers: add rsahwe 2026-02-20 16:06:11 -06:00
mikaeladev
6f64dee491 maintainers: add mikaeladev 2026-02-04 21:47:21 -06:00
Austin Horstman
01415693b0 maintainers: remove genericnerdyusername
https: //github.com/NixOS/nixpkgs/pull/477019
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-18 13:44:51 -06:00
Austin Horstman
0150937c66 maintainers: remove duplicate hey2022
Added to nixpkgs

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-13 22:51:16 -06:00
Evy Garden
3912c447ee lib.generators.toKDL: fix _children not being applied on root level 2026-01-12 20:38:42 -06:00
teto
8bc5473b6b maintainers: remove duplicated aionescu
already exists in nixpkgs
2026-01-10 19:06:42 +01:00
Michael Farber Brodsky
480b0b2b81 maintainers: add farberbrodsky 2026-01-09 10:17:21 -05:00
Austin Horstman
db105fadc4 maintainers: rrvsh moved to nixpkgs
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-08 13:57:12 -05:00
Austin Horstman
609846bfd2 maintainers: nickthegroot moved to nixpkgs
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-08 13:57:12 -05:00
Benedikt Rips
d1da1de5c2 lib.darwin: simplify assertInterval 2026-01-08 14:29:57 +01:00
PerchunPak
d4e4d5cfa3 lib: make toHyprconf support strings and attrs in sections
Adds support for

    section = [
      "abc"
      { a = 123; }
    ];

Which gets generated to

    section=abc

    section {
      a=123
    }

This is very useful with the new windowrule syntax, where you can
create anonymous window rules as strings and named rules as attribute
sets. See <https://wiki.hypr.land/Configuring/Window-Rules/>.
2026-01-02 15:56:43 +01:00
jtrrll
a31a6b2d30 maintainers: add jtrrll
add jtrrll to the list of home-manager maintainers
2025-11-09 10:12:54 -06:00
prescientmoon
a1224de197 maintainers: add prescientmoon 2025-11-09 10:12:08 -06:00