1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-10 21:29:48 +01:00
Commit graph

861 commits

Author SHA1 Message Date
Robert Helgesson
a04f37fab0
treewide: deprecate DRY_RUN_CMD and DRY_RUN_NULL
As a replacement, this adds the `run` helper function.
2024-04-10 21:27:15 +02:00
Nikita Pedorich
78ece60890
tealdeer: add cache update activation script
Calls 'tldr --update' on home-manager switch
2024-04-10 21:27:15 +02:00
Anton Tetov
2306aabbe7
bemenu: allow floats in settings
For example, the CLI option --width-factor controls the width of the
launcher and is set to a value between 0-1.
2024-04-10 21:27:15 +02:00
Robert Helgesson
6d2e504d9a
k9s: fix unnecessary test dependency 2024-04-10 21:27:14 +02:00
Lucas Wagler
881a15fafa
k9s: v0.29/v0.30 compatibility
- Add `skins` option for definition of multiple skin files
- Change file extension to ".yaml"
- Deprecate `skin` option (points to `skins.skin`)
2024-04-10 21:27:14 +02:00
Nikita Pedorich
50507867fc
mise: fix test
assertPathExists -> assertFileExists
2024-04-10 21:27:14 +02:00
Nikita Pedorich
d17141524d
mise: add module
This adds the support for the mise program, the successor of rtx. This
commit therefore also removes the rtx module.
2024-04-10 21:27:13 +02:00
Samuele Facenda
65bebc010e
hyprland: change plugins settings generation
The previous syntax (`plugin:name { ...settings}`) is not working with
more than one plugin. There is no documentation for this, just the
source code [1].

With this update the plugins paths aren't generated together with the
full config (so the "plugin" field is not "important" anymore) and the
plugins settings are generated like the other fields.

[1] 4d403dac32/src/config/ConfigManager.cpp (L1574)
2024-04-10 21:27:13 +02:00
Samuele Facenda
3b678fe158
hyprland: do not override existing plugins settings in config
The plugin setting in the Hyprland config is used both for defining
plugin paths and configuring the plugins. This fix removes the
silent override of the plugins settings converting them to the
`plugin:<name> { ...settings }` syntax.
2024-04-10 21:27:13 +02:00
Robert Helgesson
8273de29d7
docs, tests: revert to fetchTarball for nmd and nmt
Turns out pulling nmt and nmd from Nixpkgs causes an IFD, even when
the packages are fixed-output derivations.

Thus, since Sourcehut is up and well, we can revert to simply fetching
nmd and nmt directly.

See discussion in <https://github.com/nix-community/home-manager/pull/4884>.
2024-04-10 21:27:13 +02:00
Jared Baur
626966eb51
sway: include cursor environment variables
DBus activated services such as mako use the XCURSOR_THEME and
XCURSOR_SIZE environment variables to decide how to show the cursor,
so without these, the cursor may not match the rest of the desktop
when hovering over (in this example) mako notification surfaces.
2024-04-10 21:27:12 +02:00
Damien Cassou
c08841a279
firefox: restore compatibility for extraPolicies
This commit makes it possible to specify Firefox' extraPolicies
through:

    programs.firefox.package = pkgs.firefox.override {
      extraPolicies = {... }
    }

