summary refs log tree commit diff stats
path: root/sys/services/zsh/default.nix
diff options
context:
space:
mode:
authorsils <sils@sils.li>2023-05-04 18:17:38 +0200
committersils <sils@sils.li>2023-05-04 18:17:38 +0200
commit4eaf76cf1e0af9ec7a630320bb7d4956041dd03e (patch)
tree4073ad033ef5f0939e76bb82a75847b34ca4bba9 /sys/services/zsh/default.nix
parentChore(flake): Update (diff)
downloadnix-config-4eaf76cf1e0af9ec7a630320bb7d4956041dd03e.tar.gz
nix-config-4eaf76cf1e0af9ec7a630320bb7d4956041dd03e.zip
Structure(treewide): Use new structure with home-manager
                     home-manager enables great possibilities and is
                     part of simplifying the structure of my config.
Diffstat (limited to 'sys/services/zsh/default.nix')
-rw-r--r--sys/services/zsh/default.nix44
1 files changed, 44 insertions, 0 deletions
diff --git a/sys/services/zsh/default.nix b/sys/services/zsh/default.nix
new file mode 100644
index 0000000..b8349f9
--- /dev/null
+++ b/sys/services/zsh/default.nix
@@ -0,0 +1,44 @@
+{pkgs, ...}: {
+  programs.zsh = {
+    enable = true;
+    syntaxHighlighting.enable = true;
+    autosuggestions.enable = true;
+    interactiveShellInit = ''
+        	export ZSH=${pkgs.oh-my-zsh}/share/oh-my-zsh/
+      export fpath=("$XDG_DATA_HOME/zsh/site-functions" $fpath)
+      HISTFILE="$XDG_STATE_HOME/zsh/history"
+
+      plugins=(git)
+
+      alias vim="nvim"
+      alias ls='lsd'
+      alias l='ls -l'
+      alias la='ls -a'
+      alias lla='ls -la'
+      alias lt='ls --tree'
+      alias rebackup='restic -r /mnt/storage/backups --password-file ~/srv/restic_pswd backup'
+      alias repreconf='restic -r /mnt/storage/backups --password-file ~/srv/restic_pswd'
+      alias b-del="sudo btrfs subv delet /srv/snapshots/home"
+      alias b-shot="sudo btrfs subvolume snapshot -r /home /srv/snapshots/home"
+      alias b-home='[ -d /srv/snapshots/home ] && sudo btrfs subvolume delete /srv/snapshots/home; sudo btrfs subvolume snapshot -r /home /srv/snapshots/home; sudo restic -r /mnt/storage/backups --password-file ~/srv/restic_pswd --cache-dir /srv/.restic-cache backup /srv/snapshots/home;'
+      alias r-clean="sudo restic -r /mnt/storage/backups --password-file ~/srv/restic_pswd --cache-dir /srv/.restic-cache forget \
+                            	--keep-weekly  7  \
+                            	--keep-daily   7  \
+                            	--keep-monthly 6  \
+                            	--keep-yearly  10 \
+                            	--keep-hourly  5  \
+                            	--keep-tag prs"
+      alias r-prune="sudo restic -r /mnt/storage/backups --password-file ~/srv/restic_pswd --cache-dir /srv/.restic-cache prune"
+      alias r-check="sudo restic -r /mnt/storage/backups --cache-dir /srv/.restic-cache --password-file ~/srv/.restic_pswd check"
+      alias zconf="vim ~/.config/zsh/.zshrc"
+      alias zenv="vim ~/.config/zsh/.zshenv"
+      alias o="xdg-open"
+      alias wget=wget --hsts-file="$XDG_DATA_HOME/wget-hsts"
+
+
+      source $ZSH/oh-my-zsh.sh
+    '';
+
+    promptInit = "source ${pkgs.zsh-powerlevel10k}/share/zsh-powerlevel10k/powerlevel10k.zsh-theme";
+  };
+}