Commit Graph

6510 Commits

Author SHA1 Message Date
home-manager-ci[bot]
40e3b99d82 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/68d8aa3d661f0e6bd5862291b5bb263b2a6595c9?narHash=sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw%3D' (2026-04-05)
  → 'github:NixOS/nixpkgs/4c1018dae018162ec878d42fec712642d214fdfa?narHash=sha256-ar3rofg%2BawPB8QXDaFJhJ2jJhu%2BKqN/PRCXeyuXR76E%3D' (2026-04-09)
2026-04-12 05:47:34 +00:00
Daru
b0569dc6ec fresh-editor: add defaultEditor option 2026-04-11 11:33:31 +02:00
Daru
fb821d6422 fresh-editor: add extra packages option 2026-04-11 11:33:31 +02:00
mikaeladev
f899c5d6f3 pipewire: add module 2026-04-11 11:21:32 +02:00
William Phetsinorath
f7f6a559c2 xdg: add support for local bin path
Signed-off-by: William Phetsinorath <william.phetsinorath@shikanime.studio>

Signed-off-by: William Phetsinorath <william.phetsinorath@shikanime.studio>
Change-Id: I045f07415467ca6d409a6f4d52e753866a6a6964
2026-04-11 09:58:37 +02:00
MrQubo
e35c39fca0 tmux: reduce default escapeTime 2026-04-09 19:43:45 -05:00
Austin Horstman
0eddb2cc1a neovim: use improved submodule deprecation detection
Prevent false positives with deprecation warning.
2026-04-09 19:09:46 -05: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
teto
7f6c5834ca neovim: change the plugin default type from viml -> lua
When introduced the neovim lua API was not as good as it is today.
I suspect the majority of users now default to lua rather than viml so
let's default to it.
2026-04-09 19:09:46 -05:00
philip-730
a91f37efba services.darkman: add unified scripts option
Add a `scripts` option that places scripts in `$XDG_DATA_HOME/darkman/`,
darkman's unified script interface. The legacy `darkModeScripts` and
`lightModeScripts` options remain supported.

Closes #8940
2026-04-09 19:09:27 -05:00
Akshett Rai Jindal
5c663d5781 gemini-cli: add option for integration with programs.mcp.servers 2026-04-09 19:08:48 -05:00
Akshett Rai Jindal
5ef2b9862f gemini-cli: add skills option
Add programs.gemini-cli.skills for declarative skill files under ~/.gemini/skills.

Includes module tests for file and directory skill sources and inline content.
2026-04-09 19:08:48 -05:00
Matt Dembiczak
0f9090a77c aerc: encode username in account URLs
Usernames containing special characters like '@' were included
verbatim in IMAP/SMTP URLs, producing invalid URIs. Apply
'lib.strings.escapeURL' to the username so that these characters
are properly encoded.
2026-04-09 18:36:49 -05:00
jtrrll
505e91f877 glance: add darwin support 2026-04-09 18:13:04 -05:00
Lorenzo Manacorda
c975a66a56 niriswitcher: remove module
The upstream project has been archived.
2026-04-09 14:16:59 -05:00
Dennis Schridde
2877554a72 programs.nheko: link to upstream issue in description for settings
See-also: https://github.com/Nheko-Reborn/nheko/issues/1591
2026-04-09 14:13:59 -05:00
Jan Spennemann
7ba4ee4228 thunderbird: allow configuration of EWS accounts
Add configuration options for EWS in Thunderbird which is
supported since version 145.
2026-04-08 16:28:57 -05:00
Utkarsh Gupta
35f8c398b4 atuin: add default value for log.dir 2026-04-08 16:28:21 -05:00
Austin Horstman
230199801b statix: enable misc rules that we already respect
Misc no-hit rules that we already are in compliance with. Ignoring
`faster_` rules because those prefer builtin > lib and we have lib
compat behavior to prefer.
2026-04-08 16:20:15 -05:00
Austin Horstman
f04b520e5b git: ignore more statix cleanup commits 2026-04-08 16:20:15 -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
11ad9d2e42 statix: enable useless_has_attr
Enable statix's useless_has_attr rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
5209a256fd statix: enable empty_list_concat
Enable statix's empty_list_concat rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
838db3b5a8 git: ignore statix collapsible let in cleanup 2026-04-08 16:00:28 -05:00
Austin Horstman
74d8d47034 statix: enable collapsible_let_in
Enable statix's collapsible_let_in rule and apply its auto-fixes in the podman linux modules.

This keeps the ratchet focused on one auto-fixable warning at a time.
2026-04-08 15:28:35 -05:00
Austin Horstman
58a6be9fae git: ignore statix inherit commit 2026-04-08 15:28:35 -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
Austin Horstman
9ddbb69d18 vicinae: guard refresh-apps activation 2026-04-08 14:38:50 -05:00
Austin Horstman
7843c0025a vicinae: fix x-restart triggers 2026-04-08 14:38:50 -05:00
Austin Horstman
4ac0a4fd15 maintainers: update all-maintainers 2026-04-08 10:10:44 -05:00
Austin Horstman
4a0ded6f84 mbsync: KarlJoad -> ravenjoad 2026-04-08 10:10:44 -05:00
Austin Horstman
991a001751 mu: KarlJoad -> ravenjoad 2026-04-08 10:10:44 -05:00
home-manager-ci[bot]
dd82782450 flake.lock: Update
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/6201e203d09599479a3b3450ed24fa81537ebc4e?narHash=sha256-ZojAnPuCdy657PbTq5V0Y%2BAHKhZAIwSIT2cb8UgAz/U%3D' (2026-04-01)
  → 'github:NixOS/nixpkgs/68d8aa3d661f0e6bd5862291b5bb263b2a6595c9?narHash=sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw%3D' (2026-04-05)
