1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-12-27 04:09:47 +01:00
Commit graph

923 commits

Author SHA1 Message Date
Ninja3047
d34aaf7b3b
nix-gc: set service type to oneshot 2024-07-30 07:54:40 +02:00
Ninja3047
db40fead89
nix-gc: call nix-collect-garbage in a shell script
This will match the behavior in the upstream service which allows the
user to set options to something that uses shell syntax.
2024-07-30 07:54:18 +02:00
bricked
792757f643
firefox: support firefox derivatives
Adds support for Firefox forks by introducing methods that create
generic configs and options. Additional configs and options can be
added in separate modules.
2024-07-28 23:53:08 +02:00
Milo Moisson
ea72cf548f
jujutsu: support darwin guidelines for config placement
Follow up to #5207, fixing jujutsu module on darwin targets.
2024-07-28 22:54:29 +02:00
Tomodachi94
d0240a064d
gnome-terminal: update package name
The `pkgs.gnome.gnome-terminal` package was moved to
`pkgs.gnome-terminal`. The former is now a deprecated alias that
throws a warning whenever a configuration enabling the module is used:

```
The ‘gnome.gnome-terminal’ was moved to top-level. Please use
‘pkgs.gnome-terminal’ directly.
```

Related: https://github.com/NixOS/nixpkgs/pull/319659
Related: https://github.com/nix-community/home-manager/pull/5611
2024-07-28 00:32:19 +02:00
Donovan Glover
465ea1f994
swayosd: avoid restarting too quickly
Should fix an issue where swayosd.service would stop without starting
again after restarting too quickly.

Triggered by ending a Hyprland session and logging in with tuigreet.

Related: https://github.com/nix-community/home-manager/pull/4316
2024-07-24 07:37:28 +02:00
O. C. Taskin
a38f88045e
khard: add option to contact module for khard dir
Add an extra option,

    accounts.contact.accounts.<name>.khard.defaultCollection

to hardcode a subdirectory for khard to function as intended. Khard
expects to be given a collection directory directly, from which there
can be multiple of in a vdir. This contrasts khal or vdirsyncer which
support recursive search.

Fixes #4531
2024-07-16 15:17:37 +02:00
Robert Helgesson
f79d950ac2
atuin: fix tests 2024-07-10 23:11:15 +02:00
novenary
e3582e5151 sway: unfail units before starting session target
Sometimes services can fail. Failed services will generally not be
restarted by systemd. To start previously failed services we can
just reset their failed state before starting our session target.

GNOME and Plasma do the same thing.

See: https://github.com/alebastr/sway-systemd/pull/11
2024-07-05 17:10:02 +03:00
novenary
b7b55e285c sway: stop sway-session.target on exit
This ensures graphical-session.target is properly cycled, and that all
of its members are restarted on consecutive runs.
2024-07-05 17:10:02 +03:00
novenary
0a30138c69
mpd: specify dependency of service on socket
This allows `systemctl --user restart mpd.socket` to work properly.
2024-07-04 00:22:58 +02:00
uncenter
e915831472
yazi: allow literal string for initLua 2024-07-03 23:36:14 +02:00
Gutyina Gergő
7e68e55d2e
glance: add module 2024-06-28 17:24:13 +02:00
eljamm
92a26bf6df
yazi: add shellWrapperName & rename wrappers to yy
The program shell wrappers have been renamed from `ya` to `yy`
following the introduction of the new CLI tool named `ya`.

With this in mind, the `shellWrapperName` option has been introduced
to provide users with more flexibility in choosing the name they're
most accustomed to (ra, lf, ...).

Co-authored-by: XYenon <register@xyenon.bid>

Co-authored-by: 三咲雅 · Misaki Masa <sxyazi@gmail.com>
2024-06-26 09:08:30 +02:00
lordkekz
216d51eb22
yazi: Fix expected structure of flavors 2024-06-23 23:12:50 +02:00
lordkekz
16f86c94ce
yazi: Assert plugin/flavor structure and warn about plugin/flavor suffix
- Always append suffix `.yazi` to plugin's and flavor's attribute names.
- Warn if the attribute names already have the suffix.
- Assert that plugin's and flavor's values point to directories
  containing an `init.lua` file.
