1
0
mirror of https://github.com/nix-community/home-manager synced 2024-07-03 11:53:27 +02:00
Commit Graph

958 Commits

Author SHA1 Message Date
Matt Bryant
e412025fff
borgmatic: allow lists in extraConfig
In particular, we should be able to specify `exclude_backups` in our
configuration.

Fixes #3489
2022-12-13 23:34:49 +01:00
mat ess
7e81e7ae2b
fish: always run fish_indent 2022-12-05 23:16:39 +01:00
Mario Rodas
b5c083300b
treewide: fix typos 2022-12-05 12:58:02 +01:00
Robert Helgesson
c3060ab937
emacs: add note about inhibit-startup-message 2022-12-05 12:56:17 +01:00
Mario Rodas
6ce326cef9
treewide: use liberachat and OFTC in examples
Freenode was taken over by a wannabe bitcoin millionaire [1], which
prompted the migration of communities to Libera Chat and OFTC [2].

[1] https://blog.bofh.it/debian/id_461
[2] https://hackaday.com/2021/05/20/freenode-debacle-prompts-staff-exodus-new-network/
2022-12-05 10:38:54 +01:00
Mario Rodas
e3e2abaef5 yt-dlp: fix settings example
The yt-dlp settings should be an attribute set.
2022-12-03 04:20:00 +00:00
David
2b02f8c7cb
thunderbird: use account id for IMAP directory name
This allows users to have multiple accounts on the same domain within
the same profile.

