forked from ryanb/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathhome.nix
123 lines (116 loc) · 3.29 KB
/
home.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
{ pkgs, lib, config, ... }:
let
vim-with-packages = (pkgs.vim_configurable.overrideAttrs (attrs: {
configureFlags =
lib.filter
(f: !(lib.hasPrefix "--enable-gui" f))
attrs.configureFlags;
})).customize {
name = "vim";
vimrcConfig.customRC = builtins.readFile ./programs/vim/vimrc;
vimrcConfig.packages.default = with pkgs.vimPlugins; {
start = [
ale
base16-vim
editorconfig-vim
fzf-vim
fzfWrapper
nerdtree
vim-abolish
vim-airline
vim-airline-themes
vim-better-whitespace
vim-commentary
vim-gitgutter
vim-grammarous
vim-multiple-cursors
vim-polyglot
vim-sensible
vim-surround
];
};
};
in
{
programs.home-manager = {
enable = true;
path = https://github.com/rycee/home-manager/archive/f487b527ec420b888c52df1c4f8c31439201edb7.tar.gz;
};
programs.tmux = {
enable = true;
escapeTime = 0;
terminal = "screen-256color";
plugins = with pkgs.tmuxPlugins; [
yank
];
extraConfig = builtins.readFile ./programs/tmux/tmux.conf;
};
home.file.".gitignore".text = builtins.readFile ./programs/git/gitignore;
home.file.".gitconfig".text = builtins.readFile ./programs/git/gitconfig;
home.file.".config/base16-shell" = {
source = builtins.fetchTarball "https://github.com/chriskempson/base16-shell/archive/master.tar.gz";
};
home.file.".local/share/git-completion.bash" = {
source = "${builtins.fetchTarball "https://github.com/git/git/archive/master.tar.gz"}/contrib/completion/git-completion.bash";
};
home.file.".config/termonad/termonad.hs".text = builtins.readFile ./programs/termonad/termonad.hs;
home.file.".bashrc".text = "
${builtins.readFile ./programs/bash/base-16.sh}
${builtins.readFile ./programs/bash/clipboard.sh}
${builtins.readFile ./programs/bash/codecdpath.sh}
${builtins.readFile ./programs/bash/completion.sh}
${builtins.readFile ./programs/bash/direnv.sh}
${builtins.readFile ./programs/bash/docker-compose.sh}
${builtins.readFile ./programs/bash/editor.sh}
${builtins.readFile ./programs/bash/fuzzy-cd.sh}
${builtins.readFile ./programs/bash/git.sh}
${builtins.readFile ./programs/bash/history.sh}
${builtins.readFile ./programs/bash/ls.sh}
${builtins.readFile ./programs/bash/nix-shell.sh}
${builtins.readFile ./programs/bash/nix.sh}
${builtins.readFile ./programs/bash/opts.sh}
${builtins.readFile ./programs/bash/pager.sh}
${builtins.readFile ./programs/bash/path.sh}
${builtins.readFile ./programs/bash/prompt.sh}
${builtins.readFile ./programs/bash/reload.sh}
${builtins.readFile ./programs/bash/rust.sh}
${builtins.readFile ./programs/bash/title.sh}
";
home.packages = with pkgs; [
asciinema
awscli
bash-completion
bashInteractive
cabal-install
cabal2nix
coreutils
darcs
direnv
entr
fd
fzf
ghc
git
gnupg1
haskellPackages.ghcid
haskellPackages.ormolu
hlint
htop
ipcalc
jq
libossp_uuid
lynx
ncdu
netcat
nmap
powerline-fonts
ripgrep
tree
tshark
vim-with-packages
] ++ lib.optionals (builtins.currentSystem != "x86_64-darwin") [
termonad-with-packages
xclip
xsel
];
}