Commit graph

442 commits

Author SHA1 Message Date
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
Minijackson 9a3b1ec222
screen-locker: Add extraOptions for xss-lock and xautolock 2018-05-01 22:40:32 +02:00
Tad Fisher 6dc4f31ba1
git: add 'includes' option 2018-04-19 17:45:09 +02:00
Silvan Mosberger d294aa4356 zsh: only source plugin file if it exists
This allows adding plugins to fpath without sourcing anything
2018-04-19 16:43:03 +02:00
Nikita Uvarov f314ee3d6a
autorandr: add module 2018-04-19 10:41:52 +02:00
Tad Fisher 581ad6fc29
kbfs: fix systemd service PATH 2018-04-18 19:01:57 +02:00
Anton Plotnikov 8ff7d934b2
Add blur options to compton 2018-04-16 08:50:28 +02:00
Anton Plotnikov 5bdebf5ab0
Add opacity-rules to compton 2018-04-16 08:50:28 +02:00
Guthrie McAfee Armstrong 96250b7ad3
Fix typo: compton.shadowOffsets description 2018-04-16 08:45:48 +02:00
Lenz Weber 7c9278bd92 xresources: add option extraConfig 2018-03-26 21:10:32 +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
Gleb Peregud f8398339a3
fzf: add enableZshIntegration option
When enabled this will extend user's `$HOME/.zshrc` with sourcing of fzf's
completion and key-bindings integration libraries.
2018-03-14 17:37:39 +01:00
Gleb Peregud 9bf9e7ac5c
gpg-agent: add enableExtraSocket and verbose options.
This option enables a GPG Agent restricted socket (aka "extra-socket"), which
can be used to forward GPG Agent over SSH.

Additionally `verbose` option enables verbose output of an `gpg-agent.service`
unit for easier debugging.

See: https://wiki.gnupg.org/AgentForwarding
2018-03-13 22:36:30 +01:00
Robert Helgesson 567b21b1d6
activation-init: sanity check oldGenNum and oldGenPath
Something is terribly wrong if one is set but not the other so error
out with a message if that happens.
2018-03-13 20:49:45 +01:00
Robert Helgesson fa7d63d9d1
fzf: add module 2018-03-07 22:44:29 +01:00
Robert Helgesson 46a94cce56
texlive: add option programs.texlive.package
This read-only option will hold a reference to the customized texlive
package.
2018-03-05 19:05:30 +01:00
Robert Helgesson bc50202d0d
gpg-agent: do updatestartuptty only when SSH is enabled
Inspired by #163.
2018-03-04 22:20:35 +01:00
Tad Fisher 8fc8e158e2 unclutter: add module 2018-03-03 22:54:46 -08:00
Robert Helgesson fbff38de33
xscreensaver: install the xscreensaver package
This is needed to make the xscreensaver tools available.
2018-03-01 23:21:45 +01:00
Robert Helgesson 19b4002f25
home-environment: use nix-env from PATH
It is safest to use the system install of Nix since that will be
compatible with the running nix-daemon and/or databases.

Also add a printout of the used Nix version in the activation script
when running in verbose mode.

Fixes #218.
2018-02-27 20:31:03 +01:00
Robert Helgesson b47cc4bc66
qsyncthingtray: remove deprecated option 2018-02-26 22:30:28 +01:00
Robert Helgesson e307ceeee7
systemd: replace use of who command
Curiously the `who` command sometimes does not list logged-in users,
resulting in systemd not being reloaded. Instead we use

    systemctl --user is-system-running