Fixes #3448.
2022-12-04 13:49:29 +01:00
Loïc Reynier
15d94f3058
pet: don't create file without snippets 2022-12-04 12:28:03 +01:00
toastal
9fb1bb9794
himalaya: 0.6.x config updates
Some properties were renamed. Big changes however include `backend` and
`sender` enum options.
2022-12-04 09:34:47 +01:00
mat ess
ca48fced83
fish: format user and generated .fish files
Adds a `fishIndent` wrapper to pass fish scripts to the built in
`fish_indent` function.
2022-12-04 09:07:54 +01:00
maximsmol
eb3598cf44
just: deprecate module
The module is no longer necessary since completions work out of the
box now.
2022-12-03 10:13:47 +01:00
Andrew Marshall
478610aa37
neovim: Source neovimRcContent directly from store (#3444)
The previous version linked the file into home, then sourced that. Since
nothing else expects that file to be there, this is unnecessary.
Additionally, doing so made it impossible to test a built config without
switching, e.g. using `XDG_CONFIG_HOME=… nvim` or `nvim -u`. This
remedies that, at least for this particular reference.

To test this, change from asserting contents of the config file to
actually starting nvim, outputting sentinel values, and then asserting
their values are present. This way it’s tested that nvim loaded the
config, rather than that some config is in a specific place.

This is all in one commit as the test, as written now, would not have
worked before since the previously hard-coded home path was not an
actual file in the test environment.
2022-11-30 17:19:31 +01:00
Mario Rodas
e38ce0ae16
direnv: fix direnv configuration path
Direnv >=2.21.0 uses [1] $XDG_CONFIG_HOME/direnv/config.toml as
configuration path.

[1] 54cb3c5a91
2022-11-30 11:45:39 +01:00
Nicholas Sielicki
50c9bccb6a
bat: add extraPackages option
The bat program has a few additional packages in Nixpkgs, allow for
these to be specified via Home Manager.
2022-11-27 19:19:21 +01:00
Peter Kling
fa671f1795
programs.zsh: set ZPLUG_HOME before loading zplug (#2987)
ZPLUG_HOME must be set before loading zplug, since otherwise it is ignored.
2022-11-27 18:50:46 +01:00
Jakub Fišer
1bdbebc3f8
ssh: add generic Match support for matchBlocks (#2992)
* ssh: add generic Match support for matchBlocks

Introduce conservative support for actual `Match`
blocks in ssh config.

"Conservative" means this PR doesn'tt try to process
the `match` expression and simply uses it as a string
provided by the user.

If set, `match` has precedence over `host` meaning
if both are set, `match` is used and `host` is ignored.

* Add news entry
2022-11-27 16:15:32 +01:00
Philipp Mildenberger
7ae7250df8
starship: add nushell integration support 2022-11-27 09:13:20 +01:00
Philipp Mildenberger
4a12f304e0
nushell: add options 'extraConfig' and 'extraEnv' 2022-11-27 09:09:09 +01:00
Loric Brevet
e999dfe7cb
kakoune: allow custom package (#3434) 2022-11-27 01:49:15 +01:00
Nicholas Sielicki
bf99255fc9
kitty: silently drop darwin-specific options (#3394)
Rather than reject a configuration when this option is set, just
silently ignore it when the platform isn't darwin. The name makes it
obvious that it won't be applied outside of darwin, and this allows
people to use the same configuration between hosts without any special concern.

Co-authored-by: Nicholas Sielicki <git@opensource.nslick.com>
2022-11-27 01:16:33 +01:00
Phillip Cloud
f7641a3ff3
scmpuff: add fish integration flag 2022-11-21 23:51:05 +01:00
Loïc Reynier
433e8de330
fzf: add colors option (#3206) 2022-11-21 08:35:18 -07:00
KFearsoff
c0f9cbcf93
newsboat: allow imperative "urls" management
This commit allows imperative management of "urls" file. It can be
useful if "urls" file is treated as a secret.

With this change, it's possible to provision "urls" via Syncthing,
agenix, sops-nix or other means, while still managing Newsboat
declaratively.
2022-11-20 00:26:42 +01:00
Matthieu Coudron
948d1f8a5c
programs.zsh: generate a more compact config (#3170) 2022-11-18 09:27:43 -07:00
alois31
5589b28e66
opam: add fish integration (#3422) 2022-11-18 09:00:57 -07:00
David
651db464dc
thunderbird: allow using the module on Darwin
While the Nix packages for Thunderbird are not available for macOS,
the module can still be used to manage profiles and configuration.

Fixes #3407.
2022-11-13 10:06:36 +01:00
Xyz00777
6ce3493a3c
kodi: fix syntax error in example 2022-11-09 09:16:50 +01:00
Robert Helgesson
5dd3ce3f1e
mu: use absolute path to mu in activation block 2022-11-07 15:09:31 +01:00
David
b764068a50
thunderbird: add module
Add a new Thunderbird module that uses the configuration in
`accounts.email.accounts` to setup SMTP and IMAP accounts.

Multiple profiles are not supported at this point.
2022-11-04 16:12:12 +01:00
natsukium
39c1e6704a
vscode: fix invalid examples 2022-11-03 09:24:25 +01:00
Arjan Schrijver
04e844090e
oh-my-posh: add module 2022-11-02 01:04:42 +01:00
David Morgan
160025ca46
irssi: add option for SASL external authentication 2022-10-31 09:28:49 +01:00
Markus S. Wamser
d3f21617ac
vscode: add options to disable update checks
Update notification popups are annoying when vscode/vscodium is
managed by Home Manager. However, as these settings also require the
configuration to be managed via `userSettings`, they are disabled by
default.
2022-10-27 18:16:03 +02:00
Paul Meyer
7dc4e4ebd7
k9s: add module 2022-10-25 00:05:50 +02:00
Kira Bruneau
69d19b9839
firefox: support setting search engines
With this change, it's now possible to configure the default search
engine in Firefox with

  programs.firefox.profiles.<name>.search.default

and add custom engines with

  programs.firefox.profiles.<name>.search.engines.

It's also recommended to enable

  programs.firefox.profiles.<name>.search.force = true

since Firefox will replace the symlink for the search configuration on
every launch, but note that you'll loose any existing configuration by
enabling this.
2022-10-22 20:36:04 +02:00
David Warde-Farley
c485669ca5
i3status: add package attribute 2022-10-20 10:04:30 +02:00
j-brn
42f81ac107
looking-glass-client: add module 2022-10-18 10:12:15 +02:00
Damien Cassou
04f5399978
borgmatic: add module 2022-10-16 21:51:52 +02:00
Rohan Ferris
2ecb3ea990
firefox: rename chrome-gnome-shell suggestion to gnome.gnome-browser-connector (#3329)
gnome3.chrome-gnome-shell is now gnome.gnome-browser-connector
2022-10-15 15:49:11 -04:00
Robert Helgesson
618ab0f882
discocss: fix attribute name 2022-10-13 11:52:24 +02:00
Ilan Joselevich
2d8e5a9934
discocss: add module
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-10-13 01:11:01 +02:00
Gabriel Arazas
bd87a34bb4
sioyek: enable multiple bindings for the same command 2022-10-08 22:11:55 +02:00
AndersonTorres
be2cade373
havoc: add module 2022-10-07 01:21:11 +02:00
Mario Rodas
8c297e1816
ledger: add module
Add module for https://www.ledger-cli.org/
2022-10-07 01:06:40 +02:00
Philippe Laflamme
7fee13eb4c
sbt: cache passwordCommand output
This will cache the output of `passwordCommand` per authentication
realm.

Context: the `credentials` key in `sbt` is a `TaskKey[Seq[Credentials]]`.
In `sbt`, tasks are evaluated on-demand and their output is not cached.
This particular key is referenced by all submodules in a project. When
the command is relatively expensive (e.g.: `pass show foo`), this
results in several seconds of delay when doing basic things like
`compile` or `test` which makes this unusable without some kind of
caching.
2022-10-07 00:40:50 +02:00
Philippe Laflamme
599e22b1c7
sbt: allow managing the ~/.sbt/repositories file
sbt allows overriding the default repositories to use to resolve
dependencies. This is often used with proxies and/or private
repositories to host internal packages.

This change adds a `repositories` attribute to `sbt` to allow
specifying the values that will go in `~/.sbt/repositories` file.

To support the above change we also deprecate the `baseConfigPath`
option in favour of `baseUserConfigPath` which points one level higher
by default. This allows not using relative paths to refer to the
top-level configuration directory.

Also adds tests for the new option and the deprecation of the previous
one.
2022-10-07 00:23:29 +02:00
Tad Fisher
e4e639dd4d
programs/lieer: use lieer package (#3262)
The gmailieer attribute was aliased to lieer in nixpkgs.
2022-10-03 09:50:40 +02:00
Vanilla
9727190b80
mangohud: fix moved link of config file
PR #3278
2022-09-30 20:47:00 +02:00
superherointj
5c5a5b9b45 urxvt: fix package name 2022-09-30 15:08:02 -03:00
arjan-s
e7be7c4688
pls: add module (#3285) 2022-09-30 12:53:39 -04:00
Chan Siu Man
1f5ef2bb41
broot: fix config file location (#3273)
At commit [5666e6b9](5666e6b9fb),
broot refactored the content of the file `/resources/default-conf.hjson`
into multiple files under the directory `/resources/default-conf`, using
[`imports`](5666e6b9fb/resources/default-conf/conf.hjson (L152-L165))
to refer to other configurations.

This refactoring is effective since version 1.14.0 of broot.

After this refactoring, in `xdg.configFile.broot` (which defaults to
`~/.config/broot`):
- we need to copy all potentially referenced files (all files under
  `resources/default-conf`),
- except we need to leave out `conf.hjson` which conflicts with the
  `conf.toml` generated by home-manager (because broot [accepts both conf.toml and conf.hjson](https://dystroy.org/broot/conf_file/))

To implement this, we use `symlinkJoin` to create the content of
`xdg.configFile.broot` by merging multiple sources.
2022-09-27 12:19:02 +02:00
Robin Stumm
65b65ce5ef
broot: use upstream defaults, allow all config options (#2644)
* broot: use freeformType for config

* broot: use defaults from upstream

closes #2395

* broot: generate shell function

* broot: add @dermetfan to CODEOWNERS

* broot: rename `config` option to `settings`

* broot: make example more idiomatic

Co-authored-by: Nicolas Berbiche <nic.berbiche@gmail.com>

Co-authored-by: Nicolas Berbiche <nic.berbiche@gmail.com>
2022-09-26 20:36:06 +02:00
José Luis Lafuente
707cb75ed3
tmate: add module 2022-09-26 00:28:00 +02:00
Joosep Jääger
de3758e31a
neovim: fix a typo in the generated init.lua (#3252)
neovim complains when having both an init.lua and an init.vim
2022-09-23 13:33:17 +02:00
Matthieu Coudron
bd83eab622
programs.neovim: default to init.lua (#3233)
We change the current logic: instead of writing an init.vim which loads
lua/init-home-manager.lua, we write an init.lua that sources init.vim

This commit also avoids writing any of these files if the plugins have
no config.
2022-09-22 10:39:55 +02:00
Loïc Reynier
f5e4614c11
yt-dlp: add settings option 2022-09-22 00:09:35 +02:00
David Baynard
41790ba656
mbsync: extend config type with list of strings
Some configuration options can take space separated strings; for
example `SSLVersions` can be configured with multiple allowed
versions.

    SSLVersions TLSv1.3 TLSv1.2

This can now be represented in Home Manager.

    SSLVersions = [ “TLSv1.3” “TLSv1.2” ];

In implementing this change, it uses oneOf for config type, as it is a
cleaner way to represent the union than the nested eithers
formulation.

Also add SSLVersions to test lists of strings in
`account.extraConfig`.
2022-09-20 01:24:21 +02:00
AndersonTorres
6745da6dce
rtorrent: change settings to extraConfig
Per NixOS RFC #42, settings should be reserved to structured settings,
whereas extraConfig is used for stringly configuration.
2022-09-15 09:25:46 +02:00
janabhumi
ebd7830814
exa: add package option 2022-09-15 09:15:09 +02:00
Kiran
60c6bfe322
zsh: add option for zsh-history-substring-search (#3156) 2022-09-13 16:06:52 -04:00
Mario Rodas
f9f4c8e1e7
gallery-dl: add module
gallery-dl [1] is a cli to download image galleries from several image
hosting sites.

[1] https://github.com/mikf/gallery-dl
2022-09-09 11:56:37 +02:00
Mario Rodas
4cfc0a1e02
yt-dlp: add module
yt-dlp is a cli to download videos from YouTube.com and other sites.
2022-09-08 19:51:24 +02:00
Gabriel Volpe
6ec6b2e362
nheko: add module 2022-09-08 19:09:30 +02:00
Charlie Moog
340ec22f6f
git: add config helper for hooks 2022-09-08 11:05:07 +02:00
Lily Foster
140aaed3df
git: gpg sign tags with signing.signByDefault set
The `tag.gpgSign` config option was added in Git 2.23.0 and seems like
it should be set in addition to `commit.gpgSign` when
`programs.git.signing.signByDefault` is enabled
2022-09-05 14:52:39 +02:00
Gaetan Lepage
de079ec371
btop: add module 2022-09-05 14:34:37 +02:00
Linus Heckemann
f9a35cacdc
msmtp: allow sending email from aliased addresses 2022-09-05 12:50:09 +02:00
Ryan Horiguchi
375631f35b
firefox: support nested folders in bookmarks (#3112) 2022-08-26 21:28:57 -04:00
Matthieu Coudron
0884d6c6e4
programs.neovim: remove 'configure' setting (#3177)
everything is now covered by other settings that are more user friendly
than this big opaque attrset.

Also 'configure' wont do anything with nixpkgs-unstable the way HM
configures neovim. so no need to keep it, the deprecation warning is > 1
year old.
2022-08-26 22:11:34 +02:00
Ronny Pfannschmidt
5bb1f67568
git: add option to define store names for generated include files (#3171)
This allows to use gitconfig/gitconfig-some-intent
as store path suffixes for the texts.
2022-08-26 15:48:50 -04:00
Matthieu Coudron
4c8c1c9977
kitty: produce fewer empty lines
This generates a more compact configuration file.
2022-08-26 00:17:05 +02:00
Robert Helgesson
76fbb1b15e
treewide: replace <link> by <xref> where appropriate 2022-08-26 00:07:08 +02:00
Matthieu Coudron
353d21e108
neovim runtime (#3168) 2022-08-23 22:02:05 +02:00
Sumner Evans
688e5c85b7
neovim: fix tests (#3147)
https://github.com/NixOS/nixpkgs/pull/184364 broke the tests

Closes #3146

Signed-off-by: Sumner Evans <me@sumnerevans.com>
2022-08-15 08:41:57 -06:00
Gaetan Lepage
ff5133843c
zathura: add mappings option 2022-08-14 21:27:06 +02:00
Chua Hou
44dcad5604
wezterm: support color schemes
Allows users to specify TOML color schemes using Nix.
2022-08-14 20:57:22 +02:00
amesgen
8675cfa549
gh: add extensions option 2022-08-12 20:49:50 +02:00
Lukas Nagel
324fedcf9f
Add module for aerc (#3070)
This adds support for configuring email accounts, with automatic smtp, imap,
sendmail (msmpt) and maildir (mbsync, offlineimap) setup in aerc,
via `accounts.email`.
2022-08-11 23:08:28 +02:00
AndersonTorres
389f2b2037
bashmount: add module 2022-08-08 18:13:21 +02:00
Robert Helgesson
f5e9879e74
bash: support bash completion 2022-08-07 15:25:44 +02:00
Hemanth Bollamreddi
d9e03b7f8c
wezterm: add module 2022-08-07 11:11:56 +02:00
Sky Leite
d8d9ff0b2d
tint2: correctly reference the provided package (#3125) 2022-08-02 20:01:13 -04:00
Lily Foster
77648a07e4
hyfetch: prevent writing config with default/empty settings (#3124) 2022-08-01 19:58:38 -04:00
Lily Foster
d1c677ac25
hyfetch: add module 2022-08-01 18:38:42 +02:00
Moïse Valvassori
7146638e9e
Fix typo. (#3118) 2022-07-30 18:49:20 -07:00
Naïm Favier
119febc464
vscode: avoid unnecessary IFD (again)
Fixed in https://github.com/nix-community/home-manager/pull/2506 then
unfixed in https://github.com/nix-community/home-manager/pull/2613
2022-07-27 13:51:19 +02:00
linj
8419dfd39d
fish: enable manpage completion
This patch follows a similar patch[1] in nixpkgs. With this patch,
fish can complete manpages for programs installed through
home-manager, e.g., using home.packages.

[1]: https://github.com/NixOS/nixpkgs/pull/91794
2022-07-25 13:54:51 +02:00
Ryan Horiguchi
d86c189158
firefox: support showing bookmarks on toolbar 2022-07-23 15:28:14 +02:00
rcerc
218cb3aee2
firefox: fix empty check of bookmarks list 2022-07-23 15:22:31 +02:00
rcerc
f91fb470bc
firefox: use coercedTo to convert bookmarks to a list 2022-07-23 15:22:23 +02:00
h7x4
64c745fe1c
firefox: add support for nested bookmarks
Change type of `firefox.profile.<name>.bookmarks` to allow for nested
bookmarks with user defined order.
2022-07-18 14:55:54 +02:00
rcerc
4c5106ed0f
firefox: reuse escapeXML from Nixpkgs 2022-07-15 14:11:50 +02:00
Jonas Heinrich
2c94b9801f
librewolf: add module 2022-07-13 15:31:25 +02:00
ash
66d7007e43
mpv: prohibit string values in scripts
Strings as scripts don't currently work, and probably haven't worked
since b567d273 (mpv: use wrapMpv instead of mpv-with-scripts,
2020-05-31).
2022-07-13 14:52:46 +02:00
ash
241a375f49
keychain: set SHELL correctly in bash and zsh
bash and zsh apparently handle command substitution slightly differently
than fish. in bash/zsh:

$ export FOO=x
$ FOO=y echo $(sh -c 'echo $FOO')
x

whereas in fish:

$ export FOO=x
$ FOO=y echo $(sh -c 'echo $FOO')
y

so we have to assign $SHELL within the substitution for bash and zsh.
2022-07-13 14:35:52 +02:00
Congee
0639aa34f1
git: add option to set difftastic display setting 2022-07-12 10:48:26 +02:00
Maxime Brunet
8160b3b45b
zsh: source zsh-syntax-highlighting at the end of .zshrc (#3068)
zsh-syntax-highlighting.zsh must be sourced at the end of the .zshrc file, otherwise widgets created after are not properly highlighted (e.g. from oh-my-zsh): https://github.com/zsh-users/zsh-syntax-highlighting#faq
2022-07-07 18:57:27 -06:00
Philipp Mildenberger
ef990143b6
nushell: fix non-nullable configFile and envFile, fixes #3050 (#3060) 2022-07-07 00:49:50 -06:00
Matthew Toohey
223b9deead
pistol: add module 2022-06-25 01:00:32 +02:00
Michael Forster
65bcfaccc5
micro: add module
This adds initial bare-bones support for the `micro` editor.
2022-06-24 19:19:11 +02:00