completely refactor and modularize flake

This commit is contained in:
willifan 2024-12-26 23:10:52 +01:00
parent 3b1ed7e281
commit b7210fcf8e
141 changed files with 884 additions and 2605 deletions

View file

@ -0,0 +1,20 @@
{ ... }:
{
programs = {
bash = {
enable = true;
shellAliases = {
ls = "eza";
};
};
starship = {
enableBashIntegration = true;
};
};
# programs.bash.blesh.enable = true;
}

View file

@ -0,0 +1,16 @@
{ pkgs, ... }:
{
home-manager.users.willifan = {
imports = [
./bash.nix
./eza.nix
./hyfetch.nix
./nushell.nix
./ssh.nix
./starship.nix
./zoxide.nix
];
};
}

View file

@ -0,0 +1,8 @@
{ ... }:
{
programs.eza = {
enable = true;
};
}

View file

@ -0,0 +1,53 @@
{ ... }:
{
programs.hyfetch = {
enable = true;
settings = {
preset = "transgender";
mode = "rgb";
light_dark = "dark";
lightness = 0.69;
color_align = {
mode = "horizontal";
custom_colors = [];
fore_back = null;
};
backend = "fastfetch";
args = null;
distro = null;
pride_month_shown = [];
pride_month_disable = false;
};
};
programs.fastfetch = {
enable = true;
settings = {
modules = [
"title"
"separator"
"os"
"host"
{
type = "localip";
showIpv6 = false;
showMac = false;
showSpeed = false;
showMtu = false;
showLoop = false;
showFlags = false;
}
"kernel"
"uptime"
"packages"
"shell"
"wm"
"cpu"
"gpu"
"memory"
"break"
"colors"
];
};
};
}

View file

@ -0,0 +1,13 @@
{ ... }:
{
programs = {
nushell = {
enable = true;
};
starship = {
enableNushellIntegration = true;
};
};
}

View file

@ -0,0 +1,3 @@
{ ... }:
{
}

View file

@ -0,0 +1,159 @@
{ lib, config, ... }:
{
programs.starship = {
enable = true;
settings = {
format = lib.concatStrings [
"[ ](fg:twelve bg:trans_blue)"
"[ ](bg:trans_blue)[ ](fg:trans_blue bg:trans_pink)"
"$hostname"
"[ ](bg:trans_pink)[ ](fg:trans_pink bg:trans_white)"
"$directory"
"[ ](bg:trans_white)[ ](fg:trans_white bg:trans_pink)"
"("
"$git_branch"
"$git_status"
")"
"[ ](bg:trans_pink)[ ](fg:trans_pink bg:trans_blue)"
"$character"
];
right_format = lib.concatStrings [
"$cmd_duration"
"("
"$python"
"$conda"
"$c"
"$cmake"
"$golang"
"$haskell"
"$rust"
")"
];
palette = "stylix";
# Disables the blank line at the start of the prompt
add_newline = true;
palettes.stylix = {
first = config.lib.stylix.colors.withHashtag.base00;
second = config.lib.stylix.colors.withHashtag.base01;
third = config.lib.stylix.colors.withHashtag.base02;
fourth = config.lib.stylix.colors.withHashtag.base03;
fifth = config.lib.stylix.colors.withHashtag.base04;
sixth = config.lib.stylix.colors.withHashtag.base05;
seventh = config.lib.stylix.colors.withHashtag.base06;
eighth = config.lib.stylix.colors.withHashtag.base07;
baseeight = config.lib.stylix.colors.withHashtag.base08;
basenine = config.lib.stylix.colors.withHashtag.base09;
ten = config.lib.stylix.colors.withHashtag.base0A;
eleven = config.lib.stylix.colors.withHashtag.base0B;
twelve = config.lib.stylix.colors.withHashtag.base0C;
thirteen = config.lib.stylix.colors.withHashtag.base0D;
fourteen = config.lib.stylix.colors.withHashtag.base0E;
fifteen = config.lib.stylix.colors.withHashtag.base0F;
trans_blue = "#55CDFD";
trans_pink = "#F6AAB7";
trans_white = "#FFFFFF";
pride_red = "#FF1E26";
pride_orange = "#FE941E";
pride_yellow = "#FFFF00";
pride_green = "#06BD00";
pride_blue = "#001A98";
pride_violet = "#760088";
# Text color:
black = "#272D37";
white = "#CBF4F8";
github = "#B02B10";
};
hostname = {
ssh_only = false;
style = "bg:trans_pink fg:twelve";
format = "[$hostname](bold $style)";
};
directory = {
style = "bg:trans_white fg:twelve";
format = "[ $path](bold $style)($style)[$read_only](bold $style)";
truncation_symbol = "/";
truncate_to_repo = true;
read_only =" ";
};
c = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
format = "[$symbol($version) ]($style)";
};
cmake = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
format = "[$symbol($version) ]($style)";
};
golang = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
format = "[$symbol($version) ]($style)";
};
python = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
python_binary = ["./venv/bin/python" "./env/Scripts/python" "python" "python3" "python2"];
format = "[$symbol($version)]($style)[ (\($virtualenv\)) ](bg:fourth fg:white)";
};
conda = {
symbol = " ";
style = "bg:fourth fg:white";
ignore_base = false;
format = "[$symbol ($environment) ]($style)";
};
haskell = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
format = "[$symbol($version) ]($style)";
};
rust = {
symbol = " ";
version_format = "\${raw}";
style = "bg:fourth fg:white";
format = "[$symbol($version) ]($style)";
};
git_branch = {
symbol = " ";
style = "bg:trans_pink fg:twelve";
format = "[$symbol $branch ](bold $style)";
};
git_status = {
style = "bold bg:trans_pink fg:twelve";
format = "([\($all_status$ahead_behind\)](bold $style))";
};
cmd_duration = {
style = "bg:eighth fg:twelve";
format = "[ $duration ](bold $style)";
};
character = {
success_symbol = "[:3 ](bold fg:twelve bg:trans_blue)[](fg:trans_blue)";
error_symbol = "[:o ](bold fg:twelve bg:trans_blue)[](fg:trans_blue)";
};
};
};
}

View file

@ -0,0 +1,11 @@
{ ... }:
{
programs.zoxide = {
enable = true;
options = [
"--cmd cd"
];
};
}