2026-04-08 10:10:44 -05:00
Robert Helgesson
527e47b78f files: handle overlapping file targets
The current behavior of `home.file` is inconsistent when handling
recursive file with another, overlapping, non-recursive file.

Specifically, consider a configuration

```nix
home.file = {
  "foo" = { source = ./foo; recursive = true; };
  "foo/bar".text = "some other file";
};
```

where `./foo` is a directory containing a file `bar`. Switching to
this configuration will result in the `./foo` directory being
recursively symlinked while the "foo/bar" entry is ignored. Note,
building the home files derivation does log

> File conflict for file 'foo/bar'

On the other hand, the supposedly equivalent configuration

```nix
home.file = {
  "foo" = { source = ./foo; recursive = true; };
  abc = { target = "foo/bar"; text = "some other file"; };
};
```

results in the `./foo` directory not being recursively symlinked,
i.e., only the file `foo/bar` shows up in the built configuration.
This time the home files build log contains

> File conflict for file 'foo'

This commit makes the behavior more consistent in that we always
handle the file in a unified manner. The conflict resolution is
offered in three flavors, "ignore", "error", and "override" indicating
whether the recursively symlinked file wins, the entire build errors
out, and the regularly symlinked file wins.

The current default is "ignore" since it is the resolution that most
closely matches the current behavior, at least when the file attribute
name is used as the target path.

The other two resolutions can be chosen by setting the
`home.fileOverlapResolution` option, which is set as invisible due to
its experimental nature.
2026-04-07 23:33:05 -05:00
Austin Horstman
34cb41efe4 ci: fix labeler file count logic 2026-04-07 23:27:55 -05:00
Austin Horstman
f0c13b0ebc ci: limit labeler to small pull requests 2026-04-07 23:14:48 -05:00
Austin Horstman
c59483f8dc ci: improve robustness of maintainer extraction 2026-04-07 23:14:48 -05:00
Austin Horstman
41f55c248a ci: limit number of automated reviewer requests 2026-04-07 22:58:13 -05:00
Bernardo Meurer Costa
6f35bb9799 tmux: use idempotent new-session to avoid duplicate sessions
When both system-level (e.g., NixOS programs.tmux) and home-manager
tmux configs set newSession = true, tmux would create two sessions
on startup since both /etc/tmux.conf and ~/.config/tmux/tmux.conf
contain the new-session command.

Change new-session to new-session -A -s 0, which attaches to session
"0" if it exists, otherwise creates it. This makes the command
idempotent so multiple configs can safely enable newSession.
2026-04-07 21:52:27 -05:00
Miles Wirht
3d822c1dba dbeaver: init module 2026-04-07 21:32:28 -05:00
tarzst
98b4d61cfa neovim: disable python3 and ruby providers by default 2026-04-07 16:44:58 -05:00
Benedikt Ritter
9cc761169a tmuxinator: use yml file ending
Files with yaml file ending are recognized by `tmuxinator start` but not
by `tmuxinator list`.

Resolves #9031
2026-04-07 13:40:48 -05:00
philip-730
530d83a5a8 programs.wezterm: add philip-730 as maintainer 2026-04-07 13:39:56 -05:00
philip-730
92d382b982 programs.wezterm: add settings option
Add a `settings` option that allows WezTerm to be configured
declaratively using a Nix attribute set. Settings are serialized to
Lua using `lib.generators.toLua`. Raw Lua expressions such as
`wezterm.font` and `wezterm.action.*` can be embedded using
`lib.generators.mkLuaInline`.

When `settings` is set, `extraConfig` is still supported. It is
wrapped in an immediately invoked function expression so that any
`return` statement (including the common `return {}` and
`return config` patterns) is captured and merged on top of the
generated settings, preserving full backward compatibility.

The merge between `settings` and `extraConfig` is shallow: a key
returned from `extraConfig` replaces the entire corresponding value
from `settings`, including nested tables and arrays.

Closes #6047
2026-04-07 13:39:56 -05:00
philip-730
d65fb79dcc maintainers: add philip-730 2026-04-07 13:39:56 -05:00
leiserfg
b0cf7b520c vicinae: refresh app list on activation 2026-04-07 13:33:38 -05:00
Adam Dinwoodie
4bdfeff1d9 syncthing: set systemd start limits
Add StartLimitIntervalSec and StartLimitBurst configuration to the
Syncthing systemd unit.  This prevents Syncthing restarting indefinitely
if it hits a bug such as NixOS/nixpkgs#502836.

The values here are taken from the values provided in the upstream
Syncthing example systemd unit[0].

[0]: 1a3cbca017/etc/linux-systemd/user/syncthing.service
2026-04-07 12:00:24 +02:00
Nara Díaz Viñolas
2bd16b16a7 Translate using Weblate (Catalan)
Currently translated at 100.0% (39 of 39 strings)

Translate using Weblate (Spanish)

Currently translated at 100.0% (39 of 39 strings)

Co-authored-by: Nara Díaz Viñolas <nara.diaz.vinolas@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ca/
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/es/
Translation: Home Manager/Home Manager CLI
2026-04-07 08:41:37 +02:00
Robert Helgesson
5de7dbd151 restic: escape environment variables
This allows better handling of, e.g., file names with spaces.
2026-04-06 08:39:40 +02:00