Commit Graph

2591 Commits

Author SHA1 Message Date
Daru
b0569dc6ec fresh-editor: add defaultEditor option 2026-04-11 11:33:31 +02:00
Daru
fb821d6422 fresh-editor: add extra packages option 2026-04-11 11:33:31 +02:00
MrQubo
e35c39fca0 tmux: reduce default escapeTime 2026-04-09 19:43:45 -05:00
Austin Horstman
0eddb2cc1a neovim: use improved submodule deprecation detection
Prevent false positives with deprecation warning.
2026-04-09 19:09:46 -05:00
teto
7f6c5834ca neovim: change the plugin default type from viml -> lua
When introduced the neovim lua API was not as good as it is today.
I suspect the majority of users now default to lua rather than viml so
let's default to it.
2026-04-09 19:09:46 -05:00
Akshett Rai Jindal
5c663d5781 gemini-cli: add option for integration with programs.mcp.servers 2026-04-09 19:08:48 -05:00
Akshett Rai Jindal
5ef2b9862f gemini-cli: add skills option
Add programs.gemini-cli.skills for declarative skill files under ~/.gemini/skills.

Includes module tests for file and directory skill sources and inline content.
2026-04-09 19:08:48 -05:00
Matt Dembiczak
0f9090a77c aerc: encode username in account URLs
Usernames containing special characters like '@' were included
verbatim in IMAP/SMTP URLs, producing invalid URIs. Apply
'lib.strings.escapeURL' to the username so that these characters
are properly encoded.
2026-04-09 18:36:49 -05:00
Lorenzo Manacorda
c975a66a56 niriswitcher: remove module
The upstream project has been archived.
2026-04-09 14:16:59 -05:00
Dennis Schridde
2877554a72 programs.nheko: link to upstream issue in description for settings
See-also: https://github.com/Nheko-Reborn/nheko/issues/1591
2026-04-09 14:13:59 -05:00
Jan Spennemann
7ba4ee4228 thunderbird: allow configuration of EWS accounts
Add configuration options for EWS in Thunderbird which is
supported since version 145.
2026-04-08 16:28:57 -05:00
Utkarsh Gupta
35f8c398b4 atuin: add default value for log.dir 2026-04-08 16:28:21 -05:00
Austin Horstman
de90ee2408 statix: enable eta_reduction
Enable statix's eta_reduction rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
11ad9d2e42 statix: enable useless_has_attr
Enable statix's useless_has_attr rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
5209a256fd statix: enable empty_list_concat
Enable statix's empty_list_concat rule and apply its auto-fixes across the affected modules.
2026-04-08 16:00:28 -05:00
Austin Horstman
01ea51d706 treewide: use inherit for attribute assignments
This change converts redundant attribute assignments of the form `a =
a;` or `a = someSet.a;` into cleaner `inherit` statements. This reduces
verbosity and follows common Nix style for bringing attributes into
scope.

Statix Codes: W03 (manual_inherit), W04 (manual_inherit_from)

Also include statix and the rule in our configuration.
2026-04-08 14:47:48 -05:00
Austin Horstman
9ddbb69d18 vicinae: guard refresh-apps activation 2026-04-08 14:38:50 -05:00
Austin Horstman
7843c0025a vicinae: fix x-restart triggers 2026-04-08 14:38:50 -05:00
Austin Horstman
4a0ded6f84 mbsync: KarlJoad -> ravenjoad 2026-04-08 10:10:44 -05:00
Austin Horstman
991a001751 mu: KarlJoad -> ravenjoad 2026-04-08 10:10:44 -05:00
Bernardo Meurer Costa
6f35bb9799 tmux: use idempotent new-session to avoid duplicate sessions
When both system-level (e.g., NixOS programs.tmux) and home-manager
tmux configs set newSession = true, tmux would create two sessions
on startup since both /etc/tmux.conf and ~/.config/tmux/tmux.conf
contain the new-session command.

