about summary refs log tree commit diff
path: root/programs
diff options
context:
space:
mode:
authorPatryk Niedźwiedziński <pniedzwiedzinski19@gmail.com>2020-09-26 11:07:33 +0200
committerPatryk Niedźwiedziński <pniedzwiedzinski19@gmail.com>2020-09-26 11:07:33 +0200
commit43f903a3334d0bfd50e9cfa64dd5d95faa739d0d (patch)
tree09b90d6f24eec6c7d1376d08028d5a81a1036fb7 /programs
parent9bc4874f0aff1ebc58b28879ee21df44e3a01fc7 (diff)
downloaddots-43f903a3334d0bfd50e9cfa64dd5d95faa739d0d.tar.gz
dots-43f903a3334d0bfd50e9cfa64dd5d95faa739d0d.zip
Add more basic config
Diffstat (limited to 'programs')
-rw-r--r--programs/aliases.nix16
-rw-r--r--programs/zsh/default.nix63
-rw-r--r--programs/zsh/precomp.zshrc8
3 files changed, 87 insertions, 0 deletions
diff --git a/programs/aliases.nix b/programs/aliases.nix
new file mode 100644
index 0000000..d947226
--- /dev/null
+++ b/programs/aliases.nix
@@ -0,0 +1,16 @@
+{
+  cp = "cp -iv";
+  mv = "mv -iv";
+  rm = "rm -iv";
+  mkd = "mkdir -pv";
+  yt = "youtube-dl --add-metadata -i";
+  yta = "yt -x -f bestaudio/best";
+  ffmpeg = "ffmpeg -hide_banner";
+
+  # Git aliases
+  gs = "git status";
+  ga = "git add";
+  gc = "git commit";
+  gl = "git lg";
+  gd = "git diff";
+}
diff --git a/programs/zsh/default.nix b/programs/zsh/default.nix
new file mode 100644
index 0000000..942af70
--- /dev/null
+++ b/programs/zsh/default.nix
@@ -0,0 +1,63 @@
+pkgs:
+{
+  programs.zsh = {
+    enable = true;
+    enableCompletion = true;
+    enableAutosuggestions = true;
+    autocd = true;
+    dotDir = ".config/zsh";
+    history = {
+      path = "$HOME/.cache/zsh/history";
+      size = 10000;
+      save = 10000;
+    };
+    shellAliases = import ../aliases.nix;
+    defaultKeymap = "viins";
+    initExtraBeforeCompInit = builtins.readFile ./precomp.zshrc;
+    initExtra = ''
+      _comp_options+=(globdots)
+    '';
+
+    # plugins = [
+    #   {
+    #     name = "zsh-autosuggestions";
+    #     src = pkgs.fetchFromGitHub {
+    #       owner = "zsh-users";
+    #       repo = "zsh-autosuggestions";
+    #       rev = "v0.6.3";
+    #       sha256 = "1h8h2mz9wpjpymgl2p7pc146c1jgb3dggpvzwm9ln3in336wl95c";
+    #     };
+    #   }
+    #   {
+    #     name = "zsh-syntax-highlighting";
+    #     src = pkgs.fetchFromGitHub {
+    #       owner = "zsh-users";
+    #       repo = "zsh-syntax-highlighting";
+    #       rev = "be3882aeb054d01f6667facc31522e82f00b5e94";
+    #       sha256 = "0w8x5ilpwx90s2s2y56vbzq92ircmrf0l5x8hz4g1nx3qzawv6af";
+    #     };
+    #   }
+    # ];
+
+    sessionVariables = rec {
+      PROMPT="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b ";
+      NVIM_TUI_ENABLE_TRUE_COLOR = "1";
+
+      ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE = "fg=3";
+      DEV_ALLOW_ITERM2_INTEGRATION = "1";
+
+      EDITOR = "vim";
+      VISUAL = EDITOR;
+      GIT_EDITOR = EDITOR;
+
+      GOPATH = "$HOME";
+
+      PATH = "$HOME/.emacs.d/bin:$HOME/bin:$PATH";
+    };
+    # envExtra
+    # profileExtra
+    # loginExtra
+    # logoutExtra
+    # localVariables
+  };
+}
diff --git a/programs/zsh/precomp.zshrc b/programs/zsh/precomp.zshrc
new file mode 100644
index 0000000..776d218
--- /dev/null
+++ b/programs/zsh/precomp.zshrc
@@ -0,0 +1,8 @@
+. ~/.nix-profile/etc/profile.d/nix.sh
+export NIX_PATH=$HOME/.nix-defexpr/channels${NIX_PATH:+:}$NIX_PATH
+stty stop undef
+[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc"
+[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc"
+[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc"
+zstyle ':completion:*' menu select
+zmodload zsh/complist