mirror of
https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api.git
synced 2024-11-13 22:23:16 +00:00
33 lines
1.2 KiB
Nix
33 lines
1.2 KiB
Nix
{ pkgs }:
|
|
|
|
let
|
|
zshWithPlugins = pkgs.zsh.overrideAttrs (oldAttrs: {
|
|
postInstall = oldAttrs.postInstall + ''
|
|
# Create symlinks for plugins in $out/share
|
|
mkdir -p $out/share/zsh/plugins
|
|
ln -s ${pkgs.zsh-autosuggestions}/share/zsh-autosuggestions $out/share/zsh/plugins/autosuggestions
|
|
ln -s ${pkgs.zsh-syntax-highlighting}/share/zsh-syntax-highlighting $out/share/zsh/plugins/syntax-highlighting
|
|
'';
|
|
});
|
|
in
|
|
{
|
|
shell = zshWithPlugins;
|
|
shellSetup = ''
|
|
# create .zshrc file if it doesnt exist
|
|
if [ ! -f ~/.zshrc ]; then
|
|
echo "Creating a default .zshrc file..."
|
|
touch ~/.zshrc
|
|
fi
|
|
|
|
# add zsh-autosuggestions and zsh-syntax-highlighting in zshrc
|
|
if ! grep -q "source .*zsh-autosuggestions.zsh" ~/.zshrc; then
|
|
echo "Adding zsh-autosuggestions plugin to .zshrc..."
|
|
echo "source ${zshWithPlugins}/share/zsh/plugins/autosuggestions/zsh-autosuggestions.zsh" >> ~/.zshrc
|
|
fi
|
|
if ! grep -q "source .*zsh-syntax-highlighting.zsh" ~/.zshrc; then
|
|
echo "Adding zsh-syntax-highlighting plugin to .zshrc..."
|
|
echo "source ${zshWithPlugins}/share/zsh/plugins/syntax-highlighting/zsh-syntax-highlighting.zsh" >> ~/.zshrc
|
|
fi
|
|
'';
|
|
}
|