1
0
mirror of https://github.com/nix-community/home-manager synced 2024-06-29 09:58:32 +02:00
Commit Graph

718 Commits

Author SHA1 Message Date
Robert Helgesson
eb0ccf7286
docs: use nmd for generating documentation
The nmd library is an external library for generating Nix-centric
documentation.
2019-08-21 20:35:59 +02:00
Robert Helgesson
35752e07fa
kakoune: add missing period at end of description 2019-08-21 20:34:43 +02:00
Robert Helgesson
57925c50bf
nixpkgs: improve description formatting slightly 2019-08-21 20:20:08 +02:00
Tobias Happ
0e871b490e
ssh: add localForwards option for matchBlocks 2019-08-20 12:11:00 +02:00
Robert Helgesson
ed4f66185f
Use types.port where applicable
This changes the type of all options that specify ports to
`types.port`. This type restricts values to between 0 and 65535.
2019-08-19 20:37:48 +02:00
leotaku
3d645c0ce1
kdeconnect: fix incorrect path to kdeconnectd 2019-08-18 23:35:53 +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
Tobias Happ
db0dfb4b08
dwm-status: add module 2019-08-18 16:23:31 +02:00
Robert Helgesson
5eed33ef08
emacs: document how to list available extra packages 2019-08-18 13:34:26 +02:00
pacien
31ae1bc2ff
alot: fix account extraConfig section 2019-08-18 12:00:38 +02:00
Robert Helgesson
6932e6330e
muchsync: add news entry 2019-08-17 14:25:15 +02:00
pacien
a124dae35a muchsync: add module 2019-08-17 20:08:11 +09:00
Tobias Happ
5203340b64 zsh: add envExtra option 2019-08-16 17:00:08 +09:00
Tobias Happ
ed0e40dee8 zsh: add initExtraBeforeCompInit config option
The new initExtraBeforeCompInit option enables the user to inject
commands in zshrc before compinit is executed.
2019-08-16 16:57:52 +09:00
Tobias Happ
8b759c24e6 bash: add logoutExtra option 2019-08-16 16:46:38 +09:00
paumr
1499b85ac6 alot: added send/draf_box to configuration file 2019-08-16 16:27:28 +09:00
Tobias Happ
5c94538c7d
numlock: set RemainAfterExit for numlockx.service 2019-08-15 11:53:34 +02:00
Tobias Happ
2eae9daae7
xsession: set RemainAfterExit for setxkbmap.service 2019-08-15 11:53:34 +02:00
Nikita Uvarov
7310cfc557
zsh: fix completion when oh-my-zsh is enabled
enableCompletion option not only calls compinit but also adds
nix-zsh-completions package to home.packages which should still happen
even if oh-my-zsh is enabled.

The double compinit call will still be eliminated by moving guarding condition
down to the compinit call itself.

Fixes #771.
2019-08-09 15:02:31 +02:00
Nikita Uvarov
42ad0effdd
zsh: create oh-my-zsh cache directory
Fixes #761.
2019-08-09 14:53:03 +02:00
paumr
bce63e4dff
msmtp: add account option tls.fingerprint 2019-08-08 14:12:34 +02:00
Robert Helgesson
9302523d34
modules: fix module order 2019-08-08 13:53:22 +02:00
adisbladis
a9ecef1fa9
hound: add module 2019-08-08 13:52:27 +02:00
Evan Stoll
e59b8b0c37
numlock: add module
This adds an option `xsession.numlock` that enable the Num Lock key
when starting a graphical session.

Fixes #651
2019-08-08 13:25:01 +02:00
paumr
3743e8995a
mbsync: fix use of certificatesFile
The `tls.certificatesFile` option may be set to a path but the
`CertificateFile` attribute should be a string.
2019-08-08 00:50:52 +02:00
Tobias Happ
4c9b40ca0e systemd-activate.rb: add start/stop/restart sockets 2019-08-07 23:12:30 +02:00
Robert Helgesson
d625186ce5
Remove use of network-online.target
This target is only available at the system level and has no effect on
user services.
2019-07-28 14:17:28 +02:00
Olli Helenius
caf3349f01 dconf: assume empty list value is a list of strings
Fixes #769.
2019-07-28 13:01:29 +03:00
Robert Helgesson
54de0e1d79
xdg: create cache directory using keep file
We can avoid the activation block by instead creating a hidden file in
the directory.
2019-07-26 23:23:51 +02:00
Robert Helgesson
056443ccbd
vscode: fix configuration path for Darwin
Fixes #737
2019-07-22 12:44:52 +02:00
Sebastian Zivota
7d68c46feb
kakoune: add module 2019-07-17 22:40:26 +02:00
Shanon McQuay
734128930f
skim: correctly name default options
skim uses SKIM_DEFAULT_OPTIONS rather than SKIM_DEFAULT_OPTS.
2019-07-17 21:53:30 +02:00
pacien
cc0cd538e6
taskwarrior-sync: add service module 2019-07-17 21:34:53 +02:00
Robert Helgesson
ca4f22be85
mbsync: use full path to mu in example 2019-07-17 10:02:35 +02:00
Robert Helgesson
c3520bfa52
mbsync: put extra config at the beginning
If it is at the end it will just end up applying to the last defined
section.

