migrate to stylix (#90)
Some checks are pending
git-mirror / gitlab-sync (push) Waiting to run
nix-build / default-build (push) Waiting to run
nix-build / fallarbor-build (push) Waiting to run
nix-build / lavaridge-build (push) Waiting to run
nix-build / mauville-build (push) Waiting to run
nix-build / petalburg-build (push) Waiting to run
nix-build / rustboro-build (push) Waiting to run
nix-check / fmt-check (push) Waiting to run
nix-check / eval-check (push) Waiting to run

* flake: add stylix modules

* yank enough to make hosts build with stylix enabled

* add initial common stylix theme

* waybar: remove custom colors

* rofi: reimplement theme

* rofi: transparency fix

* rofi: remove old theme

* swayosd: use stylix colors

* remove theme.colors

* remove remaining theme config outside icons + gtk settings

* remove darkMode toggle

* restore fuzzel module

* randomWallpaper: disable * configs in sway

* randomWallpaper: disable hyprpaper stylix config

* swaylock: restore non-theme settings

* hosts: fix wallpaper

* waybar: restore colors

* rofi: restore theme

* rofi: use proper border color

* harmonize font sizes

* rofi: use borderRadius setting

* tmux: remove theming

* hosts: add preliminary stylix configs

* randomWallpaper: force hyprpaper off

* fallarbor: set correct wallpaper

* rofi: fix transparency issues on hyprland

* sway: override stylix indicator colors
This commit is contained in:
Aly Raffauf 2024-08-15 15:55:39 -04:00 committed by GitHub
parent 8628a5c849
commit c112fcd6c5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
33 changed files with 792 additions and 598 deletions

View file

@ -23,6 +23,120 @@
"type": "github"
}
},
"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": 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-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1720809814,
"narHash": "sha256-numb3xigRGnr/deF7wdjBwVg7fpbTH7reFDkJ75AJkY=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "34f41987bec14c0f3f6b2155c19787b1f6489625",
"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": 1716150083,
"narHash": "sha256-ZMhnNmw34ogE5rJZrjRv5MtG3WaqKd60ds2VXvT6hEc=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "6e955d704d046b0dc3e5c2d68a2a6eeffd2b5d3d",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"type": "github"
}
},
"darwin": {
"inputs": {
"nixpkgs": [
@ -65,6 +179,55 @@
"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"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -107,6 +270,27 @@
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1715930644,
"narHash": "sha256-W9pyM3/vePxrffHtzlJI6lDS3seANQ+Nqp+i58O46LI=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "e3ad5108f54177e6520535768ddbf1e6af54b59d",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"iio-hyprland": {
"inputs": {
"nixpkgs": [
@ -180,6 +364,22 @@
"type": "github"
}
},
"nixpkgs_2": {
"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"
}
},
"nur": {
"locked": {
"lastModified": 1723333488,
@ -225,7 +425,36 @@
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
"raffauflabs": "raffauflabs"
"raffauflabs": "raffauflabs",
"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_3",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1722946882,
"narHash": "sha256-mxtnMye8gs82tdQbVC+g6v3aPOZlH150f9WyntHIkTg=",
"owner": "danth",
"repo": "stylix",
"rev": "5853f1a8bd072f2ebabfc3de3973084353cf6f1e",
"type": "github"
},
"original": {
"owner": "danth",
"repo": "stylix",
"type": "github"
}
},
"systems": {

View file

@ -36,6 +36,8 @@
inputs.nixpkgs.follows = "nixpkgs";
url = "github:alyraffauf/raffauflabs";
};
stylix.url = "github:danth/stylix";
};
nixConfig = {
@ -104,6 +106,7 @@
self.inputs.agenix.nixosModules.default
self.inputs.disko.nixosModules.disko
self.inputs.home-manager.nixosModules.home-manager
self.inputs.stylix.nixosModules.stylix
self.nixosModules.base
self.nixosModules.nixos
self.nixosModules.users

View file

@ -11,24 +11,9 @@ in {
settings = {
colors = {
draw_bold_text_with_bright_colors = true;
primary = {
background = "${cfg.theme.colors.background}";
foreground = "${cfg.theme.colors.text}";
};
transparent_background_colors = true;
};
font = {
normal = {
family = cfg.theme.monospaceFont.name;
style = "Regular";
};
size = cfg.theme.monospaceFont.size + 1;
};
selection.save_to_clipboard = true;
window = {

View file

@ -10,27 +10,16 @@ in {
enable = true;
settings = {
border = {
radius = 10;
width = 2;
radius = cfg.theme.borderRadius;
width = 4;
};
main = {
font = "${cfg.theme.monospaceFont.name}:size=${toString cfg.theme.monospaceFont.size}";
icon-theme = "${config.gtk.iconTheme.name}";
layer = "overlay";
lines = 3;
terminal = lib.getExe cfg.defaultApps.terminal;
width = 36;
};
colors = {
background = "${cfg.theme.colors.background}CC";
border = "${cfg.theme.colors.primary}EE";
selection = "${cfg.theme.colors.background}FF";
selection-match = "${cfg.theme.colors.primary}FF";
selection-text = "${cfg.theme.colors.secondary}FF";
text = "${cfg.theme.colors.text}FF";
};
};
};
};

View file

@ -68,7 +68,6 @@
};
settings = {
theme = lib.mkDefault "adwaita-dark";
editor = {
auto-completion = true;
auto-format = true;

View file

@ -10,19 +10,11 @@ in {
programs.kitty = {
enable = true;
font = {
name = cfg.theme.monospaceFont.name;
size = cfg.theme.monospaceFont.size + 1;
};
settings = {
background_opacity = "0.6";
confirm_os_window_close = "0";
notify_on_cmd_finish = "unfocused 10.0 command ${lib.getExe pkgs.libnotify} -i ${pkgs.kitty}/share/icons/hicolor/256x256/apps/kitty.png \"Job Finished\"";
tab_bar_style = "powerline";
};
theme = lib.mkDefault "Adwaita dark";
};
};
}

View file

@ -5,6 +5,18 @@
...
}: let
cfg = config.ar.home;
inherit (config.lib.formats.rasi) mkLiteral;
mkRgba = opacity: color: let
c = config.lib.stylix.colors;
r = c."${color}-rgb-r";
g = c."${color}-rgb-g";
b = c."${color}-rgb-b";
in
mkLiteral
"rgba ( ${r}, ${g}, ${b}, ${opacity} % )";
mkRgb = mkRgba "100";
rofiOpacity = builtins.toString (builtins.ceil (config.stylix.opacity.popups * 100));
in {
config = lib.mkIf cfg.apps.rofi.enable {
home.packages = [
@ -13,9 +25,11 @@ in {
pkgs.rofi-rbw-wayland
];
stylix.targets.rofi.enable = false;
programs.rofi = {
enable = true;
font = "${cfg.theme.monospaceFont.name} ${toString cfg.theme.monospaceFont.size}";
font = "${config.stylix.fonts.monospace.name} ${toString config.stylix.fonts.sizes.popups}";
location = "center";
package = pkgs.rofi-wayland;
@ -25,7 +39,173 @@ in {
];
terminal = lib.getExe cfg.defaultApps.terminal;
theme = "theme.rasi";
theme = {
"*" = {
background = mkRgba rofiOpacity "base00";
lightbg = mkRgba rofiOpacity "base01";
red = mkRgba rofiOpacity "base08";
blue = mkRgba rofiOpacity "base0D";
lightfg = mkRgba rofiOpacity "base06";
foreground = mkRgb "base05";
lightbgopaque = mkRgb "base01";
lightfgopaque = mkRgb "base06";
background-color = mkLiteral "transparent";
separatorcolor = mkLiteral "@foreground";
border-color = mkLiteral "@foreground";
selected-normal-foreground = mkLiteral "@lightbgopaque";
selected-normal-background = mkLiteral "@lightfgopaque";
selected-active-foreground = mkLiteral "@lightbgopaque";
selected-active-background = mkLiteral "@lightfgopaque";
selected-urgent-foreground = mkLiteral "@background";
selected-urgent-background = mkLiteral "@red";
normal-foreground = mkLiteral "@foreground";
normal-background = mkLiteral "transparent";
active-foreground = mkLiteral "@blue";
active-background = mkLiteral "transparent";
urgent-foreground = mkLiteral "@red";
urgent-background = mkLiteral "transparent";
alternate-normal-foreground = mkLiteral "@foreground";
alternate-normal-background = mkLiteral "transparent";
alternate-active-foreground = mkLiteral "@blue";
alternate-active-background = mkLiteral "transparent";
alternate-urgent-foreground = mkLiteral "@red";
alternate-urgent-background = mkLiteral "transparent";
# Text Colors
base-text = mkRgb "base05";
selected-normal-text = mkRgb "base01";
selected-active-text = mkRgb "base00";
selected-urgent-text = mkRgb "base00";
normal-text = mkRgb "base05";
active-text = mkRgb "base0D";
urgent-text = mkRgb "base08";
alternate-normal-text = mkRgb "base05";
alternate-active-text = mkRgb "base0D";
alternate-urgent-text = mkRgb "base08";
};
window = {
background-color = mkLiteral "@background";
border = 4;
border-color = mkLiteral "@blue";
border-radius = mkLiteral "${toString cfg.theme.borderRadius}";
};
message = {
border-color = mkLiteral "@separatorcolor";
border = mkLiteral "2px solid 0px 0px";
padding = 1;
};
textbox.text-color = mkLiteral "@base-text";
listview = {
border-color = mkLiteral "@separatorcolor";
border = mkLiteral "2px solid 0px 0px";
spacing = 4;
scrollbar = false;
};
element = {
border = 0;
padding = 5;
};
element-text = {
background-color = mkLiteral "inherit";
text-color = mkLiteral "inherit";
};
element-icon = {
background-color = mkLiteral "inherit";
text-color = mkLiteral "inherit";
};
"element normal.normal" = {
background-color = mkLiteral "@normal-background";
text-color = mkLiteral "@normal-text";
};
"element normal.urgent" = {
background-color = mkLiteral "@urgent-background";
text-color = mkLiteral "@urgent-text";
};
"element normal.active" = {
background-color = mkLiteral "@active-background";
text-color = mkLiteral "@active-text";
};
"element selected.normal" = {
background-color = mkLiteral "@selected-normal-background";
text-color = mkLiteral "@selected-normal-text";
};
"element selected.urgent" = {
background-color = mkLiteral "@selected-urgent-background";
text-color = mkLiteral "@selected-urgent-text";
};
"element selected.active" = {
background-color = mkLiteral "@selected-active-background";
text-color = mkLiteral "@selected-active-text";
};
"element alternate.normal" = {
background-color = mkLiteral "@alternate-normal-background";
text-color = mkLiteral "@alternate-normal-text";
};
"element alternate.urgent" = {
background-color = mkLiteral "@alternate-urgent-background";
text-color = mkLiteral "@alternate-urgent-text";
};
"element alternate.active" = {
background-color = mkLiteral "@alternate-active-background";
text-color = mkLiteral "@alternate-active-text";
};
scrollbar.handle-color = mkLiteral "@normal-foreground";
sidebar.border-color = mkLiteral "@separatorcolor";
button.text-color = mkLiteral "@normal-text";
"button selected" = {
background-color = mkLiteral "@selected-normal-background";
text-color = mkLiteral "@selected-normal-text";
};
inputbar.text-color = mkLiteral "@normal-text";
case-indicator.text-color = mkLiteral "@normal-text";
entry.text-color = mkLiteral "@normal-text";
prompt.text-color = mkLiteral "@normal-text";
"#textbox-prompt-colon" = {
expand = false;
margin = mkLiteral "0px 0.3em 0em 0em";
str = ":";
text-color = mkLiteral "inherit";
};
case-indicator.spacing = 0;
entry.spacing = 0;
prompt = {
spacing = 0;
margin = 1;
};
"#inputbar" = {
children = map mkLiteral ["prompt" "textbox-prompt-colon" "entry" "case-indicator"];
padding = 10;
};
mode-switcher = {
border = mkLiteral "2px solid 0px 0px";
border-color = mkLiteral "@separatorcolor";
};
};
extraConfig = {
case-sensitive = false;
@ -68,157 +248,6 @@ in {
clear-after 60
'';
"rofi/theme.rasi".text = ''
* {
selected-normal-foreground: ${cfg.theme.colors.secondary};
foreground: ${cfg.theme.colors.text};
normal-foreground: @foreground;
alternate-normal-background: transparent;
red: ${cfg.theme.colors.secondary}CC;
selected-urgent-foreground: ${cfg.theme.colors.secondary}CC;
blue: ${cfg.theme.colors.primary}CC;
urgent-foreground: ${cfg.theme.colors.primary}CC;
alternate-urgent-background: transparent;
active-foreground: ${cfg.theme.colors.primary}CC;
lightbg: rgba ( 238, 232, 213, 80 % );
selected-active-foreground: ${cfg.theme.colors.secondary};
alternate-active-background: transparent;
background: transparent;
bordercolor: ${cfg.theme.colors.background}99;
alternate-normal-foreground: @foreground;
normal-background: transparent;
lightfg: ${cfg.theme.colors.primary}CC;
selected-normal-background: ${cfg.theme.colors.background};
border-color: ${cfg.theme.colors.primary}CC;
spacing: 2;
separatorcolor: ${cfg.theme.colors.primary}CC;
urgent-background: transparent;
selected-urgent-background: ${cfg.theme.colors.primary}CC;
alternate-urgent-foreground: @urgent-foreground;
background-color: transparent;
alternate-active-foreground: @active-foreground;
active-background: transparent;
selected-active-background: ${cfg.theme.colors.background};
}
window {
background-color: ${cfg.theme.colors.background}CC;
border: 4;
border-color: @border-color;
border-radius: ${toString cfg.theme.borderRadius}px;
padding: 0;
}
mainbox {
border: 0;
padding: 0;
}
message {
border: 2px solid 0px 0px ;
border-color: @separatorcolor;
padding: 1px ;
}
textbox {
text-color: @foreground;
}
listview {
fixed-height: 0;
border: 2px solid 0px 0px ;
border-color: @separatorcolor;
spacing: 2px ;
scrollbar: false;
padding: 5px;
}
element {
border: 0;
padding: 5px;
border-radius: 10px;
}
element-text {
background-color: inherit;
text-color: inherit;
}
element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
scrollbar {
width: 0px ;
border: 0;
handle-width: 0px ;
padding: 0;
}
mode-switcher {
border: 2px solid 0px 0px ;
border-color: @separatorcolor;
}
button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
button {
background-color: @background;
text-color: @foreground;
}
inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 10px ;
}
case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
entry {
spacing: 0;
text-color: @normal-foreground;
}
prompt {
spacing: 0;
text-color: @normal-foreground;
margin: 1px;
}
inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3em 0em 0em ;
text-color: @normal-foreground;
}
'';
"networkmanager-dmenu/config.ini".text = ''
[dmenu]
dmenu_command = ${lib.getExe config.programs.rofi.package}

View file

@ -9,42 +9,15 @@ in {
config = lib.mkIf cfg.apps.swaylock.enable {
home.packages = with pkgs; [swaylock];
programs.swaylock.enable = true;
xdg.configFile."swaylock/config".text = ''
bs-hl-color=e78284
caps-lock-bs-hl-color=e78284
caps-lock-key-hl-color=e78284
color=303446
daemonize
font="${cfg.theme.monospaceFont.name}"
image=${cfg.theme.wallpaper}
indicator-caps-lock
indicator-idle-visible
indicator-radius=120
indicator-thickness=20
inside-caps-lock-color=303446cc
inside-clear-color=303446cc
inside-color=303446cc
inside-ver-color=303446cc
inside-wrong-color=303446cc
key-hl-color=a6d189
line-caps-lock-color=${cfg.theme.colors.background}CC
line-clear-color=${cfg.theme.colors.background}CC
line-color=${cfg.theme.colors.background}CC
line-ver-color=${cfg.theme.colors.background}CC
line-wrong-color=${cfg.theme.colors.background}CC
ring-caps-lock-color=e78284cc
ring-clear-color=85c1dccc
ring-color=${cfg.theme.colors.primary}CC
ring-ver-color=a6d189cc
ring-wrong-color=e78284cc
scaling=fill
separator-color=${cfg.theme.colors.background}CC
text-caps-lock-color=c6d0f5
text-clear-color=c6d0f5
text-ver-color=c6d0f5
text-wrong-color=c6d0f5
'';
programs.swaylock = {
enable = true;
settings = {
daemonize = true;
indicator-thickness = 20;
indicator-radius = 120;
indicator-idle-visible = true;
indicator-caps-lock = true;
};
};
};
}

View file

@ -21,15 +21,7 @@
terminal = "tmux-256color";
extraConfig = ''
run-shell ${pkgs.tmuxPlugins.battery}/share/tmux-plugins/battery/battery.tmux
run-shell ${pkgs.tmuxPlugins.cpu}/share/tmux-plugins/cpu/cpu.tmux
run-shell ${pkgs.tmuxPlugins.resurrect}/share/tmux-plugins/resurrect/resurrect.tmux
run-shell ${pkgs.tmuxPlugins.weather}/share/tmux-plugins/weather/tmux-weather.tmux
set -g status-right '#{cpu_percentage} CPU | #{battery_percentage} BAT | %I:%M %p | #{weather}'
set-option -g @tmux-weather-format "%x+%t"
set-option -g @tmux-weather-units "u"
set-option -g pane-active-border-style fg=plum4
set-option -g status-bg plum4
set -g status-right '%I:%M %p '
'';
};
};

View file

@ -34,8 +34,7 @@ in {
userSettings = {
"diffEditor.ignoreTrimWhitespace" = false;
"editor.fontFamily" = "'${cfg.theme.monospaceFont.name} ${toString cfg.theme.monospaceFont.size}', 'monospace', monospace";
"editor.fontSize" = cfg.theme.monospaceFont.size + 3;
"editor.fontSize" = config.stylix.fonts.sizes.applications + 3;
"editor.formatOnPaste" = true;
"editor.formatOnSave" = true;
"editor.formatOnType" = true;
@ -78,18 +77,11 @@ in {
"shellformat.flag" = "-i 4";
"terminal.external.linuxExec" = lib.getExe cfg.defaultApps.terminal;
"terminal.integrated.fontSize" = cfg.theme.monospaceFont.size + 3;
"terminal.integrated.fontSize" = config.stylix.fonts.sizes.terminal + 3;
"update.mode" = "none";
"window.menuBarVisibility" = "hidden";
"window.titleBarStyle" = lib.mkDefault "native";
"window.zoomPerWindow" = false;
"workbench.colorTheme" =
if cfg.theme.darkMode
then "Adwaita Dark"
else "Adwaita Light";
"workbench.iconTheme" = "vs-seti";
"workbench.preferredDarkColorTheme" = "Adwaita Dark";
"workbench.preferredLightColorTheme" = "Adwaita Light";
};
extensions = with pkgs.vscode-extensions; [
@ -102,7 +94,6 @@ in {
ms-python.python
ms-vscode.cpptools-extension-pack
oderwat.indent-rainbow
piousdeer.adwaita-theme
rubymaniac.vscode-paste-and-indent
rust-lang.rust-analyzer
tomoki1207.pdf

View file

@ -48,8 +48,8 @@ in {
auto_update = false;
autosave.after_delay.milliseconds = 1000;
buffer_font_family = cfg.theme.monospaceFont.name;
buffer_font_size = cfg.theme.monospaceFont.size + 3;
buffer_font_family = config.stylix.fonts.monospace.name;
buffer_font_size = config.stylix.fonts.sizes.applications + 2;
current_line_highlight = "line";
indent_guides = {
@ -89,7 +89,7 @@ in {
metrics = false;
};
terminal.font_size = cfg.theme.monospaceFont.size + 3;
terminal.font_size = config.stylix.fonts.sizes.terminal + 2;
theme = {
dark = "Adwaita Pastel Dark";
@ -97,8 +97,8 @@ in {
mode = "system";
};
ui_font_family = cfg.theme.sansFont.name;
ui_font_size = cfg.theme.sansFont.size + 5;
ui_font_family = config.stylix.fonts.sansSerif.name;
ui_font_size = config.stylix.fonts.sizes.applications + 4;
use_autoclose = false;
vim_mode = false;
};

View file

@ -100,7 +100,6 @@ in {
size = 8;
};
"col.shadow" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.shadow}EE)";
dim_special = 0.5;
drop_shadow = true;
@ -149,8 +148,6 @@ in {
};
general = {
"col.active_border" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.secondary}CC) rgba(${lib.strings.removePrefix "#" cfg.theme.colors.primary}CC) 45deg";
"col.inactive_border" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.inactive}99)";
allow_tearing = false;
border_size = 4;
gaps_in = 5;
@ -164,20 +161,8 @@ in {
};
group = {
"col.border_active" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.secondary}CC) rgba(${lib.strings.removePrefix "#" cfg.theme.colors.primary}CC) 45deg";
"col.border_inactive" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.inactive}99)";
"col.border_locked_active" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.secondary}CC) rgba(${lib.strings.removePrefix "#" cfg.theme.colors.primary}CC) 45deg";
"col.border_locked_inactive" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.inactive}99)";
groupbar = {
"col.active" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.primary}CC)";
"col.inactive" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.inactive}CC)";
"col.locked_active" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.primary}CC)";
"col.locked_inactive" = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.inactive}CC)";
font_family = cfg.theme.sansFont.name;
font_size = cfg.theme.sansFont.size;
height = 24;
text_color = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.text}FF)";
};
};
@ -187,11 +172,9 @@ in {
};
misc = {
background_color = "rgba(${lib.strings.removePrefix "#" cfg.theme.colors.background}FF)";
disable_hyprland_logo = true;
disable_splash_rendering = true;
focus_on_activate = true;
font_family = cfg.theme.sansFont.name;
vfr = true;
};

