summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Cullmann <christoph@cullmann.io>2024-07-19 17:56:28 +0200
committerChristoph Cullmann <christoph@cullmann.io>2024-07-19 17:56:28 +0200
commit68d99c3696d39d534c5cf7f2aee7a424c55539d2 (patch)
tree7876e8908bdadbd732b33829727b9b384032027a
parent7f2d8831c4407fddadbf33339f4baa6d4cc4ead2 (diff)
let's try nushell
-rw-r--r--share/common.nix9
-rw-r--r--share/home.nix61
-rw-r--r--share/users.nix4
3 files changed, 21 insertions, 53 deletions
diff --git a/share/common.nix b/share/common.nix
index c2db3d3..a027bc0 100644
--- a/share/common.nix
+++ b/share/common.nix
@@ -330,6 +330,7 @@ in
pkgs.kdePackages.neochat
nixos-install-tools
nmap
+ nushell
nvme-cli
procmail
okteta
@@ -493,12 +494,8 @@ in
enableMail = false;
};
- # use ZSH per default
- programs.zsh.enable = true;
- environment.shells = with pkgs; [ zsh ];
-
- # needed for the ZSH completion
- environment.pathsToLink = [ "/share/zsh" ];
+ # add nushell and zsh to allowed shells
+ environment.shells = with pkgs; [ nushell zsh ];
# use micro as default terminal editor
environment.variables.EDITOR = "micro";
diff --git a/share/home.nix b/share/home.nix
index b432b9d..d1a6ee6 100644
--- a/share/home.nix
+++ b/share/home.nix
@@ -2,31 +2,19 @@
# initial version
home.stateVersion = "22.11";
- # ZSH with good config
- programs.zsh = {
- # ZSH on
+ # my nushell config
+ programs.nushell = {
+ # we use nushell
enable = true;
- # we want completion
- enableCompletion = true;
-
- # we want suggestions of already typed stuff
- autosuggestion.enable = true;
-
- # we want nice command highlighting
- syntaxHighlighting.enable = true;
-
- # better history
- history = {
- # save timestamps
- extended = true;
-
- # kill dupes over full history
- ignoreAllDups = true;
-
- # don't share history between sessions
- share = false;
- };
+ # shell config
+ extraConfig = ''
+ $env.config = {
+ table: {
+ mode: none
+ }
+ }
+ '';
# aliases
shellAliases = {
@@ -54,14 +42,14 @@
neko = "ssh neko.fritz.box";
nekoroot = "ssh root@neko.fritz.box";
};
- };
+ };
# nice prompt
# https://starship.rs/config/
# https://draculatheme.com/starship
programs.starship = {
enable = true;
- enableZshIntegration = true;
+ enableNushellIntegration = true;
settings = {
aws.style = "bold #ffb86c";
cmd_duration.style = "bold #f1fa8c";
@@ -87,37 +75,20 @@
# nice cd
programs.zoxide = {
enable = true;
- enableZshIntegration = true;
+ enableNushellIntegration = true;
options = [ "--cmd" "cd" ];
};
- # integrate fuzzy search
- programs.fzf = {
- enable = true;
- enableZshIntegration = true;
- };
-
# better completion
programs.carapace = {
enable = true;
- enableZshIntegration = true;
+ enableNushellIntegration = true;
};
# better ls, adds la and Co. aliases, too
programs.eza = {
enable = true;
- enableZshIntegration = true;
- };
-
- # tmux replacement
- programs.zellij = {
- enable = true;
- enableZshIntegration = true;
- settings = {
- theme = "catppuccin-mocha";
- pane_frames = false;
- on_force_close = "quit";
- };
+ enableNushellIntegration = true;
};
# better cat
diff --git a/share/users.nix b/share/users.nix
index fde40bf..6c942d4 100644
--- a/share/users.nix
+++ b/share/users.nix
@@ -14,8 +14,8 @@ in
# all users and passwords are defined here
mutableUsers = false;
- # default shell is ZSH
- defaultUserShell = pkgs.zsh;
+ # default shell is nushell
+ defaultUserShell = pkgs.nushell;
#
# administrator