1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-03-09 10:16:55 +00:00
Commit graph

1585 commits

Author SHA1 Message Date
Ihar Hrachyshka
7e81c581a5 thunderbird, firefox: fix file conflict for native messaging hosts
On Linux, both Thunderbird and Firefox use the same directory to contain
native messaging host modules. On this platform, we have to merge both
directories with native hosts into one.

The patch introduces a separate helper module to manage native host
directory generation. Now program modules (firefox, thunderbird) declare
native hosts to initialize; while the new helper module determines
*where* and *how* to merge them on disc.

Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
2025-02-21 09:28:22 -08:00
Ihar Hrachyshka
fadb9cba44 Reapply "thunderbird: add native host support (#6292)" (#6371)
This reverts commit 6fbbfb9240.

Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
2025-02-21 09:28:22 -08:00
Heitor Augusto
3c82285348
vinegar: add module (#6494) 2025-02-21 07:48:51 -06:00
bricked
97ac0801d1
firefox: prevent extensions settings override (#6490)
Prevents extensions settings from accidentally being overriden when
using `profiles.<name>.extensions.settings`. Adds the
`profiles.<name>.extensions.force` option to acknowledge the risk.
2025-02-18 15:24:24 -06:00
isabel
4044ad191f
fish: accept multiple events (#6489) 2025-02-18 15:22:42 -06:00
ljyoth
69dfc316c5
mise: enable nushell integration (#6363) 2025-02-17 19:36:02 -06:00
Austin Horstman
6c93eea85d firefox: add HPSaucii maintainer 2025-02-17 12:17:38 -08:00
HPsaucii
27ffa35178 firefox: add support for configuring extensions
This commit refactors programs.firefox.profiles.<name>.extensions in
order to support both installation of extensions (addons) and their
configuration. It does this by setting the
`extensions.webextensions.ExtensionStorageIDB.enabled` user_pref to
false.

When this preference is set to false, support for storing extension
settings in sqlite databases, also known as IndexedDB or IDB, is
reverted back to the JSON format present in firefox versions prior to
version 63, as seen here:
https://blog.mozilla.org/addons/2018/08/03/new-backend-for-storage-local-api/

IndexedDB was made the default due to performance improvements, but had
the consequence of removing any possibility of declarative extension
configuration without the assistance of firefox's policy system. The
policy system is supported by a small amount of extensions, such as
uBlock Origin, but has to be explicitly supported. Even when supported,
it provides significantly less granular control when compared to the
JSON storage format.
2025-02-17 12:17:38 -08:00
Sumner Evans
f4f6dd2698
git: fix setting format on >=25.05 (#6480)
Signed-off-by: Sumner Evans <me@sumnerevans.com>
Co-authored-by: Immae <immae@users.noreply.github.com>
2025-02-17 12:02:24 -06:00
Anton Tetov
9d0d48f4c3
nh: fixes and addition to warnings/assertions (#6470)
* nh: fix auto clean

- ~Fix `PATH` variable~
- Remove flake path assertion
- Add warning when HM's `nix.gc.automatic` is enabled

* nh: simplify logic for warning related to cfg.clean

---------

Co-authored-by: Nikita Pedorich <pedorich.n@gmail.com>
2025-02-17 08:36:35 -06:00
Weathercold
c1ea92cdfb
nh: change flake option type to singleLineStr (#6468) 2025-02-17 03:00:43 -08:00
Austin Horstman
5c5697b82a
git: support not configuring signing.format (#6478) 2025-02-17 03:00:03 -08:00
Sandro
30b9cd6f1a
mpv: drop old wrapMpv compatibility (#6024)
wrapMpv doesn't exist anymore for a while.
2025-02-17 10:28:26 +01:00
Sizhe Zhao
e5bc9c2af1
git: reduce priority of signing.format (#6465) 2025-02-16 13:55:03 -06:00
Kilian Mio
ec130e7009
firefox: correct vendorPath of firefox forks (#6421)
The path for messaging hosts seems to have been
~/.mozilla/native-messaging-hosts/ and ~/Library/Application Support/Mozilla so vendorPath has been adjusted
2025-02-16 10:44:50 -06:00
sinavir
8bc5e4c9b2
git-maintenance: More details in the documentation
Signed-off-by: Sumner Evans <me@sumnerevans.com>
2025-02-15 14:36:13 -07:00
Austin Horstman
6d3163aea4
git: change stateVersion check for compatiblity (#6453)
Original change was created before 24.11 release. We are in 25.05 now.
2025-02-14 16:21:52 -06:00
Sof
67b9f9de22
vscode: add windsurf directories (#6427) 2025-02-14 15:16:26 -06:00
Sizhe Zhao
7da01bc47a
git: support alternate signing methods (#5516)
The Git module now supports SSH and X.509 signing in addition to
OpenPGP/GnuPG, via setting the `programs.git.signing.format` option.
It defaults to `openpgp` for now as a backwards compatibility measure,
but I feel like we shouldn't enforce GPG as the default on everyone,
especially for people who use SSH signing like me.

Accordingly, `programs.git.signing.gpgPath` has been renamed to
`programs.git.signing.signer`, as now the signer binary is not
restricted to GnuPG. Users should only get a warning and everything
should continue to work.

Fixes #4221, supersedes #4235

Co-authored-by: Mario Rodas <marsam@users.noreply.github.com>
Co-authored-by: Sumner Evans <me@sumnerevans.com>
Co-authored-by: Leah Amelia Chen <hi@pluie.me>
2025-02-14 11:47:27 -07:00
André Schröder
22b418c13f
bash: Make HISTFILESIZE and HISTSIZE nullable (#6443) 2025-02-13 08:58:45 -06:00
derrik
a70d788923
aerospace: fix workspace assignment config (#6442)
with the default to `{}`, this table is always set in the generated
config. this change allows `null` for
`workspace-to-monitor-force-assignment` and sets the default to `null`

Co-authored-by: derrik.fleming <derrik.fleming@spindance.com>
2025-02-13 08:24:38 -06:00
Kristoffer Plagborg Bak Sørensen
c9d343cfa0
docs(zellij): programs.zellij.settings are serialized as kdl and not yaml from version 0.32.0 (#6010) 2025-02-12 21:07:02 -06:00
Austin Horstman
15b59d4191 eww: fix eww source creation
Source can't be accessed without being defined, need to move condition
earlier.
2025-02-12 09:38:53 -08:00
Christoffer Hald Christensen
f8729b11ee eww: fix confDir config using missing attribute "types.isNull" 2025-02-12 09:38:53 -08:00
Matthieu Coudron
f0a31d38e6
neomutt: fix default for 'map' in macros/binds (#6429)
https://github.com/nix-community/home-manager/pull/1885  changed 'map'
from a string to a list of string but the default wasn't updated accordingly.
When not defining map, you would get the warning `evaluation warning: teto profile: Specifying 'programs.neomutt.(binds|macros).map' as a string is deprecated, use a list of strings instead. See `.
2025-02-11 19:33:45 +01:00
Austin Horstman
8f351726c5 git-worktree-switcher: use lib.hm.shell.mkShellIntegrationOption 2025-02-11 09:18:04 -06:00
Mateus Auler
9c8169b446 git-worktree-switcher: init module 2025-02-11 09:18:04 -06:00
Yuki Kobayashi
59fe145f0b
eww: make configDir optional (#6282)
Some people like to manage config directories themselves, and it should not be a requirement but rather an optional feature.
2025-02-11 08:27:04 -06:00
Austin Horstman
5795f792ab yazi: organization tweak
Moving variable declaration closer to usage so it's easier to manage /
see.
2025-02-10 17:57:29 -06:00
Austin Horstman
b34b56689d yazi: remove with lib 2025-02-10 17:57:29 -06:00
Austin Horstman
c0d06189f2 kitty: assert can't enable shell integrations when mode is null
We use the mode within the script for each integration. Make sure the
user understands what they are doing.
2025-02-10 17:56:59 -06:00
MithicSpirit
fc3cd1e408 kitty: allow not setting shell_integration
This allows better support for using kitty's built-in shell integration
method by setting `shellIntegration.mode' to `null', which makes it not
be set at all in the config file and disables modification to shell
initialization scripts by default. If this is used, the user should set
`settings.shell_integration' instead (if shell integration is desired),
which receives no special handling.
2025-02-10 17:56:59 -06:00
Perchun Pak
b0bd29bb4b
tldr-update: init (#6401)
Adds `tldr-update` module for enabling automatic `tldr update` on a schedule.
Adds option to `tealdeer` to enable integration with new `tldr-update` module.
2025-02-10 08:34:12 -06:00
NAHO
5af1b9a0f1
treewide: standardize shell integration options
Standardize all 'programs.<PROGRAM>.enable<SHELL>Integration' options
with the following new functions:

- lib.hm.shell.mkBashIntegrationOption
- lib.hm.shell.mkFishIntegrationOption
- lib.hm.shell.mkIonIntegrationOption
- lib.hm.shell.mkNushellIntegrationOption
- lib.hm.shell.mkZshIntegrationOption

These functions should default to their corresponding global option:

- home.shell.enableBashIntegration
- home.shell.enableFishIntegration
- home.shell.enableIonIntegration
- home.shell.enableNushellIntegration
- home.shell.enableZshIntegration

All these global options default to the
'home.shell.enableShellIntegration' value.

This hierarchy standardizes the shell integration and increases end-user
flexibility.

BREAKING CHANGE: The following inconsistent default values change from
'false' to 'true':

- programs.zellij.enableBashIntegration
- programs.zellij.enableFishIntegration
- programs.zellij.enableZshIntegration

Link: https://github.com/nix-community/home-manager/pull/6358

Co-authored-by: Robert Helgesson <robert@rycee.net>
2025-02-08 22:49:40 +01:00
Damien Cassou
f99c704fe3 bash: Make sure HISTFILE's directory exists
Co-authored-by: Robert Helgesson <robert@rycee.net>
2025-02-06 12:25:09 +01:00
Kira Bruneau
30ea6fed4e
firefox: fix referencing name in profile-specific docs
Within the context of the profiles submodule, `${name}` refers to the
profile name, and not the Firefox fork name.

This fixes all descriptions to use the right name. This fixes a
previous commit that introduced a dependency between the documentation
and the user's configuration.
2025-02-05 22:10:32 +01:00
Kira Bruneau
f20b7a8ab5
firefox: fix referencing firefox fork name in profile-specific docs (#6407)
* firefox: fix referencing firefox fork name in profile-specific docs

Within the context of the profiles submodule, `${name}` refers to the
profile name, and not the firefox fork name.

This fixes all descriptions to use `${cfg.name}` instead.

* firefox: prefer cfg.name instead of name for consistency
2025-02-05 12:11:16 +01:00
Robert Helgesson
f2d32e46fa
broot: use hjson-go
Reduces the build closure quite a bit.
2025-02-04 23:58:20 +01:00
Matthieu Coudron
7abcf59a36
mpv: support includes directives (#6391)
to allow mixing imperative and declarative config
the includes are at the end of the config
2025-02-04 12:07:35 +01:00
Austin Horstman
18fa9f323d
yazi: add main.lua support to plugins (#6394)
Yazi is deprecating init.lua for main.lua usages. This adds support for
main.lua in plugins.
2025-02-01 16:19:26 -06:00
Hoang Nguyen
dae6d3460c
git: add default value null to programs.git.signing.key (#6032) 2025-02-01 17:52:06 +01:00
Timon Schelling
8544cd0920
lapce: add module (#5752)
Adds the 'programs.lapce' module for configuring lapce text editor.
Options for settings, plugins and keymaps are available.
2025-02-01 14:03:26 +01:00
Austin Horstman
234613d77c neovim: remove with lib 2025-01-30 15:48:46 -06:00
Austin Horstman
e3baf274f4 bat: remove with lib 2025-01-30 15:19:17 -06:00
Austin Horstman
c90cd85b04 kitty: remove with lib 2025-01-30 15:08:03 -06:00
Austin Horstman
2d731a33b1 wezterm: remove with lib 2025-01-30 15:05:11 -06:00
Austin Horstman
20fd9686b8 btop: remove with lib; 2025-01-30 14:59:38 -06:00
Austin Horstman
bf2a029bcd yazi: add khaneliman maintainer 2025-01-30 13:42:37 -06:00
Austin Horstman
d62027e44d ripgrep: add khaneliman maintainer 2025-01-30 13:42:37 -06:00
Austin Horstman
9cb98f3140 lazygit: add khaneliman maintainer 2025-01-30 13:42:37 -06:00