View file

@ -5,9 +5,12 @@
...
}: let
cfg = config.ar.home;
focused = config.lib.stylix.colors.withHashtag.base0D;
helpers = import ../wayland/helpers.nix {inherit config lib pkgs;};
modifier = "Mod4";
scripts = import ./scripts.nix {inherit config lib pkgs;};
unfocused = config.lib.stylix.colors.withHashtag.base03;
urgent = config.lib.stylix.colors.withHashtag.base08;
in {
enable = true;
checkConfig = false;
@ -30,31 +33,11 @@ in {
modifier = modifier;
colors = {
background = "${cfg.theme.colors.primary}CC";
focused = {
background = "${cfg.theme.colors.primary}CC";
border = "${cfg.theme.colors.primary}CC";
childBorder = "${cfg.theme.colors.primary}CC";
indicator = "${cfg.theme.colors.primary}CC";
text = "${cfg.theme.colors.text}";
};
focusedInactive = {
background = "${cfg.theme.colors.inactive}99";
border = "${cfg.theme.colors.inactive}99";
childBorder = "${cfg.theme.colors.inactive}99";
indicator = "${cfg.theme.colors.inactive}99";
text = "${cfg.theme.colors.text}";
};
unfocused = {
background = "${cfg.theme.colors.inactive}99";
border = "${cfg.theme.colors.inactive}99";
childBorder = "${cfg.theme.colors.inactive}99";
indicator = "${cfg.theme.colors.inactive}99";
text = "${cfg.theme.colors.text}";
};
focused.indicator = lib.mkForce focused;
focusedInactive.indicator = lib.mkForce unfocused;
placeholder.indicator = lib.mkForce unfocused;
unfocused.indicator = lib.mkForce unfocused;
urgent.indicator = lib.mkForce urgent;
};
defaultWorkspace = "workspace number 1";
@ -79,12 +62,6 @@ in {
newWindow = "focus";
};
fonts = {
names = [cfg.theme.sansFont.name];
style = "Bold";
size = cfg.theme.sansFont.size + 0.0;
};
gaps = {
inner = 5;
outer = 6;
@ -183,12 +160,10 @@ in {
};
};
startup =
[
{command = "${pkgs.mate.mate-polkit}/libexec/polkit-mate-authentication-agent-1";}
{command = lib.getExe pkgs.autotiling;}
]
++ lib.optional (!cfg.services.randomWallpaper.enable) {command = "${lib.getExe pkgs.swaybg} -i ${cfg.theme.wallpaper}";};
startup = [
{command = "${pkgs.mate.mate-polkit}/libexec/polkit-mate-authentication-agent-1";}
{command = lib.getExe pkgs.autotiling;}
];
window = {
titlebar = false;
@ -284,7 +259,7 @@ in {
# corner_radius ${toString cfg.theme.borderRadius}
shadows enable
shadows_on_csd enable
shadow_color ${cfg.theme.colors.shadow}
shadow_color ${config.lib.stylix.colors.withHashtag."base00"}CC
default_dim_inactive 0.05

View file

@ -198,94 +198,20 @@ in {
waybar.enable = lib.mkEnableOption "Waybar wayland panel.";
};
theme = let
mkFontOption = typ: nam: pkg: siz: {
name = lib.mkOption {
description = "Default ${typ} font name.";
default = nam;
type = lib.types.str;
};
package = lib.mkOption {
description = "Default ${typ} font package.";
default = pkg;
type = lib.types.package;
};
size = lib.mkOption {
description = "Default ${typ} font size.";
default = siz;
type = lib.types.int;
};
};
in {
theme = {
enable = lib.mkEnableOption "Gtk, Qt, and application colors.";
darkMode = lib.mkOption {
description = "Whether to prefer dark mode apps or not.";
default = cfg.theme.enable;
type = lib.types.bool;
};
borderRadius = lib.mkOption {
description = "Global border radius.";
default = 10;
type = lib.types.int;
};
colors = {
text = lib.mkOption {
description = "Text color.";
default = "#FFFFFF";
type = lib.types.str;
};
background = lib.mkOption {
description = "Background color.";
default = "#242424";
type = lib.types.str;
};
primary = lib.mkOption {
description = "Primary color.";
default = "#78AEED"; #"#CA9EE6";
type = lib.types.str;
};
secondary = lib.mkOption {
description = "Secondary color.";
default = "#CA9EE6"; #"#99D1DB";
type = lib.types.str;
};
inactive = lib.mkOption {
description = "Inactive color.";
default = "#242424";
type = lib.types.str;
};
shadow = lib.mkOption {
description = "Drop shadow color.";
default = "#1A1A1A";
type = lib.types.str;
};
};
sansFont = mkFontOption "sans serif" "UbuntuSans Nerd Font" (pkgs.nerdfonts.override {fonts = ["UbuntuSans"];}) 11;
serifFont = mkFontOption "serif" "Vegur" pkgs.vegur 11;
monospaceFont = mkFontOption "monospace" "UbuntuSansMono Nerd Font" (pkgs.nerdfonts.override {fonts = ["UbuntuSans"];}) 11;
gtk.hideTitleBar = lib.mkOption {
description = "Whether to hide GTK3/4 titlebars (useful for some window managers).";
default = false;
type = lib.types.bool;
};
wallpaper = lib.mkOption {
description = "Default wallpaper.";
default = "${config.xdg.dataHome}/backgrounds/jr-korpa-9XngoIpxcEo-unsplash.jpg";
type = lib.types.str;
};
};
};
}

View file

@ -10,13 +10,10 @@ in {
services.mako = {
actions = true;
anchor = "bottom-right";
backgroundColor = "${cfg.theme.colors.background}99";
borderColor = "${cfg.theme.colors.primary}CC";
borderRadius = cfg.theme.borderRadius;
borderSize = 4;
defaultTimeout = 10000;
enable = true;
font = "${cfg.theme.sansFont.name} ${toString cfg.theme.sansFont.size}";
groupBy = "app-name";
height = 300;
iconPath = "${pkgs.papirus-icon-theme}/share/icons/Papirus/";
@ -24,9 +21,7 @@ in {
layer = "top";
margin = "20,0";
padding = "15";
progressColor = "source ${cfg.theme.colors.secondary}";
sort = "+time";
textColor = "${cfg.theme.colors.text}";
width = 400;
extraConfig = ''

View file

@ -86,6 +86,10 @@
'';
in {
config = lib.mkIf config.ar.home.services.randomWallpaper.enable {
services.hyprpaper.enable = lib.mkForce false;
stylix.targets.hyprpaper.enable = lib.mkForce false;
wayland.windowManager.sway.config.output."*" = lib.mkForce {}; # Dirty. TODO: make more elegant.
systemd.user.services.randomWallpaper = {
Unit = {
After = "graphical-session.target";

View file

@ -27,8 +27,8 @@ in {
window#osd {
padding: 12px 20px;
border-radius: ${toString cfg.theme.borderRadius}px;
border: 4px solid alpha(${cfg.theme.colors.primary}, 0.8);
background: alpha(${cfg.theme.colors.background}, 0.8);
border: 4px solid alpha(${config.lib.stylix.colors.withHashtag."base07"}, ${toString config.stylix.opacity.popups});
background: alpha(${config.lib.stylix.colors.withHashtag."base01"}, ${toString config.stylix.opacity.popups});
}
window#osd #container {
@ -37,7 +37,7 @@ in {
window#osd image,
window#osd label {
color: ${cfg.theme.colors.secondary};
color: ${config.lib.stylix.colors.withHashtag."base06"};
}
window#osd progressbar:disabled,
@ -56,14 +56,14 @@ in {
min-height: inherit;
border-radius: inherit;
border: none;
background: alpha(${cfg.theme.colors.secondary}, 0.5);
background: alpha(${config.lib.stylix.colors.withHashtag."base06"}, 0.5);
}
window#osd progress {
min-height: inherit;
border-radius: inherit;
border: none;
background: ${cfg.theme.colors.secondary};
background: ${config.lib.stylix.colors.withHashtag."base06"};
}
'';

View file

@ -268,36 +268,6 @@ in {
};
style = ''
* {
border-radius: 0px;
border: none;
font-family: "${cfg.theme.sansFont.name}", FontAwesome, sans-serif;
font-size: ${toString (cfg.theme.sansFont.size + 3)}px;
font-weight: bold;
}
window#waybar {
background-color: alpha(${cfg.theme.colors.background}, 0.8);
color: ${cfg.theme.colors.text};
}
tooltip {
background-color: ${cfg.theme.colors.background};
color: ${cfg.theme.colors.text};
}
#workspaces button {
border-radius: ${toString cfg.theme.borderRadius};
color: ${cfg.theme.colors.text};
margin: 0px 0px;
padding: 0px 5px;
}
#workspaces button.active,
#workspaces button.focused {
color: ${cfg.theme.colors.secondary};
}
#battery,
#bluetooth,
#clock,
@ -317,21 +287,6 @@ in {
padding: 0px 5px;
}
#battery.charging,
#power-profiles-daemon.power-saver {
color: ${cfg.theme.colors.primary};
}
#battery.critical:not(.charging),
#custom-dnd.on,
#idle_inhibitor.activated,
#network.disabled,
#network.disconnected,
#power-profiles-daemon.performance,
#pulseaudio.muted {
color: ${cfg.theme.colors.secondary};
}
#clock,
#tablet,
#hardware,
@ -341,15 +296,40 @@ in {
#submap,
#tray,
#workspaces {
margin: 5px 5px;
margin: 0px 5px;
padding: 0px 2.5px;
}
#workspaces button {
border-radius: ${toString cfg.theme.borderRadius};
}
#workspaces button.active,
#workspaces button.focused {
color: ${config.lib.stylix.colors.withHashtag."base0D"};
}
#battery.charging,
#power-profiles-daemon.power-saver {
color: ${config.lib.stylix.colors.withHashtag."base0B"};
}
#battery.critical:not(.charging),
#custom-dnd.on,
#idle_inhibitor.activated,
#network.disabled,
#network.disconnected,
#power-profiles-daemon.performance,
#pulseaudio.muted {
color: ${config.lib.stylix.colors.withHashtag."base08"};
}
#submap,
#mode {
background-color: ${cfg.theme.colors.secondary};
background-color: ${config.lib.stylix.colors.withHashtag."base08"};
border-radius: ${toString cfg.theme.borderRadius};
color: ${cfg.theme.colors.background};
color: ${config.lib.stylix.colors.withHashtag."base00"};
font-weight: bold;
}
'';
@ -364,14 +344,14 @@ in {
xdg.configFile."nwg-drawer/drawer.css".text = ''
window {
background-color: alpha (${cfg.theme.colors.background}, 0.8);
color: ${cfg.theme.colors.text}
background-color: alpha (${config.lib.stylix.colors.withHashtag."base00"}, ${toString config.stylix.opacity.popups});
color: ${config.lib.stylix.colors.withHashtag."base05"}
}
/* search entry */
entry {
background-color: rgba (0, 0, 0, 0.2);
border: 4px solid ${cfg.theme.colors.primary};
border: alpha(${config.lib.stylix.colors.withHashtag."base07"}, ${toString config.stylix.opacity.popups});
border-radius: ${toString cfg.theme.borderRadius}px
}
@ -382,10 +362,10 @@ in {
}
button:active, button:hover, button:focused {
background-color: alpha (${cfg.theme.colors.text}, 0.2);
background-color: alpha (${config.lib.stylix.colors.withHashtag."base05"}, 0.2);
border: none;
border-radius: ${toString cfg.theme.borderRadius}px;
color: ${cfg.theme.colors.secondary}
color: ${config.lib.stylix.colors.withHashtag."base0D"}
}
#category-button {

View file

@ -7,151 +7,53 @@
cfg = config.ar.home.theme;
gtk = {
extraConfig = lib.attrsets.optionalAttrs (cfg.darkMode) {gtk-application-prefer-dark-theme = 1;};
extraCss =
lib.strings.optionalString
cfg.gtk.hideTitleBar
''
/* No (default) title bar on wayland */
headerbar.default-decoration {
/* You may need to tweak these values depending on your GTK theme */
margin-bottom: 50px;
margin-top: -100px;
extraCss = ''
@define-color accent_bg_color ${cfg.colors.primary};
@define-color accent_color @accent_bg_color;
@define-color accent_fg_color ${cfg.colors.text};
@define-color window_bg_color ${cfg.colors.background};
@define-color window_fg_color ${cfg.colors.text};
@define-color view_bg_color ${cfg.colors.background};
@define-color view_fg_color @window_fg_color;
@define-color headerbar_bg_color ${cfg.colors.background};
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_fg_color @window_fg_color;
background: transparent;
padding: 0;
border: 0;
min-height: 0;
font-size: 0;
box-shadow: none;
}
@define-color popover_bg_color ${cfg.colors.background};
@define-color popover_fg_color @view_fg_color;
@define-color dialog_bg_color @popover_bg_color;
@define-color dialog_fg_color @popover_fg_color;
@define-color card_bg_color @popover_bg_color;
@define-color card_fg_color @window_fg_color;
@define-color sidebar_bg_color @headerbar_bg_color;
@define-color sidebar_fg_color @window_fg_color;
@define-color sidebar_backdrop_color @window_bg_color;
@define-color sidebar_shade_color rgba(0,0,0,0.25);
${
lib.strings.optionalString
cfg.gtk.hideTitleBar
''
/* No (default) title bar on wayland */
headerbar.default-decoration {
/* You may need to tweak these values depending on your GTK theme */
margin-bottom: 50px;
margin-top: -100px;
background: transparent;
padding: 0;
border: 0;
min-height: 0;
font-size: 0;
box-shadow: none;
}
/* rm -rf window shadows */
window.csd, /* gtk4? */
window.csd decoration { /* gtk3 */
box-shadow: none;
}
''
}
'';
/* rm -rf window shadows */
window.csd, /* gtk4? */
window.csd decoration { /* gtk3 */
box-shadow: none;
}
'';
};
in {
config = lib.mkIf cfg.enable {
home = {
packages = [
cfg.monospaceFont.package
cfg.sansFont.package
cfg.serifFont.package
pkgs.adwaita-qt
pkgs.gnome.adwaita-icon-theme
pkgs.liberation_ttf
];
pointerCursor = {
gtk.enable = true;
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = lib.mkDefault 24;
x11 = {
enable = true;
defaultCursor = config.home.pointerCursor.name;
};
};
};
fonts.fontconfig = {
enable = true;
defaultFonts = {
monospace = [cfg.monospaceFont.name];
sansSerif = [cfg.sansFont.name];
serif = [cfg.serifFont.name];
};
};
gtk = {
enable = true;
theme = {
name =
if cfg.darkMode
then "adw-gtk3-dark"
else "adw-gtk3";
package = pkgs.adw-gtk3;
};
font = {inherit (cfg.sansFont) name package size;};
iconTheme = {
name =
if cfg.darkMode
if config.stylix.polarity == "dark"
then "Papirus-Dark"
else "Papirus";
package = pkgs.papirus-icon-theme.override {color = "adwaita";};
};
gtk3 = {inherit (gtk) extraConfig extraCss;};
gtk4 = {inherit (gtk) extraConfig extraCss;};
};
qt = {
enable = true;
platformTheme.name = "qtct";
style = {
name =
if cfg.darkMode
then "Adwaita-Dark"
else "Adwaita";
package = pkgs.adwaita-qt6;
};
};
dconf.settings = {
"org/gnome/desktop/background" = {
picture-uri = "file://${cfg.wallpaper}";
picture-uri-dark = "file://${cfg.wallpaper}";
};
"org/gnome/desktop/interface" = {
color-scheme =
if cfg.darkMode
then "prefer-dark"
else "prefer-light";
document-font-name = "${cfg.serifFont.name} ${toString cfg.serifFont.size}";
monospace-font-name = "${cfg.monospaceFont.name} ${toString cfg.monospaceFont.size}";
};
"org/gnome/desktop/wm/preferences".titlebar-font = "${cfg.sansFont.name} ${toString cfg.sansFont.size}";
gtk3 = {inherit (gtk) extraCss;};
gtk4 = {inherit (gtk) extraCss;};
};
};
}

View file

@ -57,9 +57,7 @@ self: {
};
gitui.enable = true;
helix.settings.theme = "rose-pine-moon";
home-manager.enable = true;
kitty.theme = "Rosé Pine Moon";
rbw = {
enable = true;
@ -118,17 +116,6 @@ self: {
theme = {
enable = true;
borderRadius = 0;
colors = {
text = "#e0def4";
background = "#2a273f";
primary = "#3e8fb0";
secondary = "#f6c177";
inactive = "#393552";
shadow = "#232136";
};
wallpaper = "${config.xdg.dataHome}/backgrounds/wallhaven-6d7xmx.jpg";
};
};
}

View file

@ -93,9 +93,6 @@ self: {
randomWallpaper.enable = false;
};
theme = {
enable = true;
wallpaper = "${config.xdg.dataHome}/backgrounds/wallhaven-6d66dl.jpg";
};
theme.enable = true;
};
}

