1
0
Fork 0
nixos-config/home-common/default.nix
Malte Brandy 074a7f21ab
Nonatomic
2018-04-27 23:48:56 +02:00

151 lines
3.7 KiB
Nix

{ pkgs, ... }:
let
rust-scripts = with pkgs; callPackage ../packages/rust-scripts {};
in {
programs = {
home-manager = {
enable = true;
path = https://github.com/rycee/home-manager/archive/master.tar.gz;
};
git = {
enable = true;
ignores = [
".syncthing*.tmp"
"*.swp"
"*.autosave~"
"*.aux"
"*.bbl"
"*.fls"
"*.idx"
"*.ilg"
"*.ind"
"*.log"
"*.out"
"*.toc"
"*.bcf"
"*.blg"
"*.fdb*"
"*.thm"
"*.run.xml"
"*.slnc"
"*.glade~"
"__pycache__"
".hledger-web_client_session_key.aes"
".nix-gc-roots"
];
userEmail = "malte.brandy@maralorn.de";
userName = "Malte Brandy";
};
htop = {
enable = true;
hideThreads = true;
hideUserlandThreads = true;
highlightBaseName = true;
shadowOtherUsers = true;
showProgramPath = false;
treeView = true;
};
ssh = {
controlMaster = "autoask";
enable = true;
matchBlocks = let
matheGwProxy = "ssh -q gw nc -q0 %h %p";
kivaHost = "fb04386.mathematik.tu-darmstadt.de";
agHost = "fb04217.mathematik.tu-darmstadt.de";
in [
{ host = "charon"; hostname = "charon.olymp.space"; }
{ host = "*.olymp.space"; user = "maralorn"; }
{ host = "ag-forward"; hostname = agHost; proxyCommand = matheGwProxy; }
{ host = "ag"; hostname = agHost; }
{ host = "kiva-forward"; hostname = kivaHost; proxyCommand = matheGwProxy; }
{ host = "kiva"; hostname = kivaHost; }
{ host = "gw"; hostname = "gwres4.mathematik.tu-darmstadt.de"; }
{ host = "*.mathematik.tu-darmstadt.de"; user = "brandy"; }
{ host = "shells"; hostname = "shells.darmstadt.ccc.de"; }
{ host = "vorstand"; hostname = "vorstand.darmstadt.ccc.de"; }
{ host = "*.darmstadt.ccc.de"; user = "maralorn"; }
{ host = "whisky"; hostname = "whisky.w17.io"; user = "chaos"; }
];
};
zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
history = {
save = 100000;
size = 100000;
};
initExtra = builtins.readFile ./configs/zshrc;
};
};
systemd.user.startServices = true;
imports = [
./taskwarrior.nix
../modules/force-copies.nix
];
home.packages = with pkgs; [
htop
tree
rxvt_unicode.terminfo
most
socat
nmap
tcpdump
rcm
tmux
tig
exa
fzf
pythonPackages.qrcode
ranger
# rust-scripts
(pkgs.neovim.override {
vimAlias = true;
withPython3 = true;
configure = {
customRC = ''
let $RUST_SRC_PATH="${pkgs.rustPlatform.rustcSrc}"
let g:rustfmt_command = "${pkgs.rustfmt}/bin/rustfmt"
let g:racer_cmd = "${pkgs.rustracer}/bin/racer"
let g:deoplete#sources#rust#racer_binary='${pkgs.rustracer}/bin/racer'
let g:syntastic_rust_rustc_exe = '${pkgs.cargo}/bin/cargo check'
${builtins.readFile ./configs/vimrc}
'';
packages.myVimPackage = with pkgs.vimPlugins; {
start = [
# deoplete-nvim
vim-nix
ctrlp
vimtex
Syntastic
UltiSnips
airline
rust-vim
# deoplete-rust
fugitive
airline
# ale
# vim-snippets
vim-trailing-whitespace
vim-polyglot
nvim-cm-racer
nvim-completion-manager
vim-pandoc
nerdcommenter
vim-signify
];
};
};
})
];
xdg.enable = true;
}