feat(gui): switch to catppuccin module
This commit is contained in:
parent
2751536816
commit
a9b24989ac
|
@ -12,6 +12,7 @@
|
||||||
plasma-manager.url = "github:pjones/plasma-manager";
|
plasma-manager.url = "github:pjones/plasma-manager";
|
||||||
plasma-manager.inputs.nixpkgs.follows = "nixpkgs";
|
plasma-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
plasma-manager.inputs.home-manager.follows = "home-manager";
|
plasma-manager.inputs.home-manager.follows = "home-manager";
|
||||||
|
catppuccin.url = "github:catppuccin/nix";
|
||||||
lanzaboote.url = "github:nix-community/lanzaboote/v0.3.0";
|
lanzaboote.url = "github:nix-community/lanzaboote/v0.3.0";
|
||||||
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
|
lanzaboote.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
|
|
@ -7,95 +7,7 @@ in mkIf cfg.enable {
|
||||||
programs.btop = {
|
programs.btop = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
color_theme = "catppuccin";
|
|
||||||
theme_background = false;
|
theme_background = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file."${config.xdg.configHome}/btop/themes/catppuccin.theme".text = with (import ../gui/catppuccin/palette.nix)
|
|
||||||
.${config.passthrough.catppuccin.palette}; ''
|
|
||||||
# Main background, empty for terminal default, need to be empty if you want transparent background
|
|
||||||
theme[main_bg]="${base}"
|
|
||||||
|
|
||||||
# Main text color
|
|
||||||
theme[main_fg]="${text}"
|
|
||||||
|
|
||||||
# Title color for boxes
|
|
||||||
theme[title]="${text}"
|
|
||||||
|
|
||||||
# Highlight color for keyboard shortcuts
|
|
||||||
theme[hi_fg]="${blue}"
|
|
||||||
|
|
||||||
# Background color of selected item in processes box
|
|
||||||
theme[selected_bg]="${surface1}"
|
|
||||||
|
|
||||||
# Foreground color of selected item in processes box
|
|
||||||
theme[selected_fg]="${blue}"
|
|
||||||
|
|
||||||
# Color of inactive/disabled text
|
|
||||||
theme[inactive_fg]="${overlay1}"
|
|
||||||
|
|
||||||
# Color of text appearing on top of graphs, i.e uptime and current network graph scaling
|
|
||||||
theme[graph_text]="${rosewater}"
|
|
||||||
|
|
||||||
# Background color of the percentage meters
|
|
||||||
theme[meter_bg]="${surface1}"
|
|
||||||
|
|
||||||
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
|
||||||
theme[proc_misc]="${rosewater}"
|
|
||||||
|
|
||||||
# CPU, Memory, Network, Proc box outline colors
|
|
||||||
theme[cpu_box]="${mauve}" #Mauve
|
|
||||||
theme[mem_box]="${green}" #Green
|
|
||||||
theme[net_box]="${maroon}" #Maroon
|
|
||||||
theme[proc_box]="${blue}" #Blue
|
|
||||||
|
|
||||||
# Box divider line and small boxes line color
|
|
||||||
theme[div_line]="${overlay0}"
|
|
||||||
|
|
||||||
# Temperature graph color (Green -> Yellow -> Red)
|
|
||||||
theme[temp_start]="${green}"
|
|
||||||
theme[temp_mid]="${yellow}"
|
|
||||||
theme[temp_end]="${red}"
|
|
||||||
|
|
||||||
# CPU graph colors (Teal -> Lavender)
|
|
||||||
theme[cpu_start]="${teal}"
|
|
||||||
theme[cpu_mid]="${sapphire}"
|
|
||||||
theme[cpu_end]="${lavender}"
|
|
||||||
|
|
||||||
# Mem/Disk free meter (Mauve -> Lavender -> Blue)
|
|
||||||
theme[free_start]="${mauve}"
|
|
||||||
theme[free_mid]="${lavender}"
|
|
||||||
theme[free_end]="${blue}"
|
|
||||||
|
|
||||||
# Mem/Disk cached meter (Sapphire -> Lavender)
|
|
||||||
theme[cached_start]="${sapphire}"
|
|
||||||
theme[cached_mid]="${blue}"
|
|
||||||
theme[cached_end]="${lavender}"
|
|
||||||
|
|
||||||
# Mem/Disk available meter (Peach -> Red)
|
|
||||||
theme[available_start]="${peach}"
|
|
||||||
theme[available_mid]="${maroon}"
|
|
||||||
theme[available_end]="${red}"
|
|
||||||
|
|
||||||
# Mem/Disk used meter (Green -> Sky)
|
|
||||||
theme[used_start]="${green}"
|
|
||||||
theme[used_mid]="${teal}"
|
|
||||||
theme[used_end]="${sky}"
|
|
||||||
|
|
||||||
# Download graph colors (Peach -> Red)
|
|
||||||
theme[download_start]="${peach}"
|
|
||||||
theme[download_mid]="${maroon}"
|
|
||||||
theme[download_end]="${red}"
|
|
||||||
|
|
||||||
# Upload graph colors (Green -> Sky)
|
|
||||||
theme[upload_start]="${green}"
|
|
||||||
theme[upload_mid]="${teal}"
|
|
||||||
theme[upload_end]="${sky}"
|
|
||||||
|
|
||||||
# Process box color gradient for threads, mem and cpu usage (Sapphire -> Mauve)
|
|
||||||
theme[process_start]="${sapphire}"
|
|
||||||
theme[process_mid]="${lavender}"
|
|
||||||
theme[process_end]="${mauve}"
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
|
|
BIN
home/catppuccin/flake.png
Normal file
BIN
home/catppuccin/flake.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 47 KiB |
59
home/catppuccin/home.nix
Normal file
59
home/catppuccin/home.nix
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
{ pkgs
|
||||||
|
, lib
|
||||||
|
, config
|
||||||
|
, ... }: with lib; let
|
||||||
|
cfg = config.passthrough.catppuccin;
|
||||||
|
palette = (import ./palette.nix).${cfg.palette};
|
||||||
|
in mkIf cfg.enable {
|
||||||
|
catppuccin = {
|
||||||
|
enable = true;
|
||||||
|
accent = "pink";
|
||||||
|
flavor = "mocha";
|
||||||
|
};
|
||||||
|
|
||||||
|
gtk.theme = { inherit (cfg.gtk) package name; };
|
||||||
|
home.pointerCursor = { inherit (cfg.cursor) package name; };
|
||||||
|
|
||||||
|
# sway colour palette override
|
||||||
|
wayland.windowManager.sway.config = {
|
||||||
|
colors = {
|
||||||
|
focused = { border = "$lavender"; background = "$base"; text = "$text"; indicator = "$rosewater"; childBorder = "$lavender"; };
|
||||||
|
focusedInactive = { border = "$overlay0"; background = "$base"; text = "$text"; indicator = "$rosewater"; childBorder = "$overlay0"; };
|
||||||
|
unfocused = { border = "$overlay0"; background = "$base"; text = "$text"; indicator = "$rosewater"; childBorder = "$overlay0"; };
|
||||||
|
urgent = { border = "$peach"; background = "$base"; text = "$peach"; indicator = "$overlay0"; childBorder = "$peach"; };
|
||||||
|
placeholder = { border = "$overlay0"; background = "$base"; text = "$text"; indicator = "$overlay0"; childBorder = "$overlay0"; };
|
||||||
|
background = "$base";
|
||||||
|
};
|
||||||
|
|
||||||
|
bars = mkForce [ {
|
||||||
|
colors = {
|
||||||
|
background = "$base";
|
||||||
|
statusline = "$text";
|
||||||
|
focusedStatusline = "$text";
|
||||||
|
focusedSeparator = "$base";
|
||||||
|
focusedWorkspace = { border = "$base"; background = "$base"; text = "$green"; };
|
||||||
|
activeWorkspace = { border = "$base"; background = "$base"; text = "$blue"; };
|
||||||
|
inactiveWorkspace = { border = "$base"; background = "$base"; text = "$surface1"; };
|
||||||
|
urgentWorkspace = { border = "$base"; background = "$base"; text = "$surface1"; };
|
||||||
|
bindingMode = { border = "$base"; background = "$base"; text = "$surface1"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
mode = "dock";
|
||||||
|
position = "bottom";
|
||||||
|
workspaceButtons = true;
|
||||||
|
workspaceNumbers = true;
|
||||||
|
statusCommand = "${pkgs.i3status}/bin/i3status";
|
||||||
|
fonts = {
|
||||||
|
names = [ "monospace" ];
|
||||||
|
size = 8.0;
|
||||||
|
};
|
||||||
|
trayOutput = "primary";
|
||||||
|
} ];
|
||||||
|
|
||||||
|
output."*".bg = mkForce "${./flake.png} fill";
|
||||||
|
gaps.inner = 12;
|
||||||
|
gaps.outer = 5;
|
||||||
|
# dodge the status bar
|
||||||
|
gaps.bottom = 0;
|
||||||
|
};
|
||||||
|
}
|
|
@ -8,26 +8,30 @@ in {
|
||||||
options.home.catppuccin = {
|
options.home.catppuccin = {
|
||||||
enable = mkEnableOption "catppuccin colour scheme" // { default = gui; };
|
enable = mkEnableOption "catppuccin colour scheme" // { default = gui; };
|
||||||
|
|
||||||
palette = mkOption {
|
|
||||||
type = with types; str;
|
|
||||||
default = "frappe";
|
|
||||||
description = "colour palette in use";
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk = {
|
gtk = {
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = with types; package;
|
type = with types; package;
|
||||||
default = pkgs.catppuccin-gtk.override {
|
default = (pkgs.catppuccin-gtk.overrideAttrs {
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "catppuccin";
|
||||||
|
repo = "gtk";
|
||||||
|
rev = "v1.0.3";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
hash = "sha256-q5/VcFsm3vNEw55zq/vcM11eo456SYE5TQA3g2VQjGc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
postUnpack = "";
|
||||||
|
}).override {
|
||||||
accents = [ "pink" ];
|
accents = [ "pink" ];
|
||||||
size = "compact";
|
size = "compact";
|
||||||
#tweaks = [ "rimless" "black" ];
|
#tweaks = [ "rimless" "black" ];
|
||||||
variant = "frappe";
|
variant = "mocha";
|
||||||
};
|
};
|
||||||
description = "catppuccin gtk theme package";
|
description = "catppuccin gtk theme package";
|
||||||
};
|
};
|
||||||
name = mkOption {
|
name = mkOption {
|
||||||
type = with types; str;
|
type = with types; str;
|
||||||
default = "Catppuccin-Frappe-Compact-Pink-Dark";
|
default = "catppuccin-mocha-pink-compact+default";
|
||||||
description = "name of catppuccin gtk theme";
|
description = "name of catppuccin gtk theme";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -35,12 +39,12 @@ in {
|
||||||
cursor = {
|
cursor = {
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = with types; package;
|
type = with types; package;
|
||||||
default = pkgs.catppuccin-cursors.frappeDark;
|
default = pkgs.catppuccin-cursors.mochaDark;
|
||||||
description = "catppuccin cursor theme package";
|
description = "catppuccin cursor theme package";
|
||||||
};
|
};
|
||||||
name = mkOption {
|
name = mkOption {
|
||||||
type = with types; str;
|
type = with types; str;
|
||||||
default = "Catppuccin-Frappe-Dark-Cursors";
|
default = "catppuccin-mocha-dark-cursors";
|
||||||
description = "name of catppuccin cursor theme";
|
description = "name of catppuccin cursor theme";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -52,8 +56,10 @@ in {
|
||||||
{ passthrough.catppuccin = cfg; }
|
{ passthrough.catppuccin = cfg; }
|
||||||
];
|
];
|
||||||
|
|
||||||
|
catppuccin.enable = cfg.enable;
|
||||||
|
|
||||||
# gtk and cursor themes
|
# gtk and cursor themes
|
||||||
environment.systemPackages = with cfg; mkIf cfg.enable [
|
environment.systemPackages = with cfg; mkIf enable [
|
||||||
gtk.package cursor.package
|
gtk.package cursor.package
|
||||||
];
|
];
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 33 KiB |
Binary file not shown.
Before Width: | Height: | Size: 49 KiB |
|
@ -1,135 +0,0 @@
|
||||||
{ pkgs
|
|
||||||
, lib
|
|
||||||
, config
|
|
||||||
, ... }: with lib; let
|
|
||||||
cfg = config.passthrough.catppuccin;
|
|
||||||
palette = (import ./palette.nix).${cfg.palette};
|
|
||||||
in mkIf cfg.enable {
|
|
||||||
# cursor theme
|
|
||||||
home.pointerCursor = { inherit (cfg.cursor) package name; };
|
|
||||||
gtk.cursorTheme = { inherit (cfg.cursor) package name; };
|
|
||||||
|
|
||||||
# gtk theme
|
|
||||||
gtk.theme = { inherit (cfg.gtk) package name; };
|
|
||||||
gtk.iconTheme = {
|
|
||||||
package = pkgs.catppuccin-papirus-folders.override {
|
|
||||||
flavor = cfg.palette;
|
|
||||||
accent = "pink";
|
|
||||||
};
|
|
||||||
name = "Papirus-Dark";
|
|
||||||
};
|
|
||||||
|
|
||||||
# sway colour palette override
|
|
||||||
wayland.windowManager.sway.config = {
|
|
||||||
colors = with palette; {
|
|
||||||
focused = { border = lavender; background = base; text = text; indicator = rosewater; childBorder = lavender; };
|
|
||||||
focusedInactive = { border = overlay0; background = base; text = text; indicator = rosewater; childBorder = overlay0; };
|
|
||||||
unfocused = { border = overlay0; background = base; text = text; indicator = rosewater; childBorder = overlay0; };
|
|
||||||
urgent = { border = peach; background = base; text = peach; indicator = overlay0; childBorder = peach; };
|
|
||||||
placeholder = { border = overlay0; background = base; text = text; indicator = overlay0; childBorder = overlay0; };
|
|
||||||
background = base;
|
|
||||||
};
|
|
||||||
|
|
||||||
bars = mkForce [ {
|
|
||||||
colors = let
|
|
||||||
p = palette;
|
|
||||||
in {
|
|
||||||
background = p.base;
|
|
||||||
statusline = p.text;
|
|
||||||
focusedStatusline = p.text;
|
|
||||||
focusedSeparator = p.base;
|
|
||||||
focusedWorkspace = { border = p.base; background = p.base; text = p.green; };
|
|
||||||
activeWorkspace = { border = p.base; background = p.base; text = p.blue; };
|
|
||||||
inactiveWorkspace = { border = p.base; background = p.base; text = p.surface1; };
|
|
||||||
urgentWorkspace = { border = p.base; background = p.base; text = p.surface1; };
|
|
||||||
bindingMode = { border = p.base; background = p.base; text = p.surface1; };
|
|
||||||
};
|
|
||||||
|
|
||||||
mode = "dock";
|
|
||||||
position = "bottom";
|
|
||||||
workspaceButtons = true;
|
|
||||||
workspaceNumbers = true;
|
|
||||||
statusCommand = "${pkgs.i3status}/bin/i3status";
|
|
||||||
fonts = {
|
|
||||||
names = [ "monospace" ];
|
|
||||||
size = 8.0;
|
|
||||||
};
|
|
||||||
trayOutput = "primary";
|
|
||||||
} ];
|
|
||||||
|
|
||||||
output."*".bg = mkForce "${./flake.png} fill";
|
|
||||||
gaps.inner = 12;
|
|
||||||
gaps.outer = 5;
|
|
||||||
# dodge the status bar
|
|
||||||
gaps.bottom = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
# swaylock colour palette override
|
|
||||||
programs.swaylock.settings = with palette; let
|
|
||||||
transparent = "00000000";
|
|
||||||
in {
|
|
||||||
color = base;
|
|
||||||
bs-hl-color = rosewater;
|
|
||||||
caps-lock-bs-hl-color = rosewater;
|
|
||||||
caps-lock-key-hl-color = green;
|
|
||||||
inside-color = transparent;
|
|
||||||
inside-clear-color = transparent;
|
|
||||||
inside-caps-lock-color = transparent;
|
|
||||||
inside-ver-color = transparent;
|
|
||||||
inside-wrong-color = transparent;
|
|
||||||
key-hl-color = green;
|
|
||||||
layout-bg-color = transparent;
|
|
||||||
layout-border-color = transparent;
|
|
||||||
layout-text-color = text;
|
|
||||||
line-color = transparent;
|
|
||||||
line-clear-color = transparent;
|
|
||||||
line-caps-lock-color = transparent;
|
|
||||||
line-ver-color = transparent;
|
|
||||||
line-wrong-color = transparent;
|
|
||||||
ring-color = lavender;
|
|
||||||
ring-clear-color = rosewater;
|
|
||||||
ring-caps-lock-color = peach;
|
|
||||||
ring-ver-color = blue;
|
|
||||||
ring-wrong-color = maroon;
|
|
||||||
separator-color = transparent;
|
|
||||||
text-color = text;
|
|
||||||
text-clear-color = rosewater;
|
|
||||||
text-caps-lock-color = peach;
|
|
||||||
text-ver-color = blue;
|
|
||||||
text-wrong-color = maroon;
|
|
||||||
};
|
|
||||||
|
|
||||||
# i3status colour palette override
|
|
||||||
programs.i3status.general = with palette; {
|
|
||||||
color_good = lavender;
|
|
||||||
color_degraded = yellow;
|
|
||||||
color_bad = red;
|
|
||||||
};
|
|
||||||
|
|
||||||
# mako colour palette override
|
|
||||||
services.mako = with palette; {
|
|
||||||
backgroundColor = base;
|
|
||||||
textColor = text;
|
|
||||||
borderColor = blue;
|
|
||||||
progressColor = "over ${surface0}";
|
|
||||||
extraConfig = ''
|
|
||||||
[urgency=high]
|
|
||||||
border-color=${peach}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
# foot colour palette override
|
|
||||||
programs.foot.settings.colors = with palette; let
|
|
||||||
c = substring 1 7;
|
|
||||||
in {
|
|
||||||
foreground = c text; background = c base;
|
|
||||||
regular0 = c overlay2; regular1 = c red;
|
|
||||||
regular2 = c green; regular3 = c yellow;
|
|
||||||
regular4 = c blue; regular5 = c pink;
|
|
||||||
regular6 = c teal; regular7 = c surface2;
|
|
||||||
bright0 = c subtext0; bright1 = c red;
|
|
||||||
bright2 = c green; bright3 = c yellow;
|
|
||||||
bright4 = c blue; bright5 = c pink;
|
|
||||||
bright6 = c teal; bright7 = c surface1;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,117 +0,0 @@
|
||||||
{
|
|
||||||
latte = {
|
|
||||||
rosewater = "#dc8a78";
|
|
||||||
flamingo = "#dd7878";
|
|
||||||
pink = "#ea76cb";
|
|
||||||
mauve = "#8839ef";
|
|
||||||
red = "#d20f39";
|
|
||||||
maroon = "#e64553";
|
|
||||||
peach = "#fe640b";
|
|
||||||
yellow = "#df8e1d";
|
|
||||||
green = "#40a02b";
|
|
||||||
teal = "#179299";
|
|
||||||
sky = "#04a5e5";
|
|
||||||
sapphire = "#209fb5";
|
|
||||||
blue = "#1e66f5";
|
|
||||||
lavender = "#7287fd";
|
|
||||||
text = "#4c4f69";
|
|
||||||
subtext1 = "#5c5f77";
|
|
||||||
subtext0 = "#6c6f85";
|
|
||||||
overlay2 = "#7c7f93";
|
|
||||||
overlay1 = "#8c8fa1";
|
|
||||||
overlay0 = "#9ca0b0";
|
|
||||||
surface2 = "#acb0be";
|
|
||||||
surface1 = "#bcc0cc";
|
|
||||||
surface0 = "#ccd0da";
|
|
||||||
base = "#eff1f5";
|
|
||||||
mantle = "#e6e9ef";
|
|
||||||
crust = "#dce0e8";
|
|
||||||
};
|
|
||||||
|
|
||||||
frappe = {
|
|
||||||
rosewater = "#f2d5cf";
|
|
||||||
flamingo = "#eebebe";
|
|
||||||
pink = "#f4b8e4";
|
|
||||||
mauve = "#ca9ee6";
|
|
||||||
red = "#e78284";
|
|
||||||
maroon = "#ea999c";
|
|
||||||
peach = "#ef9f76";
|
|
||||||
yellow = "#e5c890";
|
|
||||||
green = "#a6d189";
|
|
||||||
teal = "#81c8be";
|
|
||||||
sky = "#99d1db";
|
|
||||||
sapphire = "#85c1dc";
|
|
||||||
blue = "#8caaee";
|
|
||||||
lavender = "#babbf1";
|
|
||||||
text = "#c6d0f5";
|
|
||||||
subtext1 = "#b5bfe2";
|
|
||||||
subtext0 = "#a5adce";
|
|
||||||
overlay2 = "#949cbb";
|
|
||||||
overlay1 = "#838ba7";
|
|
||||||
overlay0 = "#737994";
|
|
||||||
surface2 = "#626880";
|
|
||||||
surface1 = "#51576d";
|
|
||||||
surface0 = "#414559";
|
|
||||||
base = "#303446";
|
|
||||||
mantle = "#292c3c";
|
|
||||||
crust = "#232634";
|
|
||||||
};
|
|
||||||
|
|
||||||
macchiato = {
|
|
||||||
rosewater = "#f4dbd6";
|
|
||||||
flamingo = "#f0c6c6";
|
|
||||||
pink = "#f5bde6";
|
|
||||||
mauve = "#c6a0f6";
|
|
||||||
red = "#ed8796";
|
|
||||||
maroon = "#ee99a0";
|
|
||||||
peach = "#f5a97f";
|
|
||||||
yellow = "#eed49f";
|
|
||||||
green = "#a6da95";
|
|
||||||
teal = "#8bd5ca";
|
|
||||||
sky = "#91d7e3";
|
|
||||||
sapphire = "#7dc4e4";
|
|
||||||
blue = "#8aadf4";
|
|
||||||
lavender = "#b7bdf8";
|
|
||||||
text = "#cad3f5";
|
|
||||||
subtext1 = "#b8c0e0";
|
|
||||||
subtext0 = "#a5adcb";
|
|
||||||
overlay2 = "#939ab7";
|
|
||||||
overlay1 = "#8087a2";
|
|
||||||
overlay0 = "#6e738d";
|
|
||||||
surface2 = "#5b6078";
|
|
||||||
surface1 = "#494d64";
|
|
||||||
surface0 = "#363a4f";
|
|
||||||
base = "#24273a";
|
|
||||||
mantle = "#1e2030";
|
|
||||||
crust = "#181926";
|
|
||||||
};
|
|
||||||
|
|
||||||
mocha = {
|
|
||||||
rosewater = "#f5e0dc";
|
|
||||||
flamingo = "#f2cdcd";
|
|
||||||
pink = "#f5c2e7";
|
|
||||||
mauve = "#cba6f7";
|
|
||||||
red = "#f38ba8";
|
|
||||||
maroon = "#eba0ac";
|
|
||||||
peach = "#fab387";
|
|
||||||
yellow = "#f9e2af";
|
|
||||||
green = "#a6e3a1";
|
|
||||||
teal = "#94e2d5";
|
|
||||||
sky = "#89dceb";
|
|
||||||
sapphire = "#74c7ec";
|
|
||||||
blue = "#89b4fa";
|
|
||||||
lavender = "#b4befe";
|
|
||||||
text = "#cdd6f4";
|
|
||||||
subtext1 = "#bac2de";
|
|
||||||
subtext0 = "#a6adc8";
|
|
||||||
overlay2 = "#9399b2";
|
|
||||||
overlay1 = "#7f849c";
|
|
||||||
overlay0 = "#6c7086";
|
|
||||||
surface2 = "#585b70";
|
|
||||||
surface1 = "#45475a";
|
|
||||||
surface0 = "#313244";
|
|
||||||
base = "#1e1e2e";
|
|
||||||
mantle = "#181825";
|
|
||||||
crust = "#11111b";
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,15 +1,17 @@
|
||||||
{ pkgs
|
{ pkgs
|
||||||
, lib
|
, lib
|
||||||
, config
|
, config
|
||||||
, ... }: with lib; {
|
, ... }: with lib; let
|
||||||
imports = [ ./catppuccin/home.nix ];
|
catppuccin = config.passthrough.catppuccin.enable;
|
||||||
|
in {
|
||||||
config = mkIf config.passthrough.gui {
|
config = mkIf config.passthrough.gui {
|
||||||
# cursor theme
|
# cursor theme
|
||||||
home.pointerCursor = mkDefault {
|
home.pointerCursor = {
|
||||||
package = pkgs.bibata-cursors;
|
package = mkDefault pkgs.bibata-cursors;
|
||||||
name = "Bibata-Modern-Classic";
|
name = mkDefault "Bibata-Modern-Classic";
|
||||||
size = 24;
|
size = 24;
|
||||||
|
x11.enable = true;
|
||||||
|
gtk.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# gtk theme
|
# gtk theme
|
||||||
|
|
|
@ -5,8 +5,6 @@
|
||||||
gui = with config.global.gpu; enable && session;
|
gui = with config.global.gpu; enable && session;
|
||||||
catppuccin = config.home.catppuccin;
|
catppuccin = config.home.catppuccin;
|
||||||
in {
|
in {
|
||||||
imports = [ ./catppuccin/nixos.nix ];
|
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
users.homeModules = [
|
users.homeModules = [
|
||||||
# this module passes gui configuration to home-manager
|
# this module passes gui configuration to home-manager
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ pkgs
|
{ pkgs
|
||||||
, lib
|
, lib
|
||||||
, config
|
, config
|
||||||
|
, inputs
|
||||||
, ... }: with lib; let
|
, ... }: with lib; let
|
||||||
cfg = config.users;
|
cfg = config.users;
|
||||||
in {
|
in {
|
||||||
|
@ -137,7 +138,9 @@ in {
|
||||||
(filterAttrs (n: _: n != "root") config.users.profiles);
|
(filterAttrs (n: _: n != "root") config.users.profiles);
|
||||||
|
|
||||||
home-manager.users = mapAttrs (name: opts: {
|
home-manager.users = mapAttrs (name: opts: {
|
||||||
imports = cfg.homeModules;
|
imports = with inputs; cfg.homeModules ++ [
|
||||||
|
catppuccin.homeManagerModules.catppuccin
|
||||||
|
];
|
||||||
home.file.".face" = mkIf (opts.picture != null) {
|
home.file.".face" = mkIf (opts.picture != null) {
|
||||||
source = opts.picture;
|
source = opts.picture;
|
||||||
};
|
};
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
./channel.nix
|
./channel.nix
|
||||||
impermanence.nixosModules.impermanence
|
impermanence.nixosModules.impermanence
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
|
catppuccin.nixosModules.catppuccin
|
||||||
{
|
{
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
|
|
Loading…
Reference in a new issue