This was possible in the past but was broken by:

  3feeb77155
  firefox: add support for specifying policies (#4626)
2024-04-10 21:27:11 +02:00
Robert Helgesson
f781ce7fb5
tests: use nmt from Nixpkgs 2024-04-10 21:27:10 +02:00
Robert Helgesson
286546ec2f
Remove some formatting exceptions
This formats a few more file using nixfmt.
2024-04-10 21:27:09 +02:00
Silvio Ankermann
5563347db6
thunderbird: configure signature if set (#4852)
The identity's signature  will be configured according to signature.text
and signature.showSignature. Signature commands are not supported by
Thunderbird.
2024-04-10 21:27:08 +02:00
Gabriel Fontes
725d09c0f0
xdg-portal: add new module 2024-04-10 21:27:07 +02:00
XYenon
21e8b7a7df
yazi: fix nushell integration 2024-04-10 21:27:07 +02:00
~noodlez1232
e8dfd7c0d0
i3blocks: added configuration module 2024-04-10 21:27:06 +02:00
Omer Naveed
ce3ec36b95
bemenu: add module 2024-04-10 21:27:05 +02:00
Robert Helgesson
a7c92eece7
oh-my-posh: fix test under Darwin 2024-04-10 21:27:04 +02:00
r-vdp
0402cca9d8
alacritty: make compatible with alacritty 0.13
The config file is in TOML from 0.13 onwards.
2024-04-10 21:27:04 +02:00
Fugi
c06612e8db
sftpman: add module 2024-04-10 21:27:04 +02:00
Tom Hall
ee5e56bd52
osmscout-server: add module
Osmscout-server includes a setting in its UI to create a systemd user
service and socket to run the server on demand. This does not function
correctly on NixOS, for two reasons:

1. It assumes that the binary path is stable (e.g.
   /usr/bin/osmscout-server), which is not the case on NixOS.

2. It auto-detects the unwrapped binary path, which doesn't work.

This module allows the user to access the same functionality on NixOS.
2024-04-10 21:27:03 +02:00
Harsh Shandilya
6ea6f0fbbb
gh: include version in settings
Also add an activation script block for allowing gh version 2.40.0 and
later to perform account migration.
2024-04-10 21:27:03 +02:00
Callum Iddon
5101f01406
oh-my-posh: enable nushell integration 2024-04-10 21:27:02 +02:00
lgehr
2e895634fd
aerc-accounts: support for maildirpp (#4653)
* aerc-accounts: support for maildirpp

aerc-accounts now is aware of the mbsync.subFolders setting

* aerc: Adds test for maildirpp format

---------

Co-authored-by: lgehr <lgehr@mailbox.org>
2024-04-10 21:27:01 +02:00
Stel Abrego
fbba065912
fish: escape abbr expansions once again
Commit 8cedd6 `fish: support flexible abbreviations` removed shell
escaping for fish shell abbr values. This was a dangerous breaking
change offered little value and made writing abbr expansions more
difficult. This commit restores automatic shell escaping of fish abbr
values.
2024-04-10 21:27:00 +02:00
Joaquín Triñanes
a05cca1dcc
direnv: Make lines shorter 2024-04-10 21:27:00 +02:00
Joaquín Triñanes
63d6e2de24
direnv: Apply nushell env transformations
In nushell, the ENV_CONVERSIONS environment variable is used to
transform the defined variables from a string to a nushell value (PATH
to a list being one of the most common uses). This commit applies
user-defined conversions to direnv-loaded variables.

This fixes binary autocompletion not being triggered for newly added
paths and makes direnv work consistently with nushell
2024-04-10 21:26:59 +02:00
Robert Helgesson
32b112ac5d
thefuck: fix test case 2024-04-10 21:26:59 +02:00
Robert Helgesson
d07ec93a9d
sway: fix failing tests
Due to a recent change in Nixpkgs, the version field is required for
the sway package.
2024-04-10 21:26:58 +02:00
Benedikt Ritter
52cdf5acc5
gradle: add module
Introduces a new program called gradle for managing files stored in
the home directory by the [Gradle Build Tool](https://gradle.org).
Gradle uses the $HOME/.gradle folder for all it's configuration.

Features of the new program module are:

- Automatically setting programs.java.enable = true to make a Java
  installation available for running Gradle.
- Specifying an alternate Gradle home directory
- Setting of abitrary values for gradle.properties stored inside the
  Gradle home directory.
- Defining init scripts that will be linked into the init.d inside
  the Gradle home directory.

Co-authored-by: Olli Helenius <liff@iki.fi>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2024-04-10 21:26:58 +02:00
Pierce Bartine
a842f812ef
sapling: add module
Adds a program module for [Sapling](https://sapling-scm.com/).

Since Sapling itself is very similar in nature to Mercurial,
`modules/programs/mercurial.nix` was copied to make this module with
the ignore pieces removed (Sapling respects gitignore).
2024-04-10 21:26:58 +02:00
Viktor Kronvall
1ce2f83059
docs: use .xhtml for appendices 2024-04-10 21:26:56 +02:00
Viktor Kronvall
59087dc8b6
docs: add release-notes as appendix
The release notes used to be an appendix in the manual. After
converting to markdown that appendix got lost. This commit
reintroduces the release notes into the manual.
2024-04-10 21:26:56 +02:00
Ryan
beb1e57d60
yazi: pass additional args to ya alias
This allows commands like `ya /etc/nixos` and `ya --help` to be used.
2024-04-10 21:26:55 +02:00
Robin Gloster
5ce51947f5
hyprland: mark plugin setting as important
The plugins are often necessary for other configurations.
2024-04-10 21:26:55 +02:00
Jan Schmitt
6a3e98c2f8
ssh: add addKeysToAgent option 2024-04-10 21:26:54 +02:00
Nara Díaz Viñolas
7edbaf84cd
hyprland: add option sourceFirst
Add the option sourceFirst to the hyprland module. When this option is
enabled source entries will be put near the top of the file, so that
the variables declared in other files can be used by the other
configuration entries.

Add "source" to the list of important prefixes when the former option
is enabled.

Resolves #4729
2024-04-10 21:26:51 +02:00
Viktor Kronvall
e76d3e4d1a
docs: rename generated manual to index.xhtml
The `nixos-render-docs` tool outputs XHTML formatted content. In
order to convince browsers like `firefox` to treat the data as XHTML
the extension must be `.xhtml` and not `.html`.

Using the XHTML-formatted content as HTML is mainly an issue with
self-closing `<a />` tags.
2024-04-10 21:26:50 +02:00
Viktor Kronvall
313c2a6416
docs: update paths to make manual tests pass 2024-04-10 21:26:47 +02:00
0x5a4
e2caac1930
firefox: fix folders not showing in toolbar
Fixes #4568
2024-04-10 21:26:46 +02:00
Damien Cassou
7ea42f9c8e
signaturepdf: add service 2024-04-10 21:26:43 +02:00
XYenon
b66ef037b3
yazi: update shell integrations and docs 2024-04-10 21:26:43 +02:00
OTABI Tomoya
f0c82a5a5c
fish: support flexible abbreviations
https://github.com/fish-shell/fish-shell/releases/tag/3.6.0
2024-04-10 21:26:43 +02:00
Leah Amelia Chen
df3f8d4e8b
bat: support boolean flags in config
Previously, users cannot enable boolean flags like `--show-all` in bat's
config since all options were expected to be either a string, or a list
of strings. With this commit boolean flags are simply appended to the
end of the config if they are set to `true`, and discarded otherwise.

For example, the config

    {
      theme = "TwoDark";
      show-all = true;
      lessopen = false;
    }

would produce a config file that looks like

    --theme='TwoDark'
    --show-all

Fixes #4657
2024-04-10 21:26:42 +02:00
Gaetan Lepage
d94b28d6ff
ruff: add module
ruff is Python linter and code formatter, written in Rust.
See <https://docs.astral.sh/ruff/>.
2024-04-10 21:26:42 +02:00
Philipp Mildenberger
b986c3b8e7
picom: use getExe instead of hardcoded binary 2024-04-10 21:26:42 +02:00
Thiago Kenji Okada
7368d81a71
qt: fix qt.platformTheme = "gtk3" 2024-04-10 21:26:41 +02:00
Thiago Kenji Okada
dde4185450
qt: fix basic usage when just qt.enable = true is set 2024-04-10 21:26:41 +02:00
Gutyina Gergő
2b4ba04853
zsh: allow enabling syntax highlighters (#4360) 2024-04-10 21:26:41 +02:00
Thiago Kenji Okada
e529050043
qt: workaround issue when i18n.inputMethod.enabled = 'fcitx5' 2024-04-10 21:26:39 +02:00
Thiago Kenji Okada
2e44116afc
qt: export QT_PLUGIN_PATH/QML2_IMPORT_PATH
Those 2 variables are necessary to make e.g.: qt6ct work correctly.

See issue: https://github.com/NixOS/nixpkgs/issues/239909.
2024-04-10 21:26:39 +02:00
Damien Cassou
3b73b79da6
firefox: add support for specifying policies (#4626) 2024-04-10 21:26:37 +02:00
Nicola Squartini
1d3f439cd8
openstackclient: add module (#4530)
Co-authored-by: Sumner Evans <me@sumnerevans.com>
2024-04-10 21:26:37 +02:00
Chuang Zhu
68f5ac390c
firefox: support setting a separate default search engine in private browsing (#4114)
* firefox: support setting a separate default search engine in private browing

Ref: https://searchfox.org/mozilla-central/rev/05d1afda588e54be73e31ef4e022dde91f1ed97a/toolkit/components/search/SearchSettings.sys.mjs#548

* Update modules/programs/firefox.nix

---------

Co-authored-by: Naïm Favier <n@monade.li>
2024-04-10 21:26:36 +02:00
9p4
dfb56a4a77
swayidle: always restart systemd unit on failure
Occasionally, swayidle crashes with a failure to connect to the
Wayland session. Ideally, swayidle should automatically restart
instead of leaving the system in a vulnerable state.
2024-04-10 21:26:36 +02:00
Paul Meyer
c5f0d02e3c
k9s: add aliases, plugins, views
Adding the remaining config files of k9s that weren't covered yet.

PR #4627
2024-04-10 21:26:35 +02:00
Olli Helenius
8ab4e866f5
systemd: avoid creating an empty user.conf
Due to the defaults in `systemd.user.settings`, the default value when
there are no settings explicitly set is `{ Manager = { }; }`. This
means an empty file is created even when `systemd.user.settings` is
never used in home-manager configuration. Since user’s `user.conf` is
preferred to the global `/etc/systemd/user.conf`, this can cause any
values set in the latter to be discarded.
2024-04-10 21:26:35 +02:00
Rodney Lorrimar
5136542501
emacs: Fix socket activation 2024-04-10 21:26:35 +02:00
Rodney Lorrimar
2e4250a532
emacs: Remove obsolete socket file workaround 2024-04-10 21:26:35 +02:00
Damien Cassou
5521cbc10f
firefox: add container support 2024-04-10 21:26:35 +02:00
Damien Cassou
f55c68baf9
firefox: refactor duplicate profile ID detection 2024-04-10 21:26:34 +02:00
Olli Helenius
c28bf5c586
systemd: add settings option (#4276)
The `systemd.user.extraConfig` provides a way to generate a
`systemd-user.conf(5)` file for the user.

This is the home-manager equivalent of NixOS’s option of the same
name, with the difference that NixOS’s option generates a `user.conf`
file that is shared between all users.
2024-04-10 21:26:34 +02:00
9p4
117a4b9cfa
swayr: add module (#4322)
a window switcher for sway
2024-04-10 21:26:34 +02:00
Sebastian Zivota
b9b9b5aab0
thefuck: add fish integration (#4535)
Co-authored-by: Sumner Evans <me@sumnerevans.com>
2024-04-10 21:26:33 +02:00
Willi Carlsen
972916c973
granted: add module
Signed-off-by: Willi Carlsen <carlsenwilli@gmail.com>
2024-04-10 21:26:33 +02:00
Philipp Kühn
0d9be30cfb
borgmatic: preparing upcoming borgmatic change
This commit changes the config format of repositories to the
soon-be-expected `{ "path": "repository-path", }`. The Home Manager
configuration allows a simple string (which will get translated), the
new format by directly using the path attribute, and the one with the
optional label attribute. More information about the background can be
found here https://torsion.org/borgmatic/docs/reference/configuration/
2024-04-10 21:26:33 +02:00
Li Yang
990fc60aaf
k9s: add hotkey option (#4617)
* k9s: add hotkey option

This PR adds an option to customise k9s hotkeys.
The keyword `hotKey` must be in camel case on the user config.

* Update modules/programs/k9s.nix

Co-authored-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>

* fix formatting

---------

Co-authored-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
2024-04-10 21:26:33 +02:00
NAHO
87c2ff0a36
wezterm: remove automatic config reload call
Closes: #4426
2024-04-10 21:26:32 +02:00
Knut Magnus Aasrud
1947c9901c
aerc: fix config paths on darwin
When xdg.enable is set, aerc uses the $XDG_CONFIG_HOME variable instead
of the default $HOME/Library/Preferences. home-manager needs to check
this to make sure aerc can find the proper file in both cases.
2024-04-10 21:26:32 +02:00
Naïm Favier
c0cfd32bf0
sxhkd: set scope OOMPolicy to continue
When a process inside the sxhkd scope is OOM killed, if the OOM policy
is set to `stop` then the sxhkd scope itself will exit, terminating
every process launched from the keyboard.

This is undesirable, set it to `continue` instead to keep other
processes running.
2024-04-10 21:26:31 +02:00
Luna Simons
6da70f2252
cava: add module 2024-04-10 21:26:31 +02:00
Benjamin Lee
f833d2a354
aerc: fix config paths on darwin 2024-04-10 21:26:30 +02:00
sisyphushappy
872242a275
qutebrowser: add greasemonkey userscript option
Co-authored-by: Ivar Scholten <ivar.scholten@protonmail.com>
2024-04-10 21:26:29 +02:00
Gabe Dunn
2ca2163ece
thefuck: add instant mode option
Also do a slight code cleanup.
2024-04-10 21:26:28 +02:00
Xavier Lambein
37b513dd7d
darkman: add module
Co-authored-by: Naïm Favier <n@monade.li>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2024-04-10 21:26:27 +02:00
Damien Cassou
0e16a9b843
firefox: add test for duplicate profile id assertion 2024-04-10 21:26:26 +02:00
Damien Cassou
132e212203
firefox: extract an overlay common to all tests 2024-04-10 21:26:26 +02:00
Janik
7ad922a956
services.cliphist: add module (#4445) 2024-04-10 21:26:26 +02:00
Damien Cassou
27a92b54f3
borgmatic: improve support for version 1.8.0
The configuration file format of borgmatic has changed in version
1.8.0:
https://projects.torsion.org/borgmatic-collective/borgmatic/src/branch/main/NEWS

This commit makes Home Manager generate borgmatic's configuration file
using the new format.

Even though the NEWS file indicates that old configuration files are
compatible, this is not 100% the case: empty sections work fine in old
borgmatic but stop working in new ones. I've reported the bug upstream
by email as I couldn't create an account on the forge.
2024-04-10 21:26:26 +02:00
Kiran Ostrolenk
5d13d826a0
zsh: generalize zsh-history-substring-search
Specifically, allow variable expansion for the key codes by switching
from single to double quotes.

This also adds a helpful suggestion to descriptions. Taken from the
project's README, see

  4abed97b6e/README.md (L71-L74))
2024-04-10 21:26:25 +02:00
Mihai Fufezan
5ca19629fd
hyprland: allow customizing systemd
Allows users to customize which environment variables to import in DBus
and SystemD user environments, and to specify which commands will be run
after the environment activation.
2024-04-10 21:26:24 +02:00
Bernardo Meurer
8a719ddd3c
bat: allow setting themes/syntaxes without IFD
The way the `bat` module is currently written makes it essentially
impossible to use themes and syntaxes without IFD, since you must
provide the contents as string, instead of just giving a path to be
linked.

With this change, setting themes/syntaxes by-string will start issuing
warnings, and a new attribute model is added, lightly inspired by how
`programs.zsh.plugins` avoided this issue.
2024-04-10 21:26:24 +02:00
Simone Ragusa
149a52a414
firefox: set ADD_DATE and LAST_MODIFIED of bookmarks to 1
For some reason, Firefox completely discards the ADD_DATE and
LAST_MODIFIED attributes if they are set to 0. This has been
confirmed by exporting a sample set of bookmarks generated by
Nix using home-manager and comparing it to the same sample of
bookmarks set manually and then exported.

Missing these attributes can cause problems for extensions and
other tools that try to read bookmarks. A known example is the
Tridactyl extension.
2024-04-10 21:26:23 +02:00
ilaumjd
823f7a6439
thefuck: add module 2024-04-10 21:26:23 +02:00
ilaumjd
8a209007e2
zsh-abbr: add module 2024-04-10 21:26:23 +02:00
ilaumjd
0e14af6788
scmpuff: enable or disable aliases 2024-04-10 21:26:22 +02:00
Olmo Kramer
9af726faca
khard: add module 2024-04-10 21:26:22 +02:00
Avimitin
00a599717b
wpaperd: add wpaperd configuration
Signed-off-by: Avimitin <dev@avimit.in>
2024-04-10 21:26:21 +02:00
Anthony Roussel
84ccadec72
awscli: add module 2024-04-10 21:26:21 +02:00
shimun
72202495ae
bacon: add module
Bacon is a background rust code checker. See
<https://dystroy.org/bacon/>.
2024-04-10 21:26:19 +02:00
Robert Helgesson
917800e574
tests: add mainProgram to stub packages
This is to avoid warnings being printed while tests are run.
2024-04-10 21:26:19 +02:00
Avimitin
9711ed2e82
lsd: allow user to configure colors
Signed-off-by: Avimitin <dev@avimit.in>
2024-04-10 21:26:19 +02:00
XYenon
5e5063a9bd
yazi: add fish and nushell integration
PR #4493
2024-04-10 21:26:18 +02:00
Sefa Eyeoglu
6240ed5510
programs.sway: separate trayOutput values for sway (#4489)
Fixes nix-community/home-manager#4488

The default config for sway generates a bar block with tray_output primary. But wayland (or sway, take your pick?) has no concept of a primary display so this just results in no tray anywhere.

A better default is "*" which puts the tray on every monitor, since sway can do so without issue.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-04-10 21:26:18 +02:00
Franz Pletz
9e70a3df87
neomutt: fix STARTTLS
When smtps is used as a protocol, neomutt expects TLS but will if
STARTTLS should be used. When using STARTTLS, smtp has to be used as
protocol and `ssl_force_tls` is set.

See <https://neomutt.org/guide/optionalfeatures#2-1-%C2%A0starttls>.
2024-04-10 21:26:18 +02:00
Robert Helgesson
bd2e251fa3
waybar: fix service After value
Fixes #4469
2024-04-10 21:26:16 +02:00
Robert Helgesson
91ed5f150b
tests: sort test list 2024-04-10 21:26:16 +02:00
Motiejus Jakštys
b3f3f50f9e
pasystray: add extraOptions
Allows a user to, for example, add the `-g` option.

Also add a basic test case.
2024-04-10 21:26:16 +02:00