1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-30 15:09:46 +01:00
Commit graph

2637 commits

Author SHA1 Message Date
Anthony Roussel
f1b7775d23
awscli: add module 2023-09-30 09:48:13 +02:00
Ramses
4f02e35f9d
direnv: add package options 2023-09-29 12:51:58 +02:00
Weblate (bot)
9d4cdf8cc4
Translate using Weblate (Danish)
Currently translated at 100.0% (18 of 18 strings)


Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/da/
Translation: Home Manager/Home Manager Modules

Co-authored-by: Emil Heilbo <yuki@yukie.dev>
2023-09-29 00:31:29 +02:00
Federico Rampazzo
1d813ff5a6
qt: remove qtstyleplugin-kvantum-qt4
The package qtstyleplugin-kvantum-qt4 has been removed, because it
depended on qt4.
2023-09-29 00:02:35 +02:00
jakob
0f4e5b4999
keychain: fix edge-cases in nushell integration
- If the parse does not match/returns an empty list, transpose does
  not transform it into a record and thus load-env fails.

- The parsing assumes keychain to emit bash-style completions, so set
  SHELL=bash to ensure keychain output is in the expected format.

PR #4459
2023-09-26 16:24:27 +02:00
KFears
dd88dbc694
neovim: expose finalPackage
Make the `finalPackage` option public, but still read-only. The final
package option is quite useful for users.

For example, to integrate `lazy.nvim` with Nix there are three things
that must be done:

1. `lazy.nvim` resets packpath, which should be managed by Nix; it has
   to be turned off with `performance.reset_packpath = false` option in
   `lazy.nvim`

2. Same thing applies to rtp, the relevant option is
   `performance.rtp.reset = false`

3. `dev.path` must be specified as the folder that contains the plugins.
   This folder is the path to Nix store path with Neovim plugins, and
   the plugins that are managed by Nix must be marked as `dev = true`

The third condition can not be fulfilled without this PR, as the final
package that Home Manager produces is not exposed, therefore it is
impossible to extract the Nix store path. This PR makes it more
accessible via

    ${
      pkgs.vimUtils.packDir config.programs.neovim.finalPackage.passthru.packpathDirs
    }/pack/myNeovimPackages/start