to more directly detect whether systemd is running.
2018-02-20 22:04:29 +01:00
Robert Helgesson 4745c7a00d
pidgin: add module 2018-02-19 22:57:50 +01:00
Nikita Uvarov 05ad0c9e06
i3: escape ${} in bars.command example 2018-02-19 20:17:33 +01:00
Matthieu Coudron 6d7b5c9513 i3: don't evaluate "command" example
else it attempts to build i3-gaps and fails on darwin see
https://github.com/rycee/home-manager/pull/214#issuecomment-366594833
2018-02-19 16:28:30 +09:00
Nikita Uvarov de001e05da
i3: add missing bar options
New options are: id, commmand, workspaceNumbers, colors.
Fixes #210.
2018-02-18 20:58:52 +01:00
Matthieu Coudron be60600a47 neovim: add 'configure' flag
so that we have the same options as in nixpkgs.
2018-02-19 07:41:24 +09: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
Nikita Uvarov afa865587e
zsh: move env variables setting before oh-my-zsh
Fixes #207.
2018-02-10 19:23:10 +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
Mogria 6833f96c14
rofi: add options to for location, xoffset & yoffset 2018-02-03 22:07:53 +01:00
Nikita Uvarov 2304c145f3
zsh: add system packages' completion path to fpath 2018-02-03 21:57:44 +01:00
Nikita Uvarov fa6f697dbb
zsh: move session variables export to zshrc
Unlike .zshenv, .zshrc file is sourced only by interactive shells.
2018-02-03 21:16:00 +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
Robert Helgesson 6fc0fd315c
syncthing: allow enabling tray independently 2018-02-01 06:59:22 +01:00
Nikita Uvarov 8b77f1db2c
syncthing: start tray service after bars
The QSyncthingTray service requires running tray providers such as
polybar and taffybar.
2018-01-27 17:18:39 +01:00
Nikita Uvarov a597c66afe
syncthing: merge qsyncthingtray into the module 2018-01-25 21:52:01 +01:00
Nadrieril 38020d9068
redshift: add option to start redshift tray applet 2018-01-22 19:09:13 +01:00
Nikita Uvarov 1b0a5eb54a
polybar: fix the case when config value is a path
Polybar treats 'include-file' property differently.
In particular, its value can't be enclosed in
double quotes. Fixes #185.
2018-01-21 21:01:26 +01:00
André-Patrick Bubel 071f7aea82
qsyncthingtray: add module 2018-01-20 11:51:39 +01:00
Robert Helgesson 32b3f7f2d2
ssh: allow disabling compression in host block
Fixes #181.
2018-01-14 22:08:31 +01:00
Robert Helgesson 576217d33a
gpg-agent: use gpgconf to set SSH socket path
Inspired by #163.
2018-01-14 15:58:59 +01:00
John Wiegley b8b595c6b2
ssh: add a few more options 2018-01-13 12:47:30 +01:00
Nikita Uvarov a93445f3fe
zsh: add history.save option 2018-01-13 11:38:39 +01:00
Nikita Uvarov dbcb3dd1ae
zsh: fix HISTSIZE and HISTFILE configuration
HISTSIZE and HISTFILE should be set in ~/.zshrc and before
sourcing oh-my-zsh since otherwise it will be overridden.
Fixes #177.
2018-01-13 11:38:39 +01:00
Nadrieril d6ab6ee370
ssh: add extraConfig option for non-standard options 2018-01-10 22:24:03 +01:00
John Wiegley c9294e30d9
bash: add option historyFile 2018-01-09 22:34:20 +01:00
Robert Helgesson d7715f71ad
eclipse: add option enableLombok 2018-01-09 22:03:13 +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 7631921366
zsh: source session variables script
This replaces the explicit set within the Z shell `zshenv` file.
2018-01-07 17:52:13 +01:00
Robert Helgesson 803abb58f9
bash: source session variables script
This replaces the explicit set within the Bash profile file.
2018-01-07 17:52:13 +01:00
Robert Helgesson a3250dfac7
xsession: source session variables script 2018-01-07 17:52:13 +01:00
Robert Helgesson e624b9aa6a
home-environment: install hm-session-vars.sh file
This is a file containing all session variables exported using a
Bourne-compatible syntax.
2018-01-07 17:52:13 +01:00
Robert Helgesson 2fc1b9b5e0
zsh: use shell library 2018-01-07 17:52:12 +01:00
Robert Helgesson 026375da49
bash: use shell library 2018-01-07 17:51:51 +01:00
Robert Helgesson 58a629b02e
lib/shell: add library of convenience functions
This library holds a few convenience functions for generating shell
code.
2018-01-07 16:59:22 +01:00
Robert Helgesson df6590abfc
home-environment: describe session variable values a bit 2018-01-07 16:59:22 +01:00
Robert Helgesson 33af9948e5
home-environment: describe session variable trickyness 2018-01-07 16:59:22 +01:00
Robert Helgesson 8ab6298f30
bash: do not export HIST* variables
These are interpreted by the shell itself and it does not make sense
to export them to sub-processes.
2018-01-07 16:54:29 +01:00
Robert Helgesson 78c308c835
bash: add option bashrcExtra
This variable adds some extra flexibility in constructing the
`~/.bashrc` file. Currently the option is hidden from public
documentation since the option name is provisional.
2018-01-07 15:15:32 +01:00
Robert Helgesson 8a2bf21cee
bash: reword option descriptions 2018-01-07 15:04:57 +01:00
Robert Helgesson 59f44c1189
home-environment: run activation script in $HOME
This avoids issues when starting the activation script somewhere
inaccessible.
2018-01-05 08:09:18 +01:00
Robert Helgesson 02219dcd79
home-environment: minor code simplification 2018-01-05 08:05:53 +01:00
Robert Helgesson f0d207f380
Add dag library to config.lib
Also replace all imports of `dag.nix` by the entry in `config.lib`.
2017-12-26 17:27:21 +01:00
Robert Helgesson 7dd09cecda
gtk: remove deprecated options 2017-12-23 12:46:02 +01:00
Robert Helgesson e75b68e391
home-environment: make username and home directory writable
In certain cases it makes sense to override the target username and
home directory. In particular, if you're building a configuration for
a remote profile.
2017-12-13 16:31:35 +01:00
Silvan Mosberger 8d360c5a57
systemd: remove filename hack 2017-12-12 18:05:04 +01:00
Cornelius Mika f6900f0689
files: improve 'target not in $HOME' check
Check for prefix instead of inclusion.
2017-12-12 17:46:48 +01:00
Cornelius Mika 8759a5a63e
systemd: add option to automatically start services 2017-12-11 18:25:49 +01:00
Cornelius Mika 52bdbc42bb
systemd: move activation script to separate file
This makes the following commit more readable.
2017-12-11 18:08:33 +01:00
Robert Helgesson 28e00b68fd
home-environment: optionally empty PATH in activation
This adds the option `home.emptyActivationPath` that, when enabled,
will cause the activation script to ignore the calling user's `PATH`.
The option is disabled by default to match current behavior but the
intent is to change this in the future to reduce risk of accidental
dependencies of the environment.
2017-12-11 17:03:34 +01:00
Robert Helgesson 2ff09158f3
systemd: fix systemctl command
The command's path should be taken from the configuration, not be
assumed to be in `PATH`.
2017-12-11 16:58:50 +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
Robert Helgesson 040159c02f
modules: fix sorting 2017-12-11 13:51:22 +01:00
Robert Helgesson 61c6c83de4
modules: do not import modules
The `evalModules` function is smart enough to import modules and will
then also use correct file names.
2017-12-11 13:48:46 +01:00
Silvan Mosberger 0be32c9d42
xmonad: make package lower priority
This avoids a conflict for when the user has an xmonad package
installed through `haskellPackages.ghcWithPackages`, which is
necessary for wanting to load the xmonad config with ghc.
2017-12-08 11:48:05 +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
Roman Volosatovs c023b0532a
gpg-agent: add missing options 2017-12-02 19:44:53 +01:00
Silvan Mosberger f8aaba6704
lib: add module 2017-12-02 18:11:53 +01:00
Robert Helgesson a1e36a9a37
xmonad: install xmonad command to profile
Fixes #153.
2017-11-29 23:40:43 +01:00
Tad Fisher 11da41e106
kbfs: add binaries to user profile
Add the binaries produced by 'pkgs.kbfs' to the profile, so that
the git-remote-keybase helper can work automatically with
'keybase://' remotes.
2017-11-29 23:35:50 +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 e99de88c5c
modules core: move modules list to own file
This is to simplify use of Home Manager as a NixOS module.
2017-11-24 21:58:16 +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
Florian Klink 3c875267af
i3: config.modes.resize: add Return to defaults 2017-11-21 09:14:13 +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 8045e56df2
i3: fix config.gaps.smartBorders default value 2017-11-17 09:43:48 +01:00
Nicolò Balzarotti 206a4e17b5
i3: fix small formatting error (missing space) 2017-11-17 09:31:37 +01:00
Florian Klink 2785bf9cb2
i3: correct example for config.floating.criteria
The parameter accepts a listOf criteriaModule
(which is types.attrs, not types.string)
2017-11-17 09:27:23 +01:00
Robert Helgesson bc2f2ad546
systemd: honor RefuseManualStart and RefuseManualStop
Fixes https://github.com/rycee/home-manager/issues/140
2017-11-16 15:37:53 +01:00
Robert Helgesson 4fce730326
files: log when creating home file links 2017-11-15 18:31:04 +01:00
Robert Helgesson 9206f363ff
files: fix order of activation actions
Specifically, move the cleanup phase to before we switch over the
generation links in `gcroots` and `profiles`.

