1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-11-08 19:46:05 +01:00
Commit graph

1716 commits

Author SHA1 Message Date
Thierry Delafontaine
faa5b42eca codex: support XDG Base Directory specification
- Configuration file is now placed in XDG_CONFIG_HOME/codex/config.toml by default for versions >=0.2.0 when preferXdgDirectories is enabled.
- Falls back to ~/.codex/config.yaml for versions <0.2.0 and to ~/.codex/config.toml when preferXdgDirectories is disabled
- Sets CODEX_HOME environment variable to $XDG_CONFIG_HOME/codex when using XDG directories.
- Updated tests to verify XDG directory behavior and environment variable presence.
2025-08-07 14:04:33 -05:00
Austin Horstman
d8a475e179 tests: add mullvad-vpn to darwin scrublist
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-08-07 09:13:13 -05:00
awwpotato
c7acf2b1bf mullvad-vpn: add module 2025-08-07 08:39:36 -05:00
Benedikt Rips
62fdc8d410 keepassxc: add autostart option 2025-08-06 19:08:16 -05:00
Benedikt Rips
2a29968912 git-credential-keepassxc: init module 2025-08-06 12:39:55 -05:00
Austin Horstman
bf2dc7ebd8 tests: add tests package to search / run tests
One of the most annoying things is finding the test you want to run and
executing it, manually. Created a python script to leverage fuzzy
finding our available test outputs to execute with the CI commands.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-08-06 12:33:37 -05:00
Benedikt Rips
88913c98fe goto: init module 2025-08-06 10:57:16 -05:00
awwpotato
ad5d2b4aa7 rescrobbled: add module 2025-08-06 00:15:47 -05:00
Austin Horstman
ac351d435a tests/news: add new test for news entries
We need to catch the news entry issues sooner. Right now we don't have
any testing around them.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-08-06 00:11:26 -05:00
Austin Horstman
a379077675 sherlock: init module
Creating a sherlock module for the sherlock launcher. Prefer a file be
controlled by a single option and using settings for the main config
file.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-08-05 20:33:37 -05:00
Cool-Game-Dev
b7ee8deefc programs/nix-search-tv: init
Create the programs/nix-search-tv module, with options to enable,
change settings, and television integration.