View file

@ -10,6 +10,7 @@
./disko.nix
./home.nix
./secrets.nix
./stylix.nix
self.inputs.nixhw.nixosModules.framework-13-intel-11th
];

View file

@ -0,0 +1,54 @@
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/default-dark.yaml";
image = let
wallpapers = builtins.fetchGit {
url = "https://github.com/alyraffauf/wallpapers.git";
rev = "21018eef106928c7c44d206c6c3730cce5f781f3";
ref = "master";
};
in "${wallpapers}/wallhaven-6d66dl.jpg";
imageScalingMode = "fill";
polarity = "dark";
cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
monospace = {
name = "UbuntuSansMono Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
sansSerif = {
name = "UbuntuSans Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
serif = {
name = "Vegur";
package = pkgs.vegur;
};
sizes = {
applications = 12;
desktop = 11;
popups = 12;
terminal = 13;
};
};
opacity = {
applications = 1.0;
desktop = 0.8;
terminal = 0.8;
popups = 0.8;
};
};
}

View file

@ -11,6 +11,7 @@
./disko.nix
./home.nix
./secrets.nix
./stylix.nix
self.inputs.nixhw.nixosModules.framework-13-amd-7000
];

View file

@ -0,0 +1,54 @@
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-moon.yaml";
image = let
wallpapers = builtins.fetchGit {
url = "https://github.com/alyraffauf/wallpapers.git";
rev = "21018eef106928c7c44d206c6c3730cce5f781f3";
ref = "master";
};
in "${wallpapers}/wallhaven-mp886k.jpg";
imageScalingMode = "fill";
polarity = "dark";
cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
monospace = {
name = "UbuntuSansMono Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
sansSerif = {
name = "UbuntuSans Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
serif = {
name = "Vegur";
package = pkgs.vegur;
};
sizes = {
applications = 12;
desktop = 11;
popups = 12;
terminal = 13;
};
};
opacity = {
applications = 1.0;
desktop = 0.8;
terminal = 0.8;
popups = 0.8;
};
};
}

