Commit graph

161 commits

Author SHA1 Message Date
cwyc 8f2342e13a
ne: add module
Added a simple module to place configuration files for ne: the nice
editor.

PR #1336
2020-06-23 22:37:02 +02:00
Vincent Breitmoser b0e8a1569e
fluidsynth: add module
Fluidsynth is a real-time MIDI synthesizer based on the SoundFont 2
format.

PR #1326
2020-06-14 15:30:51 +02:00
s1341 1b210e7143
zplug: add module
This adds initial support for the zsh package manager "zplug".

PR #1105
2020-06-14 15:12:49 +02:00
Damien Cassou 478022afad
powerline-go: add module
PR #1285
2020-06-13 00:02:13 +02:00
Robert Helgesson edc3bede6e
tests: avoid dependency on documentation 2020-06-12 21:59:51 +02:00
Tad Fisher 3815248786
emacs: Support socket activation via systemd
Add 'services.emacs.socketActivation.enable' for generating an
'emacs.socket' systemd unit.

Emacs since version 26 has supported socket activation, whereby an
external process manager such as systemd listens on a socket and passes
it to the Emacs daemon when the manager launches it. This improves
startup time of the user session and avoids launching the daemon when not
needed, for example when launching the user session via SSH.

This implementation hard-codes the socket path to the default for the
version of 'programs.emacs.finalPackage', because systemd does not
perform shell expansion in the socket unit's 'ListenStream' parameter
and it seems like an advanced use-case to change the socket path. Shell
expansion would be desirable as the socket path usually resides in
directories such as $XDG_RUNTIME_DIR or $TMPDIR.

Tests were added to verify behavior in the following cases:

- Emacs service with socket activation disabled
- Emacs 26 with socket activation enabled
- Emacs 27 with socket activation enabled

PR #1314
2020-06-11 20:39:49 +02:00
Damien Cassou 575cd4b8ba
direnv: add initial test for bash integration 2020-06-06 21:40:41 +02:00
Robert Helgesson 8bbefa77f7
tests: perform code formatting test in test suite
This should improve visibility when CI job fails due to bad
formatting.
2020-05-28 01:37:27 +02:00
Nikita Uvarov 09304026ae
autorandr: add basic configuration test 2020-05-26 19:04:25 +02:00
Justin Lovinger e9945ee6ee
dircolors: add module
PR #1219
2020-05-12 22:15:32 +02:00
Justin Lovinger 1dd226fde7
aria2: add module
PR #1202
2020-05-03 13:21:52 +02:00
Justin Lovinger ecc1f2310c
i3status: add module
PR #1210
2020-05-03 13:12:13 +02:00
Matthieu Coudron 10673bff4c
alot: add structured settings
- Also support tags.

- Optionally write the hooks file.

PR #812
2020-05-01 22:26:26 +02:00
Robert Helgesson 95b95b1407
tests: improve test purity
Before the XDG variables would be set from the user's environment, if
available. This would break some tests.

With this change the tests should be fully deterministic.

Fixes #1190
2020-04-24 21:46:34 +02:00
Robert Helgesson cfaf213980
tests: bump nmt revision 2020-04-24 21:45:20 +02:00
Owen McGrath 2f2a4396c6
lf: add module
Adds 'programs.lf', configuration managment for lf, a terminal file
manager.

PR #1174
2020-04-23 22:41:22 +02:00
Robin Stumm 86ccd8fecb
kakoune: implement whitespace highlighter config
The options under `programs.kakoune.config.showWhitespace` existed
but were not implemented.

