Commit graph

415 commits

Author SHA1 Message Date
Robert Helgesson ded327b9fc
i3status: add news entry 2020-05-03 13:13:26 +02:00
Jonathan Ringer a6037a9eb8
pulseeffects: add module
Pulseeffects is an advanced mixer for PulseAudio.

PR #1182
2020-04-26 15:50:21 +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
Robert Helgesson 42e4eef749
Update documentation for release 20.03 2020-04-23 00:29:11 +02:00
dawidsowa b3bbc8b769
xdg-user-dirs: add user-dirs.conf
PR #1143
2020-04-22 00:52:39 +02:00
Jonas Heinrich f856da6690
mako: add module
PR #1113
2020-04-09 11:21:22 +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
Griffin Smith 5ff245790d
gtk: add bookmarks option
Add a new 'bookmarks' option, for managing `~/.config/gtk3/bookmarks`,
a list of URIs to display as bookmarks in the sidebar of GTK file
browsers.

PR #1129
2020-04-06 15:52:46 +02:00
Ruby Iris Juric 78a0bbb38b
picom: add module
Nixpkgs no longer packages compton, and instead packages picom, a
(mostly) compatible fork of compton, providing an alias from compton
to picom. Because some configuration options have been changed, and
all references to "compton" have been made deprecated and replaced
with "picom", 'services.compton' has been deprecated in favor of the
new 'services.picom'.

Resolves #878
PR #1101
2020-03-24 23:50:22 +01:00
Robert Helgesson 0f11a79e02
dconf: make settings have type gvariant
Closes #835, #1094, #1095
2020-03-21 01:02:41 +01:00
William Carroll 2cd168467e
keynav: add module
PR #1082
2020-03-17 22:59:15 +01:00
Robert Helgesson cc386e4b3b
firefox: prepare for updated sideloading behavior
Co-Authored-By: Cole Helbling <cole.e.helbling@outlook.com>
2020-03-15 19:48:07 +01: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 b36d3e0261
news: fix condition
The news entry for the new Fish functions functionality was
accidentally conditioned for people using zsh.
2020-03-07 14:33:13 +01:00
Erik Arvstedt efbe1383e6
nixos integration: add option 'useGlobalPkgs'
PR #1059
2020-03-07 14:25:00 +01:00
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
ivann 9bddef74df
types: create fontType option type 2020-02-23 11:18:59 +01:00
Robert Helgesson 45abf3d38a
Apply nixfmt on many files 2020-02-02 01:07:28 +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
arcnmx 244d795325
nixpkgs: add indirection to _module.args.pkgs
This allows pkgs to be overridden in such a way that `<nixpkgs>` is
never imported, allowing home-manager to be used in environments where
`NIX_PATH` is not set.

PR #993
2020-01-26 13:03:23 +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
0x6d6178 c8323a0bf1
xdg-user-dirs: fix typo in option name
Fixes #985
PR #987
2020-01-17 23:55:27 +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
Nikita Uvarov 149c0593ab
version: add 20.03 2019-10-28 22:08:51 +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
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
pacien e347e932af
xdg-mime-apps: add module 2019-09-15 17:21:42 +02:00
pacien aa5ba177cc
xdg-user-dirs: add module 2019-09-11 20:03:32 +02:00
Robert Helgesson a144c723a1
doc: surround name? with fancier characters 2019-09-01 21:28:40 +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 57925c50bf
nixpkgs: improve description formatting slightly 2019-08-21 20:20:08 +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
Tobias Happ 5c94538c7d
numlock: set RemainAfterExit for numlockx.service 2019-08-15 11:53:34 +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
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
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
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
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
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 1f4e9681f7
fontconfig: fix error on missing cachedir file
Fixes #699
2019-04-30 18:43:58 +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
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 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
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
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
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 e26ad2026c
gtk: use attrsOf instead of attrs 2019-04-03 00:09:46 +02:00
Tadeo Kondrak bc2b7d4f09
qt: use xdg.configHome instead of hard-coding 2019-03-27 22:40:12 +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 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
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
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
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
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 cc964b4609
gtk: remove option gtk.gtk3.waylandSupport 2018-12-24 17:26:34 +01:00
Robert Helgesson 370a84192e
gtk: make gtk.gtk2 and gtk.gtk3 not submodules 2018-12-24 17:26:34 +01:00
Robert Helgesson 4104ff2b6a
gtk: use dconf module for settings 2018-12-24 17:26:34 +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
Robert Helgesson 9b3122e92c
lib: copy module from NixOS
Importing the module directly from NixOS causes the documentation to
break, in particular the "Declared by" section.

Fixes #405
2018-09-27 21:01:13 +02:00
adisbladis f44d4a1d86
obs-studio: add module 2018-09-27 19:58:31 +02:00
gnidorah 33a2943e8c
gtk: add support for wayland 2018-09-26 21:32:43 +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
Matthieu Coudron 7a8d50a803
xdg: create $XDG_CACHE_HOME
Some programs fail silently (bash with HISTFILE for instance) when the
folder doesn't exist.
2018-08-20 20:37:26 +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
Malte Brandy c18b1328a5
Parametrize path to profile directory 2018-07-31 16:04:19 +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
Mario Rodas 092706eff8
nixpkgs: only pass pkgs_i686 argument on Linux
Nixpkgs added an assertion on pkgsi686Linux [1] to avoid evaluating it
pkgsi686Linux on non-Linux systems.

[1] ad20a4a1c3
2018-07-13 19:26:08 +02:00
LightDiscord e365943a70
awesome: add module 2018-07-07 17:49:11 +02:00
Robert Helgesson 86fcfc74da
nixpkgs: replace use of traceValIfNot
The `traceValIfNot` function is deprecated in Nixpkgs master. Instead
use `traceSeqN`.

Fixes #301
2018-07-04 19:56:13 +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 faf04b009b
qt: support GTK+ theming for Qt services 2018-06-03 17:26:47 +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 75c4075345
nixpkgs: expand description of nixpkgs.config and nixpkgs.overlays 2018-03-20 20:23:42 +01: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 d7755de116
pam: add option pam.sessionVariables 2018-01-07 17:52:13 +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 7876d533cf
gtk: fix erroneous variable reference 2017-11-24 22:25:36 +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
Robert Helgesson a977c79f9f
xdg: add option 'xdg.dataFile'
This allows creating files within the user's XDG data directory.
2017-11-11 00:30:53 +01:00
Robert Helgesson 549deb51d6
xdg: use fileType for xdg.configFile 2017-11-06 14:24:04 +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 82d6aa0c97
xdg: fix use of base path 2017-10-31 12:26:39 +01:00
Robert Helgesson 3a95ff7435
xdg: add news entry 2017-10-29 01:59:34 +02:00
Robert Helgesson d70715a635
use xdg.configFile for files in XDG config home 2017-10-29 01:59:34 +02:00
Robert Helgesson 54a9058ee0
xdg: add module
When enabled this module will cause Home Manager to manage the user
environment XDG variables. When disabled, then Home Manager will use
the XDG variables taken from the user environment.
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
Robert Helgesson 61042c7606
lib: use generators from Nixpkgs 2017-09-21 13:18:33 +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
Robert Helgesson d7a70c87cd
gtk: fix bug in condition 2017-01-17 18:16:45 +01:00
Robert Helgesson 30e30688b8
gtk: add module
Quite rough around the edges, though.
2017-01-17 00:50:18 +01:00
Robert Helgesson 5fbbbd1ea4
pam: add module
Also make it possible to set session variables using PAM rather than
Bash.
2017-01-16 23:54:45 +01:00