View file

@ -15,6 +15,7 @@ in {
./disko.nix
./home.nix
./secrets.nix
./stylix.nix
self.inputs.nixhw.nixosModules.common-amd-cpu
self.inputs.nixhw.nixosModules.common-amd-gpu
self.inputs.nixhw.nixosModules.common-bluetooth

View file

@ -20,12 +20,6 @@
enable = true;
preset = "LoudnessEqualizer";
};
theme = {
monospaceFont.size = 14;
sansFont.size = 14;
serifFont.size = 14;
};
};
}
];

54
hosts/mauville/stylix.nix Normal file
View file

@ -0,0 +1,54 @@
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-dawn.yaml";
image = let
wallpapers = builtins.fetchGit {
url = "https://github.com/alyraffauf/wallpapers.git";
rev = "21018eef106928c7c44d206c6c3730cce5f781f3";
ref = "master";
};
in "${wallpapers}/wallhaven-mp886k.jpg";
imageScalingMode = "fill";
polarity = "light";
cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
monospace = {
name = "UbuntuSansMono Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
sansSerif = {
name = "UbuntuSans Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
serif = {
name = "Vegur";
package = pkgs.vegur;
};
sizes = {
applications = 12;
desktop = 11;
popups = 12;
terminal = 13;
};
};
opacity = {
applications = 1.0;
desktop = 0.8;
terminal = 0.8;
popups = 0.8;
};
};
}