PR #1162
2020-04-16 22:34:31 +02:00
Robert Helgesson ebdfa06685
tests: update nmt 2020-04-10 01:01:20 +02:00
Justin Lovinger b7737f1732
qutebrowser: add module
PR #1132
2020-04-08 14:50:59 +02:00
Tobias Happ d06bcf4c97
targets.genericLinux: add module
PR #797
2020-04-08 13:36:25 +02:00
Tad Fisher 9f46d516fa
services.lieer: add module
Add 'services.lieer', which generates systemd timer and service units
to synchronize a Gmail account with lieer. Per-account configuration
lives in 'accounts.email.accounts.<name>.lieer.sync'.
2020-03-07 15:13:50 +01:00
Tad Fisher 60a939bd01
programs.lieer: add module
Add 'programs.lieer', a tool for synchronizing a Gmail account with a
local maildir and notmuch database. Per-account configuration lives in
'accounts.email.accounts.<name>.lieer'.
2020-03-07 15:13:15 +01:00
Maximilian Bosch 0056a5aea1
debug: add module
This one is fairly similar to `environment.enableDebugInfo`[1] (hence
the name). It ensures that the `debug`-output of packages defined in
`home.packages` is installed if available and ensures that
`gdb`/`elfutils` find those symbols by adding
`~/.nix-profile/lib/debug` to the `NIX_DEBUG_INFO_DIRS`[2] variable.

[1] https://github.com/NixOS/nixpkgs/blob/release-19.09/nixos/modules/config/debug-info.nix
[2] https://github.com/NixOS/nixpkgs/blob/release-19.09/pkgs/development/tools/misc/gdb/debug-info-from-env.patch

PR #1040
2020-03-07 15:03:44 +01:00
Robert Helgesson f3fbb50b68
polybar: add test case 2020-03-04 21:26:35 +01:00
MmeQuignon 0a1ce53990
abook: add module
PR #1058
2020-03-04 19:58:05 +01:00
Robert Helgesson 6fc6c736f9
tests: bump nmt version 2020-03-02 23:47:39 +01:00
Robert Helgesson acf106ced0
starship: give settings option more specific type
This more readily allows merging configurations.

Fixes #1023
2020-02-29 22:17:47 +01:00
Ryan Orendorff 111011b2c2
fish: add some tests
- If a function is defined, check that the function file exists and
  that the contents matches a given string.

- If no functions exists, the functions folder should not exist.

- Verify plugin functionality.
2020-02-20 00:03:26 +01:00
Robert Helgesson de8033747c
tests: clean up tests
- Move all module tests to their own directories.

- Avoid duplication of `// import`.
2020-01-26 21:11:23 +01:00
Matthieu Coudron fba87f8998
neomutt: add module
PR #1002
2020-01-26 20:46:44 +01:00
Robert Helgesson 6e4b9af080
Switch to extended Nixpkg's lib
This change makes use of the `extend` function inside `lib` to inject
a new `hm` field containing the Home Manager library functions. This
simplifies use of the Home Manager library in the modules and reduces
the risk of accidental infinite recursion.

PR #994
2020-01-21 20:47:04 +01:00
Robert Helgesson 6c127efb2d
lib: add type generators dagOf and listOrDagOf
Given an inner type, the former function generates a type that expect
DAG option values. The latter function is only present to temporarily
allow the `programs.ssh.matchBlocks` to keep accepting list values.
2020-01-16 00:16:09 +01:00
Robert Helgesson bcfc52cb85
tests: move git and files tests to directories 2019-12-08 21:40:22 +01:00
Robert Helgesson 284b8d94d4
readline: add variables option
Also add a basic test case.
2019-12-08 21:13:58 +01:00
Robert Helgesson 90bf989002
newsboat: support feed titles
Fixes #861
2019-10-11 21:41:05 +02:00
Nazarii Bardiuk 51581b7e43
sxhkd: add service 2019-09-17 21:42:05 +02:00
pacien e347e932af
xdg-mime-apps: add module 2019-09-15 17:21:42 +02:00
Robert Helgesson 1923ac3358
rofi: add test to verify assertion 2019-09-04 12:52:14 +02:00
Robert Helgesson 73641e492c
firefox: use wrapped package
This makes the

    programs.firefox.package