2024-06-23 23:12:50 +02:00
Didn't read the style guide
09bc5c5949
yazi: plugin names should be in kebab case (test)
Co-authored-by: 三咲雅 · Misaki Masa <sxyazi@gmail.com>
2024-06-23 23:12:50 +02:00
lordkekz
5ccc3d6739
yazi: Ensure plugin suffix .yazi
- Append suffix `.yazi` to symlink targets of yazi plugins, if needed
- Improve some docs, especially links to upstream docs.
- Update tests to make use of this feature.
2024-06-23 23:12:50 +02:00
daru
cd88671199
blanket: add module 2024-06-22 08:19:17 +02:00
midchildan
8d5e27b480
nix: add a declarative alternative to Nix channels (#4031)
* nix: add options 'nixPath' and 'keepOldNixPath'

By default, the system value for $NIX_PATH is kept as a fallback.
To completely override the system value for $NIX_PATH:

    nix.keepOldNixPath = false;

* nix: add more tests

* nix: add a declarative alternative to Nix channels

This adds a new option, 'nix.channels'. It's the Nix channels equivalent
of the 'nix.registry' option, and compatible with pre-Flake Nix tooling
including nix-env and nix-shell. Like 'nix.registry', this option is
useful for pinning Nix channels.

Channels defined in the new option can coexist with channels introduced
through the nix-channel command. If the same channel exists in both, the
one from Home Manager will be prioritized.

* nix: add news entry

* nix: make channels respect use-xdg-base-directories

* nix: remove 'with lib;'

---------

Co-authored-by: Michael Hoang <enzime@users.noreply.github.com>
2024-06-13 01:47:38 +00:00
Matthieu Coudron
3d65009eff
waybar: remove modules-* from defaults
Some prefer to handle modules-* imperatively for more flexibility, e.g.,
via waybar "includes" (https://github.com/Alexays/Waybar/wiki/Configuration).
Current HM defaults modules-* to `[]` instead of null for most other
settings, so they get written to ~/.config/waybar/config even though
no explicit configuration has been made.

And they take precedence over the imperative ones because of how
waybar's includes work:

====
Paths to additional configuration files.
Each file can contain a single object with any of the bar configuration options. In case of duplicate options, the first defined value takes precedence, i.e. including file -> first included file -> etc. Nested includes are permitted, but make sure to avoid circular imports.
For a multi-bar config, the include directive affects only current bar configuration object.
====
2024-06-09 13:14:04 +02:00
Mario Rodas
8f1b183c91 fcitx5: fix tests
Since https://github.com/NixOS/nixpkgs/pull/308725, fcitx5-with-addons
expects share/dbus-1/services/ to be present.
This patch updates the fcitx5 stub to reflect that.
2024-06-07 04:20:00 +00:00
Dawid Dziurla
83bfe1bac8
nix-gc: add persistent option (#5490)
Mirrors the `nix.gc.persistent` option in nixpkgs:
https://search.nixos.org/options?channel=unstable&show=nix.gc.persistent&from=0&size=50&sort=relevance&type=packages&query=nix.gc.persistent
2024-06-03 22:20:47 -06:00
XYenon
04bc391a90 yazi: support plugins and flavors 2024-05-29 11:29:08 +08:00
midchildan
373ead2060
tests: fix broken overlay in mpv test 2024-05-28 17:02:06 +02:00
Phani Rithvij
90010df158
topgrade: update example config 2024-05-28 00:03:45 +02:00
Austin Horstman
e8482a798f
yazi: use builtin cd
cd conflicts with aliases that dont support -- syntax
2024-05-27 23:50:57 +02:00
Nathan Henrie
e3ad5108f5
espanso: remove background process type on Darwin
This leads to a considerably slower expansion time for snippets, which
severely degrades the user experience.

Also, the launchd plist from the source omits this key:

    8daadcc949/espanso/src/res/macos/com.federicoterzi.espanso.plist

PR #5411
2024-05-17 09:24:04 +02:00
Milo Moisson
d768262018
jujutsu: switch to XDG config home 2024-05-11 00:34:09 +02:00
winston
d939ce585c
mopidy: make scan service depend on mopidy-local 2024-05-11 00:26:54 +02:00
Akiyoshi Suda
5514ed3210
yambar: add module 2024-05-10 23:29:58 +02:00
Austin Horstman
223743313b
hyprpaper: add module 2024-05-10 15:35:59 +02:00
Austin Horstman
c6ddd80fb1
hyprlock: add module 2024-05-10 14:08:21 +02:00
Vincent Gatine
4855bfb6ce
kanshi: update configuration to better match upstream 2024-05-10 12:46:37 +02:00
afresquet
f61917cbaa
fastfetch: add module
PR #5363
2024-05-10 12:42:39 +02:00
Tad Fisher
6ebe7be2e6
gnome-shell: add module 2024-05-06 09:44:34 +02:00
Léo DUBOIN
2b87a11125
git: add realName inside From field
We currently have no way of specifying the sender's name inside the
From field, making a patch sent through `git send-email` appear as
coming from "xxx@domain.com".

In this commit we make this field follow the standard

    realName <email>

format.
2024-05-06 08:17:53 +02:00
Daru
3dfe05aa9b
wlsunset: update options 2024-05-05 19:59:14 +02:00
Austin Horstman
fdaaf543ba
hypridle: add module 2024-05-05 11:13:18 +02:00
Ryan
f69bf670d2
cliphist: add extraOptions option
Add an extraOptions option that would be appended to the cliphist
command.
2024-05-05 09:37:54 +02:00
Kaleo
6d3b6dc922
conky: add module 2024-05-01 00:11:15 +02:00
Vonixxx
3c0df2a7e4
freetube: add module 2024-04-30 23:34:12 +02:00
Yomi Ikuru
5632659886
swaync: add module
Co-authored-by: Ryan Horiguchi <rhoriguchi@users.noreply.github.com>
2024-04-30 00:16:28 +02:00
Austin Horstman
4fe1f064bd
hyprland: use lib.generators.toHyprconf 2024-04-30 00:07:06 +02:00
Gabriel Birke
1a91cb7cdb
neomutt: allow binds to override vimKeys
In the generated neomutt configuration, source the optional
`vim-keys.rc` before applying the `binds` configuration, to allow the
user to override keybindings from `vim-keys.rc`.

Adapt the test files to account for the empty space left by the unset
`vimKeys` option.
2024-04-29 23:54:54 +02:00
Lichthagel
b8d81ef15e
mpv: add extraInput option 2024-04-29 19:55:57 +02:00
Alvaro Fresquet
2af7c78b7b
thefuck: add nushell integration 2024-04-29 09:53:42 +02:00
Joaquín Triñanes
9fe79591c1
direnv: add nix-direnv to lib instead of sourcing
Also removes use of `with lib`.
2024-04-29 00:30:45 +02:00
Sergio Ribera
bfa7c06436
swayosd: add custom style option 2024-04-23 23:09:45 +02:00
quasigod
1451d2866d
foot: unset PATH in server's systemd unit file
This reverts commit 40ab43ae98.
2024-04-22 18:04:34 +02:00
Mirko Lenz
670d9ecc3e
poetry: add module 2024-04-21 22:53:14 +02:00
Robert Helgesson
a204082274
firefox: fix test 2024-04-20 00:02:59 +02:00
Andrew Marshall
3a435342e2
sway: check config file validity
Helps avoid successful build but Sway failing to start.

To meaningfully test this, I had to actually use `pkgs.sway` in the
test rather than the stub, but left all other tests using the stub and
changed them to skipping the test.

We need to pass `--unsupported-gpu` as Sway checks for `nvidia` in
`/proc/modules`, and the Nix sandbox has `/proc/modules` available.
2024-04-19 23:16:55 +02:00
Cynthia Fox
1f305c363e
remmina: add module
Adds a module to enable managing Remmina, an RDP client, with a Home
Manager module, providing a systemd service and mimetype integration
that can be disabled if so desired.
2024-04-19 17:16:42 +02:00
Ivan Leshchenko
31c77dcc2e
sway: systemd customization 2024-04-19 17:15:54 +02:00
Ramses
068dd4ae29
alacritty: cleanup after 0.13 merge in nixpkgs 2024-04-19 16:57:02 +02:00
Ramses
7ca7025cf2
alacritty: fix escape sequence in example and test
See https://github.com/nix-community/home-manager/pull/4817#discussion_r1441710049
2024-04-19 16:26:23 +02:00
diniamo
b62cad68b7
spotify-player: add module 2024-04-19 12:39:30 +02:00
Danil Suetin
b5b2b1ac63
helix: add ignores option 2024-04-19 12:05:08 +02:00
Henri Sota
8ff7bb3f4d
tofi: add module 2024-04-19 11:32:49 +02:00
tschai-yim
54e35e0e1c
qt: use warnings API 2024-04-18 23:29:12 +02:00
tschai-yim
b31019d64f
qt: add adwaita platform theme
Fixes #4702 and https://github.com/NixOS/nixpkgs/issues/295345.
2024-04-18 23:25:50 +02:00
a-kenji
f46814ec7c
treewide: prefer the official wiki 2024-04-17 23:58:16 +02:00
Nathan Henrie
59d50bc582
espanso: enable module on darwin 2024-04-15 09:40:27 +02:00
Jose Plana
9f32c66a51
k9s: configuration files in Darwin without XDG
Support alternate configuration files for k9s in darwin where XDG is
not mandated and k9s expects configuration files in
`~/Library/Application Support/k9s/`.
2024-04-14 23:48:01 +02:00
Jose Plana
76a1650c45
k9s: fix typos in configuration file names 2024-04-14 23:47:45 +02:00
Philipp Mildenberger
630a0992b3
nushell: fix nushell config path on darwin 2024-04-14 08:58:16 +02:00
MiSumiSumi
8fdf329526
neovim: enable use of external package manager (#5225)
* neovim: add extraWrapperArgs option

pass external arguments to neovim-unwrapper
this gives users more flexibility in managing neovim configuration

* neovim: add test for `extraWrapperArgs`
2024-04-13 16:50:15 +02:00
Bryn Edwards
40ab43ae98
foot: set PATH in server's systemd unit file
If not set, foot's terminal spawning shortcut will not work as the
`footclient` binary is not on the server's PATH.
2024-04-13 08:27:43 +02:00
O. C. Taskin
782eed8bb6
programs.khal: add "addresses" option + tidy up (#5221)
- Add `accounts.<calendar|contact>.accounts.<name>.khal.addresses`
  option to enable new configuration option, "addresses", from khal,
  which is used for showing participation status [1].
- Remove mistaken new line in khal implementation, refer to [2].
- Make additions to the existing test case to check the new addresses
  feature. And remove the empty lines in expected configs.

[1]: https://khal.readthedocs.io/en/latest/configure.html#the-calendars-section
[2]: https://github.com/nix-community/home-manager/pull/5192#pullrequestreview-1975091763
2024-04-05 13:48:20 +02:00
Matthieu Coudron
820be197cc
programs.khal: ability to set RGB color (#5192)
The current module constrains to values in enum but khal supports RGB
colors as well
khal.readthedocs.io/en/latest/configure.html#the-calendars-section !
(be careful when setting an RGB value, it has to be quoted else it is ignored, got bitten by it with a manual config )

NB: It's also not possible to set addresses khal.readthedocs.io/en/latest/configure.html#the-calendars-section
2024-03-31 22:06:56 +02:00
Shaw Vrana
3142bdcc47
readline: optionally place config file in XDG dir
Based on PR #4189
2024-03-28 06:48:10 +01:00
Sumner Evans
eb869521cb
darkman: allow no configuration
Closes #4779

Signed-off-by: Sumner Evans <me@sumnerevans.com>
2024-03-26 14:24:49 -06:00
Gabriel Fontes
1c2acec999
xdg-portal: align with NixOS module
Nixpkgs has recently made a few major changes to its
xdg-desktop-portal package, which silently breaks our module here:

- The NIXOS_XDG_DESKTOP_PORTAL_CONFIG_DIR variable patch has been
  removed (in favor of putting portal configurations in /etc or
  XDG_CONFIG_HOME).

- A new variable, NIX_XDG_DESKTOP_PORTAL_DIR, was introduced in a
  patch to avoid setting XDG_DESKTOP_PORTAL_DIR (which also affected
  portal configuration reading, not only portal definitions)

I updated our module to match the changes, but this breakage also made
me revisit this module and look into some improvements.

Long story short, I think it's worth it to make it more similar to the
NixOS one, as it will make behavior more predictable and consistent.
The main change is relying on the upstream linked systemd
unit (instead of using systemd.user.services), and setting the
environment variables globally instead of scoping it to the unit, as
it's a very global thing anyway.
2024-03-20 23:41:55 +01:00
s.seidenath
865bef3435
kime: fix configuration
Switches the kime configuration format to use unstructured text. This
is necessary since version 3 and upwards use YAML tags.
2024-03-18 22:12:53 +01:00
Icy-Thought
c781b28add
zsh: add patterns option to syntax-highlighting 2024-03-15 19:29:51 +01:00
Patrick Widmer
ca922258e1
senpai: switch to scfg format 2024-03-15 11:42:17 +01:00
Gabriel Arazas
029545350c
activitywatch: add module 2024-03-15 09:39:56 +01:00
Kylie McClain
096d9c04b3
qutebrowser: actually implement unbinding
The documentation for the option says...

> If you want a default binding to be passed through to the website,
> bind it to null.

but if you actually try to set a key to `null`, it causes an error.

> A definition for option
> `programs.qutebrowser.keyBindings."<Ctrl+Shift+Tab>".normal' is not
> of type `strings concatenated with " ;; "'.

So this commit implements unbinding as it is documented.
2024-03-14 22:38:52 +01:00
zorrobert
bd9141ea97
fusuma: add missing dependencies 2024-03-14 18:08:10 +01:00
Phillip Cloud
587719494e
gpg-agent: fix broken variable reference 2024-03-14 14:45:55 +01:00
Bruno BELANYI
1ab3cec3a1
rbw: simplify 'pinentry' type
Following some upstream changes [1], it's now possible to use a simplified
package type for the option.

[1]: https://github.com/NixOS/nixpkgs/pull/133542
2024-03-14 08:29:43 +01:00
Bruno BELANYI
01e4a5143e
gpg-agent: migrate to 'pinentryPackage'
This follows upstream's module change [1], which allows setting any
package as a pinentry program.

[1]: https://github.com/NixOS/nixpkgs/pull/133542
2024-03-14 08:22:26 +01:00
zorrobert
383296ffa4
joplin-desktop: add module
PR #5020
2024-03-13 14:28:30 +01:00
Mathis H
49a266d2ca
hyprland: add option for per-input device configs 2024-03-12 23:16:18 +01:00
Philipp Kühn
017b12de5b
neomutt: adding unmailboxes option
Adding unmailboxes option to neomutt, which adds the `unmailboxes`
option it to every account.email with neomutt enabled.

See https://www.mutt.org/doc/manual/#mailboxes for more.
2024-03-11 14:44:17 +01:00
Lin Xianyi
36f873dfc8
pqiv: add extraConfig option 2024-03-10 10:20:21 +01:00
Liassica
16311f1d3c
borgmatic: add option for pattern matching
Borgmatic has support for Borg's pattern matching. It is mutually
exclusive with the existing `sourceDirectories` option, so assertions
have been added to make sure that both are not set at the same
time (but also that at least one of them is). Additionally, tests have
been added to test the following configurations: `patterns` instead of
`sourceDirectories`, both at the same time, and neither.
2024-03-09 13:27:20 +01:00
Filip Pobořil
bfc438e9b7
ranger: add module 2024-03-08 23:35:34 +01:00
Silmar
b550d074fb
zk: add module 2024-03-08 23:26:08 +01:00
David Sánchez
9a3a5b4402
rio: use XDG config for both linux and darwin
`rio` now uses the same config location for both Linux and macOS:

> MacOS and Linux configuration file path is `~/.config/rio/config.toml`.

Ref: https://raphamorim.io/rio/docs/configuration-file
2024-03-08 14:18:28 +01:00
Clément DOUIN
417015af0d
himalaya: adjust code for v1.0.0-beta.3 2024-03-08 13:58:55 +01:00
bri
cf111d1a84
zsh: improve shell{,Global}Aliases
This commit changes the way aliases are rendered, adding the "no more
flags" flag `--`, which means that, for example, the alias `"-" = "cd
-";` will work as expected. (I was getting a syntax error before this
change.)

Additionally, now the alias key is shell escaped, which may help some
edge cases. I'm honestly not sure if this part is necessary since I
assume an alias can't contain spaces anyway, but it definitely
shouldn't break anything.
2024-03-06 23:39:12 +01:00
musjj
f240015a3a
gallery-dl: add package option 2024-03-06 18:43:55 +01:00
Robert Helgesson
9daee941ab
gpg: fix immutable keyfile test 2024-03-06 08:42:20 +01:00
Robert Helgesson
c386fde594
bemenu: stub package in tests 2024-03-06 08:42:20 +01:00
Robert Helgesson
bdea159ffa
fcitx5: fix reference to fcitx5-with-addons 2024-03-05 23:19:22 +01:00
Felipe Silva
d579633ff9
khal: fix contact integration (#4836)
* khal: fix contact integration

- Add tests for contact+khal
- Make options `color`/`priority` available for contact accounts

* khal: add separate calendar for each contact collection

A contact account may have multiple VCARD collections, but Khal doesn't
search recursively. Collection folder names must be hardcoded, and each
has its own calendar.

- Add khal.collections option for contact accounts
- Default to previous setup for accounts with a single collection
- Add tests

* khal: specify how priority is defined by Khal

See https://khal.readthedocs.io/en/latest/configure.html
2024-03-03 18:12:42 +01:00
Robert Helgesson
4de84265d7
fcitx5: fix tests 2024-03-03 06:56:05 +01:00
John Axel Eriksson
ecfffe3631
river: fix systemd activation (#5055)
The `exec` command does not do any shell parsing and does not
understand the `&&` which is how the extraCommands are added after
dbus activation. There doesn't seem to be a reason for `exec` here
anyway so just remove it and allow shell parsing.
2024-02-29 11:10:25 +01:00