Update the flake using stylix as the theming manager

This commit is contained in:
Tyler Kelley 2024-05-21 20:39:50 -05:00
parent a6b9f63bde
commit a503cfb19d
7 changed files with 259 additions and 281 deletions

View File

@ -59,8 +59,6 @@ with lib;
gaps_in = 6
gaps_out = 8
border_size = 2
col.active_border = rgba(${theme.base0C}ff) rgba(${theme.base0D}ff) rgba(${theme.base0B}ff) rgba(${theme.base0E}ff) 45deg
col.inactive_border = rgba(${theme.base00}cc) rgba(${theme.base01}cc) 45deg
layout = dwindle
resize_on_border = true
}
@ -124,7 +122,6 @@ with lib;
}
plugin {
hyprtrails {
color = rgba(${theme.base0A}ff)
}
}
dwindle {

View File

@ -1,15 +1,13 @@
{
pkgs,
config,
lib,
host,
...
}:
let
palette = config.colorScheme.palette;
betterTransition = "all 0.3s cubic-bezier(.55,-0.68,.48,1.682)";
inherit (import ../hosts/${host}/variables.nix) clock24h waybarAnimations;
inherit (import ../hosts/${host}/variables.nix) clock24h;
in
with lib;
{
@ -197,11 +195,8 @@ with lib;
min-height: 0px;
}
window#waybar {
background-color: #${palette.base00};
}
#workspaces {
color: #${palette.base00};
background: #${palette.base01};
margin: 4px 4px;
padding: 8px 5px;
border-radius: 16px;
@ -211,17 +206,6 @@ with lib;
padding: 0px 5px;
margin: 0px 3px;
border-radius: 16px;
color: #${palette.base00};
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
background-size: 300% 300%;
${
if waybarAnimations == true then
''
animation: gradient_horizontal 15s ease infinite;
''
else
''''
}
opacity: 0.5;
transition: ${betterTransition};
}
@ -230,17 +214,6 @@ with lib;
padding: 0px 5px;
margin: 0px 3px;
border-radius: 16px;
color: #${palette.base00};
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
background-size: 300% 300%;
${
if waybarAnimations == true then
''
animation: gradient_horizontal 15s ease infinite;
''
else
''''
}
transition: ${betterTransition};
opacity: 1.0;
min-width: 40px;
@ -248,59 +221,20 @@ with lib;
#workspaces button:hover {
font-weight: bold;
border-radius: 16px;
color: #${palette.base00};
background: linear-gradient(45deg, #${palette.base0E}, #${palette.base0F}, #${palette.base0D}, #${palette.base09});
background-size: 300% 300%;
${
if waybarAnimations == true then
''
animation: gradient_horizontal 15s ease infinite;
''
else
''''
}
opacity: 0.8;
transition: ${betterTransition};
}
@keyframes gradient_horizontal {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
@keyframes swiping {
0% {
background-position: 0% 200%;
}
100% {
background-position: 200% 200%;
}
}
tooltip {
background: #${palette.base00};
border: 1px solid #${palette.base0E};
border-radius: 12px;
}
tooltip label {
color: #${palette.base07};
border-radius: 14px;
}
#window, #pulseaudio, #cpu, #memory, #idle_inhibitor {
font-weight: bold;
margin: 4px 0px;
margin-left: 7px;
padding: 0px 18px;
color: #${palette.base05};
background: #${palette.base01};
border-radius: 24px 10px 24px 10px;
}
#custom-startmenu {
color: #${palette.base0D};
background: #${palette.base01};
font-size: 28px;
margin: 0px;
padding: 0px 30px 0px 15px;
@ -309,8 +243,6 @@ with lib;
#custom-hyprbindings, #network, #custom-themeselector, #battery,
#custom-notification, #tray, #custom-exit {
font-weight: bold;
background: #${palette.base01};
color: #${palette.base05};
margin: 4px 0px;
margin-right: 7px;
border-radius: 10px 24px 10px 24px;
@ -318,17 +250,6 @@ with lib;
}
#clock {
font-weight: bold;
color: #${palette.base00};
background: linear-gradient(45deg, #${palette.base0C}, #${palette.base0F}, #${palette.base0B}, #${palette.base08});
background-size: 300% 300%;
${
if waybarAnimations == true then
''
animation: gradient_horizontal 15s ease infinite;
''
else
''''
}
margin: 0px;
padding: 0px 15px 0px 30px;
border-radius: 0px 0px 0px 40px;

View File

@ -5,9 +5,6 @@
...
}:
let
palette = config.colorScheme.palette;
in
{
programs.wlogout = {
enable = true;
@ -59,22 +56,22 @@ in
background-color: rgba(12, 12, 12, 0.1);
}
button {
color: #${palette.base05};
color: #f5f5f5;
font-size:20px;
background-repeat: no-repeat;
background-position: center;
background-size: 25%;
border-style: solid;
background-color: rgba(12, 12, 12, 0.3);
border: 3px solid #${palette.base05};
border: 3px solid #f5f5f5;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
button:focus,
button:active,
button:hover {
color: #${palette.base0E};
color: #0096FF;
background-color: rgba(12, 12, 12, 0.5);
border: 3px solid #${palette.base0E};
border: 3px solid #0096FF;
}
#logout {
margin: 10px;

262
flake.lock generated
View File

@ -1,18 +1,165 @@
{
"nodes": {
"base16-schemes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1696158499,
"narHash": "sha256-5yIHgDTPjoX/3oDEfLSQ0eJZdFL1SaCfb9d6M0RmOTM=",
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-schemes",
"rev": "a9112eaae86d9dd8ee6bb9445b664fba2f94037a",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-schemes",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1696727917,
"narHash": "sha256-FVrbPk+NtMra0jtlC5oxyNchbm8FosmvXIatkRbYy1g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "dbe1480d99fe80f08df7970e471fac24c05f2ddb",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1663659192,
"narHash": "sha256-uJvaYYDMXvoo0fhBZUhN8WBXeJ87SRgof6GEK2efFT0=",
"owner": "chriskempson",
"repo": "base16-vim",
"rev": "3be3cd82cd31acfcab9a41bad853d9c68d30478d",
"type": "github"
},
"original": {
"owner": "chriskempson",
"repo": "base16-vim",
"type": "github"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1713702291,
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "46.1",
"repo": "gnome-shell",
"type": "github"
}
},
@ -37,6 +184,27 @@
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1714981474,
"narHash": "sha256-b3/U21CJjCjJKmA9WqUbZGZgCvospO3ArOUTgJugkOY=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6ebe7be2e67be7b9b54d61ce5704f6fb466c536f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"hyprcursor": {
"inputs": {
"hyprlang": [
@ -193,25 +361,6 @@
"type": "github"
}
},
"nix-colors": {
"inputs": {
"base16-schemes": "base16-schemes",
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1707825078,
"narHash": "sha256-hTfge2J2W+42SZ7VHXkf4kjU+qzFqPeC9k66jAUBMHk=",
"owner": "misterio77",
"repo": "nix-colors",
"rev": "b01f024090d2c4fc3152cd0cf12027a7b8453ba1",
"type": "github"
},
"original": {
"owner": "misterio77",
"repo": "nix-colors",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1716137900,
@ -228,21 +377,6 @@
"type": "github"
}
},
"nixpkgs-lib": {
"locked": {
"lastModified": 1697935651,
"narHash": "sha256-qOfWjQ2JQSQL15KLh6D7xQhx0qgZlYZTYlcEiRuAMMw=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "e1e11fdbb01113d85c7f41cada9d2847660e3902",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1716293225,
@ -259,13 +393,57 @@
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1714912032,
"narHash": "sha256-clkcOIkg8G4xuJh+1onLG4HPMpbtzdLv4rHxFzgsH9c=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "ee4a6e0f566fe5ec79968c57a9c2c3c25f2cf41d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"hyprland": "hyprland",
"hyprland-plugins": "hyprland-plugins",
"nix-colors": "nix-colors",
"nixpkgs": "nixpkgs_2"
"nixpkgs": "nixpkgs_2",
"stylix": "stylix"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1716206302,
"narHash": "sha256-5Qc3aQGVyPEOuN82zVamStaV81HebHvLjk3fGfpyCPY=",
"owner": "danth",
"repo": "stylix",
"rev": "81df8443556335016d6f0bc22630a95776a56d8b",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
}
},
"systems": {

View File

@ -5,7 +5,7 @@
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager.url = "github:nix-community/home-manager/master";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
nix-colors.url = "github:misterio77/nix-colors";
stylix.url = "github:danth/stylix";
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins";
@ -14,7 +14,7 @@
};
outputs =
inputs@{ nixpkgs, home-manager, ... }:
{ nixpkgs, home-manager, ... }@inputs:
let
system = "x86_64-linux";
host = "familypc";
@ -38,13 +38,13 @@
};
modules = [
./hosts/${host}/config.nix
inputs.stylix.nixosModules.stylix
home-manager.nixosModules.home-manager
{
home-manager.extraSpecialArgs = {
inherit username;
inherit inputs;
inherit host;
inherit (inputs.nix-colors.lib-contrib { inherit pkgs; }) gtkThemeFromScheme;
};
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;

View File

@ -45,6 +45,32 @@
boot.kernelModules = [ "v4l2loopback" ];
boot.extraModulePackages = [ config.boot.kernelPackages.v4l2loopback ];
# Styling Options
stylix.image = ../../config/wallpapers/zaney-wallpaper.jpg;
stylix.polarity = "dark";
stylix.cursor.package = pkgs.bibata-cursors;
stylix.cursor.name = "Bibata-Modern-Ice";
stylix.fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
name = "JetBrainsMono Nerd Font Mono";
};
sansSerif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Sans";
};
serif = {
package = pkgs.dejavu_fonts;
name = "DejaVu Serif";
};
};
stylix.fonts.sizes = {
applications = 12;
terminal = 15;
desktop = 10;
popups = 10;
};
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";

