M config.scm => config.scm +3 -2
  
@@ 16,7 16,7 @@
  (gnu packages bash)
  (gnu packages compression))
 (use-service-modules desktop sddm xorg base nix pm)
-(use-package-modules gnome package-management)
+(use-package-modules gnome package-management shells)
 
 (operating-system
  (kernel linux)
@@ 71,7 71,8 @@
                (comment "My main account")
                (group "users")
                (supplementary-groups '("wheel" "netdev"
-                                       "audio" "video")))
+                                       "audio" "video"))
+               (shell (file-append zsh "/bin/zsh")))
               %base-user-accounts))
 
  ;; Add the `students' group
 
A home/dotfiles/.zshrc => home/dotfiles/.zshrc +25 -0
  
@@ 0,0 1,25 @@
+autoload -U colors && colors
+PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%  %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b "
+
+# Basic auto/tab complete
+autoload -U compinit && compinit
+zstyle ':completion:*' menu select
+zmodload zsh/complist
+bindkey -M menuselect 'h' vi-backward-char
+bindkey -M menuselect 'k' vi-up-line-or-history
+bindkey -M menuselect 'j' vi-down-line-or-history
+bindkey -M menuselect 'l' vi-forward-char
+setopt extendedglob
+_comp_options+=(globdots)
+
+HISTSIZE=10000
+SAVEHIST=10000
+setopt appendhistory
+setopt INC_APPEND_HISTORY
+setopt HIST_IGNORE_DUPS
+unsetopt HIST_IGNORE_ALL_DUPS
+
+setopt HIST_FCNTL_LOCK
+
+source $ZDOTDIR/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
+source $ZDOTDIR/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
 
M home/home-configuration.scm => home/home-configuration.scm +14 -0
  
@@ 7,6 7,7 @@
 (use-modules (gnu home)
              (gnu packages)
              (gnu packages gnupg)
+             (gnu packages shellutils)
              (gnu services)
              (guix gexp)
              (gnu home services fontutils)
@@ 80,12 81,25 @@
                    (bash-profile (list (local-file "dotfiles/.bash_profile"
                                                    "bash_profile")))))
 
+         (service home-zsh-service-type
+                  (home-zsh-configuration
+                   (zshrc (list
+                           (local-file "dotfiles/.zshrc" "zshrc")))))
+
          (service home-files-service-type
                   `((".config/foot/foot.ini" ,(local-file "dotfiles/foot.ini"))
                     (".config/waybar/config.jsonc" ,(local-file "dotfiles/waybar/config.jsonc"))
                     (".config/waybar/style.css" ,(local-file "dotfiles/waybar/style.css"))
                     (".config/mako/config" ,(local-file "dotfiles/mako"))
 
+                    ;; (".config/zsh/plugins" ,(directory-union
+                    ;;                          "zsh-plugins"
+                    ;;                          (list zsh-autosuggestions zsh-syntax-highlighting)))
+                    (".config/zsh/plugins" ,#~(string-append #$(directory-union
+                                                                "zsh-plugins"
+                                                                (list zsh-autosuggestions zsh-syntax-highlighting))
+                                                             "/share/zsh/plugins"))
+
                     (".librewolf/native-messaging-hosts/com.github.browserpass.native.json"
                      ,(file-append
                        (specification->package "browserpass-native")