151 lines
3.7 KiB
Nix
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;
|
|
}
|