Fixes https://github.com/rycee/home-manager/issues/134
2017-11-15 18:26:42 +01:00
Robert Helgesson a36989a860
gnome-terminal: remove commented code 2017-11-15 17:02:19 +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
Robert Helgesson 7ca68c6492
emacs: minor cleanup of extra packages option 2017-11-13 00:03:49 +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
Florian Klink c718951e97
git: add option 'programs.git.ignores'
This allows the global Git ignores to be configured.
2017-11-12 14:22:59 +01:00
Florian Klink 356c0bf751
git: use XDG config directory 2017-11-12 13:16:02 +01:00
Robert Helgesson 7a9c873093
files: add special handling of systemd files
Unfortunately systemd derives nonsensical unit names when the unit
file is a link to a link to a file. This commit ensures that any file
whose target path matches the pattern `*/systemd/user/*` will be
reachable with only one link hop.

This also reverts f52ec0df7c, which
contained a temporary fix. This commit is an improvements in that it
is more explicit and also handles unit files given directly as a home
file source.
2017-11-12 00:56:34 +01:00
Robert Helgesson d7537777c3
files: improve keyword for inheriting executable bit 2017-11-12 00:13:29 +01:00
Robert Helgesson 145aefc9d1
files: simplify cleanup script slightly
The cleanup script now takes relative paths as arguments, not absolute
paths into the old generation. This uses a GNU specific feature of
find.
2017-11-11 14:21:11 +01:00
Robert Helgesson 2b2e20da24
dunst: use xdg.dataFile for D-Bus service file 2017-11-11 00:31:44 +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 f52ec0df7c
systemd: force copying of unit files
This is done by exploiting the fact that home files will be copied if
the executable bit of the source file and the target file is
different. This should be considered a hack until some nicer solution
is found.
2017-11-09 17:14:37 +01:00
Robert Helgesson 54043df8fb
files: support recursive linking of directory 2017-11-07 17:18:00 +01:00
Robert Helgesson fad1e108d8
dunst: add option services.dunst.iconTheme
Fixes #119
2017-11-07 17:13:51 +01:00
Robert Helgesson 549deb51d6
xdg: use fileType for xdg.configFile 2017-11-06 14:24:04 +01:00
Robert Helgesson 4f842d9f1b
files: extract type of home.file into own file 2017-11-06 14:24:04 +01:00
Cornelius Mika 9627fe6be6
files: link home files instead of copying
Only copy files that need their execute bit changed or use the
deprecated `mode` option.
2017-11-06 14:24:04 +01:00
Cornelius Mika b8ddb11796
use buildCommand for single phase builds 2017-11-06 14:24:04 +01:00
Cornelius Mika f04cc227a6
home-environment: clean up activation script creation 2017-11-06 14:24:04 +01:00
Cornelius Mika 811bc1b8e5
files: extract common variable
Also improve the pattern used to determine whether a symlink target
points to a Home Manager file path.
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
Cornelius Mika 676f5c4b31 files: allow arbitrary paths as home file names
By sanitizing the home file name in the derivation name, the home file
name is no longer exposed to the naming restrictions for nix store
paths.

