Commit graph

2190 commits

Author SHA1 Message Date
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