Fixes #748
2019-07-05 22:16:15 +02:00
Andreas Fehn
2029e104d4
xsuspender: write all options to config 2019-07-05 18:44:28 +02:00
Andreas Fehn
7c76f4a71f
xsuspender: correctly name default section 2019-07-05 18:44:28 +02:00
arcnmx
95382060eb
git: support nested section options
Closes #614
2019-07-04 16:51:28 +02:00
arcnmx
472d7731d6
git: support multiple values
Closes #614
2019-07-04 16:51:24 +02:00
Alexandre Héaumé
28f2dd612e
broot: add module 2019-07-02 11:28:31 +02:00
Robert Helgesson
8f7cd53204
getmail: restrict platform to Linux
Need to limit this module to Linux since it uses systemd.
2019-06-27 20:04:18 +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
Mats Rauhala
8243cc0a5d getmail: add module 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
Kai Wohlfahrt
f83c49baa3 gpg-agent: add sshcontrol configuration
This lets gpg-agent serve specific keys with authentication capability
as SSH keys
2019-06-18 13:37:19 +01:00
Jonas Holst Damtoft
cf0aad391c
emacs: fix merging of extraPackages and overrides
Because `extraPackages` and `overrides` expect functions as values it
has not been possible to perform merges. This adds suitable types for
these options that allow reasonable merging.
2019-06-10 22:56:47 +02:00
Judson
f82246171b
files: backup file collisions
When a configuration file would be written to an existing file, rather
than failing switch (and having the user have to move or delete those
files), move the files automatically to a new path.

Closes #585
2019-06-09 14:26:12 +02:00
Robert Helgesson
5b50eb18fc
network-manager-applet: fix indentation 2019-06-09 12:13:11 +02:00
Sebastián Estrella
29824a8cf6 tmux: Disable confirmation prompt 2019-06-05 13:05:10 +09:00
Jaka Hudoklin
0db26fc3ab
gpg: add module 2019-06-03 23:50:50 +02:00
Florian Klink
8991fe2e90
screen-locker: fix systemd unit
In particular, don't add trailing backslashes introduced by
`xautolockExtraOptions`. Systemd's unit file parser seems to have
gotten a bit stricter and with systemd 242, the trailing backslash
caused the next non-empty line to be ignored.

In that case, this was `[Section]`, so all subsequent settings were
mistakenly added to `[Service]`, causing them to be ignored entirely.

Simplify and fix this by using `concatStringsSep` to build a single
`ExecStart` line.
2019-06-02 23:29:37 +02:00
Tad Fisher
e25113bcf0
browserpass: fix host/policy link sources 2019-06-01 12:24:30 +02:00
Robert Helgesson
e1535d2bd8
vscode: add example for extensions option 2019-05-31 21:37:28 +02:00
Robert Helgesson
d5bf68d77d
xsuspender: limit module to Linux 2019-05-30 23:25:30 +02:00
Jaka Hudoklin
5b95fd0521
firefox: add profile options 2019-05-30 22:58:36 +02:00
Jaka Hudoklin
fcacba268d
xsuspender: add module 2019-05-30 19:53:10 +02:00
Richard Marko
d7eaeaf636
random-background: add option display
This option parameterizes the `--bg-*` argument for feh.
2019-05-30 13:40:15 +02:00
Robert Helgesson
d726afd9e4
imapnotify: specify notmuch configuration path 2019-05-19 01:08:06 +02:00
kalium
02a07f19a1
zsh: add autocd option 2019-05-17 09:39:26 +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
Tadeo Kondrak
8b15f18993
mpv: add module 2019-05-08 00:42:18 +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
Jos van Bakel
be4b100ae5
rsibreak: add module 2019-05-05 01:56:53 +02:00
Robert Helgesson
f99d4ba7c4
flameshot: fix service description 2019-05-01 13:13:38 +02:00
Robert Helgesson
1f4e9681f7
fontconfig: fix error on missing cachedir file
Fixes #699
2019-04-30 18:43:58 +02:00
Will Dietz
f56256f488
files: fix find invocation broken in c94eaa0e
Add parens to expression so the `-exec` includes files matching both.