For example, it is now possible to define home files with spaces in
their names without providing a target or source attribute.
2017-11-06 10:34:45 +01:00
Anton Strömkvist b4f5b5556f
zsh: Add options for remaining config files
`profileExtra`, `loginExtra` and `logoutExtra` for `zprofile`,
`zlogin`, and `zlogout` respectively
2017-11-02 12:53:43 +01:00
Robert Helgesson bfb5a678d2
modules/home-manager: add warning about modulesPath 2017-11-02 10:32:25 +01:00
Robert Helgesson d2572315ca
i3: use XDG configuration directory
Fixes #111.
2017-11-01 09:51:18 +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
Nikita Uvarov 1213578eb7
zsh: turn fpath into a set
Forcing fpath to contain unique values increases startup speed by
eliminating extra work of processing duplicated folders.
In addition, it increases startup time when zsh is enabled in both
system and home configuration due to having the same fpath value
between different compinit calls.
Fixes https://github.com/rycee/home-manager/issues/108.
2017-10-30 13:53:40 +01:00
Ruben Maher 268d027770
modules/home-manager: fix syntax error
Fixes the error

    error: syntax error, unexpected $undefined, expecting IND_STR or
    DOLLAR_CURLY or IND_STRING_CLOSE, at
    .../home-manager/modules/programs/home-manager.nix:70:47
