1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-12-26 19:59:47 +01:00
Commit graph

216 commits

Author SHA1 Message Date
Rodney Lorrimar
47226ec7e7
emacs: Remove obsolete socket file workaround 2023-11-11 00:44:53 +01:00
Naïm Favier
14b5415720
sxhkd: set scope OOMPolicy to continue
When a process inside the sxhkd scope is OOM killed, if the OOM policy
is set to `stop` then the sxhkd scope itself will exit, terminating
every process launched from the keyboard.

This is undesirable, set it to `continue` instead to keep other
processes running.
2023-10-24 17:48:13 +02:00
Xavier Lambein
b25161c6a2
darkman: add module
Co-authored-by: Naïm Favier <n@monade.li>
Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-10-17 09:07:47 +02:00
Janik
3b67ae3f66
services.cliphist: add module (#4445) 2023-10-15 14:03:18 +02:00
Mihai Fufezan
ed0770e962
hyprland: allow customizing systemd
Allows users to customize which environment variables to import in DBus
and SystemD user environments, and to specify which commands will be run
after the environment activation.
2023-10-06 23:34:47 +02:00
Sefa Eyeoglu
e0c70942c0
programs.sway: separate trayOutput values for sway (#4489)
Fixes nix-community/home-manager#4488

The default config for sway generates a bar block with tray_output primary. But wayland (or sway, take your pick?) has no concept of a primary display so this just results in no tray anywhere.

A better default is "*" which puts the tray on every monitor, since sway can do so without issue.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-09-23 20:53:45 +02:00
Motiejus Jakštys
8045eb45a7
pasystray: add extraOptions
Allows a user to, for example, add the `-g` option.

Also add a basic test case.
2023-09-19 08:02:18 +02:00
ryane
ab70a02363
git-sync: add darwin support
- On darwin, creates a launch agent to run git-sync on an interval and
  when the `path` changes.

- The `uri` option is not used on Darwin. The auto-creation of the
  local git directory from the `uri` is a feature of the
  git-sync-on-inotify [1] wrapper (which won't work on Darwin afaik)
  and not `git-sync` itself.

[1] https://github.com/simonthum/git-sync/blob/master/contrib/git-sync-on-inotify
2023-07-24 11:16:09 +02:00
Mihai Fufezan
76dd6c6619
hyprland: prioritize variables and beziers (#4263)
* hyprland: prioritize variables and beziers

The `settings` key now handles `$variables` and `bezier`s differently,
putting them at the top of the file.
Also, proper indentation has been implemented.

* Update modules/services/window-managers/hyprland.nix

Co-authored-by: Naïm Favier <n@monade.li>

* hyprland: add animations & beziers test

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-07-22 13:58:46 +02:00
Mihai Fufezan
ee5673246d
hyprland: add module
Ported from

  https://github.com/hyprwm/Hyprland/blob/main/nix/hm-module.nix

which was adapted from the sway module.

Co-authored-by: Robert Helgesson <robert@rycee.net>
2023-07-21 00:14:22 +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
Robert Helgesson
b70db52ff0
imapnotify: move test
Also add test for the systemd service.
2023-07-09 10:53:28 +02:00
Anton Plotnikov
98282a481d
swayosd: add module 2023-07-08 12:09:09 +02: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
Clément DOUIN
e0034971f9
comodoro: add module 2023-06-14 23:43:19 +02:00
Sefa Eyeoglu
0144ac418e
sway: add support for XDG autostart using systemd (#3747)
* sway: add support for XDG autostart using systemd

Using the option wayland.windowManager.sway.systemd.xdgAutostart, users
can now choose to start applications present in
$XDG_CONFIG_HOME/autostart when starting their sway session.

This change also renames wayland.windowManager.sway.systemdIntegration
to wayland.windowManager.sway.systemd.enable;

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>

* sway: add Scrumplex to maintainers

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>

---------

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-06-10 12:10:40 +02:00
Li Yang
1e5d741ea3
Espanso: Fix broken module to be compatible with Espanso version 2.x (#4066)
* Fix espanso module to work with 2.x version

* espanso: fix espanso module

This module is currently broken. It does not create `config` and `match` folders which are required by espanso 2.x version.

This PR fixed this issue and support creating multiple files under `config` and
`match` folder.

* Espanso: fix espanso module

This module is currently broken. It does not create `config` and `match` folders which are required by espanso 2.x version.

This PR fixed this issue and support creating multiple files under `config` and `match` folder.

Add descriptions

* Add versionAtLeast and mkRemovedOptionModule

* Correct maintainers list

* remove config key from example

* format basic-configuration.nix

* Update modules/services/espanso.nix

Co-authored-by: Naïm Favier <n@monade.li>

* fix maintainers list

---------

Co-authored-by: Naïm Favier <n@monade.li>
2023-06-09 12:05:01 +02:00
Naïm Favier
607d8fad96
i3-sway: quote output names (#4059)
They can contain spaces.
2023-06-04 15:23:23 +02:00
Naïm Favier
221056c59f
tests: fix getOutput on stubs
Setting `outputSpecified` prevents `getOutput` from descending into
outputs, which don't have an overridden `outPath`.

Additionally, use `__spliced` to permit derivations to use the dummy as
an input.
2023-06-04 09:15:14 +02:00
Robert Helgesson
eec2272999
tests: various minor cleanups 2023-05-13 00:09:52 +02:00
Naïm Favier
2f6a917ade
i3-sway: fix indentation of bar blocks (#3978)
The `indent` function unindents the first and last line by default, so
the `"bar {"` `"}"` wrapper should go inside the list.
2023-05-11 14:04:29 +02:00
Jian Lin
f714b17031
emacs: extend startWithUserSession to start after graphical session (#3010) 2023-05-11 13:58:37 +02:00
Bernardo Meurer
a5a294a622
sway: import NIXOS_OZONE_WL into systemd
Without this, even if you configure a preference for Electron apps to
use Ozone by setting `NIXOS_OZONE_WL=1`, GUI apps launched through
systemd user services use XWayland, since the variable is not set in
their environment.

This fixes that issue by importing it, like we do other variables.
2023-04-23 20:10:16 +02:00
Christoph Heiss
3895469036
fnott: add D-Bus service file
This is needed to make fnott bus-activatable. Otherwise it won't be
started when a bus request is made [0]. Done in the same way as e.g.
dunst sets that up [1,2].

[0] https://www.freedesktop.org/software/systemd/man/systemd.service.html#id-1.10.6
[1] https://github.com/nix-community/home-manager/blob/master/modules/services/dunst.nix#L139
[2] https://github.com/dunst-project/dunst/blob/master/org.knopwob.dunst.service.in
2023-04-22 16:49:26 +02:00
Olmo Kramer
64d1f75a1e
herbstluftwm: fix default tag renaming
The previous implementation tried to rename the tag named "default" to
the first tag in `cfg.tags`. This was a wrong approach because if a
tag with the same name already existed, the renaming failed and the
default tag would continue to exist.

The looking up of the default tag also contained a bug because it
should have used `by-name` in the path.
2023-04-22 16:38:31 +02:00
Jon Seager
cc05d26326
avizo: don't write a config file if settings are empty
Before this change, the default config provided by this module wrote
an empty file to `$HOME/.config/avizo/config.ini`, which caused a
bunch of errors, as Avizo tries to read a 'group' from the ini file,
which fails.

This commit also adds associated test cases.

PR #3871
2023-04-19 21:17:56 +02:00
Robert Helgesson
75f4f362e1
git-sync: fix test 2023-04-15 21:17:22 +02:00
midchildan
885a504f80
syncthing: add Darwin support 2023-03-25 13:09:55 +01:00
Naïm Favier
3c18113bd7
mpd: add extraArgs (#3735)
Allow passing arguments to the MPD command line. Currently the only
interesting one is `--verbose`.
2023-03-05 09:41:34 +01:00
Robert Helgesson
b9e3a29864
recoll: fix generation of string lists
The updated implementation will quote string lists as per the
description at

  https://www.lesbonscomptes.com/recoll/usermanual/#RCL.INSTALL.CONFIG

Fixes #3732
2023-03-02 20:01:51 +01:00
Olmo Kramer
5e889b385c
mpd-mpris: add module 2023-02-20 23:43:42 +01:00
Naïm Favier
5ffb0f1f81
tests: fix gnupg stub (#3685)
systemd now depends on `gnupg.override`, so we need a stub for systemd too.
2023-02-19 11:19:00 +01:00
Damien Cassou
ca69be9335
borgmatic: Do not inhibit idle in service (#3637)
This reflects a systemd service sample file change made in borgmatic
1.7.6, commit 2e9f70d49647d47fb4ca05f428c592b0e4319544:

    When backing up a machine with a monitor using logind to control
    idle timeout and things like DPMS, borgmatic can block the screen
    from turning on/off with systemd-inhibit. This is because by
    default systemd-inhibit will block
    "idle:sleep:shutdown". Borgmatic does not need to care about idle,
    only about suspend and shutdown. So, add an explicit `--what` flag
    for what borgmatic should inhibit.

    For more information see systemd-inhibit(1).
2023-02-05 11:13:04 +01:00
David Houston
1d94de5604
pass-secret-service: various improvements
Allow setting the application package and storePath used by the
config. Since the `programs.password-store` Home Manager module sets
config values via global environment variables, the default behavior
of the module should continue to behave as before for the user.

Additionally,

- Adds a few tests.

- Use "escapeShellArg" function call to the path parameter call to
  ensure paths with spaces work.

- Allow not setting storePath, which will cause `pass_secret_service`
  to default to using `~/.password-store`.

- If `pass-secret-service` is enabled, set its store path to default
  to the one defined in our password-store environment settings.

- Add myself (houstdav000) as maintainer.
2023-01-31 23:19:09 +01:00
arcnmx
d633afe0d9
i3-sway: config.focus.wrapping deprecates forceWrapping (#3467)
Stop using the legacy syntax described in the i3 documentation:
https://i3wm.org/docs/userguide.html#_focus_wrapping
2023-01-15 19:20:13 +01:00
Martin Weinelt
d01e7280ad
i3-sway: Use foot as default terminal on sway (#3490) 2023-01-03 19:26:08 +01:00
Jarosław Wygoda
fb49fbc368
clipman: add module 2022-12-28 23:02:08 +01:00
Robert Helgesson
8745cc9a21
parcellite: add basic test case 2022-12-28 22:16:47 +01:00
Robert Helgesson
939731b8cb
cachix-agent: add module 2022-12-25 09:54:43 +01:00
Olmo Kramer
47bb9e7569
herbstluftwm: Reset mousebinds on (re)load
Keybinds and rules were already reset, but now also the mousebinds are.
2022-12-19 22:40:24 +01:00
Olmo Kramer
1a0a5f5037
herbstluftwm: Fix error when no tags set
The default value for `xsession.windowManager.herbstluftwm.tags` is an
empty list, but the config file uses `builtins.head` on it, which causes
an error upon evaluation. With this change the tags configuration is
skipped if the list is empty.
2022-12-19 22:40:24 +01:00
Robert Helgesson
65700a4fd1
polybar: fix restart trigger
The old trigger would actually never cause a restart since the path
doesn't change. With this change the trigger is now using the actual
configuration path in the Nix store, which depends on the content.
2022-12-04 12:12:32 +01:00
h7x4
64f7a77517
polybar: don't generate config if no options are set (#3383)
* polybar: don't generate config if no options are set

* polybar: add h7x4 as maintainer
2022-11-27 01:17:28 +01:00
Thiago Kenji Okada
c94c9c342f
picom: remove experimentalBackends, add extraArgs (#3423)
`--experimental-backends` flag was removed in the recent released picom
v10. Using it now will result in the program exiting.

v10 also introduces its counter-part, `--legacy-backends`. However this
will be removed soon. Instead of adding this as an separate option, add
`extraArgs` option so for those that they want they can pass it manuall.
It is also more future proof.
2022-11-18 08:59:30 -07:00
polykernel
2464c21ab2
sway: import XDG_SESSION_TYPE in systemd user environment (#3328)
- The `XDG_SESSION_TYPE` environment variable is used by some applications and frameworks to
  detect wayland sessions (i.e qt5/6, electron/chromium). It is set by wlroots since version 0.13.0 [1].

- Propagating `XDG_SESSION_TYPE` to the systemd user environment is necessary when processes launched by
  services (e.g emacs) need to inherit the environment variable.

[1] - 90c8452959
2022-10-31 13:09:06 +01:00
Damien Cassou
186d9399f9
borgmatic: specify where to find sleep (#3349)
Closes #3348.
2022-10-23 16:52:22 -04:00
Damien Cassou
04f5399978
borgmatic: add module 2022-10-16 21:51:52 +02:00
arcnmx
e1f1160284
redshift/gammastep: add enableVerboseLogging option
This option controls whether the `-v` command line argument is given.

Co-authored-by: Sumner Evans <me@sumnerevans.com>
2022-10-09 01:21:05 +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
Robert Helgesson
5427f3d1f0
mpd: use XDG music dir if XDG user dirs are enabled
If the user has enabled the XDG user directories module then we can
use the XDG music directory in the MPD module. Otherwise we'll leave
the option undefined so that the user is forced to define the
directory to use.

This applies to state version 22.11 and above.

Fixes #3225
2022-09-16 13:41:40 +02:00
Robert Helgesson
960c009ce0
git-sync: minor test cleanup 2022-09-05 13:51:03 +02:00
cab
66cc5c7ef9
git-sync: add ssh to path
This fixes automated pushing to repository.
2022-09-05 13:15:40 +02:00
Matthew Toohey
d89bdff445
sway, bspwm: add extraConfigEarly (#2847) 2022-08-27 00:09:46 -04:00
Lily Foster
991ff35249
udiskie: add tests 2022-08-23 20:11:40 +02:00
Robert Helgesson
91f26e0b0e
polybar: use add .ini suffix to configuration file
The old name is deprecated and causes a warning to be logged.
2022-08-07 10:51:38 +02:00
Gabriel Arazas
0e2f7876d2
recoll: add module 2022-07-27 14:25:27 +02:00
Loïc Reynier
a3b778e672
spectrwm: add module
PR #3077
2022-07-25 13:42:06 +02:00
Robert Helgesson
45ef70cc73
swayidle: remove unnecessary config wrapper 2022-07-12 12:02:01 +02:00
Joe Neeman
43ea4c5123
swayidle: fix systemd service
swayidle executes commands using "sh -c" and so its PATH must contain
a shell. This adds such PATH entry to the environment of the systemd
service.

Fixes #2811.
2022-07-12 12:01:04 +02:00
Thiago Kenji Okada
b908e61dfa
picom: sync module with the NixOS version
This brings a few advantages:

- Use of float instead of strings to represent float values,

- Use of structure settings, and

- Better type checking for some settings

Also add thiagokokada as codeowner of picom.
2022-07-12 11:21:49 +02:00
oxalica
25a9948361
sway: import dbus env vars and explicitly specify them (#3031)
- Importing all environment variables is considered deprecated for
  `systemdctl import-environment`. The list of variables are picked
  from:
  https://github.com/swaywm/sway/wiki/Systemd-integration#managing-user-applications-with-systemd

  The `XDG_CURRENT_DESKTOP` is said to be required for portals, see:
  https://github.com/nix-community/home-manager/pull/2385#issuecomment-1026454162

- DBus activation environment should also be updated. Otherwise, DBus
  activated programs, without a coresponding systemd service, cannot get a
  correct environment and would fail, eg. `mako`.
2022-07-07 11:03:58 -06:00
Naïm Camille Favier
face4094d4
bspwm: add missing rule setting rectangle (#2974)
Also add a `freeformType` so that we don't have to do this in the
future.
2022-07-06 23:36:20 -04:00
Kritnich
1ebbef8642
barrier: change enableCrypto behaviour
`--enable-crypto` is deprecated because crypto is now enabled by default.
`--disable-crypto` should be used instead.
Fixes https://github.com/nix-community/home-manager/issues/3001
2022-06-21 21:59:19 +02:00
Damien Cassou
931653b99f
emacs: optionally start service with the session
Add services.emacs.startWithUserSession boolean to indicate that Emacs
must be started with the systemd user session. This is true by default
unless socket activation is also true.

In the past, the user had to choose between socket activation (to get
the Emacs service started when the user uses emacsclient) and
immediate start with the user session. When choosing immediate start
over socket activation and if the Emacs service is stopped at some
point, using emacsclient would start a new Emacs daemon but the
service would still be turned off. This situation would prevent
`home-manager switch` from completing successfully because it wouldn't
be able to start the Emacs service as Emacs is already running.

This new setting makes it possible to have both socket activation and
immediate start at the same time. In this scenario, Emacs is started
with the user session and, after the Emacs service is stopped, using
emacsclient starts the service again.

This new settings also makes it possible to have neither socket
activation nor immediate start.
2022-06-19 01:09:41 +02:00
Naïm Camille Favier
1de492f6f8
format: update and remove exceptions (#3029)
Switches to nixfmt 0.5.0 and removes exceptions for files without open
PRs.
2022-06-16 14:13:06 +02:00
Robert Helgesson
2c8489e57a
mpdris2: add basic test cases 2022-05-25 18:43:22 +02:00
Gabriel Arazas
cb9f03d519
mopidy: add module
This is adapted from the `services.mopidy` NixOS module. The
difference is the setting can be configured with Nix language, taking
advantage of generators from nixpkgs. The module is also suited more
for user-specific configuration, removing the `extraConfigFiles` and
`dataDir` option.
2022-05-19 00:31:37 +02:00
Thiago Kenji Okada
7add9ce2e5
picom: remove refreshRate option
Removed by upstream since commit:

    bcbc410c92

This commit is included since v9 release:

    https://github.com/yshui/picom/releases/tag/v9
    https://github.com/yshui/picom/releases/tag/v9-rc1 (the actual changelog)

While this doesn't break the config per see, it results in the
following warning in the logs:

    [ DD/MM/YYYY HH:MM:SS.mmm parse_config_libconfig WARN ] The
      refresh-rate option has been deprecated. Please remove it from
      your configuration file. If you encounter any problems without
      this feature, please feel free to open a bug report

Beside the above change we also remove an old workaround and also
write the configuration file to a well-known location in the user's
home directory.
2022-04-15 23:49:51 +02:00
Radosław Szamszur
a985e711e8
screen-locker: Add option to configure x screensaver cycle (#2853)
Some screen lockers which will be used with xss-lock might require
to set x screensaver timeout with cycle.
2022-04-04 23:32:27 -04:00
Robert Helgesson
70c4696619
tests: bump nmt
Also updated golden files to match new store path normalization
output.
2022-03-23 23:57:20 +01:00
Basti
80b4360678
i3/sway: improve i3.nix to handle options as list like in sway, adjusted functions for less new-lines (#2314)
* i3/sway: Improve code to generate config to avoid new-line issues on code/config changes

* Maintainer: Add SebTM as maintainer
2022-03-21 16:52:57 -06:00
Basti
64823066c2
herbstluftwm, mpd: fix bash version in tests (#2816)
* mpd: Fix bash-version in tests

* herbstluftwm: Fix bash-version in tests
2022-03-21 15:41:39 -06:00
Naïm Favier
e2a85ac43f
bspwm: add alwaysResetDesktops (#2785)
If set to true, desktops configured in `monitors` will be reset every time
the config is run.

If set to false, desktops will only be configured the first time the config is run.
This is useful if you want to dynamically add desktops and you don't want them
to be destroyed if you re-run `bspwmrc`.
2022-03-17 22:56:56 -04:00
Robert Helgesson
8eb7c009f0
fusuma: avoid unnecessary dependency in test 2022-03-13 23:23:41 +01:00
iosmanthus
8bdfa41b4e
fusuma: add module
Fusuma is a tool supports multitouch gestures with libinput driver on
Linux.
2022-03-13 22:17:55 +01:00
Robert Helgesson
541874f55d
mpd: add basic test case 2022-03-04 01:36:48 +01:00
lucasew
4f4165a8b9
espanso: add module
This commit adds a module to configure espanso, a program to do text
expansions that is configured using a YAML configuration file.
2022-02-18 00:35:57 +01:00
Thibaut Marty
6d9d9294d0
notmuch: fix database creation when using hooks
When an hook is defined, a side effect was the creation of the
${notmuchIni.database.path}/.notmuch/ directory by home-manager. If
the Xapian database does not exist yet but this .notmuch directory
exists, Notmuch is confused and throws an error when `notmuch new` is
run (while this should create the database the first time).

This commit changes the hooks paths to $XDG_CONFIG_HOME where Notmuch
expects them (see notmuch-config(1)) instead of inside the maildir
database directory.

It also moves the configuration where Notmuch expects it, but the
$NOTMUCH_CONFIG environment variable is kept for backward
compatibility.
2022-02-11 00:04:40 +01:00
Morgane Austreelis
63dccc4e60
twmn: add module
This module allows to configure and start the twmn daemon.
2022-02-04 01:05:04 +01:00
pinage404
418ae217dd
home-manager.autoUpgrade: add module
Home Manager upgrade service that periodically updates your Nix
channels before running `home-manager switch`.
2022-01-28 23:42:25 +01:00
Robert Helgesson
86248a2d5c
syncthing: add option extraOptions
Fixes #2598
2022-01-27 00:33:45 +01:00
rcerc
f3be3cda6a
services/emacs: add option to set emacsclient as the default editor (#2545)
* services/emacs: add `defaultEditor` option

Sets `emacsclient` as the default editor using the `EDITOR` environment variable.
2022-01-10 02:17:13 -05:00
Jos van Bakel
65e5b835a9
swayidle: add module (#2610)
Swayidle is an idle management daemon for Wayland. This modules adds support for
running swayidle as a SystemD user unit and makes it configurable through
home-manager.
2022-01-03 12:03:20 -07:00
Olmo Kramer
89bdef7994
herbstluftwm: init module 2021-12-31 10:44:08 +01:00
Sumner Evans
42ba7b6304
sway: add 'xwayland disable' to sway config if disabled (#2568)
Closes #2567
2021-12-16 01:56:02 -07:00
Peter Jones
0ebed30a10
gromit-mpx: add module 2021-12-11 19:17:59 +01:00
oxalica
78ff6b851c
gpg-agent: fix and enable tests 2021-12-08 00:01:29 +01:00
polykernel
15ae861e1b
swaynag: add module
Swaynag is a replacement of i3-nag for sway. Swaynag is embedded in
Sway's build process albeit it is not an integral part of Sway,
therefore it has been added under `wayland.windowManager.sway` instead
of `programs`. It can be moved at a later time if necessary.

Two unit tests were added validate the module behavior for an empty
configuration and the example configuration.
2021-11-21 18:37:50 +01:00
Robert Helgesson
0f72441821
bspwm: stub test dependency 2021-10-30 20:36:14 +02:00
polykernel
46a69810cb
fnott: remove global properties generation
Rationale:

As of release 1.1.2[1], the configuration ini file supports
declaration of the `[main]` header as an alternative to global
properties by enumerating all sections and mapping each to the
respective parsing function. Global properties will still be parsed
correctly by fnott however generation adds unnecessary complexity to
the module. This commit removes the need for global properties
generation.

Changes:

- Fixed the FIXME at L118.

- Cleaned up unneeded let bindings.

- Changed the generation method to use the `pkgs.formats.ini` from
  pkgs-lib instead of the raw `generators` library. This was done for
  consistency and clarity as the `pkgs.formats.ini` is still required
  for type declaration and uses `generators` internally.

- Removed `global-properties` testcase.

- Updated `example-settings` testcase.

[1] - https://codeberg.org/dnkl/fnott/releases/tag/1.1.2
2021-10-27 00:01:57 +02:00
Robert Helgesson
0b47ded208
flameshot: add settings option 2021-10-11 21:47:05 +02:00
Josh Robson Chase
e4df31dcea
screen-locker: Make xautolock optional, reorganize options (#2343)
* screen-locker: Make xautolock optional, reorganize options

xautolock isn't really needed to trigger xss-lock on the basis of time
since the built-in screensaver functionality of X serves as one of the
event sources for xss-lock. Keeping it around and defaulting to
"enabled" to avoid unexpected breakage.

Also shuffled around the options to submodules for xss-lock and
xautolock to get rid of prefixes in option names and to make
enableDetectSleep a bit clearer.

* screen-locker: update maintainership

* tests/screen-locker: Stub i3lock and xss-lock

* screen-locker: add package options for xss-lock and xautolock
2021-10-05 12:58:25 -04:00
Faye Duxovni
095f3e32ae
kanshi: allow multiple exec statements per profile
kanshi configurations can have more than one exec statement in a
profile. This change allows services.kanshi.profiles.<name>.exec to be
a list of strings rather than a single string.
2021-10-03 09:47:22 +02:00
schotts-fired
0f3dfc94ef
services.emacs: add option extraOptions
This is to allow adding command-line arguments to the Emacs daemon.
Previously only the Emacs client could be started with custom
arguments.
2021-10-02 23:28:22 +02:00
Gabriel Fontes
52e84a040e
xsettingsd: make configurable through module 2021-10-01 01:31:47 +02:00
Robert Helgesson
cb09a968e9
tests: add option test.stubs
This option provides a more convenient way to overlay dummy packages.
It also adds a function `config.lib.test.mkStubPackage` that can,
e.g., be used for `package` options.
2021-09-26 23:26:38 +02:00
polykernel
039f786e60
fnott: refactor module
- Change generation behavior to always generate a configuration file
  and pass it explicitly to fnott, it enforces the module to be
  hermetic instead of offloading the configuration selection to
  heuristics.
- Various style changes.
- Fix issue where fnott would abort due to an invalid config file when
  both the configFile and settings options are unset.
- Remove the empty-settings test as a configuration file is now
  already generated.

Suggested-by: Robert Helgesson <robert@rycee.net>
2021-09-08 22:48:44 +02:00
polykernel
521a03d8bf
fnott: add module
Fnott is a keyboard driven and lightweight Wayland notification daemon
for wlroots-based compositors.

There are four unit test to validate behavior for an empty
configuration, the default configuration, global properties and
systemd service file generation.
2021-08-26 08:43:39 +02:00
Nicholas Coltharp
72394f6d6b
fluidsynth: add sound service option
Fluidsynth's systemd unit currently has a hard dependency on the
pulseaudio systemd service. Since fluidsynth can use other sound
services (e.g., pipewire-pulse), this should be configurable. This
commit adds the relevant option.

PR #2238
2021-08-18 00:38:29 +02:00
Ivan Malison
ad0fc085c7
git-sync: add module 2021-08-17 00:00:38 +02:00