Change new-session to new-session -A -s 0, which attaches to session
"0" if it exists, otherwise creates it. This makes the command
idempotent so multiple configs can safely enable newSession.
2026-04-07 21:52:27 -05:00
Miles Wirht
3d822c1dba dbeaver: init module 2026-04-07 21:32:28 -05:00
tarzst
98b4d61cfa neovim: disable python3 and ruby providers by default 2026-04-07 16:44:58 -05:00
Benedikt Ritter
9cc761169a tmuxinator: use yml file ending
Files with yaml file ending are recognized by `tmuxinator start` but not
by `tmuxinator list`.

Resolves #9031
2026-04-07 13:40:48 -05:00
philip-730
530d83a5a8 programs.wezterm: add philip-730 as maintainer 2026-04-07 13:39:56 -05:00
philip-730
92d382b982 programs.wezterm: add settings option
Add a `settings` option that allows WezTerm to be configured
declaratively using a Nix attribute set. Settings are serialized to
Lua using `lib.generators.toLua`. Raw Lua expressions such as
`wezterm.font` and `wezterm.action.*` can be embedded using
`lib.generators.mkLuaInline`.

When `settings` is set, `extraConfig` is still supported. It is
wrapped in an immediately invoked function expression so that any
`return` statement (including the common `return {}` and
`return config` patterns) is captured and merged on top of the
generated settings, preserving full backward compatibility.

The merge between `settings` and `extraConfig` is shallow: a key
returned from `extraConfig` replaces the entire corresponding value
from `settings`, including nested tables and arrays.

Closes #6047
2026-04-07 13:39:56 -05:00
leiserfg
b0cf7b520c vicinae: refresh app list on activation 2026-04-07 13:33:38 -05:00
Robert Helgesson
de5154c348 timidity: remove amesgen as maintainer
Sadly amesgen passed away some time ago, see
<https://www.tweag.io/blog/2025-12-16-in-memoriam-amesgen/>.
2026-04-05 23:57:43 +02:00
Roverp
1089b2caba opencode: add programs.opencode.tui option
OpenCode v1.2.15 introduced a separate tui.json file for TUI-specific
settings, deprecating theme/keybinds in config.json.
Changes:
- Add programs.opencode.tui option for TUI settings
- Generate separate ~/.config/opencode/tui.json with proper schema
- Add deprecation warnings for theme/keybinds in settings
- Add tests for new functionality
- Fix existing tests that used deprecated theme in settings

See: https://opencode.ai/docs/config#tui
Release: https://github.com/anomalyco/opencode/releases/tag/v1.2.15

