home-manager/tests/modules/programs
David Baynard 719de878f7
imapnotify: Add launchd agent (#3291)
* imapnotify: expose package (and exe) options

There are multiple packages that provide an imapnotify interface. Those
packages have differently named executables. This can now be customized.

This change also means test configurations can use stub packages.

* imapnotify: use/create config in configHome

Exposing the configuration file makes testing imapnotify configurations much
easier. It also allows for golden tests in home-manager.

* imapnotify: extend with launchd agent

Now that home-manager supports launchd agents, the imapnotify service
can be configured (and enabled) for darwin. The configuration matches
that of the linux/systemd version. In particular, by not setting a
`UserName`, this runs as the user whose configuration includes the
module.

Due to the launchd `Program` implementation (it must take an absolute
path) it is not possible to use that for the program and stub the path
in tests. Instead, this uses `ProgramArguments` for the program name.

The `ThrottleInterval` is equivalent to `RestartSec`. `KeepAlive` is
equivalent to `Restart`.

The `ExitTimeOut` default is 20 seconds, but goimapnotify should not
time out — this is achieved by setting the `ExitTimeout` to 0.

* imapnotify: add launchd plist test

This only tests the generated plist (which is new), not the original
systemd implementation, nor the json config file.

(Note the lack of a newline at the end of the plist file.)
2023-07-07 11:39:12 +02:00
..
abook tests: add option test.stubs 2021-09-26 23:26:38 +02:00
aerc aerc: improve module (#3150) 2023-06-13 10:59:42 +02:00
alacritty tests: add option test.stubs 2021-09-26 23:26:38 +02:00
alot tests: add option test.stubs 2021-09-26 23:26:38 +02:00
antidote antidote: static file move to /tmp 2023-07-05 08:30:58 +02:00
aria2 tests: add option test.stubs 2021-09-26 23:26:38 +02:00
atuin atuin: add disable key options (#3754) 2023-03-15 11:52:48 +01:00
autojump tests: fix getOutput on stubs 2023-06-04 09:15:14 +02:00
autorandr autorandr: add filter option (#2795) 2022-03-17 13:45:04 +01:00
bash bash: support bash completion 2022-08-07 15:25:44 +02:00
bat tests: add option test.stubs 2021-09-26 23:26:38 +02:00
beets beets: add mpdIntegration (#3755) 2023-05-11 14:03:54 +02:00
borgmatic borgmatic: add missing support for output and hooks 2023-06-20 19:19:10 +02:00
bottom bottom: use xdg.configHome on Darwin 2023-04-17 21:57:35 +02:00
boxxy boxxy: add module (#4075) 2023-06-09 22:32:11 +02:00
broot broot: fix test (#4170) 2023-06-27 11:02:53 +02:00
browserpass browserpass: add brave support 2022-03-27 01:12:50 +01:00
btop btop: add module 2022-09-05 14:34:37 +02:00
comodoro comodoro: add module 2023-06-14 23:43:19 +02:00
dircolors dircolors: apply extraConfig after settings (#1890) 2021-03-31 22:01:02 +02:00
direnv direnv: enable nushell integration 2022-12-28 21:09:31 +01:00
emacs emacs: allow extraConfig to reference extraPackages 2022-05-26 00:34:17 +02:00
feh tests: add option test.stubs 2021-09-26 23:26:38 +02:00
firefox firefox: support bookmark tags (#3942) 2023-05-04 16:58:13 +02:00
fish fish: always run fish_indent 2022-12-05 23:16:39 +01:00
foot foot: set OOMPolicy=continue for foot server (#2749) 2022-02-22 20:15:28 +01:00
fuzzel fuzzel: add module 2023-05-13 15:54:34 +02:00
gallery-dl gallery-dl: add module 2022-09-09 11:56:37 +02:00
getmail getmail: fix configuration mailboxes generation (#1719) 2021-03-01 17:58:18 -05:00
gh gh: add extensions option 2022-08-12 20:49:50 +02:00
git git: add config helper for hooks 2022-09-08 11:05:07 +02:00
git-cliff git-cliff: add module 2023-05-09 18:53:49 +02:00
gnome-terminal tests: add option test.stubs 2021-09-26 23:26:38 +02:00
goimapnotify imapnotify: Add launchd agent (#3291) 2023-07-07 11:39:12 +02:00
gpg gpg: fix URL of key in test case 2023-03-25 09:57:33 +01:00
helix helix: update languages.toml generation (support every option in languages.toml) (#4003) 2023-05-20 17:22:06 +02:00
hexchat treewide: use liberachat and OFTC in examples 2022-12-05 10:38:54 +01:00
himalaya himalaya: adjust module for 0.8.X (#4093) 2023-06-21 10:59:29 +02:00
htop htop: fix darwin defaults 2022-05-19 23:33:20 +02:00
hyfetch hyfetch: prevent writing config with default/empty settings (#3124) 2022-08-01 19:58:38 -04:00
i3status i3status: add package attribute 2022-10-20 10:04:30 +02:00
i3status-rust i3status-rust: revert #3938 (#3957) 2023-05-07 13:42:55 +02:00
imv imv: add module (#4032) 2023-06-07 14:51:05 +02:00
irssi irssi: add option for SASL external authentication 2022-10-31 09:28:49 +01:00
jujutsu jujutsu: add module 2023-04-28 22:14:13 +02:00
k9s k9s: add module 2022-10-25 00:05:50 +02:00
kakoune kakoune: clean up tests 2021-11-07 09:43:42 +01:00
khal programs.khal 2023-07-04 12:14:47 +02:00
kitty kitty: add shellIntegration (#3759) 2023-05-12 11:20:22 +02:00
kodi kodi: add module 2022-01-26 23:56:25 +01:00
ledger ledger: add structural settings option (#3661) 2023-05-11 11:20:49 +02:00
less less: store 'lesskey' under XDG_CONFIG_HOME 2021-12-08 11:23:56 +01:00
lf tests: add option test.stubs 2021-09-26 23:26:38 +02:00
lieer tests: add option test.stubs 2021-09-26 23:26:38 +02:00
looking-glass-client looking-glass-client: add module 2022-10-18 10:12:15 +02:00
man man: support building manual page index cache 2020-09-13 20:52:08 +02:00
mangohud tests: add option test.stubs 2021-09-26 23:26:38 +02:00
mbsync Revert "mbsync: make passwordCommand escaping consistent" (#3657) 2023-02-08 21:39:10 +01:00
micro micro: add module 2022-06-24 19:19:11 +02:00
mpv mpv: add scriptOpts option, fix tests (#3491) 2023-03-21 11:33:36 +01:00
mu mu: use absolute path to mu in activation block 2022-11-07 15:09:31 +01:00
mujmap mujmap: add module 2022-06-22 00:33:10 +02:00
ncmpcpp tests: add option test.stubs 2021-09-26 23:26:38 +02:00
ncmpcpp-linux ncmpcpp: Allow str type values for mpdMusicDir option (#3565) 2023-01-07 11:59:51 +01:00
ne tests: add option test.stubs 2021-09-26 23:26:38 +02:00
neomutt neomutt: add missing stub in test (#3996) 2023-05-17 12:46:04 +02:00
neovim programs.neovim: add extraLuaConfig (#3639) 2023-02-05 12:09:26 +01:00
newsboat tests: add option test.stubs 2021-09-26 23:26:38 +02:00
nheko nheko: add module 2022-09-08 19:09:30 +02:00
nix-index fish: always run fish_indent 2022-12-05 23:16:39 +01:00
nnn tests/nnn: fix tests (#2746) 2022-02-21 14:17:22 -07:00
nushell nushell: add envVars attribute (#3930) 2023-05-04 00:12:21 +02:00
oh-my-posh fish: always run fish_indent 2022-12-05 23:16:39 +01:00
pandoc pandoc: fix test case 2022-04-08 00:06:23 +02:00
papis papis: add module 2023-01-28 18:51:48 +01:00
pet pet: fix settings format issue 2021-11-17 23:42:21 +01:00
pistol pistol: refactor 2022-12-16 17:05:30 +01:00
pls fish: always run fish_indent 2022-12-05 23:16:39 +01:00
powerline-go fish: always run fish_indent 2022-12-05 23:16:39 +01:00
pubs pubs: add module 2022-03-06 10:40:28 +01:00
qutebrowser qutebrowser: allow for specifying multiple commands in bindings (#3322) 2023-03-15 19:22:12 +01:00
rbw tests: add option test.stubs 2021-09-26 23:26:38 +02:00
readline readline: Add support for keynames (#3947) 2023-05-04 19:39:46 +02:00
ripgrep ripgrep: add module (#4017) 2023-06-02 17:59:12 +02:00
rofi rofi: allow extending themes (#2571) 2022-01-09 17:15:24 -05:00
rofi-pass tests: add option test.stubs 2021-09-26 23:26:38 +02:00
rtx rtx: add module (#4051) 2023-06-07 10:32:56 +02:00
sagemath sagemath: add module 2022-01-11 14:38:02 +01:00
sbt sbt: cache passwordCommand output 2022-10-07 00:40:50 +02:00
scmpuff scmpuff: clean up tests 2023-02-07 22:19:10 +01:00
sioyek sioyek: enable multiple bindings for the same command 2022-10-08 22:11:55 +02:00
sm64ex tests: add option test.stubs 2021-09-26 23:26:38 +02:00
ssh ssh: don't install a client by default (#4016) 2023-05-27 14:11:50 +02:00
starship starship: add enable_transience for fish (#3975) 2023-06-19 21:56:48 +02:00
swaylock swaylock: add enable and package option 2023-04-15 21:17:23 +02:00
taskwarrior taskwarrior: make .taskrc writable (#2761) 2022-04-07 13:29:53 -04:00
terminator tests: add option test.stubs 2021-09-26 23:26:38 +02:00
texlive texlive: remove upstream dependency in tests 2020-06-06 16:43:17 +02:00
thunderbird thunderbird: support aliases 2023-06-14 08:31:26 +02:00
tmate tmate: add module 2022-09-26 00:28:00 +02:00
tmux tmux: fix secureSocket environment variable (#3593) 2023-02-05 11:22:41 +01:00
topgrade tests: add option test.stubs 2021-09-26 23:26:38 +02:00
translate-shell translate-shell: add module (#3659) 2023-05-11 11:21:18 +02:00
vim-vint vim-vint: add module (#3604) 2023-02-05 11:12:28 +01:00
vscode vscode: add options for global and user snippets (#3765) 2023-03-13 18:45:03 +01:00
watson watson: add module 2022-01-22 16:12:34 +01:00
waybar waybar: fix command not found when reloading (#2865) 2022-04-16 18:31:03 -04:00
wezterm wezterm: add integrations for Bash and Zsh (#3934) 2023-06-05 22:46:18 +02:00
wlogout wlogout: add module (#3629) 2023-01-31 17:06:18 +01:00
wofi wofi: add module (#3786) 2023-04-20 00:11:30 -06:00
xmobar tests: add option test.stubs 2021-09-26 23:26:38 +02:00
yt-dlp yt-dlp: generate config if settings or extraConfig are defined (#4018) 2023-05-25 15:06:34 +02:00
zellij zellij: disables shell integrations by default (#3981) 2023-05-12 13:54:26 +02:00
zplug zplug: Update the path of init.zsh (#3922) 2023-04-29 11:08:16 +02:00
zsh zsh: allow setting custom syntax highlighting styles (#4122) 2023-06-28 11:12:58 +02:00