Otherwise (before this change) the `-exec` is only invoked for
links (`-type l`):

    file or (link -> doexec)
      =>
    (file or link) -> doexec
2019-04-30 15:07:47 +02:00
Robert Helgesson
f18e2933d4
fontconfig: generate font cache files
Also deprecates the `fonts.fontconfig.enableProfileFonts` option. The
configuration is now always generated if `fonts.fontconfig.enable` is
set.

Fixes #520
2019-04-30 00:28:07 +02:00
Nick Hu
2f819d1647
imapnotify: add service 2019-04-29 00:05:02 +02:00
Mario Rodas
821df406c9
z-lua: add module 2019-04-28 23:57:31 +02:00
Robert Helgesson
c94eaa0e6c
files: replace unnecessary use of xargs 2019-04-27 13:48:57 +02:00
Robert Helgesson
a16439e38e
firefox: deprecate Google Talk and IcedTea options 2019-04-27 10:01: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 Hensing
c5f230e682
vscode.haskell: add module
- Haskell IDE Engine integration
- Syntax highlighting
2019-04-27 01:00:57 +02:00
Robert Helgesson
13ad532412
xscreensaver: add option settings 2019-04-22 23:44:46 +02:00
Robert Helgesson
8ecc311bcc
Update stable version to 19.03
Also prepares for 19.09.
2019-04-22 20:04:31 +02:00
hyperfekt
e3831d8ecc
alacritty: add module 2019-04-22 14:43:43 +02:00
Robert Helgesson
9c0536deda
emacs: prevent service restart on change
Fixes #668
2019-04-18 01:38:25 +02:00
Robert Helgesson
6b42bd7abf
systemd: support X-RestartIfChanged = false
Having this in the unit file will prevent the file from being
restarted if a change is detected. This is useful if data loss may
occur if the unit is suddenly restarted. For example, restarting the
Emacs service may result in the loss of unsaved open buffers.
2019-04-18 01:38:20 +02:00
Robert Helgesson
0d246aa435
systemd: escape unit names in systemctl commands 2019-04-18 01:37:59 +02:00
Benjamin Staffin
c5f35b7ff9
dconf: allow values to be floats
Technically dconf calls these "double" but nix floats ought to work.
2019-04-17 23:04:48 +02:00
Alex Ameen
ff602cb906
manual: add option manual.json.enable
Make it possible to install a JSON file containing the available Home
Manager options.
2019-04-15 22:43:46 +02:00
Olli Helenius
1806e5511e
skim: add module 2019-04-14 17:36:27 +02:00
ash lea
cb93316fed
browserpass: update app id 2019-04-14 11:40:37 +02:00
Nick Hu
a6f0fa90f7
email: add facility for email aliases
Also update the notmuch and alot modules to include support for email
aliases.
2019-04-12 21:26:46 +02:00
Robert Helgesson
30a16e3a87
polybar: change restart trigger to contain a string
The systemd unit type is a bit more strict now and needs an explicit
string in this position.
2019-04-12 17:56:14 +02:00
Robert Helgesson
3db46fa9bf
news: limit mpdris2 and xcape news to Linux
These modules are limited to Linux since they define systemd services.
2019-04-12 01:02:12 +02:00
Robert Helgesson
12cb82af91
systemd: make the unit option type more robust
This should allow more sensible merging behavior. In particular, with
this change it is possible to use, for example, `mkForce` for greater
control of merging.

