Commit Graph

899 Commits

Author SHA1 Message Date
9p4 c067d57fc4
swayr: add module (#4322)
a window switcher for sway
2023-11-06 18:05:18 +01:00
Sebastian Zivota 8765d4e38a
thefuck: add fish integration (#4535)
Co-authored-by: Sumner Evans <me@sumnerevans.com>
2023-11-03 09:33:15 -06:00
Willi Carlsen 48b0a30202
granted: add module
Signed-off-by: Willi Carlsen <carlsenwilli@gmail.com>
2023-11-01 22:20:17 +01:00
Philipp Kühn a421804890
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/
2023-11-01 22:16:04 +01:00
Li Yang fc2a8842ea
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>
2023-11-01 18:40:14 +01:00
NAHO f92a54fef4
wezterm: remove automatic config reload call
Closes: #4426
2023-10-28 09:45:59 +02:00
Knut Magnus Aasrud 1369d2cefb
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.
2023-10-27 09:44:45 +02:00
Naïm Favier 14b5415720
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.
2023-10-24 17:48:13 +02:00
Luna Simons 6045b68ee7
cava: add module 2023-10-24 08:20:22 +02:00
Benjamin Lee 219d268a69
aerc: fix config paths on darwin 2023-10-22 10:49:52 +02:00
sisyphushappy 3433206e51
qutebrowser: add greasemonkey userscript option
Co-authored-by: Ivar Scholten <ivar.scholten@protonmail.com>
2023-10-18 22:56:15 +02:00
Thiago Kenji Okada 3452e14ec7 qt: workaround issue when i18n.inputMethod.enabled = 'fcitx5' 2023-10-18 16:17:32 +01:00
Thiago Kenji Okada 5744ebf359 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.
2023-10-18 13:15:56 +01:00
Gabe Dunn 3e1f8df4f0
thefuck: add instant mode option
Also do a slight code cleanup.
2023-10-17 17:30:37 +02:00
Xavier Lambein b25161c6a2
darkman: add module
Co-authored-by: Naïm Favier <n@monade.li>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-10-17 09:07:47 +02:00
Damien Cassou 78125bc681
firefox: add test for duplicate profile id assertion 2023-10-16 00:54:15 +02:00
Damien Cassou f033205b25
firefox: extract an overlay common to all tests 2023-10-16 00:54:14 +02:00
Janik 3b67ae3f66
services.cliphist: add module (#4445) 2023-10-15 14:03:18 +02:00
Damien Cassou d4a5076ea8
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.
2023-10-15 00:38:55 +02:00
Kiran Ostrolenk 9a2ce65697
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?plain=1#L71-L74)
2023-10-15 00:09:13 +02:00
Mihai Fufezan ed0770e962
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.
2023-10-06 23:34:47 +02:00
Bernardo Meurer 44635279a0
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.
2023-10-06 23:26:08 +02:00
Simone Ragusa 68f7d8c0fb
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.
2023-10-04 21:08:09 +02:00
ilaumjd 2874c6fce6
thefuck: add module 2023-10-04 09:39:23 +02:00
ilaumjd b0e0d82696
zsh-abbr: add module 2023-10-04 08:07:49 +02:00
ilaumjd 55ce64c3ca
scmpuff: enable or disable aliases 2023-10-03 18:04:43 +02:00
Olmo Kramer 6f9b5b83ad
khard: add module 2023-10-01 09:29:05 +02:00
Avimitin 209a24dff2
wpaperd: add wpaperd configuration
Signed-off-by: Avimitin <dev@avimit.in>
2023-10-01 09:23:33 +02:00
Anthony Roussel f1b7775d23
awscli: add module 2023-09-30 09:48:13 +02:00
shimun a88df2fb10
bacon: add module
Bacon is a background rust code checker. See
<https://dystroy.org/bacon/>.
2023-09-24 12:07:57 +02:00
Robert Helgesson baf222f2fb
tests: add mainProgram to stub packages
This is to avoid warnings being printed while tests are run.
2023-09-24 09:48:46 +02:00
Avimitin 835465e8ba
lsd: allow user to configure colors
Signed-off-by: Avimitin <dev@avimit.in>
2023-09-24 09:47:00 +02:00
XYenon 7413408b04
yazi: add fish and nushell integration
PR #4493
2023-09-24 00:41:14 +02:00
Sefa Eyeoglu e0c70942c0
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>
2023-09-23 20:53:45 +02:00
Franz Pletz 408ba13188
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>.
2023-09-20 17:39:23 +02:00
Robert Helgesson 8aac47a140
waybar: fix service After value
Fixes #4469
2023-09-19 21:39:16 +02:00
Robert Helgesson 92364581dd
tests: sort test list 2023-09-19 08:03:34 +02:00
Motiejus Jakštys 8045eb45a7
pasystray: add `extraOptions`
Allows a user to, for example, add the `-g` option.

Also add a basic test case.
2023-09-19 08:02:18 +02:00
Otavio Salvador f092a92202
programs.rio: add module (#4118)
Adds a programs.rio module to control Rio installation and configuration, a gpu accelerated terminal

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2023-09-18 22:42:22 +02:00
stuebinm aed5ed979e
bat: allow adding custom syntaxes
Adds an option to add custom syntax files to bat's cache, analogous to
the existing programs.bat.themes option.
2023-09-13 22:29:41 +02:00
VwCSXg d12c8fc85b
emacs: fix emacs-extra-config test
Fixes #4453
2023-09-13 19:13:10 +02:00
Weathercold 3c0e381fef
carapace: add module 2023-09-05 08:39:59 +02:00
Robert Helgesson f5c15668f9
tests: update to match latest TOML output
The generated format seems to have changed with the merge of
<https://github.com/NixOS/nixpkgs/pull/245440>.
2023-08-30 14:37:13 +02:00
arjan-s a7eab56be5
programs.khal: add `settings` option (#4375) 2023-08-30 11:57:47 +02:00
XYenon 90e62f96c7
programs.yazi: add module (#4373)
add module for yazi https://github.com/sxyazi/yazi a terminal rust file browser akin to ranger or joshuto
2023-08-27 20:47:47 +02:00
Anton Mosich 8eb8c212e5
qcal: add module 2023-08-22 18:09:05 +02:00
Robert Helgesson aa59f91746
fcitx5: add `fcitx5-config-qt` to test stub 2023-08-16 22:41:11 +02:00
Robert Helgesson 1ccd0c935c
pqiv: only run tests on Linux platforms 2023-08-16 22:38:03 +02:00
Donovan Glover 9db5b89f40
pqiv: add module 2023-08-16 17:44:54 +02:00
Robert Schütz 18791781ea
browserpass: support librewolf 2023-08-15 08:42:51 +02:00
musjj 406d34d919
lf: simplify option validation (#4334)
Don't try to validate a limited set of hardcoded options, instead just
convert them as-is. Now, users can keep all their options in a single
attribute set, including arbitrary `user_{option}`s which was impossible
to express with a hard-coded submodule. As a plus, there is also less
maintainence burden.
2023-08-12 18:10:49 +02:00
Jian Lin a8f8f48320
mu: add package option (#4325) 2023-08-09 18:40:43 +02:00
Maxim Karasev 0a014a729c
aerc: do not use smtp-starttls (#4272)
It was deprecated in 0.15.0, +insecure schema is suggested instead.
Thus, we can just copy imap logic, which already uses +insecure.
2023-08-05 10:56:10 +02:00
Yt 8c731978f0
nushell: deprecation of let-env (#4292) 2023-08-01 19:27:30 +02:00
satoqz 4fd794d3df
gh: option to enable helper for additional hosts (#4288)
* gh: option to enable helper for additional hosts

`gh` can also be used with github enterprise
hosts, for which there exists no easy option
to enable the credential helper except for
directly working with `programs.git.extraConfig`.
Not sure if this is a needed addition since it's
somewhat niche, at the same time it's not very
complex and makes the life of github enterprise
a little easier.

* gh: update credential-helper tests

* gh: refactor credential helper option

this moves from `enableGitCredentialHelper` to
`gitCredentialHelper.enable` and
`gitCredentialHelper.hosts`.

* gh: lib.mkIf -> mkIf
2023-08-01 01:40:37 +02:00
Robert Helgesson f58889c07e
gnome-terminal: add assertion on profile names 2023-07-29 19:43:20 +02:00
Janik H a30f5b5b35
gh-dash: add module 2023-07-24 12:38:44 +02:00
ryane ab70a02363
git-sync: add darwin support
- On darwin, creates a launch agent to run git-sync on an interval and
  when the `path` changes.

- The `uri` option is not used on Darwin. The auto-creation of the
  local git directory from the `uri` is a feature of the
  git-sync-on-inotify [1] wrapper (which won't work on Darwin afaik)
  and not `git-sync` itself.

[1] https://github.com/simonthum/git-sync/blob/master/contrib/git-sync-on-inotify
2023-07-24 11:16:09 +02:00
Mihai Fufezan 76dd6c6619
hyprland: prioritize variables and beziers (#4263)
* hyprland: prioritize variables and beziers

The `settings` key now handles `$variables` and `bezier`s differently,
putting them at the top of the file.
Also, proper indentation has been implemented.

* Update modules/services/window-managers/hyprland.nix

Co-authored-by: Naïm Favier <n@monade.li>

* hyprland: add animations & beziers test

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-07-22 13:58:46 +02:00
Mihai Fufezan ee5673246d
hyprland: add module
Ported from

  https://github.com/hyprwm/Hyprland/blob/main/nix/hm-module.nix

which was adapted from the sway module.

Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-07-21 00:14:22 +02:00
Emily 9f9e277b60 treewide: remove now-redundant `lib.mdDoc` calls
These (and the `*MD` functions apart from `literalMD`) are now no-ops
in nixpkgs and serve no purpose other than to add additional noise and
potentially mislead people into thinking unmarked DocBook documentation
will still be accepted.

Note that if backporting changes including documentation to 23.05,
the `mdDoc` calls will need to be re-added.

To reproduce this commit, run:

    $ NIX_PATH=nixpkgs=flake:nixpkgs/e7e69199f0372364a6106a1e735f68604f4c5a25 \
      nix shell nixpkgs#coreutils \
      -c find . -name '*.nix' \
      -exec nix run -- github:emilazy/nix-doc-munge/98dadf1f77351c2ba5dcb709a2a171d655f15099 \
      --strip {} +
    $ ./format
2023-07-17 18:49:09 +01:00
Emily 36a53d9f26 treewide: convert all option docs to Markdown
This process was automated by [my fork of `nix-doc-munge`]. All
conversions were automatically checked to produce the same DocBook
result when converted back, modulo minor typographical/formatting
differences on the acceptable-to-desirable spectrum.

To reproduce this commit, run:

  $ NIX_PATH=nixpkgs=flake:nixpkgs/e7e69199f0372364a6106a1e735f68604f4c5a25 \
    nix shell nixpkgs#coreutils \
    -c find . -name '*.nix' \
    -exec nix run -- github:emilazy/nix-doc-munge/98dadf1f77351c2ba5dcb709a2a171d655f15099 \
    {} +
  $ ./format

[my fork of `nix-doc-munge`]: https://github.com/emilazy/nix-doc-munge/tree/home-manager
2023-07-17 18:40:56 +01:00
Emily c1d8d2a3d1 treewide: adjust some DocBook for conversion
The NixOS variant of Markdown doesn't make a distinction between
`<code>` and `<literal>` or `<quote>` and... quotes, and doesn't
support `<parameter>` or `<replaceable>`. These are infrequently used
(apart from `<code>`) and don't add much, so just convert them to
simpler forms to allow the options containing them to be converted
to Markdown automatically.

A few minor syntactic adjustments were also made to make
`nix-doc-munge`'s job easier.
2023-07-17 16:49:35 +01:00
Emily 1add3c3a99 manual: add test
This checks that the documentation can be built in the context of a
Home Manager configuration.
2023-07-16 14:26:53 +01:00
Aaron Pietscher 5598567489
zsh: fix custom syntax highlighting styles (#4236)
Previously, lines in .zshrc were added with quotes in keys
(e.g. ZSH_HIGHLIGHT_STYLES['comment']='fg=#6c6c6c'). However, zsh
considered these quotes to be part of the key, so the "comment" key
remained unchanged.
2023-07-15 11:49:12 +02:00
Sven Friedrich f63b39a67d
i3-sway: multiple outputs (#4223)
multiple outputs can be assigned to a workspace
2023-07-14 21:25:55 +02:00
Genevieve bec87d536c
aerc: add assertion to limit per-account extraConfig to UI config (#4196)
* aerc: fix per-account extraConfig section names

The aerc configuration file `aerc.conf` can contain 10 different
sections, but only the UI section supports what the aerc manual calls
contextual configuration. This works by appending to the section heading
either `:account=name` or `:folder=bar`.

The aerc-accounts module, however, applied `mkAccountConfig` to each
section heading declared in
`config.accounts.email.accounts.<name>.aerc.extraConfig.*`. This means
home-manager will generate files with `[general:account=default]` and
the options will not be recognized by aerc.

To address this, and since it doesn't make sense for other sections to
only be under a single account's scope, an assertion has been added
to confirm that only sectons that support contextual config (i.e.,
only the UI section) is declared.

This also addresses confusions like declaring
`accounts.email.accounts.*.aerc.extraConfig.general.unsafe-accounts-conf
= true` and triggering a warning message because
`programs.aerc.extraConfig.general.unsafe-accounts-conf` was unset.

This commit also updated documentation throughout the aerc modules to
be in line with this change, and fixed minor typos/formatting therein.

Co-authored-by: Genevieve <genevieve@sunlashed.garden>

* aerc: make assertion plaintext and add test case

This commit adds a test case to check both the warning on unset
`unsafe-accounts-conf = true` when aerc accounts are configured
with Nix, and the new assertion when per-account configuration
contains unsupported subsections (i.e. general).

It also fixes minor formatting issues and typos.
2023-07-14 20:34:28 +02:00
Robert Helgesson b70db52ff0
imapnotify: move test
Also add test for the systemd service.
2023-07-09 10:53:28 +02:00
David Baynard fad475553a
imapnotify: use direct nix store path for config
As pointed out in #3291, using the XDG symlink means the agent/unit
files don’t change when the contents of the config changes, and so the
service will not be restarted.
2023-07-09 09:32:25 +02:00
SaiProton e15010ee6e
nushell: add login.nu configuration option
Nushell has the option to source from the login.nu file in the case
that nushell is used as a login shell. This commit adds the login file
alongside the existing config and env files as another configuration
option.
2023-07-08 23:58:37 +02:00
SiriusStarr 24805d3ca7
himalaya: fix notmuch backend
Previously, IMAP was preferred over notmuch, even if notmuch was
configured, causing problems with setting account flavor (which
automatically sets IMAP settings). The new backend order is:

    notmuch > IMAP > maildir

This also fixes the notmuch DB path being set to the wrong location.
The notmuch DB is located at the maildir base path, not in each
account's maildir.
2023-07-08 12:37:34 +02:00
Anton Plotnikov 98282a481d
swayosd: add module 2023-07-08 12:09:09 +02:00
Tobias Markus 069d450b6d
pyenv: add module
Adds a module for pyenv (https://github.com/pyenv/pyenv).
2023-07-08 11:26:21 +02:00
Chris Martin 050d01a62c
darcs: add module 2023-07-08 10:31:45 +02:00
Robert Helgesson af715ed857
tests: some minor cleanups 2023-07-08 10:12:35 +02:00
Robert Helgesson f288310b7a
goimapnotify: remove test dependency on notmuch
Also minor test cleanup.
2023-07-08 09:58:06 +02:00
David Baynard 719de878f7
imapnotify: Add launchd agent (#3291)
* imapnotify: expose package (and exe) options

There are multiple packages that provide an imapnotify interface. Those
packages have differently named executables. This can now be customized.

This change also means test configurations can use stub packages.

* imapnotify: use/create config in configHome

Exposing the configuration file makes testing imapnotify configurations much
easier. It also allows for golden tests in home-manager.

* imapnotify: extend with launchd agent

Now that home-manager supports launchd agents, the imapnotify service
can be configured (and enabled) for darwin. The configuration matches
that of the linux/systemd version. In particular, by not setting a
`UserName`, this runs as the user whose configuration includes the
module.

Due to the launchd `Program` implementation (it must take an absolute
path) it is not possible to use that for the program and stub the path
in tests. Instead, this uses `ProgramArguments` for the program name.

The `ThrottleInterval` is equivalent to `RestartSec`. `KeepAlive` is
equivalent to `Restart`.

The `ExitTimeOut` default is 20 seconds, but goimapnotify should not
time out — this is achieved by setting the `ExitTimeout` to 0.

* imapnotify: add launchd plist test

This only tests the generated plist (which is new), not the original
systemd implementation, nor the json config file.

(Note the lack of a newline at the end of the plist file.)
2023-07-07 11:39:12 +02:00
hitsmaxft 2f78e6fcba
antidote: static file move to /tmp
Make antidote create static file path with hm hash_id in /tmp.
2023-07-05 08:30:58 +02:00
Janik 4a26e21030
programs.khal
moved highlight_event_days where appropriated and added tests
2023-07-04 12:14:47 +02:00
Rodney Lorrimar 3be2abb2e6
i18n: Use glibcLocales from NixOS if possible (#2333) (#4177)
This will reduce the system closure size by about 200MB under NixOS by
sharing the glibcLocales package.

When home-manager is installed on Linux without the NixOS module, all
glibc locales are installed, as before.

Resolves: #2333
2023-07-04 11:28:25 +02:00
Kylie McClain 44d1a8542a
sxhkd: allow usage of derivations as keybind commands (#4169)
This makes it consistent with some other options, like
`systemd.user.services.Service.ExecStart`.
2023-06-30 17:49:05 -06:00
ThinkChaos f5f64ac022
zsh: allow setting custom syntax highlighting styles (#4122)
* zsh: allow setting custom syntax highlighting styles

Custom styles allow overriding the default colors.
Example:
```nix
zsh.syntaxHighlighting.styles.comment = "fg=#6c6c6c";
```

See https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/docs/highlighters.md

* zsh: allow configuring syntax-highlighting package
2023-06-28 11:12:58 +02:00
Naïm Favier 4c08f65ab5
broot: fix test (#4170)
We can't test for the whole contents of the config file because that is
out of our control and may change unexpectedly. Only check for the
settings we know should be set.
2023-06-27 11:02:53 +02:00
hitsmaxft 491f74db89
antidote: fix package source path
Changes

  'source %antidote%/antidote.zsh'

to

  'source %antidote%/share/antidote/antidote.zsh'
2023-06-23 09:36:00 +02:00
hitsmaxft 70ac18872a
antidote: add module
Antidote is a Zsh plugin manager.
2023-06-23 00:35:00 +02:00
Clément DOUIN 9ce6977fe7
himalaya: adjust module for 0.8.X (#4093)
Added notmuch support, and adjust password commands configuration.
2023-06-21 10:59:29 +02:00
Damien Cassou ec58f8bed7
borgmatic: add missing support for output and hooks
Fixes #3760
2023-06-20 19:19:10 +02:00
Will Leinweber f06a43dca0
starship: add enable_transience for fish (#3975)
Starship has an advanced, experimental feature where fancy stuff in the
prompt can be replaced with something more simple after the command is
ran. This is very helpful for copy and pasting shell history somewhere
else.

docs: https://starship.rs/advanced-config/#transientprompt-and-transientrightprompt-in-fish

Fish is currently the only shell as far as I can tell that both
home-manager and starship support for this feature. Since the function
has to be called after starship is loaded, this seems like the best
place to put it.

format
2023-06-19 21:56:48 +02:00
Clément DOUIN e0034971f9
comodoro: add module 2023-06-14 23:43:19 +02:00
Alois Wohlschlager 75b24cc557
thunderbird: support aliases
The main email address, as well as all aliases, each get mapped to one
identity in Thunderbird. All these identities are then linked to their
account.
2023-06-14 08:31:26 +02:00
Lukas Nagel 8da1135365
aerc: improve module (#3150)
* aerc: add space after definitions

* aerc: only generate files, if options were set

* aerc: improve file permission warning

* aerc: remove redundant access to builtins

* aerc: allow overwriting of derived values

the order of merging the config subsets did not allow the user to specify
outgoing, source and password command values,
if they were previously derived from the SMTP, IMAP, Maildir etc config.

The values from `account.<name>.extraAccounts` now have the highest precedence.
Appropriate tests were added as well.

* aerc: write primary account first
2023-06-13 10:59:42 +02:00
Robert Helgesson d437f0d4e0
specialisation: fix path 2023-06-13 08:51:05 +02:00
Robert Helgesson c8dafb187b
specialisation: renamed from specialization
Renamed to be consistent with NixOS.

Fixes #4074
2023-06-13 08:44:30 +02:00
Naïm Favier b0cdae4e9b
browserpass: test on Darwin again (#4081)
https://github.com/NixOS/nixpkgs/pull/236749 is in all channels now.
2023-06-12 11:29:59 +02:00
Sefa Eyeoglu 0144ac418e
sway: add support for XDG autostart using systemd (#3747)
* sway: add support for XDG autostart using systemd

Using the option wayland.windowManager.sway.systemd.xdgAutostart, users
can now choose to start applications present in
$XDG_CONFIG_HOME/autostart when starting their sway session.

This change also renames wayland.windowManager.sway.systemdIntegration
to wayland.windowManager.sway.systemd.enable;

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>

* sway: add Scrumplex to maintainers

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>

---------

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-06-10 12:10:40 +02:00
nikp123 0945875a2a
boxxy: add module (#4075)
* boxxy: add module

 * boxxy: added nikp123 to maintainers list

* boxxy: use mkPackageOption instead for the package

Co-authored-by: Naïm Favier <n@monade.li>

* boxxy: use yaml generator instead of json

Co-authored-by: Naïm Favier <n@monade.li>

* boxxy: various fixes

* boxxy: various fixes (part 2)

* boxxy: various fixes (part 3)

* boxxy: various fixes (part 4)

forgot to run ./format, whoops

* boxxy: use literalExpression for the rewrite example

Co-authored-by: Naïm Favier <n@monade.li>

* boxxy: add news entry

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-06-09 22:32:11 +02:00
Li Yang 1e5d741ea3
Espanso: Fix broken module to be compatible with Espanso version 2.x (#4066)
* Fix espanso module to work with 2.x version

* espanso: fix espanso module

This module is currently broken. It does not create `config` and `match` folders which are required by espanso 2.x version.

This PR fixed this issue and support creating multiple files under `config` and
`match` folder.

* Espanso: fix espanso module

This module is currently broken. It does not create `config` and `match` folders which are required by espanso 2.x version.

This PR fixed this issue and support creating multiple files under `config` and `match` folder.

Add descriptions

* Add versionAtLeast and mkRemovedOptionModule

* Correct maintainers list

* remove config key from example

* format basic-configuration.nix

* Update modules/services/espanso.nix

Co-authored-by: Naïm Favier <n@monade.li>

* fix maintainers list

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-06-09 12:05:01 +02:00
Naïm Favier 69bdd6de50
tests/stubs: inherit default versions from pkgs (#4069)
* tests/stubs: inherit default versions from pkgs

* tests/browserpass: temporarily disable on darwin

The package currently fails to evaluate on darwin due to a nixpkgs
problem: https://github.com/NixOS/nixpkgs/pull/236258#issuecomment-1583450593
2023-06-09 00:59:06 +02:00
Christoph Heiss 39c7d0a97a
imv: add module (#4032)
* imv: add module

Signed-off-by: Christoph Heiss <christoph@c8h4.io>

* imv: add test cases

Signed-off-by: Christoph Heiss <christoph@c8h4.io>

---------

Signed-off-by: Christoph Heiss <christoph@c8h4.io>
Co-authored-by: Naïm Favier <n@monade.li>
2023-06-07 14:51:05 +02:00
Nikita Pedorich 3512a6dafb
rtx: add module (#4051) 2023-06-07 10:32:56 +02:00
Robert Helgesson 28614ed7a1
lib: add functions to create DAGs from lists 2023-06-05 23:08:30 +02:00
Robert Helgesson 79e03fbe24
lib: remove listOrDagOf type
It has been deprecated for a long time and should be safe to remove.
2023-06-05 23:08:29 +02:00
Olmo Kramer 24d590cc32
wezterm: add integrations for Bash and Zsh (#3934)
* wezterm: Add `enableBashIntegration` option

* wezterm: Add `enableZshIntegration` option
2023-06-05 22:46:18 +02:00
Naïm Favier 607d8fad96
i3-sway: quote output names (#4059)
They can contain spaces.
2023-06-04 15:23:23 +02:00
Naïm Favier 221056c59f
tests: fix `getOutput` on stubs
Setting `outputSpecified` prevents `getOutput` from descending into
outputs, which don't have an overridden `outPath`.

Additionally, use `__spliced` to permit derivations to use the dummy as
an input.
2023-06-04 09:15:14 +02:00
Nikita Pedorich 2951946183
ripgrep: add module (#4017)
* ripgrep: add module

* ripgrep: Apply suggestions from code review

Co-authored-by: Naïm Favier <n@monade.li>

* ripgrep: fix maintainers

Co-authored-by: Naïm Favier <n@monade.li>

* ripgrep: rename config into arguments

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-06-02 17:59:12 +02:00
Naïm Favier 2d963854ae
ssh: don't install a client by default (#4016)
Make use of the recently added nullable `mkPackageOption` feature
to disable installing an SSH client by default: most people should use
the client provided by their system.
2023-05-27 14:11:50 +02:00
Dany Marcoux d1f04b0f36
yt-dlp: generate config if settings or extraConfig are defined (#4018)
Previously, the config was generated only if settings were defined. In a
case where settings weren't defined, extraConfig was ignored.
2023-05-25 15:06:34 +02:00
Philipp Mildenberger 27ef11f021
helix: update languages.toml generation (support every option in languages.toml) (#4003)
Co-authored-by: Naïm Favier <n@monade.li>
2023-05-20 17:22:06 +02:00
Naïm Favier e14e797041
neomutt: add missing stub in test (#3996)
Fixes tests on Darwin
2023-05-17 12:46:04 +02:00
Robert Helgesson b7d814c574
tests: bump nmt to latest 2023-05-16 00:23:00 +02:00
George Macon 6702b22b98
ssh: install an ssh client
Fixes #3667
2023-05-13 16:50:10 +02:00
Sefa Eyeoglu e0026e16a5
fuzzel: add module 2023-05-13 15:54:34 +02:00
Robert Helgesson eec2272999
tests: various minor cleanups 2023-05-13 00:09:52 +02:00
Erik Krieg 70c8bd08e6
zellij: disables shell integrations by default (#3981)
* zellij: disables shell integrations by default

* zellij: removes outdated comment from test
2023-05-12 13:54:26 +02:00
Sefa Eyeoglu a835096fd2
kitty: add shellIntegration (#3759)
Kitty provides integrations for bash, fish and zsh. The new
programs.kitty.shellIntegration options allow the configuration of
these integrations.

See <https://sw.kovidgoyal.net/kitty/shell-integration> for more details.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-05-12 11:20:22 +02:00
Erik Krieg cc9f65d104
zellij: adds options to integrate with zsh, bash and fish shells (#3926)
* zellij: adds options to integrate with zsh, bash and fish shells

* zellij: add tests for shell integration options

* zellij: eval setup auto start for fish integration

* zellij: use interactiveShellInit for fish integration

* zellij: fixes format issues

* zellij: enable shell integrations by default

* zellij: compresses shell integration test cases

* zellij: removes the disabled shell integration tests

* zellij: formats tests
2023-05-11 21:25:46 +02:00
Ramses d97e8f8861
systemd: accept derivations as values for systemd options (#3974) 2023-05-11 15:50:37 +02:00
Gaétan Lepage 6be873663e
ssh: add setEnv option (#3935) 2023-05-11 14:22:40 +02:00
Naïm Favier 2f6a917ade
i3-sway: fix indentation of `bar` blocks (#3978)
The `indent` function unindents the first and last line by default, so
the `"bar {"` `"}"` wrapper should go inside the list.
2023-05-11 14:04:29 +02:00
Sefa Eyeoglu 622fa73725
beets: add mpdIntegration (#3755)
Allow configuration of mpdstats and mpdupdate plugins for Beets using
Home Manager.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-05-11 14:03:54 +02:00
Jian Lin f714b17031
emacs: extend startWithUserSession to start after graphical session (#3010) 2023-05-11 13:58:37 +02:00
Mario Rodas fa720861b5
translate-shell: add module (#3659) 2023-05-11 11:21:18 +02:00
Mario Rodas b365342adb
ledger: add structural `settings` option (#3661) 2023-05-11 11:20:49 +02:00
Nate Cox 983f8a1bb9
git-cliff: add module 2023-05-09 18:53:49 +02:00
arcnmx 78ceec68f2
xsession: cleanup systemd variables (#3636) 2023-05-07 23:59:56 +02:00
amesgen 6fc82e5697
i3status-rust: revert #3938 (#3957)
* Revert "i3status-rust: satisfy new 0.31 TOML output requirements (#3938)"

This reverts commit 0e4c33d760.

* i3status-rust: assertion for unsupported versions
2023-05-07 13:42:55 +02:00
Nathan Henrie f3824311a1
readline: Add support for keynames (#3947)
Kenames like `Control-n` or `meta-p` should not be quoted or they don't work.

Keyseqs like `\C-p` or `ab` must continue to be quoted.

See also: https://www.gnu.org/software/bash/manual/html_node/Readline-Init-File-Syntax.html

Fixes https://github.com/nix-community/home-manager/issues/3611
2023-05-04 19:39:46 +02:00
Naïm Favier ae6d5466bf
firefox: support bookmark tags (#3942) 2023-05-04 16:58:13 +02:00
Clément DOUIN 6abb775e75
himalaya: improve derivation for v0.7.X (#3664)
* himalaya: add soywod to maintainers

* himalaya: make the config safer

Also added two services and more tests.

* himalaya: fix doc + typos

* himalaya: use freeform

* himalaya: run ./format

* himalaya: make use of mkPackageOption
2023-05-04 12:28:08 +02:00
Matthias Jonen 514c0a71f4
helix: provide more detailed settings description (#3932)
Helix changed the definition of options. E.g. editor specific options
need to be prefixed with editor.
2023-05-04 00:42:04 +02:00
Yt 788777b536
nushell: add envVars attribute (#3930) 2023-05-04 00:12:21 +02:00
amesgen 0e4c33d760
i3status-rust: satisfy new 0.31 TOML output requirements (#3938) 2023-05-01 23:46:41 +02:00
Bernardo Meurer 3144311f31
zsh: allow multiple bindings to history-substring-search (#3929)
It's pretty common to need multiple bindings to
history-substring-search, since different terminals will send different
keys for up/down.

This does not break back-compatibility, and introduces a new test
2023-04-29 16:53:09 +02:00
Sinkerine 27d89b49e3
zplug: Update the path of init.zsh (#3922)
The current zplug nixpkgs puts everything under `$out/`. It pollutes the nix
profile dir.

This is a breaking change. It depends on an change of the output path in the
nixpkgs zplug package.
2023-04-29 11:08:16 +02:00
William Phetsinorath c4f3a37071
jujutsu: add module 2023-04-28 22:14:13 +02:00
Ryan Lahfa 0263da497e
notmuch & neomutt: Control virtualboxes being set in NeoMutt for Notmuch integration (#3143)
Virtual mailboxes (described by Notmuch queries) can now configured for each account in NeoMutt.
Plus, it is possible to disable Notmuch section for a specific account.
2023-04-24 16:41:29 +02:00
Bernardo Meurer a5a294a622
sway: import NIXOS_OZONE_WL into systemd
Without this, even if you configure a preference for Electron apps to
use Ozone by setting `NIXOS_OZONE_WL=1`, GUI apps launched through
systemd user services use XWayland, since the variable is not set in
their environment.

This fixes that issue by importing it, like we do other variables.
2023-04-23 20:10:16 +02:00
Yuriy Taraday 32d3e39c49
neovim: enable tests on Darwin
Checked on Apple Silicon laptop with both `aarch64-darwin` and
`x86-64-darwin`. All tests succeeded on both.
2023-04-23 00:38:01 +02:00
Christoph Heiss 3895469036
fnott: add D-Bus service file
This is needed to make fnott bus-activatable. Otherwise it won't be
started when a bus request is made [0]. Done in the same way as e.g.
dunst sets that up [1,2].

[0] https://www.freedesktop.org/software/systemd/man/systemd.service.html#id-1.10.6
[1] https://github.com/nix-community/home-manager/blob/master/modules/services/dunst.nix#L139
[2] https://github.com/dunst-project/dunst/blob/master/org.knopwob.dunst.service.in
2023-04-22 16:49:26 +02:00
Olmo Kramer 64d1f75a1e
herbstluftwm: fix default tag renaming
The previous implementation tried to rename the tag named "default" to
the first tag in `cfg.tags`. This was a wrong approach because if a
tag with the same name already existed, the renaming failed and the
default tag would continue to exist.

The looking up of the default tag also contained a bug because it
should have used `by-name` in the path.
2023-04-22 16:38:31 +02:00
Christoph Heiss 5160039edc
wofi: add module (#3786)
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-04-20 00:11:30 -06:00
Jon Seager cc05d26326
avizo: don't write a config file if settings are empty
Before this change, the default config provided by this module wrote
an empty file to `$HOME/.config/avizo/config.ini`, which caused a
bunch of errors, as Avizo tries to read a 'group' from the ini file,
which fails.

This commit also adds associated test cases.

PR #3871
2023-04-19 21:17:56 +02:00
Mika Naylor 58b8685e47
nushell: add shellAliases option
This allows nushell users to define shell aliases that are inserted
into nushell's `config.nu`.
2023-04-17 22:59:32 +02:00
VwCSXg 6db559daa9
thunderbird: add extraConfig option
The added extraConfig option allowes users to insert custom text at
the end of the generated profile `user.js` file. This allows the users
to import templates as part of their configuration.
2023-04-17 22:42:32 +02:00
Utkarsh Gupta e17e5e4f48
bottom: use xdg.configHome on Darwin
Both locations are supported, see

  https://clementtsang.github.io/bottom/nightly/configuration/config-file/default-config/
2023-04-17 21:57:35 +02:00
Paul Meyer 2df3d5d39c
swaylock: add enable and package option
Signed-off-by: Paul Meyer <49727155+katexochen@users.noreply.github.com>
2023-04-15 21:17:23 +02:00
Robert Helgesson 75f4f362e1
git-sync: fix test 2023-04-15 21:17:22 +02:00
Matthew_Cash 28698126bd
thunderbird: add userChrome and userContent options
Add an option to the Thunderbird module that allows specifying CSS for
userChrome and userContent styling

PR #3808
2023-04-12 00:06:38 +02:00
Naïm Favier ec06f419af
xdg-desktop-entries: make `exec` default to null (#3827)
The [specification](https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html)
does not require those keys to be set, and the type reflects that, so
they should default to null.
2023-04-04 10:41:46 +02:00
midchildan 2acea86583
launchd: make Launch Agents config a freeform setting
Because there probably are options we don't know about.
2023-03-25 23:59:58 +01:00
midchildan 885a504f80
syncthing: add Darwin support 2023-03-25 13:09:55 +01:00
Robert Helgesson a34aaad2ae
gpg: fix URL of key in test case
Fixes #3803
2023-03-25 09:57:33 +01:00
Chuang Zhu e386ec640e
mpv: add scriptOpts option, fix tests (#3491) 2023-03-21 11:33:36 +01:00
Damien Cassou a8f5ca239f
borgmatic: optionally exclude HM symlinks from backup
Co-authored-by: Naïm Favier <n@monade.li>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-03-21 08:56:23 +01:00
Thiago Kenji Okada b832390db3
i3status-rust: update it to handle 0.30.x releases (#3773)
* i3status-rust: update it to handle 0.30.x releases

0.30.0 is a major release that brings many breaking changes to the
configuration file. See:
https://github.com/greshake/i3status-rust/blob/master/NEWS.md#i3status-rust-0300

The only one that actually affects the module though is the change in
how the theme/icons are defined. Other changes are mostly on how to
specify formatting/blocks, and since we just generate the TOML as-is, it
needs changes in the user side.

So most changes in this commit are documentation updates, having
up-to-date examples from things that changed, e.g.: the new `click`
attribute that now can be applied to any block.

* i3status-rust: only use new format if i3status-rust >= 0.30.0

* news: document the i3status-rust changes

* i3status-rust: add thiagokokada as maintainer
2023-03-16 12:48:55 +01:00
Kylie McClain 95201931f2
qutebrowser: allow for specifying multiple commands in bindings (#3322)
This command adds the ability to specify lists of qutebrowser
commands as values for key bindings, which avoids the need for
concatenating commands with ` ;; `.
2023-03-15 19:22:12 +01:00
Janik 215af6252d
atuin: add disable key options (#3754)
Co-authored-by: Janik H <janik@aq0.de>
2023-03-15 11:52:48 +01:00
Felix Leitz 24c1a6335e
vscode: add options for global and user snippets (#3765)
Co-authored-by: Felix Leitz <felix.leitz92@gmail.com>
2023-03-13 18:45:03 +01:00
h7x4 fce9dbfeb4
lib: add generator for KDL
Added a generator for the KDL document language.
This is in order for home-manager to natively generate
the new config format for zellij, as described in nix-community#3364.

There is not a one to one mapping between KDL and nix types,
but attrset translation is heavily based on KDLs JSON-IN-KDL microsyntax.
The exception here is the `_args` and `_props` arguments, which lets you
specify arguments and properties as described in the spec.

See more here:
- https://kdl.dev/
- https://github.com/kdl-org/kdl/blob/main/SPEC.md

The generator also conforms to the interface from the nixpkgs manual:
https://nixos.org/manual/nixpkgs/stable/#sec-generators

Co-authored-by: Gaetan Lepage <gaetan@glepage.com>
2023-03-10 16:48:10 +01:00
Naïm Favier 3c18113bd7
mpd: add `extraArgs` (#3735)
Allow passing arguments to the MPD command line. Currently the only
interesting one is `--verbose`.
2023-03-05 09:41:34 +01:00
Robert Helgesson b9e3a29864
recoll: fix generation of string lists
The updated implementation will quote string lists as per the
description at

  https://www.lesbonscomptes.com/recoll/usermanual/#RCL.INSTALL.CONFIG

Fixes #3732
2023-03-02 20:01:51 +01:00
Kira Bruneau 564b82b354
firefox: fix search options without a default engine 2023-02-21 22:13:10 +01:00
Olmo Kramer 5e889b385c
mpd-mpris: add module 2023-02-20 23:43:42 +01:00
Naïm Favier 72ce74d3ea
qt: auto-detect style package from name (#3692)
* qt: auto-detect style package from name

* qt: test package auto-detection
2023-02-20 12:30:29 +01:00
Naïm Favier 5ffb0f1f81
tests: fix gnupg stub (#3685)
systemd now depends on `gnupg.override`, so we need a stub for systemd too.
2023-02-19 11:19:00 +01:00
Sumner Evans 2dce7f1a55
tests: fix formatting (tab -> spaces) (#3660)
Signed-off-by: Sumner Evans <me@sumnerevans.com>
2023-02-09 10:37:26 +01:00
Naïm Favier 1232d0e133
Revert "mbsync: make passwordCommand escaping consistent" (#3657)
This reverts commit e2c1756e3a.
2023-02-08 21:39:10 +01:00
Robert Helgesson 7529a2674a
scmpuff: clean up tests
Stub the scmpuff package. Also remove unnecessary `config` wrapping.
2023-02-07 22:19:10 +01:00
Guillaume Desforges 9621e9ab80
programs.neovim: add extraLuaConfig (#3639)
* programs.neovim: add extraLuaConfig

Add a configuration option to add custom lua configuration lines to
`lua.init`.

* apply review: formatting

* apply review: fix test
2023-02-05 12:09:26 +01:00
Kira Bruneau 9f4268e6b6
firefox: support passing any json value to settings (#3580)
Firefox internally only supports bool, int, and string types for
preferences, but often stores objects, arrays and floats as strings.

This change makes it nicer to specify those type of preferences in
Nix, and it also makes it possible to merge objects & arrays across
multiple modules.
2023-02-05 11:23:22 +01:00
Stanislav Asunkin e3f28ddb0d
tmux: fix secureSocket environment variable (#3593) 2023-02-05 11:22:41 +01:00
Damien Cassou ca69be9335
borgmatic: Do not inhibit idle in service (#3637)
This reflects a systemd service sample file change made in borgmatic
1.7.6, commit 2e9f70d49647d47fb4ca05f428c592b0e4319544:

    When backing up a machine with a monitor using logind to control
    idle timeout and things like DPMS, borgmatic can block the screen
    from turning on/off with systemd-inhibit. This is because by
    default systemd-inhibit will block
    "idle:sleep:shutdown". Borgmatic does not need to care about idle,
    only about suspend and shutdown. So, add an explicit `--what` flag
    for what borgmatic should inhibit.

    For more information see systemd-inhibit(1).
2023-02-05 11:13:04 +01:00
Tomo ffc022b6a7
vim-vint: add module (#3604)
* vim-vint: add module

* vim-vint: add tests

* maintainers: add tomodachi94

* vim-vint: fix tests

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-02-05 11:12:28 +01:00
Sleroq 2ffc6d6496
tmux: mouse support (#3642)
Co-authored-by: Sleroq <sleroq@sleroq.link>
2023-02-05 11:02:14 +01:00
Jarkad e2c1756e3a
mbsync: make passwordCommand escaping consistent (#3630)
* Fix mbsync passwordCommand escaping

* email: use lib.escapeShellArgs

Co-authored-by: Naïm Favier <n@monade.li>

* mbsync: update tests

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-02-03 23:22:11 +01:00
David Houston 1d94de5604
pass-secret-service: various improvements
Allow setting the application package and storePath used by the
config. Since the `programs.password-store` Home Manager module sets
config values via global environment variables, the default behavior
of the module should continue to behave as before for the user.

Additionally,

- Adds a few tests.

- Use "escapeShellArg" function call to the path parameter call to
  ensure paths with spaces work.

- Allow not setting storePath, which will cause `pass_secret_service`
  to default to using `~/.password-store`.

- If `pass-secret-service` is enabled, set its store path to default
  to the one defined in our password-store environment settings.

- Add myself (houstdav000) as maintainer.
2023-01-31 23:19:09 +01:00
Sefa Eyeoglu 69696fe539
wlogout: add module (#3629) 2023-01-31 17:06:18 +01:00
Mario Rodas 08a778d803
papis: add module 2023-01-28 18:51:48 +01:00
Lars Mühmel 7efca2ca18
files: allow disabling creation of a file
PR #3622
2023-01-26 22:31:16 +01:00
Mario Rodas c59f0eac51
treewide: fix typos (#3618) 2023-01-24 11:30:04 +01:00
arcnmx d633afe0d9
i3-sway: config.focus.wrapping deprecates forceWrapping (#3467)
Stop using the legacy syntax described in the i3 documentation:
https://i3wm.org/docs/userguide.html#_focus_wrapping
2023-01-15 19:20:13 +01:00
Olmo Kramer 2cff1c7642
ncmpcpp: Allow `str` type values for `mpdMusicDir` option (#3565)
The default value of `programs.ncmpcpp.mpdMusicDir` is taken from
`services.mpd.musicDirectory` if the mpd module is enabled, which has
type `either path str`. `programs.ncmpcpp.mpdMusicDir` did not accept
`str` values, though, so an error was raised when the default value was
used and `services.mpd.musicDirectory` was set to a value of type `str`.

This commit changes the type of `programs.ncmpcpp.mpdMusicDir` to also
accept `str` to reflect the type of `services.mpd.musicDirectory`.

Fixes #3560
2023-01-07 11:59:51 +01:00
Martin Weinelt d01e7280ad
i3-sway: Use foot as default terminal on sway (#3490) 2023-01-03 19:26:08 +01:00
Ramses a993eac106
neovim: fix extraLuaPackages type. (#3533)
Assigning to `programs.neovim.extraLuaPackages` a function taking a lua package set as input
and returning a list of packages, as described in the documentation,
threw an error because the rest of the code assumed that the value was always a plain list.
Using `lib.types.coercedTo`, we can accept such functions, as per the documentation,
as well as plain lists, which we then convert to a function ignoring its input argument.
We print a warning when a plain list is assigned, since the function
form is preferred, as it ensures that the right lua package set is used.

For the lua packages, we also get the lua package set from the
finalPackage, to make sure that we are always using the same package set
as the actual unwrapped neovim package being built.

For `programs.neovim.extraPythonPackages` I did the same.

I updated the test case so that we test both ways of setting these options.
2022-12-29 01:48:45 +01:00
Jarosław Wygoda fb49fbc368
clipman: add module 2022-12-28 23:02:08 +01:00
Robert Helgesson 8745cc9a21
parcellite: add basic test case 2022-12-28 22:16:47 +01:00
Mika Naylor 3ad22341a2
direnv: enable nushell integration
This enables nushell integration by default for direnv, similar to
bash/zsh/fish. The slightly verbose way of setting this is to ensure
that peoples' existing nushell configuration isn't overwritten, only
appended to, as would be the case if we just used the integration
example from the nushell docs:

  https://www.nushell.sh/cookbook/direnv.html

Closes #3520
2022-12-28 21:09:31 +01:00
Robert Helgesson d7a3c26854
broot: simplify test slightly 2022-12-28 20:49:19 +01:00
Robert Helgesson 18b56e3f7d
broot: update test to match upstream changes
Fixes #3527
2022-12-28 20:36:15 +01:00
Robert Helgesson 939731b8cb
cachix-agent: add module 2022-12-25 09:54:43 +01:00
Robert Helgesson 0f8bf4f92e
herbstluftwm: merge improvements 2022-12-21 00:20:28 +01:00
David Armstrong Lewis b44f56dfcd
nushell: support darwin config file locations
Previously the nushell module did not differentiate between Linux and
Darwin when deciding where to place config files, whereas nushell
does. This commit fixes that.
2022-12-20 23:57:11 +01:00
Olmo Kramer 47bb9e7569
herbstluftwm: Reset mousebinds on (re)load
Keybinds and rules were already reset, but now also the mousebinds are.
2022-12-19 22:40:24 +01:00
Olmo Kramer 1a0a5f5037
herbstluftwm: Fix error when no tags set
The default value for `xsession.windowManager.herbstluftwm.tags` is an
empty list, but the config file uses `builtins.head` on it, which causes
an error upon evaluation. With this change the tags configuration is
skipped if the list is empty.
2022-12-19 22:40:24 +01:00
Matthew Toohey b7eb400d41
pistol: refactor
This pull requests refactors the pistol configuration options, since
the current options are deficient in a few ways.

Closes #3486
2022-12-16 17:05:30 +01:00
Matt Bryant e412025fff
borgmatic: allow lists in extraConfig
In particular, we should be able to specify `exclude_backups` in our
configuration.

Fixes #3489
2022-12-13 23:34:49 +01:00
Robert Helgesson 263f6e4523
i3status-rust: fix tests
Nix 2.12.0 slightly changed the JSON output format. This updates the
i3status-rust test cases to match.
2022-12-13 22:10:22 +01:00
Gaetan Lepage 054d9e3187
gpg: update hash in test 2022-12-08 16:36:10 +01:00
mat ess 7e81e7ae2b
fish: always run fish_indent 2022-12-05 23:16:39 +01:00