oh-my-posh setup
This commit is contained in:
parent
b8ca55b940
commit
5d20b1d45a
@ -3,15 +3,20 @@
|
|||||||
lib,
|
lib,
|
||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}:
|
}: {
|
||||||
{
|
|
||||||
options = {
|
options = {
|
||||||
terminal_tools.enable =
|
terminal_tools.enable =
|
||||||
lib.mkEnableOption "enable terminal tools module";
|
lib.mkEnableOption "enable terminal tools module";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
./tools/oh-my-posh.nix
|
||||||
|
];
|
||||||
|
|
||||||
config = lib.mkIf config.terminal_tools.enable {
|
config = lib.mkIf config.terminal_tools.enable {
|
||||||
|
|
||||||
|
oh-my-posh.enable = lib.mkDefault true;
|
||||||
|
|
||||||
programs = {
|
programs = {
|
||||||
bat.enable = true;
|
bat.enable = true;
|
||||||
btop.enable = true;
|
btop.enable = true;
|
||||||
@ -28,14 +33,6 @@
|
|||||||
spicetify.enable = true;
|
spicetify.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.oh-my-posh = {
|
|
||||||
enable = true;
|
|
||||||
enableBashIntegration = true;
|
|
||||||
#settings = '''';
|
|
||||||
#useTheme = "catppuccin_mocha";
|
|
||||||
useTheme = "kali";
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.zoxide = {
|
programs.zoxide = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableBashIntegration = true;
|
enableBashIntegration = true;
|
||||||
@ -65,7 +62,6 @@
|
|||||||
figlet
|
figlet
|
||||||
jp2a
|
jp2a
|
||||||
yt-dlp
|
yt-dlp
|
||||||
oh-my-posh
|
|
||||||
eza
|
eza
|
||||||
nvtopPackages.full
|
nvtopPackages.full
|
||||||
neofetch
|
neofetch
|
||||||
|
|||||||
132
nixos/packages/tools/oh-my-posh.nix
Normal file
132
nixos/packages/tools/oh-my-posh.nix
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
options = {
|
||||||
|
oh-my-posh.enable = lib.mkEnableOption "enable oh-my-posh";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf config.oh-my-posh.enable {
|
||||||
|
programs.oh-my-posh = {
|
||||||
|
enable = true;
|
||||||
|
enableBashIntegration = true;
|
||||||
|
settings = {
|
||||||
|
"$schema" = "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json";
|
||||||
|
"blocks" = [
|
||||||
|
{
|
||||||
|
"alignment" = "left";
|
||||||
|
"segments" = [
|
||||||
|
{
|
||||||
|
"type" = "session";
|
||||||
|
"foreground" = "lightBlue";
|
||||||
|
"foreground_templates" = [
|
||||||
|
"{{ if .Root }}lightRed{{ end }}"
|
||||||
|
];
|
||||||
|
"properties" = {
|
||||||
|
"display_host" = true;
|
||||||
|
};
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>┌──(</>{{ .UserName }}{{ if .Root }}💀{{ else }} {{ end }}{{ .HostName }}<{{ if .Root }}lightBlue{{ else }}green{{ end }}>)</>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "nix-shell";
|
||||||
|
"style" = "powerline";
|
||||||
|
"foreground" = "blue";
|
||||||
|
"background" = "transparent";
|
||||||
|
"template" = "{{if eq .Type \"impure\" }}[ nix-shell]{{ end }}";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "python";
|
||||||
|
"foreground" = "yellow";
|
||||||
|
"properties" = {
|
||||||
|
"fetch_version" = true;
|
||||||
|
"fetch_virtual_env" = true;
|
||||||
|
"display_default" = false;
|
||||||
|
"display_mode" = "files";
|
||||||
|
};
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>-[</> {{ if .Error }}{{ .Error }}{{ else }}{{ if .Venv }}{{ .Venv }}{{ end }}{{ .Full }}{{ end }}<{{ if .Root }}lightBlue{{ else }}green{{ end }}>]</>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "go";
|
||||||
|
"style" = "powerline";
|
||||||
|
"powerline_symbol" = "";
|
||||||
|
"foreground" = "#7FD5EA";
|
||||||
|
"display_mode" = "files";
|
||||||
|
"fetch_version" = false;
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>-[</> {{ if .Error }}{{ .Error }}{{ else }}OS:{{if eq .Env.GOOS \"linux\"}}{{else if eq .Env.GOOS \"windows\"}}{{else}}{{.Env.GOOS}}{{end}} ARCH:{{.Env.GOARCH}}{{ end }}<{{ if .Root }}lightBlue{{ else }}green{{ end }}>]</>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "path";
|
||||||
|
"foreground" = "lightWhite";
|
||||||
|
"properties" = {
|
||||||
|
"folder_separator_icon" = "<#c0c0c0>/</>";
|
||||||
|
"style" = "full";
|
||||||
|
};
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>-[</>{{if eq .Folder \"foglar\"}}~{{else}}{{ .Folder }}{{end}}<{{ if .Root }}lightBlue{{ else }}green{{ end }}>]</>";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "git";
|
||||||
|
"foreground" = "white";
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>-[</>{{ .HEAD }}<{{ if .Root }}lightBlue{{ else }}green{{ end }}>]</>";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
"type" = "prompt";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"alignment" = "right";
|
||||||
|
"segment" = [
|
||||||
|
{
|
||||||
|
"type" = "executiontime";
|
||||||
|
"foreground" = "white";
|
||||||
|
"properties" = {
|
||||||
|
"always_enabled" = true;
|
||||||
|
"style" = "round";
|
||||||
|
};
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = " {{ .FormattedMs }} ";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"type" = "status";
|
||||||
|
"foreground" = "green";
|
||||||
|
"foreground_templates" = [
|
||||||
|
"{{ if gt .Code 0 }}red{{ end }}"
|
||||||
|
];
|
||||||
|
"properties" = {
|
||||||
|
"always_enabled" = true;
|
||||||
|
};
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = " {{ if gt .Code 0 }}{{.Code}}{{else}}\ueab2{{ end }} ";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
"type" = "prompt";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"alignment" = "left";
|
||||||
|
"newline" = true;
|
||||||
|
"segments" = [
|
||||||
|
{
|
||||||
|
"type" = "text";
|
||||||
|
"foreground" = "lightBlue";
|
||||||
|
"style" = "plain";
|
||||||
|
"template" = "<{{ if .Root }}lightBlue{{ else }}green{{ end }}>└─</>{{ if .Root }}<lightRed>#</>{{ else }}\${{ end }} ";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
"type" = "prompt";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
"version" = 2;
|
||||||
|
};
|
||||||
|
#useTheme = "catppuccin_mocha";
|
||||||
|
useTheme = "kali";
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
oh-my-posh
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user