Co-authored-by: Thierry Delafontaine <delafthi@pm.me>
2026-04-04 22:48:59 -05:00
teto
d166a07854 neovim: fix viml plugin config appearing twice
nixpkgs is now in charge of aggregating viml config so no need to
duplicate the work in HM.
2026-04-02 17:27:31 +02:00
oneorseveralcats
eb6f347055 aria2: add systemd service 2026-04-02 16:20:22 +02:00
Austin Horstman
41e6e2ab37 codex: add support for managed rules files 2026-04-01 23:29:17 -05:00
squat
6267895e98 opencode: add environmentFile option to set OPENCODE_SERVER_PASSWORD
This commit introduces a new option for the Opencode web service to
allow configuring an environment file so that we can safely specify an
`OPENCODE_SERVER_PASSWORD` environment variable to secure access to the
service without exposing the secret to the Nix store.
2026-04-01 16:47:32 -05:00
Matthieu Coudron
f21d8ebbc9 neovim: test pure lua dependencies (#8991)
a revert of https://github.com/nix-community/home-manager/pull/8959 since we now relies on nixpkgs wrapper for that.

adding a test to avoid regressions. Choosing  telescope as starting point is https://github.com/nix-community/home-manager/issues/8787

I find the nmt test setup lacking: it doesnt set $PATH or $HOME (nvim
will error when it can't write into $HOME).
2026-04-01 22:27:03 +02:00
Benedikt Ritter
b399348e9d tmuxinator: move to dedicated module with projects support
Extract tmuxinator from tmux.nix into its own programs/tmuxinator.nix
module. The new module adds:

- programs.tmux.tmuxinator.package for customising the tmuxinator package
- programs.tmux.tmuxinator.projects for declaring projects declaratively;
  each project is written to $HOME/.config/tmuxinator/<name>.yaml

Co-authored-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-31 14:05:50 -05:00
Caleb Norton
a7d2aca3f0 opencode: use serve command for web interface 2026-03-31 10:05:09 -05:00
kfiz
769e07ef8f aerc: add notmuch integration
Currently enabling aerc in accounts.email.accounts.<account> doesn't handle existing configs where accounts.email.accounts.<account>.notmuch.enable is set to true. This pr proposes to automatically set notmuch as backend for aerc if this is the case, see rjarry/aerc@master/doc/aerc-notmuch.5.scd.

For set-ups where accounts.email.notmuch.enable has been enabled this was previously ignored, so this is probably a breaking change for these configs, but from running this set up during the last weeks I would consider the upside of better search and filtering performance as significantly larger than the minor changes in query handling as noted here rjarry/aerc@master/doc/aerc-notmuch.5.scd#usage.
2026-03-28 17:55:35 -05:00
oneorseveralcats
027539a127 vesktop: make package nullable 2026-03-28 14:50:47 -05:00
teto
6569d9e171 neovim: attempt at reusing nixpkgs upstream config 2026-03-28 18:41:26 +01:00
oneorseveralcats
02371c05a0 aria2: use formats.keyValue to generate aria2.conf instead of custom method 2026-03-27 16:42:50 -05:00
oneorseveralcats
2e3550192e aria2: remove extraConfig 2026-03-27 16:42:50 -05:00
oneorseveralcats
13587c3ace aria2p: add module 2026-03-27 16:42:50 -05:00
Miles Wirht
9df3a63900 macchina: add module (#8855) 2026-03-27 10:42:17 -05:00
r-vdp
2b8f732e15 atuin: use daemon start subcommand on >= 18.13.0
Atuin 18.13.0 deprecated `atuin daemon` in favour of `atuin daemon start`
and prints a warning on every daemon startup. Keep the old invocation for
older versions so NixOS stable (currently shipping 18.10.0) keeps working.

Also drop the 18.2.0 minimum version assertion since all supported
nixpkgs branches ship newer versions.
2026-03-27 10:41:46 -05:00
oneorseveralcats
accd450fcd waybar: allow multiple systemd targets 2026-03-27 09:41:16 -05:00
Austin Horstman
4b1be5c38b vicinae: move lib to separate file
Not used internally and cleaner to separate

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-26 23:01:54 -05:00
Austin Horstman
bf6215e0cb vicinae: support local sources for raycast extensions
Support extensions without fetchgit, useful when providing the sources
from a flake input or derivation for all extensions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-26 23:01:54 -05:00
Pat L.
7126ec6a55 claude-code: Add support for installing plugins (#8934)
Allow for configuring marketplaces or individual plugins.

Both are provided as a list of either paths or packages.

The lone plugins are enabled by adding a --plugin-dir argument to the wrapper script.

Marketplaces are saved to the nix store and enabled by adding to the claude settings and known_marketplaces files.

With the marketplace "installed", the plugin can just be enabled via the enabledPlugins setting.
2026-03-26 22:59:48 -05:00
Diego Saint Esteben
0143d6ca9b grype: add module
Grype is a vulnerability scanner for container images and filesystems.
2026-03-26 22:51:09 -05:00
Miles Wirht
7c046c63ac Ttyper: add module (#8864) 2026-03-26 16:47:14 -05:00