1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-16 08:09:45 +01:00
Commit graph

356 commits

Author SHA1 Message Date
Nikita Uvarov
30c97391d7
i3: add modifier option
This allows to easily change modifier key for default keybindings and
gives a possibility to reference specified value in other modules.

Fixes #147.
2018-05-27 20:20:00 +02:00
Nikita Uvarov
cacb8d410e
i3: deprecate i3.config.startup.*.workspace option
Fixes #265.
2018-05-27 00:00:10 +02:00
Nikita Uvarov
4b388ee902
i3: fix reloading for nixos module
By default, i3-msg gets socket from X11 property
which is not available when home manager is running
as nixos module.

This patch changes i3-msg command call by specifying
all i3 sockets found in $XDG_RUNTIME_DIR/i3 folder.

Fixes #252.
2018-05-26 19:14:05 +02:00
Robert Helgesson
10865f9952
bash: escape alias values
This should allow use of the apostrophe character within aliases
without having to escape them manually.

Fixes #273
2018-05-26 10:52:40 +02:00
Robert Helgesson
f812260c23
manual: add HTML manual
Also add a `home-manager-help` script that attempts to open the HTML
manual in a browser.
2018-05-18 23:22:03 +02:00
Robert Helgesson
b6da6569c4
qt: add module 2018-05-18 20:57:36 +02:00
Robert Helgesson
ec3cbf81c4
manual: some cleanups 2018-05-11 22:26:21 +02:00
Adrian Kummerlaender
1a471b0a45
xcursor: add default cursor file option 2018-05-10 20:26:01 +02:00
Cornelius Mika
73b8aa8bcc
systemd: merge unit definitions recursively
This removes the need for monolithic unit definitions and allows
users to modify existing units.

Example:
```
{
  systemd.user.services.owncloud-client.Unit.OnFailure = "my-notify-service";
}
```
2018-05-10 20:13:58 +02:00
Cornelius Mika
394045f68a systemd: improve comments 2018-05-09 16:22:02 +02:00
Robert Helgesson
f9af8e0390
manual: fix import path
Need to refer to the `default.nix` in the same home-manager source
otherwise you might get an old version.
2018-05-07 00:10:58 +02:00
Robert Helgesson
1260349384
doc: make documentation independent from NixOS
Unfortunately this duplicates some code from NixOS but it does allow
much more flexibility and, hopefully, stability in the Home Manager
documentation.

Fixes #254.
2018-05-06 22:16:48 +02:00
Nikita Uvarov
74f4ed5fd2
syncthing: fix tray startup
Workaround for #249.
2018-05-04 13:08:08 +02:00
Nikita Uvarov
91725ddced
owncloud-client: fix startup
Workaround for #249.
2018-05-04 13:01:34 +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
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