View file

@ -9,6 +9,7 @@
./disko.nix
./home.nix
./secrets.nix
./stylix.nix
self.inputs.nixhw.nixosModules.lenovo-yoga-9i-intel-13th
];

View file

@ -0,0 +1,54 @@
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-moon.yaml";
image = let
wallpapers = builtins.fetchGit {
url = "https://github.com/alyraffauf/wallpapers.git";
rev = "21018eef106928c7c44d206c6c3730cce5f781f3";
ref = "master";
};
in "${wallpapers}/wallhaven-mp886k.jpg";
imageScalingMode = "fill";
polarity = "dark";
cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
monospace = {
name = "UbuntuSansMono Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
sansSerif = {
name = "UbuntuSans Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
serif = {
name = "Vegur";
package = pkgs.vegur;
};
sizes = {
applications = 12;
desktop = 11;
popups = 12;
terminal = 13;
};
};
opacity = {
applications = 1.0;
desktop = 0.8;
terminal = 0.8;
popups = 0.8;
};
};
}

View file

@ -10,6 +10,7 @@
./disko.nix
./home.nix
./secrets.nix
./stylix.nix
self.inputs.nixhw.nixosModules.thinkpad-t440p
];

View file

@ -10,12 +10,6 @@
enable = true;
preset = "LoudnessEqualizer";
};
theme = {
monospaceFont.size = 14;
sansFont.size = 14;
serifFont.size = 14;
};
};
}
];

54
hosts/rustboro/stylix.nix Normal file
View file

@ -0,0 +1,54 @@
{pkgs, ...}: {
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-dawn.yaml";
image = let
wallpapers = builtins.fetchGit {
url = "https://github.com/alyraffauf/wallpapers.git";
rev = "21018eef106928c7c44d206c6c3730cce5f781f3";
ref = "master";
};
in "${wallpapers}/wallhaven-mp886k.jpg";
imageScalingMode = "fill";
polarity = "light";
cursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 24;
};
fonts = {
monospace = {
name = "UbuntuSansMono Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
sansSerif = {
name = "UbuntuSans Nerd Font";
package = pkgs.nerdfonts.override {fonts = ["UbuntuSans"];};
};
serif = {
name = "Vegur";
package = pkgs.vegur;
};
sizes = {
applications = 12;
desktop = 11;
popups = 12;
terminal = 13;
};
};
opacity = {
applications = 1.0;
desktop = 0.8;
terminal = 0.8;
popups = 0.8;
};
};
}