Merge pull request #25648 from yacinehmito/custom
Make zshrc more predictable
This commit is contained in:
commit
8189811d3f
@ -42,6 +42,10 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
|
# Prevent zsh from overwriting oh-my-zsh's prompt
|
||||||
|
programs.zsh.promptInit = mkDefault "";
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [ oh-my-zsh ];
|
environment.systemPackages = with pkgs; [ oh-my-zsh ];
|
||||||
|
|
||||||
programs.zsh.interactiveShellInit = with pkgs; with builtins; ''
|
programs.zsh.interactiveShellInit = with pkgs; with builtins; ''
|
||||||
|
@ -97,45 +97,6 @@ in
|
|||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
programs.zsh = {
|
|
||||||
|
|
||||||
shellInit = ''
|
|
||||||
. ${config.system.build.setEnvironment}
|
|
||||||
|
|
||||||
${cfge.shellInit}
|
|
||||||
'';
|
|
||||||
|
|
||||||
loginShellInit = cfge.loginShellInit;
|
|
||||||
|
|
||||||
interactiveShellInit = ''
|
|
||||||
# history defaults
|
|
||||||
SAVEHIST=2000
|
|
||||||
HISTSIZE=2000
|
|
||||||
HISTFILE=$HOME/.zsh_history
|
|
||||||
|
|
||||||
setopt HIST_IGNORE_DUPS SHARE_HISTORY HIST_FCNTL_LOCK
|
|
||||||
|
|
||||||
# Tell zsh how to find installed completions
|
|
||||||
for p in ''${(z)NIX_PROFILES}; do
|
|
||||||
fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
|
|
||||||
done
|
|
||||||
|
|
||||||
${if cfg.enableCompletion then "autoload -U compinit && compinit" else ""}
|
|
||||||
|
|
||||||
${optionalString (cfg.enableAutosuggestions)
|
|
||||||
"source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
|
|
||||||
}
|
|
||||||
|
|
||||||
${zshAliases}
|
|
||||||
${cfg.promptInit}
|
|
||||||
|
|
||||||
${cfge.interactiveShellInit}
|
|
||||||
|
|
||||||
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
|
||||||
'';
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.etc."zshenv".text =
|
environment.etc."zshenv".text =
|
||||||
''
|
''
|
||||||
# /etc/zshenv: DO NOT EDIT -- this file has been generated automatically.
|
# /etc/zshenv: DO NOT EDIT -- this file has been generated automatically.
|
||||||
@ -146,6 +107,10 @@ in
|
|||||||
if [ -n "$__ETC_ZSHENV_SOURCED" ]; then return; fi
|
if [ -n "$__ETC_ZSHENV_SOURCED" ]; then return; fi
|
||||||
export __ETC_ZSHENV_SOURCED=1
|
export __ETC_ZSHENV_SOURCED=1
|
||||||
|
|
||||||
|
. ${config.system.build.setEnvironment}
|
||||||
|
|
||||||
|
${cfge.shellInit}
|
||||||
|
|
||||||
${cfg.shellInit}
|
${cfg.shellInit}
|
||||||
|
|
||||||
# Read system-wide modifications.
|
# Read system-wide modifications.
|
||||||
@ -163,6 +128,8 @@ in
|
|||||||
if [ -n "$__ETC_ZPROFILE_SOURCED" ]; then return; fi
|
if [ -n "$__ETC_ZPROFILE_SOURCED" ]; then return; fi
|
||||||
__ETC_ZPROFILE_SOURCED=1
|
__ETC_ZPROFILE_SOURCED=1
|
||||||
|
|
||||||
|
${cfge.loginShellInit}
|
||||||
|
|
||||||
${cfg.loginShellInit}
|
${cfg.loginShellInit}
|
||||||
|
|
||||||
# Read system-wide modifications.
|
# Read system-wide modifications.
|
||||||
@ -182,8 +149,34 @@ in
|
|||||||
|
|
||||||
. /etc/zinputrc
|
. /etc/zinputrc
|
||||||
|
|
||||||
|
# history defaults
|
||||||
|
SAVEHIST=2000
|
||||||
|
HISTSIZE=2000
|
||||||
|
HISTFILE=$HOME/.zsh_history
|
||||||
|
|
||||||
|
setopt HIST_IGNORE_DUPS SHARE_HISTORY HIST_FCNTL_LOCK
|
||||||
|
|
||||||
|
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
||||||
|
|
||||||
|
${optionalString cfg.enableCompletion "autoload -U compinit && compinit"}
|
||||||
|
|
||||||
|
${optionalString (cfg.enableAutosuggestions)
|
||||||
|
"source ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
|
||||||
|
}
|
||||||
|
|
||||||
|
${zshAliases}
|
||||||
|
|
||||||
|
${cfge.interactiveShellInit}
|
||||||
|
|
||||||
${cfg.interactiveShellInit}
|
${cfg.interactiveShellInit}
|
||||||
|
|
||||||
|
${cfg.promptInit}
|
||||||
|
|
||||||
|
# Tell zsh how to find installed completions
|
||||||
|
for p in ''${(z)NIX_PROFILES}; do
|
||||||
|
fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
|
||||||
|
done
|
||||||
|
|
||||||
# Read system-wide modifications.
|
# Read system-wide modifications.
|
||||||
if test -f /etc/zshrc.local; then
|
if test -f /etc/zshrc.local; then
|
||||||
. /etc/zshrc.local
|
. /etc/zshrc.local
|
||||||
|
Loading…
x
Reference in New Issue
Block a user