Commit graph

345 commits

Author SHA1 Message Date
Cole Helbling
a11cf1decd
fish: allow arguments to functions
This allows the ability to provide arguments to a function, such as
`--on-event` in order to trigger a function on the
`fish_command_not_found` event, for example.

PR #1063
2020-03-07 12:51:37 +01:00
MmeQuignon
0a1ce53990
abook: add module
PR #1058
2020-03-04 19:58:05 +01:00
Alex Rice
02d6040003
sway: add module
PR #829
2020-02-26 22:37:15 +01:00
ivann
9ab0d2305c
kitty: add module
PR #1000
2020-02-23 11:28:53 +01:00
Matthieu Coudron
fba87f8998
neomutt: add module
PR #1002
2020-01-26 20:46:44 +01:00
Marius Bergmann
b4e8d9869f
grobi: add module
This adds a service module for [grobi](https://github.com/fd0/grobi),
which can be used to automatically configure monitors/outputs for Xorg
via RANDR.
2020-01-26 13:57:49 +01:00
Néfix Estrada
b270fcef2f
bspwm: add module
PR #362, #981

Co-authored-by: Vincent Breitmoser <look@my.amazin.horse>
2020-01-26 13:43:13 +01:00
Philipp Middendorf
3a3657b107
cbatticon: add module (#963) 2020-01-11 13:08:56 +01:00
Vojtěch Káně
bb5dea02b9
readline: add module
Add basic readline configuration (~/.inputrc) management.
2019-12-08 20:49:00 +01:00
Sebastian Ullrich
571989f564
xdg-mime: add module 2019-12-01 23:11:49 +01:00
pacien
94d183eaaa
unison: add module 2019-11-29 23:49:00 +01:00
pacien
9d09738e4d
password-store: add modules 2019-11-29 23:03:15 +01:00
Robert Helgesson
9e716025b6
lorri: restrict news entry to Linux 2019-11-24 18:53:44 +01:00
Kloenk
eee6ae33e8
spotifyd: add module 2019-11-24 18:52:52 +01:00
Tobias Happ
286dd9b308
lorri: add service 2019-11-17 20:36:27 +01:00
Nikita Uvarov
4505710565
zsh: fix history.path issues
- Default value is set to static '$HOME/.zsh_history' -- dotDir is not
prepended anymore
- $HOME is not prepended to the option value
- Ensure history path directory exists

Fixes #886, replaces #427.
2019-11-05 23:04:06 +01:00
Mario Rodas
05dabb7239
pazi: add module 2019-11-04 21:57:15 +01:00
Robert Helgesson
761b3d0c12
rtorrent: add news entry 2019-09-26 23:47:41 +02:00
Mario Rodas
7205d3b2d2
starship: add module 2019-09-26 23:19:39 +02:00
Nazarii Bardiuk
51581b7e43
sxhkd: add service 2019-09-17 21:42:05 +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
Tobias Happ
db0dfb4b08
dwm-status: add module 2019-08-18 16:23:31 +02:00
Robert Helgesson
6932e6330e
muchsync: add news entry 2019-08-17 14:25:15 +02:00
adisbladis
a9ecef1fa9
hound: add module 2019-08-08 13:52:27 +02:00
Sebastian Zivota
7d68c46feb
kakoune: add module 2019-07-17 22:40:26 +02:00
pacien
cc0cd538e6
taskwarrior-sync: add service module 2019-07-17 21:34:53 +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
Mats Rauhala
8243cc0a5d getmail: add module 2019-06-27 07:48:09 +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
Jaka Hudoklin
0db26fc3ab
gpg: add module 2019-06-03 23:50:50 +02:00
Robert Helgesson
d5bf68d77d
xsuspender: limit module to Linux 2019-05-30 23:25:30 +02:00
Jaka Hudoklin
fcacba268d
xsuspender: add module 2019-05-30 19:53:10 +02:00
Tadeo Kondrak
8b15f18993
mpv: add module 2019-05-08 00:42:18 +02:00
Jos van Bakel
be4b100ae5
rsibreak: add module 2019-05-05 01:56:53 +02:00
Robert Hensing
c5f230e682
vscode.haskell: add module
- Haskell IDE Engine integration
- Syntax highlighting
2019-04-27 01:00:57 +02:00
hyperfekt
e3831d8ecc
alacritty: add module 2019-04-22 14:43:43 +02:00
Olli Helenius
1806e5511e
skim: add module 2019-04-14 17:36:27 +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
c48db4fbba
xcape: add service 2019-04-09 22:15:48 +02: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
Peter Jones
f07510e2b6
mpdris2: add module 2019-02-24 01:32:34 +01:00
Robert Helgesson
e0e8d5061d
keychain: add news entry 2019-02-17 22:12:25 +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
Jonas Holst Damtoft
0ca1bf3cfd
emacs: add service module 2019-02-09 15:28:11 +01:00
Amarandus
02a5a678f6
irssi: add module
irssi is a cli IRC client.
2019-01-29 00:53:39 +01:00
Robert Helgesson
008d93928f
xembed-sni-proxy: add module 2019-01-26 14:20:46 +01:00
Adam Washington
6a244b3a8d
matplotlib: add module 2019-01-18 01:23:36 +01:00
Mario Rodas
7afefcf75d
opam: add module 2018-12-28 13:33:13 +01:00
Robert Helgesson
40b3443c8f
dconf: add some information of use under NixOS 2018-12-24 18:36:55 +01:00
Robert Helgesson
b2cc186d22
dconf: add module
This module allows unified configuration of dconf settings.
2018-12-24 17:26:34 +01:00
Robert Helgesson
218a8c4d90
modules: support conditional module inclusion
Also make use of this functionality for the `programs.chromium`
module.

See #501
2018-12-22 23:57:00 +01:00
Olli Helenius
dc72aa2305
jq: add module 2018-12-12 22:02:51 +01:00
Robert Helgesson
797fbbf826
beets: add enable option 2018-12-04 23:03:23 +01:00
hyperfekt
6ab6488e5a
vscode: add module 2018-11-26 00:01:01 +01:00
Manuel Bärenz
ffdbefe22c
nextcloud-client: add module
Adds the nextcloud-client as a service, simply copying the syntax from owncloud.client.
2018-11-25 23:13:13 +01:00
Robert Helgesson
59448d635c
version: add module 2018-11-24 17:27:59 +01:00
Will Fancher
a9a4fb641f
nix-darwin: add system module for nix-darwin 2018-11-20 00:22:53 +01:00
Ben Sima
061c7b633f
afew: add module 2018-11-18 23:47:45 +01:00
Matthieu Coudron
dacc07136c
astroid: add module
Astroid is a notmuch/gtk based MUA: https://github.com/astroidmail/astroid
2018-11-18 19:55:28 +01:00
Sam Stites
f4ebbcbf70
tmux: add module
This commit adds the tmux program to Home Manager.

In addition to configuring tmux, a user may specify tmux plugins from
Nixpkgs. These can be included in the list of `plugins` and can either
be a package (all tmux plugins live under `nixpkgs.tmuxPlugins.*`), or
an object which includes the plugin and an `extraConfig`, which will
be run immediately after sourcing the tmux plugin.

Finally, this commit introduces two nested programs which may be
enabled which depend on tmux: tmuxp and tmuxinator. These do not have
the ability to be configured, although this may be a future
contribution.
2018-11-14 00:08:39 +01:00
Robert Helgesson
0435d9c338
news: remove news item about removed vim options 2018-10-29 19:42:09 +01:00
Jonas Carpay
15a5f3278a
Remove tabSize and lineNumbers check from news item 2018-10-20 16:57:27 +02:00
Nikita Uvarov
c17f37857c
urxvt: add module 2018-10-20 11:35:39 +02:00
Matthieu Coudron
d9c5d3c868
alot: add module
Alot is a python mail user agent (MUA) built around the Notmuch mail
system.
2018-09-28 23:43:40 +02:00
adisbladis
f44d4a1d86
obs-studio: add module 2018-09-27 19:58:31 +02:00
Roman Volosatovs
0635423e73
go: add module 2018-09-21 00:11:25 +02:00
Mario Rodas
3f34bf4465
noti: add module 2018-09-20 21:26:55 +02:00
Adam Washington
d27bccdff1
zathura: add module
Add the zathura document viewer as a program option with support for
managing the zathurarc configuration file.
2018-09-18 23:57:36 +02:00
Minijackson
5ff03ce5ac
taskwarrior: add module 2018-09-18 23:31:37 +02:00
Matthieu Coudron
5eca556fe7
offlineimap: add module
OfflineIMAP is a Mail Retrieval Agent (MRA) like mbsync but written in
Python.
2018-08-30 18:57:35 +02:00
Anton Plotnikov
90bcaaf582
pasystray: add module 2018-08-22 23:17:47 +02:00
Matthieu Coudron
cfa06c3f38
msmtp: add module
msmtp is a simple mail transfer agent (MTA).
2018-08-21 00:22:51 +02:00
Robert Helgesson
6630cfbe16
chromium: only enable for the linux platform 2018-08-20 07:11:00 +02:00
Tad Fisher
dd25fbcb4b
chromium: add module 2018-08-19 22:46:30 +02:00
Tad Fisher
26342588ab
gpg-agent: add extraConfig option 2018-08-19 21:46:25 +02:00
Vincent Demeester
29191eb2c7
fish: add module
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-08-17 22:32:08 +02:00
Robert Helgesson
93ef6aefce
direnv: add module 2018-07-31 15:48:08 +02:00
Anton Plotnikov
2e9e1909da
status-notifier-watcher: add service 2018-07-31 15:33:57 +02:00
rembo10
d3871ed774
mpd: add module 2018-07-18 22:17:26 +02:00
LightDiscord
e365943a70
awesome: add module 2018-07-07 17:49:11 +02:00
Robert Helgesson
eecebbf186
notmuch: add module
Co-authored-by: Matthieu Coudron <mattator@gmail.com>
2018-07-01 18:44:53 +02:00
Robert Helgesson
8dc1737e39
mbsync: add module
Co-authored-by: Matthieu Coudron <mattator@gmail.com>
2018-07-01 18:44:53 +02:00
Robert Helgesson
34bb9b5766
email: add module
This adds a general module infrastructure for configuring email
accounts. The intent is to specify high level information such as IMAP
and SMTP hostnames and login information so that more specific program
and service modules do not have to duplicate options for specifying
accounts.

It is allowed for modules to inject further options within this
namespace where relevant. For example, an MUA may wish add an option
to add per-account filter rules.

Co-authored-by: Matthieu Coudron <mattator@gmail.com>
2018-07-01 18:06:09 +02:00
Mats Rauhala
4caa45b8bb
newsboat: add module 2018-06-09 11:36:45 +02:00
adisbladis
53f10f4d46
kdeconnect: add module 2018-06-05 14:58:54 +02:00
Robert Helgesson
b6da6569c4
qt: add module 2018-05-18 20:57:36 +02:00
Hamish Hutchings
e055e4a092
flameshot: add module 2018-05-03 17:21:03 +02:00
Peter Jones
f26cc3b957
mbsync: add module 2018-05-01 22:50:37 +02:00
Tad Fisher
6dc4f31ba1
git: add 'includes' option 2018-04-19 17:45:09 +02:00
Nikita Uvarov
f314ee3d6a
autorandr: add module 2018-04-19 10:41:52 +02:00
Robert Helgesson
4205c91609
ssh: move options to end of configuration file
This is needed to support overriding these options inside match
blocks. A new option `programs.ssh.extraOptionOverrides` has been
added to allow global overrides.
2018-03-25 08:51:20 +02:00
Robert Helgesson
fa7d63d9d1
fzf: add module 2018-03-07 22:44:29 +01:00
Tad Fisher
8fc8e158e2 unclutter: add module 2018-03-03 22:54:46 -08:00
Robert Helgesson
b47cc4bc66
qsyncthingtray: remove deprecated option 2018-02-26 22:30:28 +01:00
Robert Helgesson
4745c7a00d
pidgin: add module 2018-02-19 22:57:50 +01:00
Andrew Scott
f2265b10e4
rofi: add theme option
The preferred method of theming rofi is now to use "rasi" theme files.
This commit therefore downplays the colors option and introduces the
theme option.
2018-02-10 20:11:33 +01:00
Robert Helgesson
9ea353569a
Remove deprecated option home.sessionVariableSetter 2018-02-08 22:54:29 +01:00
Robert Helgesson
1bc59f7290
allow Home Manager to be used as a NixOS module
This is a NixOS module that is intended to be imported into a NixOS
system configuration. It allows the system users to be set up directly
from the system configuration.

The actual profile switch is performed by a oneshot systemd unit per
configured user that acts much like the regular `home-manager switch`
command.

With this implementation, the NixOS module does not work properly with
the `nixos-rebuild build-vm` command. This can be solved by using the
`users.users.<name?>.packages` option to install packages but this
does not work flawlessly with certain Nixpkgs packages. In particular,
for programs using the Qt libraries.
2018-02-07 20:50:01 +01:00
Christopher League
563a20fc82
xcursor: add module
This is a new module for configuring the X cursor theme.
2018-02-05 22:40:16 +01:00
Alistair Potts
91a98f919d
stalonetray: add module
Adds a service for the Stalonetray system tray.

Configured through a 'config' attribute set, which writes space
separated key value pairs on successive lines to `~/.stalonetrayrc`.
2018-02-03 10:44:37 +01:00
Alistair Potts
616dbd67f7
mercurial: add module
Very simple module for hg based on programs.git, and is intended to have
compatible options. For simple setups, a user should be able to write
something like:

    {...}:
    let vcsconfig = {
            enable = true;
            userName = "John Smith";
            userEmail = "js@example.com";
            ignores = [ "*.swp" "*~" ];
        };
    in
    {
        programs.git       = vcsconfig // {...extra git config...};
        programs.mercurial = vcsconfig // {...extra hg confg...};
    }

For this reason, the ignore options are `ignores` for `syntax: glob`
and `ignoresRegexp` for `syntax: regexp` so that simple glob ignores
can (very likely) be shared with a git config, despite regular
expressions being the default for mercurial.
2018-02-02 20:52:54 +01:00
Nikita Uvarov
a597c66afe
syncthing: merge qsyncthingtray into the module 2018-01-25 21:52:01 +01:00
André-Patrick Bubel
071f7aea82
qsyncthingtray: add module 2018-01-20 11:51:39 +01:00
Robert Helgesson
18159c85b9
home-environment: deprecate option home.sessionVariableSetter 2018-01-08 21:40:32 +01:00
Robert Helgesson
7dd09cecda
gtk: remove deprecated options 2017-12-23 12:46:02 +01:00
Cornelius Mika
8759a5a63e
systemd: add option to automatically start services 2017-12-11 18:25:49 +01:00
Robert Helgesson
6764c26954
files: remove mode option
This option was deprecated >1 month ago and is therefore removed as
per the corresponding news entry.
2017-12-11 15:14:45 +01:00
Gleb Peregud
aa1bf31bcb
parcellite: add module
This adds a Parcellite service. It has no configuration options, since
the app has its own mutable preferences dialog, which unconditionally
replaces `~/.config/parcellite/parcelliterc` when preferences are
saved.
2017-12-08 00:40:28 +01:00
Tad Fisher
7a5b9152e9
keybase, kbfs: add modules 2017-11-26 23:11:37 +01:00
Robert Helgesson
bcb82da88f
gtk: improve theme and font configuration
Specifically, allow the user to specify the package that provides the
theme or font.

Fixes #1.
2017-11-24 21:24:31 +01:00
Robert Helgesson
592fd61788
module/home-manager: remove modulesPath option
This option has been deprecated for a month and is removed according
to the news entry.
2017-11-24 13:51:21 +01:00
Robert Helgesson
64befb27eb
news: minor formatting fix 2017-11-20 13:58:04 +01:00
Nikita Uvarov
177565567e
i3: extend module
New options:
  i3.config.keycodebindings
  i3.config.window.commands
  i3.config.window.hideEdgeBorders
  i3.config.focus.mouseWarping
2017-11-20 11:50:20 +01:00
Nikita Uvarov
1946343d5b
i3: add notification option to startup submodule
Fixes https://github.com/rycee/home-manager/issues/129.
2017-11-15 15:43:05 +01:00
Matthieu Coudron
61a869a1f5
neovim: add module
This is a basic module that allows to configure different Neovim
providers than the system ones. Note, it does not generate any
`init.vim`.
2017-11-12 23:57:14 +01:00
Cornelius Mika
ccb291ce66
files: add option 'executable'
This also deprecates the `home.file.<name?>.mode` option, which is
misleading because the Nix store only allows modes 'r--' and 'r-x'.
2017-11-06 14:24:04 +01:00
Nikita Uvarov
467b774d13
i3: add module 2017-10-31 16:10:42 +01:00
Robert Helgesson
78a1424582
xsession: remove xsession.windowManager option
This removes the deprecated use of `xsession.windowManager` as a
string.

This commit also adjusts the xmonad module to become a full module.
I.e., the backwards compatibility hack was removed.
2017-10-31 14:05:54 +01:00
Robert Helgesson
3a95ff7435
xdg: add news entry 2017-10-29 01:59:34 +02:00
Robert Helgesson
7417d8e86e
nixpkgs: add module 2017-10-24 01:29:35 +02:00
Robert Helgesson
bf3a8c6383
home-manager: point <home-manager> to project root
Before this path would point to the modules path. Using the project
root instead makes it possible to set `<home-manager>` to point to a
downloadable archive of Home Manager. This should make it
significantly easier to install and keep Home Manager up to date.

To match this change we also deprecate the Home Manager option

    programs.home-manager.modulesPath

and instead ask users to use

    programs.home-manager.path
2017-10-24 01:14:22 +02:00
Robert Helgesson
30b9d7f00e
Use only tools from Nixpkgs in activation script
Note, we still pull in the user's `PATH` in case the user has defined
their own activation blocks that depend on additional tools.
Eventually this will be deprecated and removed.

See #99.
2017-10-20 19:04:33 +02:00
Robert Helgesson
c144580c98
xsession: warn about windowManager option removal 2017-10-19 11:45:04 +02:00
Robert Helgesson
3632478b8d
man: add module 2017-10-15 16:01:41 +02:00
Nikita Uvarov
691eea9b45
zsh: add sessionVariables option 2017-10-12 14:14:06 +02:00
Robert Helgesson
3f430627df
fontconfig: add module 2017-10-10 20:29:22 +02:00
Nikita Uvarov
469caa1a14
polybar: add module 2017-10-07 12:40:08 +02:00
Robert Helgesson
9c859d2655
xmonad: add module
Adapted from #78 and originally authored by Infinisil.
2017-10-04 20:36:31 +02:00
Robert Helgesson
e4c359d8b9
udiskie: add a few configuration options
The new options allow some control over automounting, notifications,
and the tray icon.

This commit also changes the defaults to automatically mount new
devices, udiskie was previously told not to automount. The change in
behavior is to closer match the default options.
2017-10-02 13:25:31 +02:00
Robert Helgesson
aa974c0dc3
vim: add option programs.vim.settings
This option gathers basic Vim options into a single place. The idea is
to allow many options without making the Home Manager documentation
too verbose.

This also deprecates the options `programs.vim.lineNumbers` and
`programs.vim.tabSize`.

Fixes #69.
2017-09-30 13:30:42 +02:00
Robert Helgesson
23d3539fcb
xsession: deprecate xsession.windowManager
The intention is for the `xsession.windowManager` option to be
available for full modules in the future. The option
`xsession.windowManager.command` should now be used to specify the
window manager startup command.
2017-09-30 12:48:47 +02:00
Nikita Uvarov
e9deaf2ca5
rofi: add module 2017-09-28 15:39:25 +02:00
Nikita Uvarov
393274d142
command-not-found: add module 2017-09-27 09:49:32 +02:00
Robert Helgesson
a8e08d14bb
Mark rycee as maintainer for a bunch of modules 2017-09-26 23:40:31 +02:00
Nikita Uvarov
0f096f9ad4
git: change extraConfig from lines to attrs 2017-09-22 23:32:38 +02:00
Nikita Uvarov
3e4f7228a0
screen-locker: add module 2017-09-20 17:16:21 +02:00
Nikita Uvarov
aa69598b57
compton: add module 2017-09-13 14:40:30 +02:00
Robert Helgesson
f47084968d
news: minor cleanup
This puts entries in chronological order and adds a comment describing
how to get a suitable time stamp.
2017-09-12 18:08:44 +02:00
Nikita Uvarov
6a8e8e92a7
blueman-applet: add module 2017-09-12 16:44:16 +02:00
Nikita Uvarov
379e2c694b
zsh: move aliases definitions after initExtra
Same motivation as in https://github.com/NixOS/nixpkgs/pull/28378.
zsh.initExtra parameter can be used by external modules which can
redefine user aliases. This change will give user-defined aliases
the highest priority.
2017-09-12 15:21:38 +02:00
Robin Stumm
258bc85b9c
zsh: add plugins submodule
To pass compinit security checks,
plugins are liked into ~/zsh/plugins folder.
This also solves issues with a slow start up,
see https://github.com/rycee/home-manager/pull/56#issuecomment-328057513.
2017-09-12 14:42:38 +02:00
Robert Helgesson
ab0338f6ae
news: add module
This new module adds a "news" feature to Home Manager. See #52.

Many thanks to @nonsequitur and @uvNikita for suggestions and
improvements.
2017-09-05 11:36:33 +02:00