2017-10-30 10:47:16 +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 a4c0fead1f
files: be less verbose when linking a directory 2017-10-29 01:21:40 +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 3346c7f455
xsession: prepare for session in ~/.xprofile
This works around the way NixOS starts up the systemd graphical
session target.
2017-10-21 14:37:30 +02:00
pasqui23 b78b2b6b35
firefox: add enableIcedTea option 2017-10-21 12:09:39 +02:00
Silvan Mosberger 0f43d5df6a
home-environment: add extraBuilderCommands option 2017-10-21 00:22:05 +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 b9f49cee45
home-environment: use makeBinPath for activation PATH 2017-10-19 22:44:02 +02:00
Robert Helgesson c144580c98
xsession: warn about windowManager option removal 2017-10-19 11:45:04 +02:00
Robert Helgesson 335cffe9a9
man: install man, not man-db
This may help with installing on Darwin.
2017-10-18 00:33:31 +02:00
Silvan Mosberger d81276607c
files: support absolute home directory path 2017-10-15 17:15:16 +02:00
Silvan Mosberger 3bc3b34d97
home-environment: add username and homeDirectory options 2017-10-15 17:15:16 +02:00
Silvan Mosberger f0a1d69f50
Separate home files module from home-environment.nix 2017-10-15 17:14:32 +02:00
Robert Helgesson 0672936134
info: add "info" to extra outputs to install 2017-10-15 16:03:35 +02:00
Robert Helgesson 3632478b8d
man: add module 2017-10-15 16:01:41 +02:00
Robert Helgesson c07fa70d58
home-environment: add option home.extraOutputsToInstall 2017-10-15 15:58:34 +02:00
Nikita Uvarov ee7f2413ed
zsh: use new option to set internal session vars 2017-10-13 16:34:02 +02:00
Robert Helgesson 12ebf21be5
bash: add sessionVariables option 2017-10-12 15:06:51 +02:00
Nikita Uvarov 691eea9b45
zsh: add sessionVariables option 2017-10-12 14:14:06 +02:00
Nikita Uvarov 7e6f3364bc
blueman-applet: add note about required system service 2017-10-11 13:05:47 +02:00
Robert Helgesson 3f430627df
fontconfig: add module 2017-10-10 20:29:22 +02:00
Nikita Uvarov 3160c03843
dunst: implement settings parameter 2017-10-09 14:51:07 +02:00
Nikita Uvarov 420a3f4a01
vim: add more vim settings
New settings: copyindent, hidden, ignorecase, modeline, smartcase.
2017-10-09 14:39:56 +02:00
Nikita Uvarov 9eb48312c7
polybar: enclose strings in double quotes
This fixes the case when there are trailing spaces in
string values which can be used for elements padding.
2017-10-09 14:21:43 +02:00
Nikita Uvarov 469caa1a14
polybar: add module 2017-10-07 12:40:08 +02:00
Robert Helgesson 3aca8a938c
gpg-agent: use full path to gpg-connect-agent 2017-10-05 19:54:09 +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
Nikita Uvarov 52256d7a73
rofi: add fullscreen option 2017-09-30 14:14:07 +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
Robert Helgesson bcff7274f4
vim, zsh: use DocBook links in description 2017-09-30 12:10:52 +02:00
Nikita Uvarov e9deaf2ca5
rofi: add module 2017-09-28 15:39:25 +02:00
Linus Heckemann 34428fc709
Add overlay and instructions for using it 2017-09-27 13:27:40 +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
Silvan Mosberger bf9b9026d9
compton: extend module 2017-09-26 14:06:13 +02:00
Nikita Uvarov 0f096f9ad4
git: change extraConfig from lines to attrs 2017-09-22 23:32:38 +02:00
Silvan Mosberger db55e596d2
zsh: refine module
- fix part of zsh config being built even though cfg.enable is false
- fix .zshenv sourcing when ZDOTDIR already set

