225 lines
4.6 KiB
Nix
225 lines
4.6 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
myConfig,
|
|
...
|
|
}: {
|
|
home.packages = with pkgs; [
|
|
matugen
|
|
psmisc # for killall
|
|
];
|
|
home.file.".config/matugen/config.toml" = {
|
|
source = ./config.toml;
|
|
};
|
|
|
|
# Copy static templates
|
|
home.file.".config/matugen/templates/cava".source = ./templates/cava;
|
|
home.file.".config/matugen/templates/firefox".source = ./templates/firefox;
|
|
home.file.".config/matugen/templates/ghostty".source = ./templates/ghostty;
|
|
home.file.".config/matugen/templates/gtk3".source = ./templates/gtk3;
|
|
home.file.".config/matugen/templates/gtk4".source = ./templates/gtk4;
|
|
home.file.".config/matugen/templates/hyprland".source = ./templates/hyprland;
|
|
home.file.".config/matugen/templates/hyprlock".source = ./templates/hyprlock;
|
|
home.file.".config/matugen/templates/starship".source = ./templates/starship;
|
|
home.file.".config/matugen/templates/vicinae".source = ./templates/vicinae;
|
|
home.file.".config/matugen/templates/waybar".source = ./templates/waybar;
|
|
|
|
# Generate templates with font interpolation
|
|
home.file.".config/matugen/templates/walker".text = ''
|
|
/* @import "../../../../../../../.config/omarchy/current/theme/walker.css"; */
|
|
|
|
/* Define Matugen Colors */
|
|
@define-color text {{colors.on_surface.default.hex}};
|
|
@define-color base {{colors.surface_container.default.hex}};
|
|
@define-color border {{colors.primary.default.hex}};
|
|
@define-color selected_text {{colors.primary.default.hex}};
|
|
@define-color background {{colors.surface.default.hex}};
|
|
|
|
* {
|
|
all: unset;
|
|
}
|
|
|
|
* {
|
|
font-family: ${myConfig.font.monospace};
|
|
font-size: 18px;
|
|
color: @text;
|
|
}
|
|
|
|
scrollbar {
|
|
opacity: 0;
|
|
}
|
|
|
|
.normal-icons {
|
|
-gtk-icon-size: 16px;
|
|
}
|
|
|
|
.large-icons {
|
|
-gtk-icon-size: 32px;
|
|
}
|
|
|
|
.box-wrapper {
|
|
background: alpha(@base, 0.95);
|
|
padding: 20px;
|
|
border: 2px solid @border;
|
|
}
|
|
|
|
.preview-box {
|
|
}
|
|
|
|
.box {
|
|
}
|
|
|
|
.search-container {
|
|
background: @base;
|
|
padding: 10px;
|
|
}
|
|
|
|
.input placeholder {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.input {
|
|
}
|
|
|
|
.input:focus,
|
|
.input:active {
|
|
box-shadow: none;
|
|
outline: none;
|
|
}
|
|
|
|
.content-container {
|
|
}
|
|
|
|
.placeholder {
|
|
}
|
|
|
|
.scroll {
|
|
}
|
|
|
|
.list {
|
|
}
|
|
|
|
child,
|
|
child > * {
|
|
}
|
|
|
|
child:hover .item-box {
|
|
}
|
|
|
|
child:selected .item-box {
|
|
}
|
|
|
|
child:selected .item-box * {
|
|
color: @selected_text;
|
|
}
|
|
|
|
.item-box {
|
|
padding-left: 14px;
|
|
}
|
|
|
|
.item-text-box {
|
|
all: unset;
|
|
padding: 14px 0;
|
|
}
|
|
|
|
.item-text {
|
|
}
|
|
|
|
.item-subtext {
|
|
font-size: 0px;
|
|
min-height: 0px;
|
|
margin: 0px;
|
|
padding: 0px;
|
|
}
|
|
|
|
.item-image {
|
|
margin-right: 14px;
|
|
-gtk-icon-transform: scale(0.9);
|
|
}
|
|
|
|
.current {
|
|
font-style: italic;
|
|
}
|
|
|
|
.keybind-hints {
|
|
background: @background;
|
|
padding: 10px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.preview {
|
|
}
|
|
'';
|
|
|
|
home.file.".config/matugen/templates/mako".text = ''
|
|
# Mako notification daemon configuration
|
|
# Generated by matugen
|
|
|
|
# Appearance
|
|
font=${myConfig.font.sans} 11
|
|
width=350
|
|
height=150
|
|
margin=10
|
|
padding=15
|
|
border-size=2
|
|
border-radius=8
|
|
|
|
# Behavior
|
|
default-timeout=5000
|
|
ignore-timeout=false
|
|
layer=overlay
|
|
anchor=top-right
|
|
|
|
# Interaction
|
|
markup=true
|
|
actions=true
|
|
|
|
# Grouping
|
|
group-by=app-name
|
|
max-visible=5
|
|
sort=-time
|
|
|
|
# Theme colors from matugen
|
|
background-color=#{{colors.surface_container_high.default.hex_stripped}}
|
|
text-color=#{{colors.on_surface.default.hex_stripped}}
|
|
border-color=#{{colors.primary.default.hex_stripped}}
|
|
progress-color=over #{{colors.primary_container.default.hex_stripped}}
|
|
|
|
[urgency=low]
|
|
border-color=#{{colors.tertiary.default.hex_stripped}}
|
|
|
|
[urgency=normal]
|
|
border-color=#{{colors.primary.default.hex_stripped}}
|
|
|
|
[urgency=high]
|
|
border-color=#{{colors.error.default.hex_stripped}}
|
|
default-timeout=0
|
|
'';
|
|
|
|
# Qt theming - follow GTK theme
|
|
qt = {
|
|
enable = true;
|
|
platformTheme.name = "gtk";
|
|
};
|
|
|
|
# GTK theming with adw-gtk3 and Matugen colors
|
|
gtk = {
|
|
enable = true;
|
|
theme = {
|
|
name = "adw-gtk3-dark";
|
|
package = pkgs.adw-gtk3;
|
|
};
|
|
iconTheme = {
|
|
name = "Papirus-Dark";
|
|
package = pkgs.papirus-icon-theme;
|
|
};
|
|
gtk3.extraCss = ''@import url("colors.css");'';
|
|
gtk4.extraCss = ''@import url("colors.css");'';
|
|
};
|
|
|
|
programs.ghostty.settings.theme = "matugen";
|
|
programs.starship.enable = true;
|
|
wayland.windowManager.hyprland.settings.source = ["./matugen.conf"];
|
|
programs.walker.config.theme = "nixos";
|
|
}
|