Co-authored-by: awwpotato <awwpotato@voidq.com>
2025-08-05 14:10:01 -05:00
Benedikt Rips
74b4edc2d2 fontconfig: add options for font rendering 2025-08-05 14:05:43 -05:00
Benedikt M. Rips
36ad7d25fb
zsh: option to define autoloadable site-functions (#7611)
Add an option to the Zsh module that allows defining autoloadable site functions.
2025-08-05 14:03:10 -05:00
PopeRigby
98aed449ba television: update channel location
Co-authored-by: awwpotato <awwpotato@voidq.com>
2025-08-02 17:46:16 -05:00
robin
899af4218c
tmux: fix prefix and shortcut settings (#7549)
adjusting the tmux lines for setting the prefix.
previously the prefix option would be set in the prefix key table, causing it to not register correctly.

- updated tests
2025-08-01 09:53:46 -05:00
Foxocube
4e97102bd4
nh: add options for specific flakes (#7566)
* nh: Add options for specific flakes
* nh: Add tests for specific flake options

---------

Co-authored-by: Foxocube <git@foxocube.xyz>
2025-07-31 12:41:29 -05:00
Robert Helgesson
bd82507edd home-manager: re-enable gcroot handling for NixOS module
It was a bit too ambitious to also remove production of the gcroot, we
need it to keep track of the currently active Home Manager
configuration.

Fixes #7583
2025-07-31 08:25:36 +02:00
Austin Horstman
0630790b31 tests: include test names in passthru
Allow easily seeing what tests are involved in a chunk so you can
identify tests -> chunks easily.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-30 10:13:54 -05:00
Austin Horstman
53524d8b27 tests: chunk size 250 -> 50
Just seeing how this affects CI rebuilds / speeds.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-30 10:13:54 -05:00
Austin Horstman
ab14805267 darwinScrublist: add superfile
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 17:50:16 -05:00
Martin Popovski
4bf124678b
hyprland: Add "output" to importantPrefixes option default (#7507)
Adds support for `monitorv2` syntax
2025-07-29 16:41:27 -05:00
Austin Horstman
1a8b119e60 tests/caffeine: add test coverage
- Add basic-service.nix test for caffeine service configuration
- Test systemd service generation with proper graphical-session.target
integration

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 14:47:02 -05:00
Austin Horstman
cec4c1be7e tests/ssh-agent: add test coverage
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 14:46:54 -05:00
Austin Horstman
85a5287116 tests/gnome-keyring: add test coverage
- Add basic-service.nix test for default gnome-keyring configuration
- Add custom-components.nix test for pkcs11, secrets, and ssh components

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 14:46:36 -05:00
kerfuzzle
fa184c5460 hyprsunset: Add tests for transitons option
Adds tests to ensure that the services are still created correctly and the correct deprecation warnings are shown

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 13:11:56 -05:00
kerfuzzle
7c01358ff6 hyprsunset: Add tests for hyprsunset.conf file
Adds tests to verify that the configuration files and services were created sucessfully, even in a no configuration case

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 13:11:56 -05:00
Austin Horstman
0f9fae161d tests/arrpc: add service module test coverage
- Add custom-target.nix test for custom systemd target configuration

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-29 10:31:11 -05:00
Austin Horstman
a1b7e7f510 tests/antidote: remove deprecated relative path usage
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-28 14:47:42 -05:00
Austin Horstman
e52c6c3da3 zsh: env var assertion for dotdir
Needs to be known at build time. Ensure user doesn't accidentally use
env var in `dotDir`

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-28 14:47:42 -05:00
Austin Horstman
40af7ba06b zsh: relative path deprecation warning
Warn users when they configure a relative path. We want to encourage
using absolute paths and env variables.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-28 14:47:42 -05:00
Austin Horstman
9ff467fbe7 tests/zsh: add more path test cases
Test the new lib file path function

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-28 14:47:42 -05:00
Austin Horstman
800f16a9c5 tests: forward only test chunks to buildbot
We currently only need the tests covered by test-chunks in CI. We will
migrate more tests into the buildbot CI, as we are able to flesh them
out more.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
7a02711a61 tests: integration tests only run on linux
Using dependencies that require linux.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
234f10ec6d tests/flake: add buildbot output
Filters tests to specific platforms for buildbot.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
e45ff5651c ci: split tests into chunks
We have lots of tests and would like to add more. However, adding more
testing coverage comes at the cost of a slower CI when we run them
sequentially. This adds test outputs that are chunked however we'd like
to tune for batch sizes. Allowing us to create a parallelized CI
workflow.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
72cc1e3134 tests/hyprlock: update tests with upstream changes
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 07:03:54 -05:00
Friedrich Altheide
26e33ea5c0 docker-cli: Improve docs, fix enviornment variable 2025-07-25 14:03:11 -05:00
Kristopher James Kent (kjkent)
9fca491587 zsh: improve histfile handling
Previously, a stateVersion check for 20.03 determined whether or not the input to
`programs.zsh.history.path` would be prepended with `$HOME`. However, this was not
communicated in the documentation, which stated the version check determined whether
the default histfile location would be in `programs.zsh.dotDir` or
`home.homeDirectory`.

The current change simplifies matters and brings path handling in-line with that of
the preceding work on dotDir path handling. If a relative path is provided, it is
parsed as being relative to `home.homeDirectory`. Both absolute and relative paths
are supported, and are cleaned before being passed to other functions.

Tests have been rewritten for the new logic, with case handling for reusability.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-25 13:15:29 -05:00
Kristopher James Kent (kjkent)
21399deff2 zsh: improve dotDir handling
Previously, `config.programs.zsh.dotDir` prepended strings with `$HOME`.
This caused issues like nix-community#5100, where `$HOME` is
inconsistently resolved in time for the evaluation of the option. The handling
of this variable is also inconsistent with how paths are handled elsewhere,
including within the same module, where `config.programs.zsh.history.path`
does not mutate the supplied string.

To preserve backwards compatibility, this change prepends
`config.home.homeDirectory` to relative paths, while assigning absolute paths
unchanged. Tests for both cases are added.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-25 13:15:29 -05:00
Thierry Delafontaine
64796151f7 opencode: add JSON schema reference to config.json output
- Automatically include "$schema": "https://opencode.ai/config.json" in the generated
  opencode config.json file
- Update documentation to mention the added schema property
- Add corresponding "$schema" entry in test config.json file for validation purposes

Closes #7506
2025-07-24 11:05:45 -05:00
Thierry Delafontaine
1df662dde0 opencode: add empty-settings test
- Add `empty-settings` test to ensure the config file is not generated
  when no settings are provided
2025-07-24 11:05:45 -05:00
Thierry Delafontaine
08edcbe9df opencode: add support for global custom instructions via rules option
- Introduce `rules` option to provide global custom instructions for opencode
- Write `rules` content to `~/.config/opencode/AGENTS.md` if non-empty
- Update tests to cover presence and absence of `AGENTS.md` file with rules content
2025-07-24 11:05:45 -05:00
Aguirre Matteo
1fde6fb1be
yofi: add module (#7528) 2025-07-23 13:13:14 -05:00
Friedrich Altheide
e9c599e40c
yarn: add module (#7526) 2025-07-23 10:42:37 -05:00
Austin Horstman
b4752b0eda treewide: format with latest stable formatter
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-23 10:27:52 -05:00
Austin Horstman
6cf61d10e8 tests/darwinScrublist: add opencode
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-23 10:27:52 -05:00
Robert Helgesson
de448dcb57
home-manager: avoid profile management during activation
This commit deprecates profile management from the activation script.
The profile management is instead the responsibility of the driving
software, for example, the `home-manager` tool in the case of
standalone installs.

The legacy behavior is still available for backwards compatibility but
may be removed in the future.

The new behavior resolves (or moves us closer to resolving) a number
of long standing open issues:

- `home-manager switch --rollback`, which performs a rollback to the
  previous Home Manager generation before activating. While it was
  previously possible to accomplish this by activating an old
  generation, it did always create a new profile generation.

  This option has been implemented as part of this commit.

- `home-manager switch --specialisation NAME`, which switches to the
  named specialisation. While it was previously possible to accomplish
  this by manually running the specialisation activate script, it did
  always create a new profile generation.

  This option has been implemented as part of this commit.

- `home-manager switch --test`, which activates the configuration but
  does not create a new profile generation.

  This option has _not_ been implemented here since it relies on the
  current configuration being activated on login, which we do not
  currently do.

- When using the "Home Manager as a NixOS module" installation method
  we previously created an odd `home-manager` per-user "shadow
  profile" for the user. This is no longer necessary.

  This has been implemented as part of this commit.

Fixes #3450
2025-07-22 11:00:18 +02:00
Jairo Llopis
13a83d1b65
zed-editor: support tasks (#7493)
Just like other features, they can merge with preexisting JSON5
settings.
2025-07-20 19:14:57 -05:00
zorrobert
7834432ca5
thunderbird: support declaration of address books (#7443)
Adds support for address books using the `accounts.contact.accounts.*` options.
2025-07-20 19:12:35 -05:00
Yethal
dcfd70f80f
ssh-tpm-agent: init module (#7495) 2025-07-17 19:31:15 -05:00