2023-09-26 08:00:52 +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
Avimitin
835465e8ba
lsd: allow user to configure colors
Signed-off-by: Avimitin <dev@avimit.in>
2023-09-24 09:47:00 +02:00
Chris Dawkins
2d27bdcd64
direnv: fix nushell syntax
With nushell `0.85.0` this is no longer valid syntax. This change fixes
the syntax error with `0.85.0` while still remaining valid for `0.84.0`
and earlier.
2023-09-24 00:56:48 +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
Weblate
0ed5f9786b
Add translation using Weblate (Thai)
Co-authored-by: Weblate <noreply@weblate.org>
2023-09-20 06:38:48 +00:00
David Knaack
6f88243322
starship: use use instead of source for nushell
For starship v1.16 onwards this is the upstream-recommended method.
2023-09-19 23:14:29 +02:00
Robert Walter
7ee73f5363
rofi-pass: add package option 2023-09-19 22:24:36 +02:00
Robert Helgesson
8aac47a140
waybar: fix service After value
Fixes #4469
2023-09-19 21:39:16 +02:00
ykis-0-0
f5b920f4d2
fluxbox: fix xsession command
Fixes #4457
2023-09-19 20:52:50 +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
VwCSXg
feb7006159
git: replace gitToInit with lib function
Remove the function gitToInit and underlying functions in favor of using
the function lib.generators.toGitINI from nixpkgs.
2023-09-18 23:57:36 +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
Florian Peter
e63a6b3479
programs.i3status-rust: reload on config change (#4466)
Adds automatic reloading of i3status-rust on config change.
This is done via sending SIGUSR2, which is now supported since [v0.20.0](https://github.com/greshake/i3status-rust/blob/master/NEWS.md#new-blocks-and-features-21)

The previous method of attempting to restart i3 in its entirety didn't work at least on my system, and is now overkill anyways.
2023-09-18 15:25:42 +02:00
Hosted Weblate
d9b88b4352
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-09-14 00:13:59 +02:00
Robert Helgesson
a8cde78506
home-manager: update translation templates 2023-09-13 23:46:35 +02:00
Robert Helgesson
5f5cb7a613
carapace: add xgettext workaround 2023-09-13 23:45:50 +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
NotAShelf
a0ddf43b62
xplr: add module 2023-09-13 08:10:39 +02:00
Tristan Daniël Maat
5171f5ef65
swaylock: document the need for host PAM configuration 2023-09-11 23:59:04 +02:00
Sefa Eyeoglu
ac1c7c34db
exa: replace with eza
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-09-11 22:17:41 +02:00
Karel Kremel
2b637f3289
Translate using Weblate (Czech)
Currently translated at 100.0% (35 of 35 strings)

Translate using Weblate (Czech)

Currently translated at 5.5% (1 of 18 strings)

Co-authored-by: Karel Kremel <charles@alembiq.net>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/cs/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/cs/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-09-10 12:17:56 +02:00
Weblate
3dd5470e59
Add translation using Weblate (Czech)
Co-authored-by: Weblate <noreply@weblate.org>
2023-09-10 12:17:56 +02:00
Lin Jian
19c6a4081b
emacs: add version for default.el package
A recent change[1] in Nixpkgs makes version attribute non-optional.

[1]: https://github.com/NixOS/nixpkgs/pull/253448
2023-09-08 09:00:58 +08:00
Robert Helgesson
f1d4f49e71
just: simplify 2023-09-07 22:29:12 +02:00
Christina Sørensen
91341cde41
eza: add module
This copies the exa configuration for eza, the official fork of the
program.

Signed-off-by: Christina Sørensen <christina@cafkafk.com>
2023-09-07 17:57:00 +02:00
Weathercold
3c0e381fef
carapace: add module 2023-09-05 08:39:59 +02:00
Basile Clément
886ea1d213
accounts.email: fix runbox.com TLS setup (#4408) 2023-09-04 22:29:18 +02:00
nicoo
7ac2cd01ae tmpfiles: use only xdg.configFile
This is a small refactor, and minimises the impact of home-manager#4398.
2023-08-31 14:18:55 +02:00
arjan-s
a7eab56be5
programs.khal: add settings option (#4375) 2023-08-30 11:57:47 +02:00
cafkafk
43ec65ad55
Translate using Weblate (Danish)
Currently translated at 83.3% (15 of 18 strings)

Translate using Weblate (Danish)

Currently translated at 100.0% (35 of 35 strings)

Co-authored-by: cafkafk <christina@cafkafk.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/da/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/da/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-08-27 23:09:54 +02:00
Damien Cassou
455cc8cf1c
offlineimap: cleanup unused bindings 2023-08-27 22:36:42 +02:00
Damien Cassou
0962772e0b
antidote: cleanup unused bindings 2023-08-27 22:36:41 +02:00
Damien Cassou
35cbed7ac7
aerc: cleanup unused bindings 2023-08-27 22:36:40 +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
networkException
f8c5fd7509
chromium: add support for dictionaries
this patch adds support for installing hunspell dictionaries in
chromium.
2023-08-27 10:42:38 +02:00
Anton Mosich
8eb8c212e5
qcal: add module 2023-08-22 18:09:05 +02:00
Robert Helgesson
ea59b79f31
bat: generate cache file in XDG cache home
Fixes #4345
2023-08-22 08:34:00 +02:00
polykernel
a0ad98174c
home-cursor: remove IFD when linking icon directories
An IFD was introduced in bdb5bcad01 from
reading the top-level directories of the `home.pointerCursor.package`
at instantiation time.

This commit removes the IFD introduced when linking icon directories
by linking only the icon directory matching `home.pointerCursor.name`
in `home.pointerCursor.package`. This should be functionally
equivalent to linking all top-level directories of the supplied icon
package as the module only generates cursor configurations pertaining
to the cursor identified by `home.pointerCursor.name`. Deviations in
behavior caused by additional files linked in $HOME/.icons as of the
status quo should be treated as impurities.
2023-08-22 08:22:24 +02:00
polykernel
bdb5bcad01
home-cursor: improve icon compatibility
The current cursor configuration poorly accomodate applications not
following the XDG icon theme spec. As a result, some applications fail
to locate user defined icons and themes.

To address this, symlinks from icon directories in the provided cursor
package was to $HOME/.icons were added added for greater compatibility
with applications using hardcoded icons directories. This approach was
chosen to allow for coexistence of declarative and non-declarative
icon files in the icons directory. In addition, symlinks of icon
directories were mirrored in $XDG_DATA_HOME/.icons for backwards
compatibility. As per the XDG icon theme spec, applications are to
search in $HOME/.icons first for icons and themes so the existing
behavior should not break for XDG compliant applications[1].

[1] https://specifications.freedesktop.org/icon-theme-spec/latest/ar01s03.html
2023-08-19 14:32:28 +02:00
Kilian Mio
6a94c1a597
fix(qt): allow theming for apps started by systemd (#4349) 2023-08-17 10:27:17 +02:00
Donovan Glover
9db5b89f40
pqiv: add module 2023-08-16 17:44:54 +02:00
NotAShelf
b84767a145
xplr: add module 2023-08-15 20:26:58 +03:00
Robert Schütz
18791781ea
browserpass: support librewolf 2023-08-15 08:42:51 +02:00
HeartBlin913861820c094e37
da6874e8bb
Translate using Weblate (Romanian)
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (Romanian)

Currently translated at 100.0% (35 of 35 strings)

Co-authored-by: HeartBlin913861820c094e37 <heartblin@proton.me>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ro/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ro/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-08-14 09:40:15 +02:00
Mihai Fufezan
88067b9b14
hyprland: remove xwayland.hidpi (#4302)
Remove xwayland.hidpi option, since we're dropping HiDPI XWayland
patches support, opting to use the builtin xwayland:force_zero_scaling
option instead. It is described in more detail in
https://wiki.hyprland.org/ Configuring/XWayland.
2023-08-14 09:40:09 +02:00
Robert Helgesson
c3ab5ea047
home-manager: handle profile list in Nix >2.17
Nix 2.17 changed the format of the `nix profile list` output. This
commit adds support for parsing the new JSON profile list format.

Fixes #4298
2023-08-13 01:18:17 +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
Anton Mosich
255f921049
programs.khal: uncomment locale config (#4319)
While the locale options were declared, the weren't used in the
generation of the config file, because the locale submodule missed a
default, which failed the tests. I added an empty attribute set as a
default, which fixes the test, and works with the defaults in the
submodule options as expected.
2023-08-12 17:21:13 +02:00
Slabity
6e1eff9aac
kanshi: support adaptive sync (#4328) 2023-08-10 15:05:36 +02:00
Jian Lin
a8f8f48320
mu: add package option (#4325) 2023-08-09 18:40:43 +02:00
Christian Albrecht
7b8d43fbaf
modules: types.string throws error now (#4324)
Since the merge of https://github.com/NixOS/nixpkgs/pull/247848
2023-08-08 17:00:24 +02:00
Ivan Malison
903e06d734
taffybar: Avoid restarting too quickly (#4316) 2023-08-06 11:00:44 +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
Lena Fuhrimann
15043a6591
zsh: Add zsh.history.ignoreAllDups config option (#4248) 2023-08-04 12:12:57 +02:00
Matt Moriarity
a4f4508791
jujutsu: fix zsh completion (#4305) 2023-08-04 11:19:57 +02:00
박수원
86dd48d70a
Translate using Weblate (Korean)
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (Korean)

Currently translated at 100.0% (35 of 35 strings)

Co-authored-by: 박수원 <bboxone@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ko/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ko/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-08-03 07:07:08 +02:00
cvoges12
484a1c9442
network-manager-applet: remove --sm-disable flag
The `--sm-disable` flag is deprecated. It doesn't show in the man
pages, any documentation, and others have seemed to notice as well:

> The `--sm-disable` flag isn't used anymore due to the applet no longer being session-managed.

From: <https://askubuntu.com/a/525273>

Which cites: <https://mail.gnome.org/archives/networkmanager-list/2011-May/msg00141.html>

PR #4296
2023-08-02 12:09:07 +02:00
Masanori Ogino
a146ab6a61
himalaya: update a link to ticket 2023-08-02 11:41:17 +02:00
Yt
8c731978f0
nushell: deprecation of let-env (#4292) 2023-08-01 19:27:30 +02:00
Yureka
4542db6056
man: fix caches generation in cross-compiled system (#4294)
Co-authored-by: Your Name <you@example.com>
2023-08-01 12:56:37 +02:00
Yureka
89df56fefe
fish: fix session vars build in cross-compiled system (#4293) 2023-08-01 10:50:13 +02:00
Hosted Weblate
310c0063b2
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-08-01 01:40:43 +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
3db43afcb4
home-manager: rework news command
This new way of handling news should also work in Nix Flake setups.
2023-07-31 12:43:36 +02:00
Robert Helgesson
f58889c07e
gnome-terminal: add assertion on profile names 2023-07-29 19:43:20 +02:00
Naïm Favier
5c23226768
hyprland: use toKeyValue's indent argument (#4274)
Freshly added in https://github.com/NixOS/nixpkgs/pull/244819
2023-07-29 13:12:37 +02:00
Anselm Schüler
8d243f7da1
gpg: fix typo (#4277) 2023-07-27 18:54:08 +02:00
Naïm Favier
ba2c0737cc
firefox: make package nullable (#4113) 2023-07-25 18:49:12 +02:00
Robert Helgesson
0306d5ed7e
git-sync: add news entry for darwin
PR #4259
2023-07-25 09:16:42 +02:00
Naïm Favier
d309a62ee8
tmate: don't generate empty config file (#4271) 2023-07-24 16:17:31 +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
Patrick Jackson
1443abd269
script-directory: fix documentation link (#4258) 2023-07-20 19:52:05 +02:00
Reza Almanda
0cb3ac57fc
Translate using Weblate (Indonesian)
Currently translated at 38.8% (7 of 18 strings)

Translate using Weblate (Indonesian)

Currently translated at 38.8% (14 of 36 strings)

Co-authored-by: Reza Almanda <rezaalmanda27@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/id/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/id/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-07-19 23:28:32 +02:00
Masanori Ogino
44ba018437
jujutsu: update for Jujutsu 0.8.0 (#4250) 2023-07-19 20:33:38 +02:00
Naïm Favier
0841242b94
ripgrep: don't set env. variable if no config (#4254)
Fixes https://github.com/nix-community/home-manager/issues/4253
2023-07-19 18:18:40 +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
b5a65b91fb treewide: mkAliasOption -> mkAliasOptionMD 2023-07-17 16:49:35 +01:00
Emily
e04de5b308 treewide: mkPackageOption -> mkPackageOptionMD 2023-07-17 16:49:35 +01:00
Emily
71df507159 treewide: convert options with tables to Markdown
The Markdown options processor cannot handle rendering tables
to DocBook.  This could be fixed, but as we won't be using the
DocBook output for long I just removed them for now in the interest
of expediency; they were all well-suited to being description lists
showing option types anyway, apart from one awkward case in the form
of trayer, which also had ad-hoc syntax for enumerating acceptable
values in the documentation. Since the types aren't actually used for
option processing anyway, I changed them to use `enum` and similar to
give a single description of the acceptable values without a big table.
2023-07-17 16:49:35 +01:00
Emily
21c700d14b treewide: convert options with lists to Markdown
`nix-doc-munge` can't handle these, which is understandable as I can
barely handle them either. There are a few infelicities here: the
current processor can't handle multiple terms to one description in
a description list so they get comma-separated in one case, and one
case that should ideally render as a `<figure>` with a `<figcaption>`
in HTML is reduced to a paragraph with some `<strong>` text. (Which, in
fairness, is how it rendered in practice with the DocBook anyway.) The
docs generator has since been updated to handle figures, but we can't
use it until moving off DocBook output.
2023-07-17 16:49:35 +01:00
Emily
9e4a73c25e treewide: convert custom enable docs to Markdown
`nix-doc-munge` can't tell what's going on with this pattern, so I
just handled them all manually.
2023-07-17 16:49:35 +01:00
Emily
3222c99a91 treewide: convert parameterized docs to Markdown
Parameterized documentation generators like this can't be converted
automatically.
2023-07-17 16:49:35 +01:00
Emily
3228f92b90 treewide: manually convert some docs to Markdown
These files all have options that trip up the `nix-doc-munge`
conversion tool for one reason or another (syntax that clashes with
Markdown, options that were already using Markdown syntax despite not
being marked that way, output that differs slightly after conversion,
syntax too elaborate to convert with some cheap regular expressions,
...). Translate them manually and do a little copyediting to options
in the vicinity while we're at it.
2023-07-17 16:49:35 +01:00
Emily
e2a1cb50d8 treewide: fix mkEnableOption arguments
`mkEnableOption` wraps its argument in a full sentence; its argument
should not include the start of a sentence or the final full stop.
2023-07-17 16:49:35 +01:00
Emily
11b09b10e4 treewide: add missing option descriptions
The new options processor errors out on these by default, and it's
good for every option to have documentation in general.
2023-07-17 16:49:35 +01:00
Emily
59b933653a docs: use nixosOptionsDoc
Output is mostly unchanged aside from some minor typographical and
formatting changes, along with better source links.

We temporarily export `options.docBookForMigration` to allow
`nix-doc-munge` to check its conversions.
2023-07-17 16:49:35 +01:00
Emily
23ad3d2b53 version: add isReleaseBranch 2023-07-17 16:49:32 +01:00
Hosted Weblate
2f84579a70
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-07-16 10:11:32 +02:00
Rosario Pulella
1e7ba7102e
home-manager: remove Home Manager default paths
This removes the hard-coded fallback Home Manager paths. Specifically

    ${XDG_CONFIG_HOME:-$HOME/.config}/nixpkgs/home-manager

and

    "$HOME/.nixpkgs/home-manager"

Use `@HOME_MANAGER_PATH@` if it has been provided and points to
something that exists. Warn the user if it does not point to
something.

If we have not been provided with a `@HOME_MANAGER_PATH@` that exists,
then for both hard-coded paths show a warning if something exists
where the paths are pointing.

This no longer attempts to use either of the hard-coded paths as
fallback for the Home Manager path.
2023-07-16 10:09:22 +02:00
Genevieve
f5b03feb33
imapnotify: Use JSON type for extraConfig (#4238)
Prior to this change, it was impossible to nest attrsets in
accounts.email.accounts.<name>.imapnotify.extraConfig. However,
goimapnotify's configuration is JSON-based, and the recommended
configuration has:
```
  "tlsOptions": {
    "rejectUnauthorized": true
  },
```

This change changes the type from an attrset of str/int/bool to the
JSON type provided by nixpkg's `pkgs.formats.json`.
2023-07-15 20:53:43 +02:00
swaps
346032240c
Translate using Weblate (French)
Currently translated at 100.0% (18 of 18 strings)

Co-authored-by: swaps <swapgs@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/fr/
Translation: Home Manager/Home Manager Modules
2023-07-15 16:49:56 +02: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
Naïm Favier
c1cdce3d89
i3-sway: allow arbitrary floating modifier (#4229)
The floating modifier can consist of a combination of modifier keys.
Trying to model this with a regex doesn't seem worth it, so just use
`str`.
2023-07-14 21:26:09 +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
Maroka-chan
d2e47de536
home-cursor.nix: enable gtk module when enabling gtk config generation (#4144)
* home-cursor.nix: enable gtk module when enabling gtk config generation

The gtk configurations are not generated unless config.gtk is enabled.
This is a point of confusion because config.home.pointerCursor.gtk can essentially be disabled,
despite having it enabled.

* home-cursor.nix: Add note to gtk config generation description instead of enabling gtk module

* home-cursor.nix: Add note about applying pointerCursor configs to main submodule desc

* home-cursor.nix: Change tabs to spaces
2023-07-14 21:25:46 +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
Sumner Evans
a6d1d954b8
ssh-agent: add assertion and fix news entry (#4210)
See https://github.com/nix-community/home-manager/pull/4178#discussion_r1249460142

Signed-off-by: Sumner Evans <me@sumnerevans.com>
2023-07-10 16:37:49 +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
simfu
34db2f0521
unison: Allow using same option multiple times (#4208)
Unison supports the same option to be given several times as a command
 line argument (e.g. unison -path xxx -path yyy).

 This commit adds Home Manager support for this by allowing a list of
 strings to be given to services.unison.pairs.<name>.commandOptions values.

 # Veuillez saisir le message de validation pour vos modifications. Les lignes
2023-07-07 13:57:22 +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
Anton Mosich
b23c7501f7
i3: remove deprecated example in i3.config.startup (#4201)
Deprecated in cacb8d4, see #265
2023-07-05 12:23:31 +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
Reza Almanda
b66af0ac66
Translate using Weblate (Indonesian)
Currently translated at 27.7% (5 of 18 strings)

Translate using Weblate (Indonesian)

Currently translated at 33.3% (11 of 33 strings)

Co-authored-by: Reza Almanda <rezaalmanda27@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/id/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/id/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-07-04 12:41:08 +02:00
Janik
4a26e21030
programs.khal
moved highlight_event_days where appropriated and added tests
2023-07-04 12:14:47 +02:00
Kylie McClain
d895a77448
vdirsyncer: synchronize metadata as well (#4167) 2023-07-04 12:11:28 +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
Paul Stadig
c24deeca64
xfconf: remove properties with null values (#4192)
Co-authored-by: Paul Stadig <paul@thoughtfull.systems>
2023-07-03 20:34:42 +02:00
Linus Heckemann
89d10f8adc
news: fix typo in programs.zsh.antidote entry 2023-07-01 08:09:07 -06:00
Linus Heckemann
2d9210f25e
ssh-agent: init module (#4178) 2023-07-01 08:08:59 -06:00
ThinkChaos
7a0e9a6782
chromium: fix commandLineArgs to use the user specified package (#4175) 2023-07-01 07:41:37 -06: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
Guilhem Saurel
17ce23ea56
lsd: use -A instead of -a in aliases (#4173)
The current `lla` alias, together with the `total-size` option try to get
the size of the `..` directory, and for this has to recursively open all
sibling folders. This may be super slow if some of those siblings
contain too many files, and raise a ton of useless errors if some of
those siblings contains non-readable files.

I'm suggesting to use `-A` instead, which will skip the obvious `.` and
`..` folders.

While here, I think we could also add `llt`.
2023-06-30 21:47:03 +02:00
Kylie McClain
a7002d6bfc
kakoune: add defaultEditor option 2023-06-28 18:31:26 +02: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
hitsmaxft
3bc1bc4012
antidote: fix .dot path
Add $HOME to pin .zsh_plugin path, prevents antidote from creating
empty .zsh_plugins.txt in pwd while new zsh process starting.
2023-06-27 08:28:40 +02:00
Alexander Ben Nasrallah
68aebb45de
fish: follow links to find man pages
Some packages link man pages, e.g. if a package is wrapped with
`buildEnv`.
2023-06-24 13:37:18 +02:00
Alexander Ben Nasrallah
b59f682e86
fish: consider man pages from extraOutputsToInstall
Some packages provide man pages in extraOutputs, e.g. tmux and
tmux.man.
2023-06-24 13:37:17 +02:00
Gabriel Arazas
d2b6f2d154
zellij: fix module description for shell integrations 2023-06-23 09:49:50 +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
Weblate
b9046172a5
Add translation using Weblate (Indonesian)
Co-authored-by: Weblate <noreply@weblate.org>
2023-06-22 21:28:55 +02:00
Mario Rodas
a481789457
treewide: remove marsam as maintainer (#4136) 2023-06-22 10:16:28 +02:00
Ivan Malison
29358e8be7
starship: Remove INSIDE_EMACS checks when enabling shell integration (#4135)
Many of the terminals supported inside emacs work perfectly fine with STARSHIP.
The TERM=dumb case already handles the tramp and eterm cases, so as far as I can
tell, this is basically just a check for the benefit of OLD versions of
term-mode (see
emacswiki.org/emacs/AnsiTerm#:~:text=Historically%2C%20'M%2Dx%20ansi%2Dterm,the%20older%20'C%2Dc'%20binding.,
which indicates that it also now handles colors).
2023-06-22 10:14:49 +02:00
dariof4
1fefd7bb8d
gtk: Add gtk4.extraCss option (#4133) 2023-06-21 18:38:43 +02:00
Dany Marcoux
50cb4d8a1e
programs.helix: add defaultEditor (#4127) 2023-06-21 15:50:13 +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
Robert Helgesson
9a76fb9a85
home-environment: allow skipping sanity checks
See https://github.com/nix-community/home-manager/issues/4019#issuecomment-1568659267
2023-06-21 00:52:20 +02:00
Sven Keidel
1b61530608
Translate using Weblate (German)
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (German)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Sven Keidel <svenkeidel@pm.me>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/de/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/de/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-21 00:20:32 +02:00
Naïm Favier
e6d134ce12
home-environment: re-enable Nixpkgs release check 2023-06-20 23:35:23 +02:00
Damien Cassou
ec58f8bed7
borgmatic: add missing support for output and hooks
Fixes #3760
2023-06-20 19:19:10 +02:00
Rafael
e8b5f8f9b3
Update documentation to mention renamed option name. (#4126)
PR #3747 renamed the option wayland.windowManager.sway.systemdIntegration
to wayland.windowManager.sway.systemd.enable.

This commit simply updates documentation to reference the new format.
2023-06-20 12:43:16 +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
NotAShelf
6bdd72b914
clipman: wrong module name in description (#4117) 2023-06-19 16:29:55 +02:00
Damien Cassou
0480dabc99
vdirsyncer: Fix service by moving the options before the command (#4109) 2023-06-18 16:23:02 +02:00
Pink Pony
f7c4dae2c8
Translate using Weblate (French)
Currently translated at 83.3% (15 of 18 strings)

Translate using Weblate (French)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Pink Pony <dreammc@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/fr/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/fr/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-18 00:32:44 +02:00
Robert Helgesson
162c17b0c9
fontconfig: minor update of generated configuration 2023-06-17 22:25:06 +02:00
Naïm Favier
9ba7b3990e
qt: fix breeze-qt5 path (#4098)
Don't use aliases as those may be disabled.
2023-06-16 15:33:15 +02:00
Daniel Siepmann
ea2f17615e
khal: improve module (#4088)
* khal: Do not hard code globbing.
2023-06-16 11:10:24 +02:00
Thiago Kenji Okada
4e09c83255
qt: bunch of fixes and updates (#4095)
* qt: always apply qt.style.package

Before this commit this was only being applied if `qt.platformName` was
set to "gnome". With this change we will always apply the package.

* qt: only set ~/config/Trolltech.conf in GTK or GNOME

* qt: add qtstyleplugin-kvantum-qt4 and qt6Packages.qtstyleplugin-kvantum

qt: add qtstyleplugin-kvantum-qt4

* news: add news entry about the qt module refactors

* qt: add thiagokokada as maintainer
2023-06-15 20:09:30 +02:00
Thiago Kenji Okada
d214b93ee3
Add missing qt modules (#4094)
* qt: add "qtct" to qt.platformTheme

This allows usage of qt5ct/qt6ct tool to configure Qt theme/icons/fonts
in non-KDE platforms.

* qt: add missing relatedPackages for qt.platformTheme = "kde"

* qt: add "kvantum" for qt.styles.name
2023-06-15 16:06:07 +02:00
Clément DOUIN
e0034971f9
comodoro: add module 2023-06-14 23:43:19 +02:00
Tomo
194086df82
git-credential-oauth: add module 2023-06-14 23:26:14 +02:00
Thiago Kenji Okada
32376992f7
qt: add "kde" to qt.platformTheme (#4085)
This allow you to configure Qt integration using KDE instead of
qgnomeplatform or qtstyleplugins. Useful if your theme supports both GTK
and KDE, for example Nordic.

To use this properly you will need to do some manual configuration for
now. You can set the theme settings using `~/.config/kdeglobals`.

Example:

```nix
{ ... }:
{
  qt = {
    enable = true;
    platformTheme = "kde";
  };

  xdg = {
    configFile.kdeglobals.text = lib.generators.toINI { } {
      General = {
        ColorScheme = "nordicbluish";
        Name = "nordic-bluish";
        shadeSortColumn = true;
      };
      Icons = {
        Theme = "Nordic-bluish";
      };
      KDE = {
        LookAndFeelPackage = "Nordic-bluish";
        contrast = 4;
      };
    };

    dataFile = {
      # For General.ColorScheme
      color-schemes = {
        source = "${pkgs.nordic}/share/color-schemes";
        recursive = true;
      };
      # For KDE.LookAndFeelPackage
      plasma = {
        source = "${pkgs.nordic}/share/plasma";
        recursive = true;
      };
    };
  };
}
```
2023-06-14 21:16:20 +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
Jeff Ames
e4aa9fd83b
Translate using Weblate (Japanese)
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (Japanese)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Jeff Ames <jeff@anjefu.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ja/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ja/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-13 16:31:55 +02:00
Hongtyu Bhe
252302673d
Translate using Weblate (Chinese (Simplified))
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (Chinese (Simplified))

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Hongtyu Bhe <mfthits@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/zh_Hans/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-13 16:31:55 +02:00
Daniel Siepmann
0d1e053ce9
vdirsyncer: Add missing include of services module (#4089) 2023-06-13 16:31:49 +02:00
Matthieu Coudron
d9a97e8b33
calendars: add missing modules (#4087)
forgot to import those during rebase
2023-06-13 11:07:56 +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
Austin Lund
cbbceb4894
offlineimap: Add package option (#4021) 2023-06-13 10:41:25 +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
Matthieu Coudron
b01eb1eb3b
Add infrastructure for contacts and calendars (#4078)
* Add infrastructure for contacts and calendars

This also adds the modules

  - programs.vdirsyncer,
  - programs.khal, and
  - services.vdirsyncer

that integrate with the new infrastructure.

Co-authored-by: Andrew Scott <3648487+ayyjayess@users.noreply.github.com>
Co-authored-by: Sebastian Zivota <sebastian.zivota@mailbox.org>

wip

* vdirsyncer: allow option userName, disallow userNameCommand

1. account option `userName` is now allowed by `programs.vdirsyncer`

2. The commented out account option `userNameCommand` was required to be set
   by `programs.vdirsyncer` (e.g. as `null`).
   It is now disallowed (commented out) by vdirsyncer.

* khal: added options 'color' and 'priority'
* Apply nixfmt

---------

Co-authored-by: Sebastian Zivota <sebastian.zivota@mailbox.org>
Co-authored-by: Johannes Rosenberger <johannes.rosenberger@jorsn.eu>
Co-authored-by: Johannes Rosenberger <johannes@jorsn.eu>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-06-12 23:21:24 +02:00
Rasmus Kirk
9e37a1b6f9
programs.joshuto: add the joshuto file manager (#4004)
* joshuto: Added the joshuto file manager

* maintainers: Added rasmus-kirk as a maintainer

* joshuto: Fixed maintainer information

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

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-06-12 12:02:09 +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
Naïm Favier
2a69182c56
Revert "maintainers: add rasmus-kirk as a maintainer" (#4076)
* Revert "maintainers: add rasmus-kirk as a maintainer"

This reverts commit 301b364892.

* Revert "joshuto: add the joshuto file manager"

This reverts commit e7fdcb40b2.
2023-06-09 22:15:56 +02:00
rasmus-kirk
e7fdcb40b2
joshuto: add the joshuto file manager
PR #4004
2023-06-09 21:27:40 +02:00
rasmus-kirk
301b364892
maintainers: add rasmus-kirk as a maintainer 2023-06-09 21:19:14 +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
9b8ba302ff
Clean up deprecated lib functions (#4068)
`isCoercibleToString` and `defaultPriority` will start raising warnings
in 23.05.
2023-06-09 11:57:20 +02:00
Nikolay Mokrinsky
2bbfc3a78a
Translate using Weblate (Russian)
Currently translated at 100.0% (18 of 18 strings)

Translate using Weblate (Russian)

Currently translated at 87.8% (29 of 33 strings)

Co-authored-by: Nikolay Mokrinsky <me@mokrinsky.ru>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ru/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ru/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-09 00:59:12 +02:00
Jany
cc6745b35f
aerc: add package option (#4065) 2023-06-07 22:15:15 +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
Nikita Pedorich
bffc49ffb2
ripgrep: remove configDir
Also minor formatting and news entry.
2023-06-04 01:12:05 +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
Dan
3876cc613a
Translate using Weblate (Ukrainian)
Currently translated at 100.0% (18 of 18 strings)

Co-authored-by: Dan <denqwerta@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/uk/
Translation: Home Manager/Home Manager Modules
2023-06-01 00:44:11 +02:00
gallegonovato
efed2ccd9f
Translate using Weblate (Spanish)
Currently translated at 100.0% (18 of 18 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/es/
Translation: Home Manager/Home Manager Modules
2023-06-01 00:44:11 +02:00
Robert Helgesson
4d8fedfd29
Translate using Weblate (Swedish)
Currently translated at 100.0% (18 of 18 strings)

Co-authored-by: Robert Helgesson <robert@rycee.net>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/sv/
Translation: Home Manager/Home Manager Modules
2023-06-01 00:44:11 +02:00
Hosted Weblate
76a816a896
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-06-01 00:44:11 +02:00
Emily
53ccbe0170
fish: use babelfish for hm-session-vars.sh (#4012)
* home-environment: add `home.sessionVariablesPackage`

Allow the `hm-session-vars.sh` derivation to be referenced from other
modules, e.g. to translate it to fish with babelfish at build time.

* fish: use babelfish for `hm-session-vars.sh`

Translate `hm-session-vars.sh` to fish at system build time,
significantly decreasing shell startup time.

Based on https://github.com/NixOS/nixpkgs/pull/108947 by @kevingriffin.
2023-06-01 00:01:27 +02:00
Robert Helgesson
f1490b8caf
Switch current unstable version to 23.11 2023-05-31 19:11:30 +02:00
MaeIsBad
54a9d6456e
waybar: merge multiple style definitions (#4038)
This is backwards compatible and allows for more flexibility(eg.
allows for defining custom waybar modules in separate nixos modules,
before merging them together)

Co-authored-by: mae <git@badat.dev>
2023-05-30 23:06:24 +02:00
Naïm Favier
9f82227b64
lib/file-type: convert executable to bool (#4036)
It doesn't make sense to pass `executable = null` to `writeTextFile`.
2023-05-30 11:21:14 +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
Robert Helgesson
6a19225683
home-manager: verify username and home directory
The generation activation script should be run by the user specified
in `home.username` and `home.homeDirectory`. If some other user runs
the activation script, then files may end up in the wrong place or
with the wrong owner.

This commits adds a check early in the activation script that verifies
that the running user match the user in the configuration.

Fixes #4019
2023-05-27 09:14:05 +02:00
百地 希留耶
bec196cd9b
helix: improve warning message for languages option (#4023) 2023-05-26 15:35:29 +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
Naïm Favier
d9995d94f1
lib/file-type: fix xrefs (#4007)
Currently they all point to `home.file`.
2023-05-22 22:48:23 +02:00
Naïm Favier
ba006d7cca
script-directory: fix news entry (#4010) 2023-05-22 09:53:19 +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
Janik
b9a52ad20e
script-directory: add module (#3995) 2023-05-19 10:29:27 +02:00
Maria
c10403a573
Update ssh.nix (#4000)
fix typo
2023-05-18 22:37:19 +02:00
Naïm Favier
e4272987f7
Drop CODEOWNERS 2023-05-14 12:46:21 +02:00
Naïm Favier
db3d440e26
kitty: improve error message when theme not found (#3989) 2023-05-14 12:05:10 +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
Markus Amano
9384997717
Translate using Weblate (Japanese)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Japanese)

Currently translated at 96.9% (32 of 33 strings)

Co-authored-by: Markus Amano <markus.a.amano@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ja/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ja/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-05-13 08:48:50 +02:00
Reiner Gerecke
130abb8dbd
Translate using Weblate (German)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (German)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Reiner Gerecke <me@reinergerecke.de>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/de/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/de/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-05-13 08:48:50 +02:00
Robert Helgesson
19c509a6fa
emacs: minor fixes 2023-05-12 23:52:19 +02:00
Robert Helgesson
1eac5febc4
translate-shell: add news entry 2023-05-12 23:49:30 +02:00
Robert Helgesson
caa47705f7
beets: minor fixes 2023-05-12 23:26:09 +02:00
Robert Helgesson
8345a3166d
kitty: minor fixes 2023-05-12 23:26:06 +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
Leix b
d991776527
taskwarrior: add package option (#3768) 2023-05-11 14:04:17 +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
Christoph Heiss
010c269877
zsh: add package option (#3945)
Signed-off-by: Christoph Heiss <christoph@c8h4.io>
2023-05-10 17:54:34 -06:00
Nate Cox
983f8a1bb9
git-cliff: add module 2023-05-09 18:53:49 +02:00
Sefa Eyeoglu
3f3fa731ad
gnome-keyring: fix pass-secret-service assertion (#3963)
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-05-08 13:04:12 +02:00
arcnmx
78ceec68f2
xsession: cleanup systemd variables (#3636) 2023-05-07 23:59:56 +02:00
Cynthia Fox
e34fbe1801
pass-secret-service: Add dbus file, assert (#3953)
* pass-secret-service: Add dbus file, assert

Add the dbus service file in the package folder to XDG_DATA_HOME, as
well as adding an assertion to ensure both it and `gnome-keyring` aren't
enabled at the same time.

* pass-secret-service: Add self to CODEOWNERS

* pass-secret-service: Call out conflicting module(s)

* pass-secret-service: Revert `storePath` change

Signed-off-by: Cynthia Fox <cyntheticfox@gh0st.sh>

* pass-secret-service: Add password-store module default changes info

* pass-secret-service: Fix default info, modularize conflict checks

Signed-off-by: Cynthia Fox <cyntheticfox@gh0st.sh>

* Revert "pass-secret-service: Fix default info, modularize conflict checks"

This reverts commit 851df4fe49.

* pass-secret-service: Fix default info

Signed-off-by: Cynthia Fox <cyntheticfox@gh0st.sh>

* pass-secret-service: Indent `storePath` description

---------

Signed-off-by: Cynthia Fox <cyntheticfox@gh0st.sh>
2023-05-07 23:44:48 +02:00
Anton Mosich
d12ca77844
atuin: Replace dead link in documentation (#3962) 2023-05-07 23:44:22 +02:00
Utkarsh Gupta
de8ba413c5
home-environment: honor use-xdg-base-directories 2023-05-07 22:43:49 +02:00
Naïm Favier
017302483c
xfconf: fix type order (#3961)
Submodules must come after strings, otherwise strings are treated as
paths and implicitly imported.
2023-05-07 22:20:49 +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
Jan Tojnar
0b4ec66640
dconf: Warn about strict typing of options
This is a frequent surprise to users.
2023-05-07 12:25:32 +02:00
Eryk Michalak
669669fcb4
Translate using Weblate (Polish)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Polish)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Eryk Michalak <gnu.ewm@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/pl/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/pl/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-05-05 10:52:27 +02:00
Guangqing Chen
38271ead8e
xfconf: support uint (#3946) 2023-05-05 10:52:22 +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
Erwin Boskma
6142193635
atuin: Use flags option with nushell integration (#3917)
* atuin: Use flags option

* atuin: formatting

* atuin: Use flagsStr
2023-04-25 12:45:09 +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
Sebastian Estrella
e21ec3db17
git: add delta.package option
This makes it possible to conveniently customize the `delta` package.

PR #3897
2023-04-23 20:02:28 +02:00
Leix b
48ad7ade11
Translate using Weblate (Catalan)
Currently translated at 100.0% (33 of 33 strings)

Translate using Weblate (Catalan)

Currently translated at 100.0% (16 of 16 strings)

Co-authored-by: Leix b <abone9999@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ca/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ca/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-23 14:49:47 +02:00
winston
6169690ae3
zsh: add package option to oh-my-zsh
Allow setting a custom package for `programs.zsh.oh-my-zsh`.
2023-04-22 17:13:06 +02:00
Patrick Widmer
5cd5a1b585
aerc: add oauth params 2023-04-22 17:07:51 +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
Utkarsh Gupta
218503b691
zellij: use xdg.configHome on darwin 2023-04-22 16:35: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
Suwon Park
ac4c5c6fd8
Translate using Weblate (Korean)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Korean)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Suwon Park <sepiabrown@naver.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/ko/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ko/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-19 17:50:03 +02:00
Roberto Abdelkader Martínez Pérez
dfe7024f7e
mr: add module 2023-04-19 17:36:41 +02:00
nat-418
5ae849d3c5
docs: add toolbar to firefox bookmarks example (#3889)
This commit adds a clear example of how to get bookmarks into the bookmarks toolbar.
2023-04-19 15:04:40 +02:00
Bernardo Meurer
aa03c8a429
bat: rebuild caches during activation
Without this, themes configured through Home Manager are not found at
runtime.
2023-04-18 23:13:11 +02:00
Naïm Favier
cd5723734a
rofi: skip override if there are no plugins (#3885)
Avoid needless calls to `override` (also allows using `pkgs.rofi-unwrapped` with no plugins).
2023-04-18 12:33:44 +02:00
happysalada
2dcb61d396
atuin: enable nushell integration 2023-04-18 08:31:28 +02:00
Ilan Joselevich
fa980cc985
batsignal: add module 2023-04-18 08:28:46 +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
Utkarsh Gupta
cd690d2021
lazygit: use xdg.configHome on Darwin
If XDG_CONFIG_HOME is set then lazygit will use it. We therefore write
to that directory if Home Manager is managing the XDG directory
variables.
2023-04-17 21:32:48 +02:00
Stel Abrego
53bd74f786 copyq: fix typo in documentation 2023-04-16 17:14:24 -07:00
Basti
68eaf4b577
i3-sway: add option trayPadding (tray_padding) for bars (#3829) 2023-04-16 17:34:29 -06:00
Robert Helgesson
40ebb62101
swaylock: add platform assertion 2023-04-15 21:17:23 +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
Dan
5cdaa2982c
Translate using Weblate (Ukrainian)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Ukrainian)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: Dan <denqwerta@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/uk/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/uk/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Hosted Weblate
48aa5429cc
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Turmoil Nailsis
d53b9b39b2
Translate using Weblate (Japanese)
Currently translated at 87.5% (14 of 16 strings)

Co-authored-by: Turmoil Nailsis <indianrunner@duck.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ja/
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
gallegonovato
61f5c2196f
Translate using Weblate (Spanish)
Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Spanish)

Currently translated at 100.0% (33 of 33 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/es/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/es/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Robert Helgesson
49a3eff146
Translate using Weblate (Italian)
Currently translated at 87.8% (29 of 33 strings)

Translate using Weblate (French)

Currently translated at 87.8% (29 of 33 strings)

Translate using Weblate (Swedish)

Currently translated at 100.0% (33 of 33 strings)

Translate using Weblate (Swedish)

Currently translated at 100.0% (16 of 16 strings)

Translate using Weblate (Swedish)

Currently translated at 96.9% (32 of 33 strings)

Co-authored-by: Robert Helgesson <robert@rycee.net>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/fr/
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/it/
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/sv/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/sv/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Hosted Weblate
9481677f34
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Pablo Bollansee
b10e3ee4ad
Translate using Weblate (Dutch)
Currently translated at 100.0% (15 of 15 strings)

Translate using Weblate (Dutch)

Currently translated at 100.0% (31 of 31 strings)

Co-authored-by: Pablo Bollansee <pablo.bollansee@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/nl/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/nl/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-04-14 09:31:52 +02:00
Weblate
916b7a545d
Add translation using Weblate (Romanian)
Co-authored-by: Weblate <noreply@weblate.org>
2023-04-14 09:31:52 +02:00
Robert Helgesson
8631c04416
home-manager: ignore errors when creating the profiles path
Fixes #3873
2023-04-14 09:29:06 +02:00
midchildan
fe1e2dee19
home-manager: make sure Nix profiles path exists
The Nix profiles path may not exist right after installing Nix. In
that case, it is created on demand by the Nix CLI tools. However, Home
Manager assumes it exists and fails if it doesn't.

This change makes sure to trigger the creation of the Nix profiles
path before attempting to access it.
2023-04-14 02:17:50 +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
Robert Helgesson
6e57fc4705
home-manager: add some i18n context 2023-04-11 22:45:41 +02:00
Gaétan Lepage
013948ddf6
home-cursor: follow xdg spec for icons folder (#3851) 2023-04-11 22:41:48 +02:00
Robert Helgesson
93f5cb2482
home-manager: migrate profiles to nix state directory
If the user runs a recent Nix version that places per-user profiles in
`$XDG_STATE_DIR/nix/profiles`, then migrate the home-manager profile
there.

Also clean up `setupVars` a bit.
2023-04-10 13:52:02 +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
Robert Helgesson
ccf650bb5b
man: use cfg when possible 2023-04-03 21:18:07 +02:00
Naïm Favier
6c76fb5b12
maintainers: rename houstdav000 → cyntheticfox (#3838)
https://github.com/NixOS/nixpkgs/pull/223976
2023-04-03 20:28:29 +02:00
Bernardo Meurer
ddd8866c03
dconf: disable on darwin
While technically dconf on darwin could work, our activation step
requires dbus, which only *lightly* supports Darwin in general, and not
at all in the way it's packaged in nixpkgs. Because of this, we just
disable dconf for darwin hosts by default.

In the future, if someone gets dbus working, this _could_ be re-enabled,
unclear whether there's actual value in it though.
2023-04-02 00:52:34 +02:00
Damien Cassou
67b97020b6
copyq: support xwayland
We do this by adding QT_QPA_PLATFORM=xcb to the service environment as
per the workaround given in

  https://copyq.readthedocs.io/en/latest/known-issues.html#known-issue-wayland

Fixes #3530
2023-03-31 10:05:41 +02:00
Naïm Favier
0e065e1b6f
Revert "programs.neovim: link packpath dir in XDG_DATA_HOME (#3717)" (#3817)
This reverts commit deb2f59b5c.
2023-03-29 20:25:04 +02:00
Tim
765e4007b6
nixpkgs: fix semicolon and list layout in docs (#3813) 2023-03-28 12:46:08 +02:00
Matthieu Coudron
deb2f59b5c
programs.neovim: link packpath dir in XDG_DATA_HOME (#3717)
link the packpath in expected folder so that even unwrapped neovim can pick home-manager's plugins.

I sometimes need to run neovim not wrapped/configured by nix (when
developing neovim or when other projects bring their own neovim in
PATH). Currently they dont find plugins installed by home-manager in the
cases where packpath is not set to the generated nix packpath directory.
With this change, neovim can discover HM-installed plugins by itself.
2023-03-28 10:40:39 +02:00
midchildan
da325265b7
launchd: sync option definition with nix-darwin 2023-03-25 23:59:58 +01: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
Denis Kaynar
99680311f1
hstr: add module 2023-03-25 15:54:19 +01:00
Nick Cao
3ace6a31dd
im/fcitx: drop as fcitx 4 has been removed from nixpkgs (#3804)
Reference: https://github.com/NixOS/nixpkgs/pull/220776
2023-03-25 15:32:31 +01:00
midchildan
885a504f80
syncthing: add Darwin support 2023-03-25 13:09:55 +01:00
Adam Stephens
2f8d24b7f5
zoxide: enable nushell integration 2023-03-25 11:47:07 +01:00
Pavel Borzenkov
363c46b248
programs/alot: make Sent and Drafts folder optional (#3798)
Some of the email providers (like GMail and Fastmail) save Sent messages
automatically, so make the folders optional in the configuration.

Make Drafts folder optional as well, to allow it to be configured
manually in the extraConf with location outside of the maildir.
2023-03-22 11:25:02 +01:00
Gaétan Lepage
c6a7bc90ca
zathura: add documentation for mode-specific mappings (#3797) 2023-03-22 10:50:13 +01:00
Damien Cassou
486ba3de4e
copyq: add module 2023-03-22 08:33:34 +01:00
Sefa Eyeoglu
e60080ddfb
listenbrainz-mpd: add module 2023-03-22 08:21:11 +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
Damien Cassou
2ddd4e151d
borgmatic: change type of extraConfigOption
Switched to `yamlFormat.type` since the output file format is YAML.
2023-03-21 08:55:17 +01:00
Hosted Weblate
7217ca165b
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-03-20 00:23:04 +01:00
Robert Helgesson
1b8bf5c327
home-manager: avoid stray error message
Failure to create the global profiles directory is not actually an
error since we can recover. Therefore, avoid printing the mkdir error
message.
2023-03-19 23:32:23 +01:00
Alejandro Angulo
bcc417b80f
exa: removed stale comment (#3789) 2023-03-19 18:14:05 +01:00
Naïm Favier
3239e0b40f
Revert "starship: condition nushell integration on nushell 0.73+" (#3778)
This reverts commit c7231c06e9.
2023-03-17 16:31:35 +01:00
Naïm Favier
c7231c06e9
starship: condition nushell integration on nushell 0.73+ (#3776)
Older versions are not supported: https://starship.rs/#nushell
2023-03-17 14:11:30 +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
polykernel
5e94669f8e
home.pointerCursor: set common XCURSOR_* environment variables by default (#3663)
The `XCURSOR_*` environment variables specified in libxcursor
are used by many applications and libraries to load and configure
cursor settings. Setting these variables is a no-op if ignored but
is useful as a fallback when other sources of configuration are
unreliable.

This commit sets some commonly used `XCURSOR_*` environment variables
(i.e XCURSOR_THEME, XCURSOR_SIZE) by default when `home.pointerCursor`
is enabled.
2023-03-16 10:05:07 +01:00
Robert Helgesson
c8cb60b8a1
home-manager: add init command to main tool
The init command is essentially the old install script but integrated
into the home-manager tool. This simplifies things slightly since we
can use the existing code infrastructure.

The init command is Nix flake aware in the sense that, if we detect
that the user's Nix setup supports flakes, then we also create an
initial `flake.nix` file.

Finally, we update the installation instructions for the Nix flakes
standalone setup to use the new init command.

Zsh completion update provided by Anund <anundm@gmail.com>.
2023-03-15 22:47:04 +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
Robert Helgesson
5eec450c75
Merge translation updates 2023-03-15 12:52:50 +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
Hosted Weblate
af4e1af1ae
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-03-14 23:12:06 +01:00
Suwon Park
2fa7d28699
Translate using Weblate (Korean)
Currently translated at 100.0% (15 of 15 strings)

Co-authored-by: Suwon Park <sepiabrown@naver.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ko/
Translation: Home Manager/Home Manager Modules
2023-03-14 23:12:05 +01:00
Robert Helgesson
cae54dc45c
home-manager: change default configuration home
This changes the default configuration location for Home Manager
configurations from

    $XDG_CONFIG_HOME/nixpkgs

to

    $XDG_CONFIG_HOME/home-manager

The old location is still supported but using it will trigger a
warning message.

Fixes #3640
2023-03-14 23:10:54 +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
Olli Helenius
7fe539dfbb
Fix path to Kitty theme files (#3764)
The theme files were moved to `share/kitty-themes` in this nixpkgs
commit:

  3e29ae4159
2023-03-13 14:37:26 +01:00
Turmoil Nailsis
118a9f79fd
Translate using Weblate (Japanese)
Currently translated at 100.0% (15 of 15 strings)

Co-authored-by: Turmoil Nailsis <indianrunner@duck.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/ja/
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Dan
dd6c5acd86
Translate using Weblate (Ukrainian)
Currently translated at 100.0% (15 of 15 strings)

Co-authored-by: Dan <denqwerta@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/uk/
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Weblate
7783e1b949
Add translation using Weblate (Ukrainian)
Co-authored-by: Weblate <noreply@weblate.org>
2023-03-11 23:06:43 +01:00
gallegonovato
4bc153e9c8
Translate using Weblate (Spanish)
Currently translated at 100.0% (15 of 15 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/es/
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Robert Helgesson
609bc04c21
Translate using Weblate (Swedish)
Currently translated at 100.0% (15 of 15 strings)

Co-authored-by: Robert Helgesson <robert@rycee.net>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/sv/
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Hosted Weblate
9a8e3ad21a
Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Kim A. Ødegaard
a410f8d658
Translate using Weblate (Norwegian Bokmål)
Currently translated at 100.0% (14 of 14 strings)

Translate using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (32 of 32 strings)

Co-authored-by: Kim A. Ødegaard <kim@dyktig.no>
Translate-URL: https://hosted.weblate.org/projects/home-manager/cli/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/nb_NO/
Translation: Home Manager/Home Manager CLI
Translation: Home Manager/Home Manager Modules
2023-03-11 23:06:43 +01:00
Robert Helgesson
bf5712c586
home-manager: slightly expand option description 2023-03-11 22:44:26 +01:00
Gaetan Lepage
7224d7c54c zellij: fix typo 2023-03-10 17:15:39 +01:00
h7x4
c03d1e75a1
zellij: switch config lang from yaml to kdl for 0.32.0 2023-03-10 16:48:11 +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
Robert Helgesson
f69816489d
home-manager: handle missing per-user profiles directory
Specifically, if the global per-user profiles path do not exist and we
cannot create it during the activation, then place our profile in the
Home Manager data directory. We prefer to use the global location,
though, since it makes it visible to `nix-collect-garbage`.

This is intended to improve compatibility with Nix version 2.14 and
later, which no longer creates the per-user directories.

Also, use the Home Manager data directory to manage the gcroot for the
current generation. It does not have to sit in the global per-user
gcroots directory since it should never be eligible for GC.
2023-03-07 23:53:06 +01:00
amesgen
e314f6cf21
broot: remove unnecessary IFD 2023-03-05 13:27:21 +01:00
Guangqing Chen
68ba595783
xfconf: fix dbus may not be started in the startup of NixOS. (#3707) 2023-03-05 09:47:06 +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
Sylvain Fankhauser
547a3bc8d4
git: allow tags to be unsigned when signing.signByDefault=true (#3479) 2023-03-02 12:27:57 +01:00
Rosario Pulella
db1c22626a
mako: programs.mako -> services.mako (#3265) 2023-03-02 11:58:42 +01:00
Naïm Favier
ef7d316578
exa: always configure exa alias (#3721)
Otherwise the `icons`, `git` and `extraOptions` options have no effect
unless `enableAliases` is true.
2023-02-28 22:50:55 +01:00
Naïm Favier
ddcbf676ba
specialization: fix name conflict inside NixOS module (#3718)
If used inside the NixOS/nix-darwin module, we get conflicting definitions
of `name` inside the specialization: one is the user name coming from the
NixOS module definition and the other is `configuration`, the name of this
option. Thus we need to explicitly wire the former into the module arguments.

See discussion at https://github.com/nix-community/home-manager/issues/3716
2023-02-28 22:22:22 +01:00
Joel Höner
4bac341868
exa: add more options (#3505)
* exa: add more options

* exa: use `escapeShellArgs`

* exa: don't hardcode executable path in aliases

Prevents aliases from going stale in open terminals when the system is updated.

* exa: use `command` for self-referential alias

Otherwise fish complains about the recursive call.

Drop the aliases from ion shell since it doesn't implement the POSIX
`command` built-in.

* exa: re-add ion aliases

* exa: drop `command`

Fish doesn't complain about recursion if `exa` isn't escaped.

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-02-28 18:24:36 +01:00
patwid
305daba44a
aerc: update auth mechanisms (#3714) 2023-02-27 22:32:12 +01:00
Maximilian Bosch
ab7c8f4a84
modules/redshift-gammastep: install package into the profile (#3710)
This is needed to make sure that the tray icon is actually found.
Otherwise an empty icon indicating that it wasn't found is shown.
2023-02-27 15:49:49 +01:00
Maximilian Bosch
635bbcdd6f
modules/git: make options passed to less(1) for diff-so-fancy configurable (#3704)
The `-X` prevents that screen is cleared when showing a diff that's
larger than my screen.

I.e. when running `git diff` and press `q`, the last thing I want to see
is the prompt with `git diff` and *not* the part of the diff I browsed,
to be clear

    $ git diff
    $ <cursor>

Considering that this is somewhat opinionated, I decided to build an
option which allows you to pass arbitrary commands to the less
invocation.
2023-02-27 13:04:46 +01:00
siflfran
bf76afbb06
Set the SHELL environment variable for keychain in .xsession (#3695)
Xsession (and hence ~/.xsession) is executed in bash but does not set
SHELL to the full path to bash. In case the user's login shell is
something other than bash then SHELL is set to that shell. Keychain
inspects the SHELL variable to find out what shell it has to generate
code for, so in .xsession it generates code for the user's login shell
instead for bash.

This change forces SHELL to bash for keychain when invoked from
.xsession, the same way it's done when generating keychain's code for
bash integration.

Closes #3693
2023-02-26 19:55:27 +01:00
Gabriel Arazas
693d76eeb8
programs.gpg: update references to respective manpages (#3648) 2023-02-26 09:30:45 +01:00
Lord-Valen
664945b3e0
starship: Use mkEnableOption (#3701) 2023-02-24 23:15:57 +01:00
Anton Plotnikov
4295fdfa6b
avizo: add module
PR #3601
2023-02-22 23:26:41 +01:00
Kira Bruneau
564b82b354
firefox: fix search options without a default engine 2023-02-21 22:13:10 +01:00
Albert Peschar
c7c69ec405
launchd: fix example of StartCalendarInterval 2023-02-21 21:52:39 +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
Robert Helgesson
ebb21e1bf6
direnv: nushell integration should not be read only
Fixes #3689
2023-02-20 07:43:27 +01:00
ssantos
ae6f1895d5
Translate using Weblate (Portuguese)
Currently translated at 100.0% (14 of 14 strings)

Co-authored-by: ssantos <ssantos@web.de>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/pt/
Translation: Home Manager/Home Manager Modules
2023-02-19 23:45:20 +01:00
Weblate
bdcd1bde4e
Add translation using Weblate (Portuguese)
Co-authored-by: Weblate <noreply@weblate.org>
2023-02-19 23:45:20 +01:00
Natsu Kagami
9e9a0e43fe
owncloud-client: add package option 2023-02-19 23:33:03 +01:00
James Williams
81f16a1e3c
prezto: add missing use of yesNo
Specifically, this fixes evaluation of prompt.showReturnVal.
2023-02-19 23:20:59 +01:00
Kiran Ostrolenk
da72e6fc6b keychain: add nushell integration 2023-02-14 09:41:45 +00:00
Naïm Favier
1232d0e133
Revert "mbsync: make passwordCommand escaping consistent" (#3657)
This reverts commit e2c1756e3a.
2023-02-08 21:39:10 +01:00
Nathan van Doorn
e631d78ddf
vscode: fix erroneous application of lib.optional (#3655) 2023-02-08 12:18:28 +01:00
Nathan van Doorn
d7a5a28fc3
vscode: add extensions.json file in extensions dir (#3588)
* vscode: add extensions.json file in extensions dir

This change generates an 'extensions.json` file the same way that
nixpkgs' vscode-with-extensions does, and makes sure it is placed in the
directory with the extensions.

* vscode: remove leftover trace

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

* vscode: fix adding extensions.json with mutable extension dir

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

* vscode: let vscode regenerate the mutable extensions.json

* Remove nixpkgs duplication; only apply on vscodes new enough to need it

* Use lib.versionAtLeast

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

* Format vscode.nix

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-02-08 11:00:27 +01:00
Kylie McClain
6d95d98b6b
xsuspender: fix typo that made debug option a noop (#3653) 2023-02-08 00:15:20 +01:00
midchildan
edb3645383
systemd: remove platform assertion
Allow modules to define systemd services on macOS. It won't actually
have any effect, but it would allow modules to define both systemd
services and launchd agents without boilerplate conditionals.

As a consequence of this change, each module would have to check for
compatibility with the OS target instead.
2023-02-07 21:54:25 +01:00
midchildan
17dc593930
modules: add platform assertions 2023-02-07 21:54:24 +01:00
Naïm Favier
d6b1d42682
activation-init.sh: remove shebang, execute bit
This is not a standalone script, it's only meant to be included from the
activation script.
2023-02-07 21:47:19 +01:00
Naïm Favier
b70362bf9b
nix: fix package assertion
Sync it with the condition for generating nix.conf so that it triggers
if `extraOptions` is set but `package` isn't.
2023-02-07 11:35:12 +01:00
Robert Helgesson
c43d4a3d6d
firefox: manage add-ons per-profile
Internally we already managed them per-profile but exposed a global
option to maintain backwards compatibility. The benefit to having
per-profile extensions is quite large though, so it is time to switch.

Users of the global extensions option will get an error message that
indicates how to edit their configuration to work again.
2023-02-05 23:54:56 +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
Jacob Birkett
e716961d78
modules: java: fix setting JAVA_HOME (#3638)
Some JVMs pass through `home` as a derivation rather than as a string, as `openjdk` does. Since the module option for session variables expects a string, this is a type error. I suspect that this incorrect, and have changed the assignment here to coerce the `cfg.package.home` attribute to a string to be safe.

After discussing with @NobbZ, we have decided it is best to mitigate this problem in HM rather than to make potentially breaking changes to Nixpkgs.

Please do mention if you think we ought to propose a change to Nixpkgs instead.
2023-02-05 11:02:57 +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
Gaetan Lepage
d1c7730bb7
services.autorandr: add module 2023-02-02 21:54:53 +01:00
Loïc Reynier
2f62da9837
git: unset pager while using difftastic (#3633) 2023-02-02 02:58:17 +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
Mario Rodas
1c6f3054ca
rbenv: add module 2023-01-31 23:09:53 +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
Lin Jian
bb4b25b302
bash: format using nixfmt
PR #3609
2023-01-26 23:18:39 +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
Dixon Sean Low Yan Feng
7026e1a934
gpg-agent: fix SSH support for fish 2023-01-18 23:49:05 +01:00
Kira Bruneau
866a4ddcb3
firefox: refactor search.json.mozlz4 generation
The new setup should be easier to read.
2023-01-18 23:25:04 +01:00
Bikal Lem
3e42035fc0
opam: fix enableFishIntegration (#3597)
Fish shell doesn't require arguments to `eval` to be double quoted
like in a bash shell. At the moment doing so gives us the following
error:

~/.config/fish/config.fish (line 12): $(...) is not supported. In fish, please use '(/nix/store/8asq…)'.
eval "$(/nix/store/8asqgnhs89wzyjvs8p1n5hvxn7lkn9wa-opam-2.1.3/bin/opam env --shell=fish)"
      ^
from sourcing file ~/.config/fish/config.fish
	called during startup
source: Error while reading file “/home/user/.config/fish/config.fish”

This commit fixes the above error.
2023-01-15 13:48:02 -07: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
stephaneyfx
950aace44e
i3: Do not set i3 package (#3585)
Resolves https://github.com/nix-community/home-manager/issues/3584
2023-01-10 09:57:38 +01:00
Weblate
efb7b11974
Add translation using Weblate (Lithuanian)
Co-authored-by: Weblate <noreply@weblate.org>
2023-01-10 00:18:25 +01:00
Eric Ho
19dccb46f4
Translate using Weblate (Chinese (Traditional))
Currently translated at 92.8% (13 of 14 strings)

Co-authored-by: Eric Ho <eric913@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/home-manager/modules/zh_Hant/
Translation: Home Manager/Home Manager Modules
2023-01-10 00:18:23 +01:00
Naïm Favier
69806e9378
files: avoid surprises when linking files (#3018) 2023-01-09 13:00:21 +01:00
Yurii Matsiuk
4f0c1afba7
firefox: remove https-everywhere from example
See b70c44e857
2023-01-09 12:30:26 +01:00
Gaétan Lepage
684bdb386c
i3: remove i3/i3-gaps distinction (#3563) 2023-01-08 22:05:36 +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