stylix: add accent color
I spent an hour just to add one f*ing option
This commit is contained in:
@@ -9,6 +9,7 @@
|
|||||||
./user/neofetch.nix
|
./user/neofetch.nix
|
||||||
./user/qt.nix
|
./user/qt.nix
|
||||||
./user/quickshell.nix
|
./user/quickshell.nix
|
||||||
|
./user/stylix.nix
|
||||||
./user/sops.nix
|
./user/sops.nix
|
||||||
./user/ssh.nix
|
./user/ssh.nix
|
||||||
./user/walker.nix
|
./user/walker.nix
|
||||||
|
|||||||
@@ -1,15 +1,11 @@
|
|||||||
{ stdenv, lib, config, colors, username, ... }:
|
{ stdenv, colors, accent ? colors.base0B, ... }:
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "AGS theme";
|
name = "AGS theme";
|
||||||
|
|
||||||
src = ./ags;
|
src = ./ags;
|
||||||
dontUnpack = true;
|
dontUnpack = true;
|
||||||
|
|
||||||
patchPhase = let
|
patchPhase = ''
|
||||||
accent = if username == "chest"
|
|
||||||
then colors.base0E
|
|
||||||
else colors.base0B;
|
|
||||||
in ''
|
|
||||||
echo \$bg: \#${colors.base00}\; > colors.scss
|
echo \$bg: \#${colors.base00}\; > colors.scss
|
||||||
echo \$surface0: \#${colors.base02}\; >> colors.scss
|
echo \$surface0: \#${colors.base02}\; >> colors.scss
|
||||||
echo \$fg: \#${colors.base05}\; >> colors.scss
|
echo \$fg: \#${colors.base05}\; >> colors.scss
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
{ config, lib, ... }: let
|
||||||
|
inherit (lib) mkOption types;
|
||||||
|
|
||||||
|
base16Names = [
|
||||||
|
"base00"
|
||||||
|
"base01"
|
||||||
|
"base02"
|
||||||
|
"base03"
|
||||||
|
"base04"
|
||||||
|
"base05"
|
||||||
|
"base06"
|
||||||
|
"base07"
|
||||||
|
"base08"
|
||||||
|
"base09"
|
||||||
|
"base0A"
|
||||||
|
"base0B"
|
||||||
|
"base0C"
|
||||||
|
"base0D"
|
||||||
|
"base0E"
|
||||||
|
"base0F"
|
||||||
|
];
|
||||||
|
in {
|
||||||
|
options.stylix.accent = mkOption {
|
||||||
|
type = types.enum base16Names;
|
||||||
|
default = "base0B";
|
||||||
|
description = ''
|
||||||
|
Base16 colour used as the user accent.
|
||||||
|
|
||||||
|
Use it as:
|
||||||
|
|
||||||
|
config.lib.stylix.colors.${config.stylix.accent}
|
||||||
|
config.lib.stylix.colors.withHashtag.${config.stylix.accent}
|
||||||
|
|
||||||
|
This module deliberately does not extend config.lib.stylix.colors: Stylix
|
||||||
|
exports that value as a generated base16 attrset/functor, and replacing or
|
||||||
|
partially extending it can break Stylix targets which expect metadata such
|
||||||
|
as `scheme` to be present.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,13 +1,14 @@
|
|||||||
{ pkgs, lib, config, inputs, ... }: {
|
{ pkgs, lib, config, inputs, ... }: {
|
||||||
wayland.windowManager.hyprland = let
|
wayland.windowManager.hyprland = let
|
||||||
colors = config.lib.stylix.colors;
|
colors = config.lib.stylix.colors;
|
||||||
|
accent = colors.${config.stylix.accent};
|
||||||
in {
|
in {
|
||||||
settings = {
|
settings = {
|
||||||
general = {
|
general = {
|
||||||
gaps_in = 5;
|
gaps_in = 5;
|
||||||
gaps_out = 5;
|
gaps_out = 5;
|
||||||
border_size = 2;
|
border_size = 2;
|
||||||
"col.active_border" = "rgba(${colors.base0E}ee) rgba(${colors.base0C}ee) 45deg";
|
"col.active_border" = "rgba(${accent}ee) rgba(${colors.base0C}ee) 45deg";
|
||||||
"col.inactive_border" = "rgba(${colors.base05}aa)";
|
"col.inactive_border" = "rgba(${colors.base05}aa)";
|
||||||
|
|
||||||
layout = "dwindle";
|
layout = "dwindle";
|
||||||
|
|||||||
@@ -89,6 +89,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/eris.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/eris.yaml";
|
||||||
|
accent = "base0E";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
|
|
||||||
image = pkgs.fetchurl {
|
image = pkgs.fetchurl {
|
||||||
|
|||||||
@@ -175,7 +175,7 @@
|
|||||||
|
|
||||||
style = let
|
style = let
|
||||||
colors = config.lib.stylix.colors.withHashtag;
|
colors = config.lib.stylix.colors.withHashtag;
|
||||||
accent = colors.base0E;
|
accent = colors.${config.stylix.accent};
|
||||||
scssFile = pkgs.writeText "waybar.scss" /*scss*/ ''
|
scssFile = pkgs.writeText "waybar.scss" /*scss*/ ''
|
||||||
window#waybar {
|
window#waybar {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
{ pkgs, lib, config, osConfig, inputs, ... }: {
|
{ pkgs, lib, config, osConfig, inputs, ... }: {
|
||||||
wayland.windowManager.hyprland = let
|
wayland.windowManager.hyprland = let
|
||||||
colors = config.lib.stylix.colors;
|
colors = config.lib.stylix.colors;
|
||||||
|
accent = colors.${config.stylix.accent};
|
||||||
|
|
||||||
wallpaper_changer = pkgs.writers.writePython3Bin "wallpaper_changer" {
|
wallpaper_changer = pkgs.writers.writePython3Bin "wallpaper_changer" {
|
||||||
libraries = [ pkgs.python3Packages.requests ];
|
libraries = [ pkgs.python3Packages.requests ];
|
||||||
@@ -57,7 +58,7 @@
|
|||||||
gaps_in = 2;
|
gaps_in = 2;
|
||||||
gaps_out = 10;
|
gaps_out = 10;
|
||||||
border_size = 3;
|
border_size = 3;
|
||||||
"col.active_border" = lib.mkForce "rgba(${colors.base0C}aa) rgba(${colors.base0B}aa) 45deg";
|
"col.active_border" = lib.mkForce "rgba(${colors.base0C}aa) rgba(${accent}aa) 45deg";
|
||||||
|
|
||||||
layout = "dwindle";
|
layout = "dwindle";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -105,6 +105,7 @@ in {
|
|||||||
};
|
};
|
||||||
|
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
|
||||||
|
accent = "base0B";
|
||||||
polarity = "dark";
|
polarity = "dark";
|
||||||
|
|
||||||
image = pkgs.fetchurl {
|
image = pkgs.fetchurl {
|
||||||
|
|||||||
@@ -155,6 +155,7 @@
|
|||||||
|
|
||||||
style = let
|
style = let
|
||||||
colors = config.lib.stylix.colors.withHashtag;
|
colors = config.lib.stylix.colors.withHashtag;
|
||||||
|
accent = colors.${config.stylix.accent};
|
||||||
radius = "6px";
|
radius = "6px";
|
||||||
scssFile = pkgs.writeText "waybar.scss" /*scss*/ ''
|
scssFile = pkgs.writeText "waybar.scss" /*scss*/ ''
|
||||||
window#waybar {
|
window#waybar {
|
||||||
@@ -199,13 +200,13 @@
|
|||||||
&:hover { background: ${colors.base01}; }
|
&:hover { background: ${colors.base01}; }
|
||||||
|
|
||||||
&.active {
|
&.active {
|
||||||
background: ${colors.base0B};
|
background: ${accent};
|
||||||
color: ${colors.base00};
|
color: ${colors.base00};
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
border-color: ${colors.base0B};
|
border-color: ${accent};
|
||||||
background: ${colors.base01};
|
background: ${colors.base01};
|
||||||
color: ${colors.base0B};
|
color: ${accent};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -259,7 +260,7 @@
|
|||||||
|
|
||||||
#battery {
|
#battery {
|
||||||
&.plugged { color: ${colors.base0D}; }
|
&.plugged { color: ${colors.base0D}; }
|
||||||
&.charging { color: ${colors.base0B}; }
|
&.charging { color: ${accent}; }
|
||||||
&:not(.charging) {
|
&:not(.charging) {
|
||||||
&.warning {
|
&.warning {
|
||||||
color: ${colors.base00};
|
color: ${colors.base00};
|
||||||
@@ -277,7 +278,7 @@
|
|||||||
}
|
}
|
||||||
&.full {
|
&.full {
|
||||||
color: ${colors.base00};
|
color: ${colors.base00};
|
||||||
background: ${colors.base0B};
|
background: ${accent};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user