Fixes #543
2019-04-12 01:02:12 +02:00
Nick Hu
d49b514aa6 make notmuch search.exclude_tags configurable 2019-04-11 23:28:36 +09:00
Robert Helgesson
b6e1d82685
home-environment: make home.keyboard optional
When set to `null` then the `xsession` module will not attempt to
manage the keyboard settings.
2019-04-11 01:09:27 +02:00
Nick Hu
6cd5c8fca5
alot: fix address book completion regex 2019-04-10 23:55:07 +02:00
Nick Hu
c48db4fbba
xcape: add service 2019-04-09 22:15:48 +02:00
Robert Helgesson
f8b03f5750
modules: register the base modules path
This is needed, for example, to support relative paths when disabling
modules.
2019-04-07 13:26:38 +02:00
arcnmx
2c07829be2
home-manager: use callPackage where appropriate 2019-04-06 18:48:29 +02:00
Wael M. Nasreddine
652c694244
programs.tmux: implement secureSocket 2019-04-04 17:14:29 -07:00
Olli Helenius
995fa3af36
qt: add option platformTheme
This deprecates `useGtkTheme=true` with the intention of replacing it
with the `platformTheme` selection.
2019-04-03 23:55:36 +02:00
Robert Helgesson
4323b35198
pam: use attrsOf instead of attrs 2019-04-03 00:09:56 +02:00
Robert Helgesson
fd50f5465f
zsh: use attrsOf instead of attrs 2019-04-03 00:09:55 +02:00
Robert Helgesson
13d2c470be
home-environment: use attrsOf instead of attrs 2019-04-03 00:09:55 +02:00
Robert Helgesson
b690a8be2f
bash: use attrsOf instead of attrs 2019-04-03 00:09:55 +02:00
Robert Helgesson
e85804efa2
feh: use attrsOf instead of attrs 2019-04-03 00:09:55 +02:00
Robert Helgesson
e26ad2026c
gtk: use attrsOf instead of attrs 2019-04-03 00:09:46 +02:00
Olli Helenius
03162970cd
gnome-terminal: add cursor and highlight color settings 2019-03-31 14:24:31 +02:00
Tadeo Kondrak
bc2b7d4f09
qt: use xdg.configHome instead of hard-coding 2019-03-27 22:40:12 +01:00
Robert Helgesson
f77d6b7a2d
taffybar: restart the service on failure 2019-03-26 18:05:44 +01:00
Olli Helenius
1fdb16866b
systemd: add support for session variables
Via environment.d(5).
2019-03-24 17:23:50 +01:00
Robert Helgesson
cf5dac9563
random-background: minor documentation improvements 2019-03-24 15:29:08 +01:00
Robert Helgesson
5d81cb6ac7
manual: use writeShellScriptBin 2019-03-21 00:39:54 +01:00
Robert Helgesson
41356ac267
polybar: use writeShellScriptBin 2019-03-21 00:39:36 +01:00
Robert Helgesson
86af599a18
firefox: make the extensions option visible
Also change the example to use the firefox-addons available on NUR.
2019-03-20 23:41:02 +01:00
Mario Rodas
95e36dfe74
lsd: add module 2019-03-20 00:07:49 +01:00
Mario Rodas
24b5f62090
bat: add module 2019-03-19 23:58:12 +01:00
Robert Helgesson
eec78fbd1e
ssh: support multiple identity files in a match block
Fixes #625
2019-03-19 22:35:13 +01:00
Robert Helgesson
70d4cf2cd9
Remove some use of mkDerivation
Instead use `runCommand`, which by default uses `stdenvNoCC` resulting
in a reduced dependency footprint.

Fixes #612
2019-03-18 23:09:54 +01:00
arcnmx
52692e299d
git: make userName and userEmail options optional 2019-03-17 20:46:00 +01:00
Robert Helgesson
267afa5a3b
firefox: add support for add-on packages
Since no official source of packages exist the option is hidden for
now. For adventurous people there is an overlay of a few selected
add-ons available at

    https://rycee.gitlab.io/nixpkgs-firefox-addons/overlay.tar.gz

This overlay is automatically built daily using the REST API available
on https://addons.mozilla.org/.
2019-03-11 00:55:32 +01:00
Robert Prije
0fa19ed555
gnome-terminal: add support for light/dark theme variants 2019-03-10 01:59:00 +01:00
Robert Helgesson
a09196c4ae
docs: add language attribute to program listings 2019-03-06 18:52:54 +01:00
Olli Helenius
848b8b983e
pam: enclose session variable values in quotes 2019-03-06 18:00:51 +01:00
Maximilian Bosch
465d08d99f
programs/zsh: properly escape shell aliases
Otherwise all aliases break that use single quotes inside.

Already fixed in the nixpkgs module in 1e211a70cbdaf230a18ea4cb67a959039d5c2ddb.
2019-02-28 14:10:14 +01:00
Peter Jones
f07510e2b6
mpdris2: add module 2019-02-24 01:32:34 +01:00
Matthieu Coudron
81dae2f88e
alot: support contact completion
Make choice of contact completion easier.
2019-02-20 00:55:39 +01:00
Douglas Wilson
74811679b7
systemd: sanitize unit derivation names
To allow a few special characters such as "@".

This is taken from

    c414e5bd08/nixos/modules/system/boot/systemd-lib.nix (L14)
