1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-12-12 12:01:08 +01:00
Commit graph

1015 commits

Author SHA1 Message Date
novenary
97a00e0659
librespot: init module (#6229)
Librespot is a Spotify client. While there is already a module for
spotifyd, which uses Librespot as a library, this adds one for the
upstream frontend.
2025-03-19 22:48:47 -05:00
Gaétan Lepage
cfaa4426a3
megasync: use getExe instead of getExe' (#6665) 2025-03-19 20:41:06 -05:00
Austin Horstman
b597601774 easyeffects: remove with lib 2025-03-19 14:45:27 -05:00
Austin Horstman
e278f46a09 easyeffects: add hausken as maintainer 2025-03-19 14:45:27 -05:00
hauskens
6b8cea6473 easyeffects: add option to import presets
added options to import presets
added tests
added hausken as maintainer
2025-03-19 14:45:27 -05:00
Tarow
27a72d9913
podman: include systemd in quadlet service path
Podman uses systemd-run to setup transient systemd timers, e.g. for healthchecks.

On systems where systemd is not present in /run/current-system/sw/bin or ~/.nix-profile/bin (like one of my Ubuntu hosts), setting up the transient timers will fail. For containers with healthchecks configured, this results in the container being stuck in starting state.

Relevant issue here: containers/podman#25034
2025-03-19 14:09:57 -05:00
Nicholas Hassan
bb72d79f5d podman: use type in attr name of built quadlets 2025-03-19 14:08:12 -05:00
Nicholas Hassan
8bb071912b podman: warn if values match a quadlet only by name 2025-03-19 14:08:12 -05:00
Nicholas Hassan
81bf639da7 podman: link dependent quadlets during build
podman's systemd generator can automatically resolve unit dependencies, so instead of us guessing these links to create them, we provide the sources during generation
2025-03-19 14:08:12 -05:00
Nicholas Hassan
4108ec3aa8 podman: use dependency quadlets directly in build for generator 2025-03-19 14:08:12 -05:00
Yiheng He
22a36aa709
swww: add swww service module for swww-daemon (#6543) 2025-03-18 14:32:10 -05:00
CnTeng
4e12151c9e megasync: add option to enable wayland 2025-03-14 07:39:07 -05:00
CnTeng
e30c6a41bc megasync: remove with lib 2025-03-14 07:39:07 -05:00
isabel
30cce6848a
synthing: fix synthing config being deleted on rebuild (#6621) 2025-03-13 20:11:20 -05:00
Jdogzz
5d51162862
syncthing: have tray wait in submodule (#6617)
Add --wait flag to tray to avoid loading before bar.
2025-03-13 13:28:47 -05:00
Stanislav Alekseev
6576167e6b
macos-remap-keys: add (#6605)
A module to remap keys using macos native tool (hidutil)
2025-03-13 09:02:04 -05:00
Marijan Petričević
5871e21c11
screen-locker: add lockCmdEnv option (#6592) 2025-03-12 07:31:54 -05:00
bamhm182
ce9cb2496c
podman: added volume, image, and build quadlets (#6137)
Added support for build, image, and volume quadlets
Resolved test failures due to podman 5.3.0 upgrade
Replaced several instances of pkgs.podman with services.podman.package
2025-03-09 23:02:05 -05:00
Nikolaos Karaolidis
7f4c60a3d6
podman: fix podman-user-wait-network-online (#6586)
Adding coreutils to path for podman to fix issues when not available in environment path already.
2025-03-08 13:22:11 -06:00
Austin Horstman
c040d1c556
xembed-sni-proxy: change default package (#6587)
Use new `kdePackages` version by default. Users can pass the legacy
package, if they wish.
2025-03-08 10:48:18 -06:00
Austin Horstman
d2c014e1c7
treewide: null package support (#6582)
Can generate the config without installing application through home-manager. Helpful when a package is broken (or not provided) on a specific platform through nixpkgs and needs to be installed through other means but you still can benefit from the declarative configuration.
2025-03-07 18:17:52 -06:00
Sefa Eyeoglu
6c2b79403e
treewide: use graphical-session.target for GUI services (#5785)
As per systemd.special(7)[0] graphical-session-pre.target is strictly
for units that set up things for a graphical session. Most notably,
these are usually started *before* the compositor/session is actually
ready.

While Home Manager's current implementation of graphical-session.target
allows these units to work regardless of what systemd.special(7)
specifies, other setups like ones with uwsm[1] do not allow these units
to start properly.

[0]: https://www.freedesktop.org/software/systemd/man/latest/systemd.special.html#graphical-session-pre.target
[1]: https://github.com/Vladimir-csp/uwsm
2025-03-07 18:09:12 -06:00
Austin Horstman
0208592b59
idlehook: fix service.restart merge (#6544) 2025-02-27 11:32:59 -06:00
Austin Horstman
cf3bf4f1b7
mpd: refactor implementation (#6537)
Remove with lib, reorganize, cleanup conditionals, hide options that are
linux only from darwin.
2025-02-27 10:56:56 -06:00
Damien Cassou
b8869e4ead
mpd: Add support for darwin (#6517) 2025-02-26 20:53:00 -06:00
Even Brenden
6be185eb76
screen-locker: set Restart=always for all services (#6534) 2025-02-26 15:41:55 -06:00
Even Brenden
44b86a72e7
xidlehook: set Restart=always (#6533) 2025-02-26 15:41:15 -06:00
DSOverlord
74f0a8546e
clipse: add additional options (#6525) 2025-02-25 08:39:21 -06:00
eulalia
7ceacd98a9
wpaperd: add systemd service; move to services/ from programs/ (#6302)
This commit adds a systemd service to run it, and accordingly moves it to services.wpaperd.

In addition, the existing tests have been migrated to services, and an entry in the newslist has been created alerting users to this change.
2025-02-22 11:32:15 -06:00
DSOverlord
a51e94e51c
clipse: add module (#5777)
clipse is a configurable, TUI-based clipboard manager application written in Go with minimal dependency. Though the app is optimized for a Linux OS using a dedicated window manager, clipse can also be used on any Unix-based system.
2025-02-22 09:40:15 -06:00
Austin Horstman
34d524f3ed imapnotify-accounts: remove with lib 2025-02-22 06:33:32 -08:00
Coutinho de Souza
dd21b9afd5 imapnotify: add extraArgs option to imapnotify-accounts
`wait` is no longer a part of the goimapnotify's config, but one of its
cli options.
2025-02-22 06:33:32 -08:00
TheStachelfisch
765cb91e9d
psd: add missing module config options (#6230) 2025-02-21 19:33:49 -06:00
1444
e512de4722
wluma: init module (#6463) 2025-02-21 18:24:26 -06:00
Ilia
edad23ebc1
mako: add max-history option (#6009) 2025-02-17 12:10:04 -07:00
Peter Kling
45c07fcf7d formatting according to HM's format tool 2025-02-15 14:35:04 -08:00
Peter Kling
85e9d1cc8f syncthing: expand declarative config to Darwin
This extends the recently merged PR #5616, which expanded the Synching config to allow declarative settings under Linux, such that it also works under Darwin.

Changes:
* Update the module's `syncthing` launchd agent to copy the synching key/certificate before starting syncthing, analogously to the systemd service from the above mentioned PR #5616.
* Adds an `syncthing-init`launchd agent (analogously to the systemd service `synching-init` from the above mentioned PR #5616) that updates the configuration files. Since this must be run after the syncthing service started, we use a `WatchPath` to coordinate both launchd agents.
2025-02-15 14:35:04 -08:00
Peter Kling
14223a8261 refactor launchd.agents.syncthing
Make launchd.agents an explicit attribute set, since we're going to add another agent.
2025-02-15 14:35:04 -08:00
Peter Kling
26454abc03 provide RUNTIME_DIRECTORY manually if not given by systemd 2025-02-15 14:35:04 -08:00
Peter Kling
33ffe94252 move curl shell function into string variable
Allows us to reuse the function in different scripts.
2025-02-15 14:35:04 -08:00
Peter Kling
17a78d3eed nix variable for syncthing's configuration directory
Is set according to the corresponding OS default, see https://docs.syncthing.net/users/config.html.
2025-02-15 14:35:04 -08:00
Peter Kling
53efb68b4b move syncthing-copy-keys to dedicated variable
This makes it possible to reuse the script in launchd setup.
2025-02-15 14:35:04 -08:00
Calum MacRae
582d3cd42d
yubikey-agent: init service module (#6446) 2025-02-14 15:10:24 -06:00
Austin Horstman
5031c6d297 syncthing: remove with lib 2025-02-13 10:08:21 -08:00
Austin Horstman
20fac9bbdf syncthing: use package options
Currently, all references are hardcoded even though we offer package
options. Update to use package options.
2025-02-13 10:08:21 -08:00
PopeRigby
ba4a1a1102
ludusavi: create Ludusavi module (#5626) 2025-02-10 18:23:20 -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
Coutinho de Souza
4337992712
wayland: create tray.target if xsession is not enabled (#6332)
Create a internal/read-only trayTarget option for the xsession, which is
also used in wayland's config, if the former is not enabled.

Remove all other definitions of `systemd.user.targets.tray`, i. e, the
ones from the following modules: hyprland, sway, river and wayfire.
2025-02-06 22:50:03 +01:00
Christina Sørensen
1e47f7101f
gpg-agent: no-allow-external-cache option (#6387)
This is a pretty common configuration option, and one that many people
will find useful to discover, specially if they're not using a window
manager.

I thought I would add it. It is also useful to have for
pass-secret-service in the future, since you'd likely want to avoid DE
keyrings.

Signed-off-by: Christina Sørensen <ces@fem.gg>
2025-02-04 22:31:42 +01:00