Now with NixOS

This commit is contained in:
Pierre Martin
2018-10-26 15:08:46 +02:00
parent 7fda8eea32
commit 43b96c6b10
25 changed files with 111 additions and 1094 deletions

108
home.nix Normal file
View File

@@ -0,0 +1,108 @@
{ pkgs, ... }:
let
latest = import <nixpkgs>{};
in
{
home.packages = with pkgs; [
fasd
latest.gitAndTools.gitflow latest.gitAndTools.tig
google-chrome-beta
latest.vscode
latest.jetbrains.phpstorm
unclutter-xfixes
# Peek. See https://github.com/NixOS/nixpkgs/issues/39832
peek
ffmpeg
glib
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-ugly
keybinder
];
services.unclutter.enable = true;
programs.home-manager = {
enable = true;
path = https://github.com/rycee/home-manager/archive/release-18.03.tar.gz;
};
programs.zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
history = {
ignoreDups = true;
save = 100000000000;
size = 100000000000;
};
oh-my-zsh = {
enable = true;
theme = "robbyrussell";
plugins = [ "git" "git-flow" "docker" "ssh-agent" "last-working-dir" "fasd" ];
};
sessionVariables = {
EDITOR = "vim";
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=7";
};
shellAliases = {
a = "fasd -a"; # any
s = "fasd -si"; # show / search / select
d = "fasd -d"; # directory
f = "fasd -f"; # file
sd = "fasd -sid"; # interactive directory selection
sf = "fasd -sif"; # interactive file selection
z = "fasd_cd -d"; # cd, same functionality as j in autojump
j = "fasd_cd -d"; # cd, same functionality as j in autojump
zz = "fasd_cd -d -i"; # cd with interactive selection
dc = "docker-compose";
dcr = "docker-compose run --rm";
copy = "xclip -selection c";
deploy = "docker run -it --rm -v ~/.ssh:/root/.ssh -v $SSH_AUTH_SOCK:/ssh-agent -e SSH_AUTH_SOCK=/ssh-agent -v $(pwd):/source neolao/capistrano:3.4.0 bash";
bepo = "setxkbmap -layout fr -variant bepo";
fr = "setxkbmap -layout fr -variant oss";
m = "make";
t = "task";
p = "pass";
tg = "tig --all";
};
};
programs.git = {
enable = true;
package = latest.gitAndTools.gitFull;
userEmail = "pierre@occitech.fr";
userName = "Pierre Martin";
aliases = {
co = "checkout";
};
ignores = [
".DS_Store"
".svn"
"*~"
"*.swp"
"*.rbc"
".watsonrc"
".idea"
".vscode"
];
};
}
# TODO
#
# - setup GPG: Git, pass etc...