2019-02-19 23:43:47 +01:00
Robert Helgesson
93f5fcae1e
msmtp: use <parameter> for CLI options in description 2019-02-17 23:25:42 +01:00
Robert Helgesson
92d4e3e75a
autorandr: remove unnecessary method attribute
I mistakenly added this before noticing that it was already defaulted
to "factory". Sorry!
2019-02-17 23:06:39 +01:00
Terje Larsen
03f1aea069
autorandr: add support for xrandr scale and dpi 2019-02-17 22:56:01 +01:00
Mario Rodas
6da88339f5
git: allow contents in git.includes 2019-02-17 22:28:15 +01:00
Robert Helgesson
e0e8d5061d
keychain: add news entry 2019-02-17 22:12:25 +01:00
Mario Rodas
62e73b17d2
keychain: add module 2019-02-17 22:07:24 +01:00
Robert Helgesson
ef168979bf
nixos module: support NixOS user packages install
When using the NixOS module we cannot guarantee that the Nix store
will be writable during startup. Installing the user packages through
`nix-env -i` will fail in these cases.

This commit adds a NixOS option `home-manager.useUserPackages` that,
when enabled, installs user packages through the NixOS

    users.users.<name?>.packages

option.

Note, when submodule support and external package install is enabled
then the installed packages are not available in `~/.nix-profile`. We
therefore set `home.profileDirectory` directly to the HM profile
packages.
2019-02-16 21:42:47 +01:00
Wael M. Nasreddine
2093cf425f
tmux: general improvements and added options
See #575 for discussion.
2019-02-13 22:14:30 +01:00
Olli Helenius
a3462daeb1
msmtp: use XDG config directory 2019-02-11 01:06:28 +01:00
Robert Helgesson
1cdb8abf30
git: add basic support for LFS
Fixes #542
2019-02-10 00:51:16 +01:00
Robert Helgesson
2f372ab4d6
Clean up support code for Home Manager as a submodule
This removes the `nixosSubmodule` option in favor of a new option
`submoduleSupport.enable`. This name better indicates that the
submodule mode applies to both NixOS and nix-darwin.
2019-02-10 00:44:55 +01:00
Jonas Holst Damtoft
0ca1bf3cfd
emacs: add service module 2019-02-09 15:28:11 +01:00
Matthieu Coudron
c18984c452
neovim: allow to override package
If you want to run a development version for instance, it is easier to
set neovim.package rather than work around the wrapping mechanism etc.
2019-02-04 21:52:01 +01:00
Robert Helgesson
445c0b1482
git: use attrsOf instead of attrs
This makes sure that values added to

    programs.git.aliases

or

    programs.git.extraConfig

are merged as expected.

Also add a few option examples.
2019-02-01 01:12:58 +01:00
Robert Helgesson
0590c2a4f6
mbsync: add basic test of result configuration 2019-01-31 02:08:40 +01:00
Nadrieril
81ec856a0f
mbsync: add some required assertions 2019-01-31 01:41:12 +01:00
Yurii Rashkovskii
2410bc603b
nixpkgs: fix installation on non-x86
On non-x86 architectures (for example, aarch64) the installation of
home-manager fails indicating that it is attempting to select i686
packages for Linux and those aren't available.

Solution: make the condition for choosing these packages stricter
2019-01-29 20:15:18 +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
Amarandus
02a5a678f6
irssi: add module
irssi is a cli IRC client.
2019-01-29 00:53:39 +01:00
Robert Helgesson
98f534e172
flameshot: add bars to systemd After
Fixes #544
2019-01-29 00:20:16 +01:00
Matthieu Coudron
a68c8cf5f1
git: generate identities from mail accounts 2019-01-29 00:13:21 +01:00
wedens
604fc92943
polybar: add /run/wrappers/bin to PATH
Without this the network module in polybar is unable to check
connection as it invokes 'ping' command directly.
2019-01-26 14:44:57 +01:00
Robert Helgesson
008d93928f
xembed-sni-proxy: add module 2019-01-26 14:20:46 +01:00
Jonas Holst Damtoft
601619660d
fish: use global for abbr
Makes fish use global scope for abbreviations.
This makes it so that they don't stick across config changes.
Before, an abbreviation would still exist even if removed from the config.
2019-01-23 21:19:23 +01:00
Robert Helgesson
59a4ac71f9
i3: replace use of types.string by types.str 2019-01-19 19:02:59 +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
Adam Washington
6a244b3a8d
matplotlib: add module 2019-01-18 01:23:36 +01:00
John Wiegley
3cf8b9ea86
ssh: add proxyJump option 2019-01-15 22:31:08 +01:00