Commit graph

695 commits

Author SHA1 Message Date
Mario Rodas bb5c29107e git: add attributes support 2019-09-26 22:11:01 +09:00
Tobias Happ 3f45630180
xdg-mime-apps: add legacy mimeapps.list path
Although `.local/share/applications/mimeapps.list` is deprecated, this
file is still being read by some applications. To ensure compatibility
duplicate the file as recommended in
https://wiki.archlinux.org/index.php/XDG_MIME_Applications#mimeapps.list
2019-09-20 20:15:47 +02:00
Nazarii Bardiuk 51581b7e43
sxhkd: add service 2019-09-17 21:42:05 +02:00
Robert Helgesson b0544c8cde
mpd: allow path literal values in options
This allows specifying, for example, the music directory using path
literals without causing the directory to be copied to the Nix store.

Suggested-by: Silvan Mosberger <infinisil@icloud.com>
2019-09-16 21:43:53 +02:00
pacien e347e932af
xdg-mime-apps: add module 2019-09-15 17:21:42 +02:00
Robert Helgesson 0dfa1eef25
xsession: remove bashisms in start scripts
Fixes #836
2019-09-12 21:28:36 +02:00
pacien aa5ba177cc
xdg-user-dirs: add module 2019-09-11 20:03:32 +02:00
Bjarki Ágúst Guðmundsson 41f918499b
gpg: sane default for throw-keyids option
The [throw-keyids](https://www.gnupg.org/gph/en/manual/r2110.html)
option "hides the receiver of the encrypted data as a countermeasure
against traffic analysis." However, it also slows down decryption, and
even breaks some applications; see e.g.
https://github.com/open-keychain/open-keychain/issues/626

I think the sane default would be to leave it off, just as it is off
by default in gpg. The typical user will probably not need this level
of security, and will probably prefer a better user experience (faster
decryption and compatibility with a wider range of applications).

Closes #838
2019-09-11 19:30:26 +02:00
Bruno Bigras d3e316eec5
imapnotify: pkgs.mbsync -> pkgs.isync 2019-09-11 19:27:04 +02:00
Hugo Geoffroy 05d91c5f50
mpd: use systemd journal instead of syslog
MPD is using syslog for its logging output, while it could directly
log to systemd's journal, as this daemon is primarily used as a
systemd user service. This change makes MPD log to standard output,
which is captured by systemd.

See https://github.com/NixOS/nixpkgs/pull/57608, which does the same
thing to NixOS's MPD service.
2019-09-05 22:38:35 +02:00
Robert Helgesson d6b36f12ff
keyboard: make the model option optional
Also, actually use it in the call to setxkbmap.
2019-09-05 01:56:14 +02:00
Robert Helgesson 824d31a21c
keyboard: make layout and variant optional
Also default these options to `null` for state version ≥ 19.09.

Fixes #811

Suggested-by: Sean Marshallsay <srm.1708@gmail.com>
2019-09-05 01:56:06 +02:00
Robert Helgesson 698d0f0a44
polybar: restart service on failure 2019-09-03 23:51:23 +02:00
Alex Rice ec0459e139
rofi: string -> str 2019-09-03 01:25:24 +01:00
dawidsowa d5e73c39fc
mpv: add scripts option 2019-09-02 18:23:17 +02:00
Robert Helgesson a144c723a1
doc: surround name? with fancier characters 2019-09-01 21:28:40 +02:00
Robert Helgesson a28614e65d
git: deprecate extraConfig as string 2019-08-30 14:50:10 +02:00
Tobias Happ b6289f7022 vim: always add sensible plugin 2019-08-29 23:18:11 +02:00
Robert Helgesson 875eea1330
systemd: fix unit examples
Closes #823
2019-08-29 19:12:39 +02:00
Robert Helgesson 7c76ae1814
manual: add nmd as a generation dependency
This is to allow network-less rebuilding of a generation after a
garbage collection.

Fixes #819
2019-08-28 20:36:11 +02:00
Tobias Happ c142e5264d
neovim: add extraConfig and plugins options 2019-08-28 12:35:48 +02:00
Tobias Happ 5d7eabb93f
neovim: add finalPackage option as readOnly 2019-08-28 12:25:06 +02:00
Tobias Happ f1146a1fef
vim: allow packages to be passed as plugins
This change allows to pass custom packages into the `vim.plugins`
option.

Additionally this adds a deprecation warning and an error message if a
vim plugin is not present. This is an improvement because the user
gets instant feedback, when a plugin is not found.
2019-08-28 12:18:24 +02:00
Robert Helgesson 55b71223d4
Fix option defaultText when referencing packages
By using `literalExample` the documentation will show the option
default without surrounding quotes.
2019-08-28 00:14:22 +02:00
Robert Helgesson bfc28cacbe
random-background: disable creation of ~/.fehbg file 2019-08-26 20:07:07 +02:00
Michael Fellinger b2a787ca69
random-background: add option enableXinerama 2019-08-26 16:42:00 +02:00
Robert Helgesson eb1b86a5ec
Replace use of stdenv.shell by runtimeShell 2019-08-22 08:35:06 +02:00
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