and some other minor adjustments
2017-09-22 23:27:49 +02:00
Robert Helgesson 742d1889c5
lib: make dag.nix take lib as argument 2017-09-21 13:19:29 +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
Robert Helgesson 76e0e09aca
emacs: allow custom Emacs package 2017-09-19 23:38:18 +02:00
Silvan Mosberger e4deffcbe8
vim: add package option
This adds a readonly package option which will be set to the resulting
configured vim package, so it can be refered to by other configuration.
An example would be home.sessionVariables.EDITOR =
config.programs.vim.package + "/bin/vim".
2017-09-18 09:22:01 +02:00
Silvan Mosberger de5f902487
zsh: add custom dotDir parameter 2017-09-16 21:30:47 +02:00
Robert Helgesson 6ecf9e091c
home-environment: fail if a home.file is outside $HOME 2017-09-13 15:23:43 +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 c7edde6ca4
zsh: add user nix-profile dir to fpath
Fixes zsh plugins installed to nix user profile via nixpkgs.
2017-09-12 15:39:36 +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 29d5f5d760
zsh: fix double compinit slowdown with oh-my-zsh
Integrate oh-my-zsh into zsh module
to be able to control invocation order.
2017-09-12 14:52:04 +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
Silvan Mosberger fc1d4f5362
ssh: allow attrset matchBlock 2017-09-12 08:54:18 +02:00
Robert Helgesson cda222d2ec
home-manager: present news even if assertion failed 2017-09-09 17:14:07 +02:00
Robert Helgesson 9c1b3735b4
home-manager: add news sub-command
This command allows the user to examine the news items generated by
the news module. See #52.

Many thanks to @nonsequitur and @uvNikita for suggestions and
improvements.
2017-09-05 11:37:07 +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
Nikita Uvarov f5289c546e
feh: add module 2017-09-04 21:36:06 +02:00
Jean Potier 721f924e15
zsh: remove search for installed completions
1. It slows down the initial start: it takes around 2s at first launch,
and around 0.25s for the following launches;
2. It seems to be redundant since just installing zsh package gives
working completions with correct $fpath set.
2017-09-04 11:45:41 +02:00
Nikita Uvarov 2c5151726c
vim: add module 2017-08-28 21:59:38 +02:00
Robert Helgesson 125deafc84
home-manager: add explanatory comment 2017-08-27 17:44:23 +02:00
Robert Helgesson 1445673e18
home-manager: temporarily re-add attribute 2017-08-27 17:13:06 +02:00
Robert Helgesson 4a17d8ef97
home-manager: remove unused attribute 2017-08-27 13:13:43 +02:00
Robert Helgesson b4fff6b9b7
home-manager: minor attribute rename
The "activation-script" attribute doesn't actually point directly at
the activation script. Renamed the attribute to be more descriptive.
2017-08-27 13:04:39 +02:00
Robert Helgesson e561beab44
home-environment: include home path in generation directory
Technically not necessary but it was a bit silly to leave out this
important directory from the generation directory. This also makes it
more convenient to browse the installed packages after a
`home-manager build`.
2017-08-27 00:18:13 +02:00
Nikita Uvarov 3bcd9d747b
owncloud-client: add module 2017-08-26 22:56:26 +02:00