2024-03-09 12:21:37 +01:00
|
|
|
|
{
|
|
|
|
|
config,
|
|
|
|
|
pkgs,
|
2024-10-17 17:41:03 +02:00
|
|
|
|
lib,
|
2024-03-09 12:21:37 +01:00
|
|
|
|
inputs,
|
|
|
|
|
...
|
|
|
|
|
}: {
|
|
|
|
|
programs = {
|
2024-10-17 17:41:03 +02:00
|
|
|
|
zsh = {
|
2024-10-19 14:15:19 +02:00
|
|
|
|
enable =
|
|
|
|
|
if (config.os == "linux")
|
|
|
|
|
then true
|
|
|
|
|
else false;
|
2024-10-17 17:41:03 +02:00
|
|
|
|
oh-my-zsh = {
|
|
|
|
|
enable = true;
|
|
|
|
|
plugins = ["git"];
|
|
|
|
|
theme = "lambda";
|
|
|
|
|
};
|
|
|
|
|
initExtraFirst =
|
|
|
|
|
if !(config.os == "linux")
|
|
|
|
|
then "export PATH=$PATH:~/.cargo/bin/\n"
|
|
|
|
|
else "";
|
|
|
|
|
plugins = [
|
|
|
|
|
{
|
|
|
|
|
name = "zsh-autocomplete";
|
|
|
|
|
src = pkgs.fetchFromGitHub {
|
|
|
|
|
owner = "marlonrichert";
|
|
|
|
|
repo = "zsh-autocomplete";
|
|
|
|
|
rev = "23.07.13";
|
|
|
|
|
sha256 = "sha256-/6V6IHwB5p0GT1u5SAiUa20LjFDSrMo731jFBq/bnpw=";
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
];
|
|
|
|
|
};
|
2024-03-09 12:21:37 +01:00
|
|
|
|
atuin = {
|
|
|
|
|
enable = true;
|
2024-06-03 17:55:51 +02:00
|
|
|
|
enableNushellIntegration = true;
|
2024-03-09 12:21:37 +01:00
|
|
|
|
};
|
|
|
|
|
eza.enable = true;
|
|
|
|
|
nushell = {
|
|
|
|
|
enable = true;
|
2024-05-06 11:40:28 +02:00
|
|
|
|
shellAliases = {
|
2024-05-06 21:29:10 +02:00
|
|
|
|
ls = "eza -l --icons --tree --level 2 --header --git --group-directories-first";
|
|
|
|
|
# reload = "clear; source $nu.config-path";
|
2024-05-06 11:40:28 +02:00
|
|
|
|
};
|
2024-03-30 17:46:21 +01:00
|
|
|
|
extraConfig = "maxfetch";
|
2024-03-09 12:21:37 +01:00
|
|
|
|
configFile = {
|
2024-04-12 12:50:19 +02:00
|
|
|
|
text = builtins.readFile ../config-files/config.nu;
|
2024-03-09 12:21:37 +01:00
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
carapace.enable = true;
|
|
|
|
|
carapace.enableNushellIntegration = true;
|
|
|
|
|
starship = let
|
|
|
|
|
flavour = "mocha";
|
|
|
|
|
in {
|
|
|
|
|
enable = true;
|
|
|
|
|
enableNushellIntegration = true;
|
|
|
|
|
enableBashIntegration = true;
|
|
|
|
|
enableZshIntegration = true;
|
|
|
|
|
settings =
|
|
|
|
|
{
|
|
|
|
|
# Other config here
|
|
|
|
|
character = {
|
|
|
|
|
success_symbol = "[λ::](bold green)";
|
|
|
|
|
error_symbol = "[λ::](bold red)";
|
|
|
|
|
};
|
|
|
|
|
username = {
|
|
|
|
|
style_user = "bold pink";
|
|
|
|
|
format = "[$user]($style)";
|
|
|
|
|
show_always = true;
|
|
|
|
|
disabled = false;
|
|
|
|
|
};
|
|
|
|
|
hostname = {
|
|
|
|
|
ssh_only = false;
|
|
|
|
|
format = "[ 🏳️⚧️ ](bold pink)[$hostname](bold flamingo)";
|
|
|
|
|
disabled = false;
|
|
|
|
|
};
|
|
|
|
|
right_format = "$all";
|
|
|
|
|
format = ''
|
|
|
|
|
$username$hostname in $directory
|
|
|
|
|
$character'';
|
|
|
|
|
palette = "catppuccin_${flavour}";
|
|
|
|
|
}
|
|
|
|
|
// builtins.fromTOML (builtins.readFile (pkgs.fetchFromGitHub {
|
|
|
|
|
owner = "catppuccin";
|
|
|
|
|
repo = "starship";
|
|
|
|
|
rev = "5629d2356f62a9f2f8efad3ff37476c19969bd4f"; # Replace with the latest commit hash
|
|
|
|
|
sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0=";
|
|
|
|
|
}
|
|
|
|
|
+ /palettes/${flavour}.toml));
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|