2019-07-18 17:29:22 +00:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
|
|
|
let
|
2019-07-18 18:27:13 +00:00
|
|
|
unstable = import <unstable> {};
|
2019-07-18 17:29:22 +00:00
|
|
|
home-manager = builtins.fetchGit {
|
|
|
|
url = "https://github.com/rycee/home-manager.git";
|
2019-12-26 17:42:14 +00:00
|
|
|
rev = "621c98f15a31e7f0c1389f69aaacd0ac267ce29e";
|
2019-07-18 17:29:22 +00:00
|
|
|
};
|
|
|
|
in {
|
|
|
|
imports = [ "${home-manager}/nixos" ];
|
|
|
|
|
2019-07-23 19:09:41 +00:00
|
|
|
home-manager.useUserPackages = true;
|
|
|
|
|
2019-07-30 19:16:19 +00:00
|
|
|
home-manager.users.root = {
|
|
|
|
programs = {
|
|
|
|
zsh = {
|
|
|
|
enable = true;
|
|
|
|
oh-my-zsh = {
|
|
|
|
enable = true;
|
|
|
|
theme = "gentoo";
|
|
|
|
plugins = [ "git" ];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
home.file.".emacs.d/init.el".source = ./etc/emacs.el;
|
|
|
|
};
|
|
|
|
|
2019-07-18 20:01:07 +00:00
|
|
|
home-manager.users.user = {
|
|
|
|
programs = {
|
|
|
|
git = {
|
|
|
|
enable = true;
|
|
|
|
userName = "Mikhail Klementev";
|
|
|
|
userEmail = "blame@dumpstack.io";
|
|
|
|
signing = {
|
|
|
|
signByDefault = true;
|
|
|
|
key = "0x1525585D1B43C62A";
|
|
|
|
};
|
2019-07-18 17:29:22 +00:00
|
|
|
};
|
2019-07-18 20:52:21 +00:00
|
|
|
|
2019-07-22 17:33:33 +00:00
|
|
|
tmux = {
|
|
|
|
enable = true;
|
|
|
|
baseIndex = 1;
|
|
|
|
historyLimit = 100500;
|
|
|
|
keyMode = "emacs";
|
|
|
|
extraConfig = ''
|
|
|
|
unbind C-Space
|
|
|
|
set -g prefix C-Space
|
|
|
|
bind C-Space send-prefix
|
|
|
|
|
|
|
|
set -g status off
|
|
|
|
'';
|
|
|
|
plugins = [ pkgs.tmuxPlugins.yank ];
|
|
|
|
};
|
|
|
|
|
2019-07-18 20:52:21 +00:00
|
|
|
zsh = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
oh-my-zsh = {
|
|
|
|
enable = true;
|
|
|
|
theme = "gentoo";
|
|
|
|
plugins = [ "git" "cp" "tmux-my" ];
|
|
|
|
custom = "$HOME/.oh-my-zsh-custom";
|
|
|
|
};
|
|
|
|
|
|
|
|
sessionVariables = {
|
|
|
|
LC_ALL = "en_US.utf8";
|
|
|
|
LIBVIRT_DEFAULT_URI = "qemu:///system";
|
|
|
|
GOPATH = "\${HOME}";
|
2019-12-26 17:42:35 +00:00
|
|
|
PATH = "\${PATH}:\${HOME}/bin:\${HOME}/.local/bin";
|
2019-07-18 20:52:21 +00:00
|
|
|
|
|
|
|
ZSH_TMUX_AUTOSTART = "true";
|
|
|
|
ZSH_TMUX_AUTOCONNECT = "true";
|
|
|
|
};
|
|
|
|
|
|
|
|
shellAliases = {
|
|
|
|
mutt = "neomutt";
|
|
|
|
vim = "emacs -nw";
|
|
|
|
emacs = "emacs -nw";
|
2019-11-30 12:45:05 +00:00
|
|
|
clipimage = "xclip -selection clipboard -target image/png -out > /tmp/xclip_$(date +%s).png";
|
2019-07-18 20:52:21 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
initExtra = ''
|
|
|
|
which apt >/dev/null 2>&1 && plugins=("\$\{(@)plugins:#tmux-my\}")
|
|
|
|
'';
|
|
|
|
};
|
2019-07-21 15:34:06 +00:00
|
|
|
|
2019-07-24 07:36:16 +00:00
|
|
|
gpg = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
throw-keyids = false;
|
|
|
|
};
|
|
|
|
};
|
2019-07-21 15:34:06 +00:00
|
|
|
};
|
|
|
|
|
2019-07-18 20:01:07 +00:00
|
|
|
home.file = {
|
|
|
|
".emacs.d/init.el".source = ./etc/emacs.el;
|
|
|
|
".xmonad/xmonad.hs".source = ./etc/xmonad.hs;
|
2019-07-18 20:52:21 +00:00
|
|
|
|
2019-07-21 15:34:18 +00:00
|
|
|
".mutt/mailcap".source = ./etc/mutt/mailcap;
|
|
|
|
".mutt/muttrc".source = ./etc/mutt/muttrc;
|
|
|
|
".mutt/signature".source = ./etc/mutt/signature;
|
|
|
|
|
2019-07-18 20:52:21 +00:00
|
|
|
".oh-my-zsh-custom/plugins/tmux-my/tmux-my.extra.conf".source = ./etc/tmux-my/tmux-my.extra.conf;
|
|
|
|
".oh-my-zsh-custom/plugins/tmux-my/tmux-my.only.conf".source = ./etc/tmux-my/tmux-my.only.conf;
|
|
|
|
".oh-my-zsh-custom/plugins/tmux-my/tmux-my.plugin.zsh".source = ./etc/tmux-my/tmux-my.plugin.zsh;
|
2019-07-21 16:54:31 +00:00
|
|
|
|
|
|
|
".config/user-dirs.dirs".source = ./etc/user-dirs.dir;
|
|
|
|
".config/dunst/dunstrc".source = ./etc/dunstrc;
|
|
|
|
".config/kitty/kitty.conf".source = ./etc/kitty.conf;
|
2019-07-18 20:01:07 +00:00
|
|
|
};
|
|
|
|
|
2019-07-18 21:24:55 +00:00
|
|
|
home.keyboard = {
|
|
|
|
layout = "us,ru";
|
|
|
|
options = [ "ctrl:nocaps" "grp:rctrl_toggle" ];
|
|
|
|
};
|
|
|
|
|
2019-07-20 10:33:02 +00:00
|
|
|
xsession = {
|
|
|
|
enable = true;
|
|
|
|
windowManager.command = "exec xmonad";
|
|
|
|
initExtra = ''
|
|
|
|
touchpad=$(xinput | grep -o 'TouchPad.*id=[0-9]*' | cut -d '=' -f 2)
|
|
|
|
trackpoint=$(xinput | grep -o 'TrackPoint.*id=[0-9]*' | cut -d '=' -f 2)
|
|
|
|
|
|
|
|
xsetroot -solid '#000000'
|
|
|
|
|
|
|
|
xinput --disable $touchpad
|
|
|
|
xinput --set-prop $trackpoint 'Device Accel Constant Deceleration' 0.20
|
|
|
|
|
|
|
|
xhost +local
|
2019-07-21 15:13:42 +00:00
|
|
|
|
2019-07-21 17:12:41 +00:00
|
|
|
ln -fs /tmp/chromium .config/
|
|
|
|
ln -fs /tmp/chromium .cache/
|
|
|
|
|
2019-11-30 12:29:38 +00:00
|
|
|
ln -fs ${unstable.gtk3}/share/gsettings-schemas/gtk+3-*/glib-2.0 .local/share/
|
2019-07-29 07:01:30 +00:00
|
|
|
|
2019-07-24 19:13:54 +00:00
|
|
|
kitty --class=viewShiftW3 &
|
|
|
|
emacs &
|
|
|
|
chromium &
|
|
|
|
wire-desktop &
|
2019-07-20 10:33:02 +00:00
|
|
|
'';
|
|
|
|
};
|
2019-07-21 16:19:06 +00:00
|
|
|
|
|
|
|
gtk = {
|
|
|
|
enable = true;
|
|
|
|
theme.name = "Adwaita-dark";
|
|
|
|
font.name = "Ubuntu 12";
|
|
|
|
iconTheme = {
|
|
|
|
name = "Adwaita";
|
|
|
|
package = pkgs.gnome3.adwaita-icon-theme;
|
|
|
|
};
|
|
|
|
gtk2.extraConfig = ''
|
|
|
|
gtk-cursor-theme-name = capitaine-cursors;
|
|
|
|
'';
|
|
|
|
gtk3.extraConfig = { gtk-cursor-theme-name = "capitaine-cursors"; };
|
|
|
|
};
|
2019-07-18 19:51:19 +00:00
|
|
|
};
|
2019-07-18 17:29:22 +00:00
|
|
|
}
|