option take a pre-wrapped Firefox package as value if state version is
set to "19.09" or later. This should make the Firefox module work with
a wider range of Firefox packages.
2019-08-18 18:04:04 +02:00
Robert Helgesson 8467e7e10a
getmail: restrict tests to Linux 2019-06-28 05:56:42 +02:00
Róman Joost 68fe8623ad Address code review comments for getmail service
This patch started by addresssing the code review comments to close
https://github.com/rycee/home-manager/pull/290. However initiating a new
pull request it became clear, that home-manager changed significantly
since then.

This changes the initial pull request to be consistent with the email
account management in home-manager now. It also adds a simple test and support
for multiple accounts.
2019-06-27 07:48:09 +02:00
Robert Helgesson 95d55b8da1
xsession: add option importedVariables
This option lists the environment variables to be imported into the
systemd user session.

Also add a basic test of the xsession module.
2019-06-23 14:06:29 +02:00
Jaka Hudoklin 0db26fc3ab
gpg: add module 2019-06-03 23:50:50 +02:00
Tad Fisher e25113bcf0
browserpass: fix host/policy link sources 2019-06-01 12:24:30 +02:00
Tadeo Kondrak d2ed39f103
alacritty: don't create file if settings is empty
Also add a few test cases for the alacritty module.
2019-05-14 23:53:10 +02:00
Robert Helgesson b256e3a44f
fontconfig: fix build error
This fixes a build error occurring when building a configuration
having fontconfig enabled and `home.packages` only containing one
package installing things to `/lib`.

Also adds a number of test cases to verify the fontconfig cache
generation functionality.

Fixes #703
2019-05-06 00:44:23 +02:00
Robert Helgesson 939274281a
tests: bump nmt version 2019-05-06 00:17:30 +02:00
Robert Helgesson b6e613c771
Fix type of various sessionVariables options
Unfortunately, using `attrsOf` is not possible since it results in too
eager evaluation. In particular, the

    home.sessionVariables = {
      FOO = "Hello";
      BAR = "${config.home.sessionVariables.FOO} World!";
    };

example will cause an infinite recursion.

This commit restores the option type of

- `home.sessionVariables`,
- `pam.sessionVariables`,
- `programs.bash.sessionVariables`, and
- `programs.zsh.sessionVariables`

to `attrs`. It also adds test cases for the above options to avoid
regressions.

Fixes #659
2019-04-27 01:07:09 +02:00
Robert Helgesson 6ebf14143a
systemd: add some basic tests 2019-03-24 15:52:30 +01:00
Robert Helgesson 989e636d98
ssh: add some basic tests 2019-03-19 23:00:17 +01:00
Wael M. Nasreddine 2093cf425f
tmux: general improvements and added options
See #575 for discussion.
2019-02-13 22:14:30 +01:00
Robert Helgesson a334a941c4
tests: bump to latest nmt version 2019-02-10 12:09:47 +01:00
Robert Helgesson 0590c2a4f6
mbsync: add basic test of result configuration 2019-01-31 02:08:40 +01:00
Robert Helgesson 45cadbd4f3
git: quote sendemail section header
This will allow, e.g., the character `@` in the email identity.

Also adds a test case.

Fixes #557
2019-01-29 18:28:55 +01:00
Robert Helgesson 7c04351a57
files: allow a wider range of source file names
In particular support source files whose name start with `.` or
contain characters not allowed in the nix store, such as spaces.

Also add some test cases for `home.file`.
2019-01-19 12:44:58 +01:00
Robert Helgesson 46f787950a
tests: bump nmt version 2019-01-19 12:41:45 +01:00
Robert Helgesson f6ec26075d
tests: simplify test names 2019-01-14 23:02:33 +01:00
Robert Helgesson c42206db02
i3: add test of keybinding merge logic 2019-01-14 22:50:11 +01:00
Robert Helgesson bb64012914
tests: bump nmt to latest 2019-01-14 22:48:59 +01:00
Robert Helgesson e150dd4a66
texlive: always require at least one extra package
Fixes #526
2019-01-09 02:09:23 +01:00
Robert Helgesson 6d56abcec1
tests: add initial test framework 2018-12-11 00:57:58 +01:00