View File

@ -1,18 +1,14 @@
{
config,
pkgs,
inputs,
username,
host,
gtkThemeFromScheme,
...
}:
let
palette = config.colorScheme.palette;
inherit (import ./variables.nix)
gitUsername
gitEmail
theme
;
in
{
@ -21,12 +17,8 @@ in
home.homeDirectory = "/home/${username}";
home.stateVersion = "23.11";
# Set The Colorscheme
colorScheme = inputs.nix-colors.colorSchemes."${theme}";
# Import Program Configurations
imports = [
inputs.nix-colors.homeManagerModules.default
inputs.hyprland.homeManagerModules.default
../../config/hyprland.nix
../../config/swaync.nix
@ -115,49 +107,6 @@ in
};
};
# Configure Cursor Theme
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice";
size = 24;
};
# Theme GTK
gtk = {
enable = true;
font = {
name = "Ubuntu";
size = 12;
package = pkgs.ubuntu_font_family;
};
theme = {
name = "${config.colorScheme.slug}";
package = gtkThemeFromScheme { scheme = config.colorScheme; };
};
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = 1;
};
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = 1;
};
};
# Theme QT -> GTK
qt = {
enable = true;
platformTheme = "gtk";
style = {
name = "adwaita-dark";
package = pkgs.adwaita-qt;
};
};
# Scripts
home.packages = [
(import ../../scripts/emopicker9000.nix { inherit pkgs; })
@ -251,7 +200,6 @@ in
nvim-ts-context-commentstring
{
plugin = dracula-nvim;
config = "colorscheme dracula";
}
plenary-nvim
neodev-nvim
@ -289,59 +237,17 @@ in
kitty = {
enable = true;
package = pkgs.kitty;
font.name = "JetBrainsMono Nerd Font";
font.size = 16;
settings = {
scrollback_lines = 2000;
wheel_scroll_min_lines = 1;
window_padding_width = 4;
confirm_os_window_close = 0;
background_opacity = "0.9";
};
extraConfig = ''
foreground #${palette.base05}
background #${palette.base00}
color0 #${palette.base03}
color1 #${palette.base08}
color2 #${palette.base0B}
color3 #${palette.base09}
color4 #${palette.base0D}
color5 #${palette.base0E}
color6 #${palette.base0C}
color7 #${palette.base06}
color8 #${palette.base04}
color9 #${palette.base08}
color10 #${palette.base0B}
color11 #${palette.base0A}
color12 #${palette.base0C}
color13 #${palette.base0E}
color14 #${palette.base0C}
color15 #${palette.base07}
color16 #${palette.base00}
color17 #${palette.base0F}
color18 #${palette.base0B}
color19 #${palette.base09}
color20 #${palette.base0D}
color21 #${palette.base0E}
color22 #${palette.base0C}
color23 #${palette.base06}
cursor #${palette.base07}
cursor_text_color #${palette.base00}
selection_foreground #${palette.base01}
selection_background #${palette.base0D}
url_color #${palette.base0C}
active_border_color #${palette.base04}
inactive_border_color #${palette.base00}
bell_border_color #${palette.base03}
tab_bar_style fade
tab_fade 1
active_tab_foreground #${palette.base04}
active_tab_background #${palette.base00}
active_tab_font_style bold
inactive_tab_foreground #${palette.base07}
inactive_tab_background #${palette.base08}
inactive_tab_font_style bold
tab_bar_background #${palette.base00}
'';
};
starship = {
@ -358,53 +264,6 @@ in
term = "kitty";
show = "drun";
};
style = ''
* {
font-family: JetBrainsMono Nerd Font Mono,monospace;
font-weight: bold;
}
#window {
border-radius: 25px;
border: 2px solid #${palette.base08};
background: #${palette.base00};
}
#input {
border-radius: 10px;
border: 2px solid #${palette.base0B};
margin: 20px;
padding: 15px 25px;
background: #${palette.base00};
color: #${palette.base05};
}
#inner-box {
border: none;
background-color: transparent;
}
#outer-box {
border: none;
font-weight: bold;
font-size: 14px;
}
#text {
border: none;
}
#entry {
margin: 10px 80px;
padding: 20px 20px;
border-radius: 10px;
border: none;
}
#entry:focus {
border: none;
}
#entry:hover {
border: none;
}
#entry:selected {
background-color: #${palette.base0F};
color: #${palette.base00};
}
'';
};
bash = {
enable = true;
@ -456,7 +315,7 @@ in
path = "/home/${username}/.config/face.jpg";
size = 150;
border_size = 4;
border_color = "rgb(${palette.base08})";
border_color = "rgb(FFFFFF)";
rounding = -1; # Negative means circle
position = "0, 200";
halign = "center";
@ -470,9 +329,9 @@ in
monitor = "";
dots_center = true;
fade_on_empty = false;
font_color = "rgb(${palette.base05})";
inner_color = "rgb(${palette.base01})";
outer_color = "rgb(${palette.base00})";
font_color = "rgb(FFFFFF)";
inner_color = "rgb(000000)";
outer_color = "rgb(000000)";
outline_thickness = 5;
placeholder_text = "Password...";
shadow_passes = 2;