about summary refs log tree commit diff
path: root/home/profiles/zsh
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2023-05-05 19:41:58 -0700
committerFranck Cuny <franck@fcuny.net>2023-05-05 19:41:58 -0700
commit43da9edb4598eef509c481ae0b305384418c45de (patch)
treea0ad614c90102757143e026e4fe1806431a3dbf4 /home/profiles/zsh
parentprofiles/default: users are immutable (diff)
downloadworld-43da9edb4598eef509c481ae0b305384418c45de.tar.gz
home/profiles: move (almost) all modules to profiles
This is a major refactor, similar to what was done for the hosts, but in
a single commit.
Diffstat (limited to '')
-rw-r--r--home/profiles/zsh/completion-style.zsh (renamed from home/shell/zsh/completion-style.zsh)0
-rw-r--r--home/profiles/zsh/default.nix51
-rw-r--r--home/profiles/zsh/new-go-project.zsh (renamed from home/shell/zsh/new-go-project.zsh)0
-rw-r--r--home/profiles/zsh/options.zsh (renamed from home/shell/zsh/options.zsh)0
-rw-r--r--home/profiles/zsh/prompt.zsh (renamed from home/shell/zsh/prompt.zsh)0
-rw-r--r--home/profiles/zsh/tmux.zsh (renamed from home/shell/zsh/tmux.zsh)0
6 files changed, 51 insertions, 0 deletions
diff --git a/home/shell/zsh/completion-style.zsh b/home/profiles/zsh/completion-style.zsh
index 79a4e68..79a4e68 100644
--- a/home/shell/zsh/completion-style.zsh
+++ b/home/profiles/zsh/completion-style.zsh
diff --git a/home/profiles/zsh/default.nix b/home/profiles/zsh/default.nix
new file mode 100644
index 0000000..38450ab
--- /dev/null
+++ b/home/profiles/zsh/default.nix
@@ -0,0 +1,51 @@
+{ config, pkgs, lib, ... }:
+{
+  home.packages = with pkgs; [ zsh-completions ];
+
+  programs.zsh = {
+    enable = true;
+    dotDir = ".config/zsh";
+
+    enableCompletion = true;
+    enableAutosuggestions = true;
+
+    history = {
+      size = 500000;
+      save = 500000;
+      extended = false;
+      ignoreSpace = true;
+      ignoreDups = true;
+      share = false;
+      # see
+      # https://github.com/nix-community/home-manager/blob/32a7da69dc53c9eb5ad0675eb7fdc58f7fe35272/modules/programs/zsh.nix#L537
+      path = "${config.xdg.dataHome}/zsh/zsh_history";
+    };
+
+    localVariables = {
+      # Print timing statistics for everything which takes longer than 5 seconds of
+      # user + system time.
+      REPORTTIME = 5;
+    };
+
+    shellAliases = {
+      ll = "ls -l --color=auto";
+      lt = "ls -ltrh --color=auto";
+      la = "ls -ltrha --color=auto";
+      pkgsearch = "nix search nixpkgs";
+      hms = "home-manager switch --flake .";
+      nr = "sudo nixos-rebuild switch --flake .";
+      flup = "nix flake update --commit-lock-file";
+      dhcp-leasese = "xdg-open http://192.168.6.1:8067/";
+    };
+
+    defaultKeymap = "emacs";
+
+    initExtra = lib.concatMapStrings builtins.readFile [
+      ./completion-style.zsh
+      ./options.zsh
+      ./prompt.zsh
+      ./tmux.zsh
+      ./new-go-project.zsh
+    ];
+  };
+}
diff --git a/home/shell/zsh/new-go-project.zsh b/home/profiles/zsh/new-go-project.zsh
index 0b96a34..0b96a34 100644
--- a/home/shell/zsh/new-go-project.zsh
+++ b/home/profiles/zsh/new-go-project.zsh
diff --git a/home/shell/zsh/options.zsh b/home/profiles/zsh/options.zsh
index 6d39bc1..6d39bc1 100644
--- a/home/shell/zsh/options.zsh
+++ b/home/profiles/zsh/options.zsh
diff --git a/home/shell/zsh/prompt.zsh b/home/profiles/zsh/prompt.zsh
index 8a3efa9..8a3efa9 100644
--- a/home/shell/zsh/prompt.zsh
+++ b/home/profiles/zsh/prompt.zsh
diff --git a/home/shell/zsh/tmux.zsh b/home/profiles/zsh/tmux.zsh
index 97944f5..97944f5 100644
--- a/home/shell/zsh/tmux.zsh
+++ b/home/profiles/zsh/tmux.zsh