2019-06-30 15:18:38 +01:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
2019-06-30 20:28:10 +01:00
|
|
|
let
|
|
|
|
unstableTarball = fetchTarball https://github.com/NixOS/nixpkgs-channels/archive/nixos-unstable.tar.gz;
|
|
|
|
in
|
2019-06-30 15:18:38 +01:00
|
|
|
{
|
2019-06-30 18:58:15 +01:00
|
|
|
nixpkgs.config = {
|
|
|
|
allowUnfree = true;
|
2019-06-30 20:28:10 +01:00
|
|
|
packageOverrides = pkgs: {
|
|
|
|
unstable = import unstableTarball {
|
|
|
|
config = config.nixpkgs.config;
|
|
|
|
};
|
|
|
|
};
|
2019-06-30 18:58:15 +01:00
|
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
keepass fontconfig nodejs rustup gcc gdb
|
|
|
|
binutils xclip pkgconfig veracrypt gitAndTools.diff-so-fancy
|
|
|
|
gnome3.gnome-shell-extensions chrome-gnome-shell gnomeExtensions.clipboard-indicator
|
|
|
|
gnomeExtensions.caffeine gnomeExtensions.no-title-bar
|
|
|
|
openjdk11 gimp restic glxinfo discord steam
|
|
|
|
zoom-us
|
|
|
|
nodejs-10_x hugo mercurial terraform libreoffice
|
|
|
|
unzip tor-browser-bundle-bin aria vlc
|
|
|
|
jetbrains.goland jetbrains.clion
|
|
|
|
(wine.override { wineBuild = "wineWow"; }) winetricks
|
|
|
|
yubico-piv-tool yubikey-personalization yubikey-personalization-gui yubikey-manager-qt
|
|
|
|
mono calcurse calibre fbreader file python37Packages.binwalk-full
|
|
|
|
];
|
2019-06-30 15:18:38 +01:00
|
|
|
programs = {
|
|
|
|
home-manager.enable = true;
|
2019-06-30 17:21:25 +01:00
|
|
|
|
2019-06-30 15:58:23 +01:00
|
|
|
zsh = {
|
|
|
|
enable = true;
|
2019-06-30 16:29:48 +01:00
|
|
|
history = {
|
|
|
|
size = 102400;
|
|
|
|
save = 102400;
|
|
|
|
ignoreDups = true;
|
|
|
|
expireDuplicatesFirst = true;
|
|
|
|
share = true;
|
|
|
|
};
|
|
|
|
enableAutosuggestions = true;
|
|
|
|
enableCompletion = true;
|
2019-06-30 18:11:20 +01:00
|
|
|
oh-my-zsh = {
|
|
|
|
enable = true;
|
|
|
|
plugins = [ "vi-mode" "git" "python" "syntax-highlighting" "history-substring-search" "spectrum" "sshi" "prompt" "gpg" "autosuggestions" "tmux" ];
|
|
|
|
};
|
2019-06-30 16:47:38 +01:00
|
|
|
plugins = [
|
|
|
|
{
|
|
|
|
name = "spaceship";
|
|
|
|
file = "spaceship.zsh";
|
|
|
|
src = pkgs.fetchgit {
|
|
|
|
url = "https://github.com/denysdovhan/spaceship-prompt";
|
|
|
|
rev = "v3.11.1";
|
|
|
|
sha256 = "0habry3r6wfbd9xbhw10qfdar3h5chjffr5pib4bx7j4iqcl8lw8";
|
|
|
|
};
|
|
|
|
}];
|
2019-06-30 16:55:54 +01:00
|
|
|
initExtra = ''
|
|
|
|
SPACESHIP_TIME_SHOW=true
|
|
|
|
SPACESHIP_EXIT_CODE_SHOW=true
|
2019-06-30 18:11:20 +01:00
|
|
|
SPACESHIP_VI_MODE_SHOW=false
|
2019-06-30 16:55:54 +01:00
|
|
|
SPACESHIP_BATTERY_THRESHOLD=30
|
2019-06-30 18:20:01 +01:00
|
|
|
setopt HIST_IGNORE_ALL_DUPS
|
2019-06-30 16:55:54 +01:00
|
|
|
'';
|
2019-06-30 18:58:15 +01:00
|
|
|
profileExtra = ''
|
|
|
|
export PATH="$HOME/programs:$PATH";
|
|
|
|
export PATH="$HOME/tools:$PATH";
|
|
|
|
export PATH="$HOME/bin:$PATH";
|
|
|
|
export PATH="$HOME/.local/bin:$PATH";
|
|
|
|
export PATH="$GOPATH/bin:$PATH";
|
|
|
|
export PATH="$HOME/.rvm/bin:$PATH";
|
|
|
|
export PATH="$HOME/.cargo/bin:$PATH";
|
|
|
|
export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH";
|
|
|
|
'';
|
|
|
|
sessionVariables = {
|
|
|
|
TERM="xterm-256color";
|
|
|
|
EDITOR="vim";
|
|
|
|
VISUAL="vim";
|
|
|
|
PAGER="less";
|
|
|
|
ZSH_TMUX_AUTOSTART=true;
|
|
|
|
GOPATH="$HOME/go";
|
|
|
|
};
|
2019-06-30 18:23:47 +01:00
|
|
|
shellAliases = { tmate = "tmux detach-client -E 'tmate;tmux'"; cat = "bat"; };
|
2019-06-30 15:58:23 +01:00
|
|
|
};
|
2019-06-30 17:21:25 +01:00
|
|
|
|
2019-06-30 20:14:55 +01:00
|
|
|
|
|
|
|
vim = {
|
|
|
|
enable = true;
|
|
|
|
extraConfig = builtins.readFile ~/dev/dotfiles/.vimrc.nixos;
|
|
|
|
plugins = [
|
|
|
|
"vim-gitgutter"
|
|
|
|
"vim-toml"
|
|
|
|
"vim-autoformat"
|
|
|
|
"editorconfig-vim"
|
|
|
|
"tabular"
|
|
|
|
"vim-colors-solarized"
|
|
|
|
"fzf-vim"
|
|
|
|
"ctrlp-vim"
|
|
|
|
"vim-nix"
|
|
|
|
"vim-startify"
|
|
|
|
"ack-vim"
|
|
|
|
"vim-markdown"
|
|
|
|
"rust-vim"
|
|
|
|
"nerdtree"
|
|
|
|
"vim-dispatch"
|
2019-06-30 20:28:10 +01:00
|
|
|
"deoplete-nvim"
|
2019-06-30 20:14:55 +01:00
|
|
|
"deoplete-go"
|
|
|
|
"vim-fugitive"
|
|
|
|
"vim-sensible"
|
|
|
|
"vim-surround"
|
|
|
|
"vim-airline"
|
|
|
|
"vim-airline-themes"
|
|
|
|
"vim-dirdiff"
|
|
|
|
"nerdtree-git-plugin"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
2019-06-30 17:21:25 +01:00
|
|
|
alacritty = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
window.decorations = "none";
|
|
|
|
window.startup_mode = "Fullscreen";
|
|
|
|
|
|
|
|
scrolling = {
|
|
|
|
history = 32000;
|
|
|
|
multiplier = 3;
|
|
|
|
faux_multiplier = 3;
|
|
|
|
auto_scroll = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
tabspaces = 4;
|
|
|
|
|
|
|
|
font = {
|
|
|
|
family = "DejaVu Sans Mono for Powerline";
|
|
|
|
size = 12.0;
|
|
|
|
};
|
|
|
|
|
|
|
|
draw_bold_text_with_bright_colors = true;
|
|
|
|
|
|
|
|
colors = {
|
|
|
|
primary = {
|
|
|
|
background= "0x002b36";
|
|
|
|
foreground= "0x839496";
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
normal = {
|
|
|
|
black= "0x073642";
|
|
|
|
red= "0xdc322f";
|
|
|
|
green= "0x859900";
|
|
|
|
yellow= "0xb58900";
|
|
|
|
blue= "0x268bd2";
|
|
|
|
magenta= "0xd33682";
|
|
|
|
cyan= "0x2aa198";
|
|
|
|
white= "0xeee8d5";
|
|
|
|
};
|
|
|
|
|
|
|
|
bright = {
|
|
|
|
black= "0x002b36";
|
|
|
|
red= "0xcb4b16";
|
|
|
|
green= "0x586e75";
|
|
|
|
yellow= "0x657b83";
|
|
|
|
blue= "0x839496";
|
|
|
|
magenta= "0x6c71c4";
|
|
|
|
cyan= "0x93a1a1";
|
|
|
|
white= "0xfdf6e3";
|
|
|
|
};
|
|
|
|
|
|
|
|
background_opacity= 1.0;
|
|
|
|
dynamic_title= true;
|
|
|
|
};
|
|
|
|
cursor= {
|
|
|
|
style = "Block";
|
|
|
|
unfocused_hollow= true;
|
|
|
|
};
|
|
|
|
live_config_reload= true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-06-30 17:34:31 +01:00
|
|
|
fzf.enable = true;
|
|
|
|
tmux = {
|
|
|
|
enable = true;
|
|
|
|
shortcut = "a";
|
|
|
|
extraConfig = ''
|
|
|
|
set -g status off
|
2019-06-30 19:05:01 +01:00
|
|
|
set -g mouse on
|
2019-06-30 17:34:31 +01:00
|
|
|
'';
|
|
|
|
};
|
2019-06-30 15:18:38 +01:00
|
|
|
firefox.enable = true;
|
|
|
|
chromium.enable = true;
|
|
|
|
go.enable = true;
|
2019-06-30 15:58:23 +01:00
|
|
|
bat.enable = true;
|
2019-06-30 15:18:38 +01:00
|
|
|
};
|
|
|
|
}
|