initial commit

This commit is contained in:
lucy 2026-01-20 12:33:06 +01:00
commit f05005bfb2
9 changed files with 324 additions and 0 deletions

58
config.toml Normal file
View File

@ -0,0 +1,58 @@
[config]
reload_apps = true
# Setze hier dein Wallpaper-Tool (z.B. swww, hyprpaper, swaybg)
# set_wallpaper = true
# wallpaper_tool = "swww"
[templates.foot]
input_path = "~/.config/matugen/templates/foot.ini"
output_path = "~/.config/foot/colors.ini"
[templates.waybar]
input_path = "~/.config/matugen/templates/waybar.css"
output_path = "~/.config/waybar/colors.css"
[templates.nvim]
input_path = "~/.config/matugen/templates/nvim.lua"
output_path = "~/.config/nvim/colors/wallust.lua"
[templates.gtk3]
input_path = "~/.config/matugen/templates/gtk.css"
output_path = "~/.config/gtk-3.0/colors.css"
[templates.gtk4]
input_path = "~/.config/matugen/templates/gtk.css"
output_path = "~/.config/gtk-4.0/colors.css"
[templates.fuzzel]
input_path = "~/.config/matugen/templates/fuzzel.ini"
output_path = "~/.config/fuzzel/colors.ini"
[templates.vesktop]
input_path = "~/.config/matugen/templates/discord.css"
output_path = "~/.config/vesktop/themes/wallust.css"
[templates.qt6ct]
input_path = "~/.config/matugen/templates/qtct.conf"
output_path = "~/.config/qt6ct/colors/wallust.conf"
[templates.qt5ct]
input_path = "~/.config/matugen/templates/qtct.conf"
output_path = "~/.config/qt5ct/colors/wallust.conf"
[templates.hyprland]
input_path = "~/.config/matugen/templates/hyprland.conf"
output_path = "~/.config/hypr/colors.conf"
[templates.quickshell]
input_path = "~/.config/matugen/templates/Colors.qml"
output_path = "~/.config/quickshell/Colors.qml"
[templates.kitty]
input_path = "~/.config/matugen/templates/kitty.conf"
output_path = "~/.config/kitty/colors.conf"
post_hook = "pkill -SIGUSR1 kitty"
[templates.ghostty]
input_path = "~/.config/matugen/templates/ghostty"
output_path = "~/.config/ghostty/colors"

29
templates/Colors.qml Normal file
View File

@ -0,0 +1,29 @@
pragma Singleton
import QtQuick
import Quickshell
Singleton {
id: customColors
// Core Backgrounds
readonly property color background: "{{colors.background.default.hex}}"
readonly property color foreground: "{{colors.on_background.default.hex}}"
readonly property color cursor: "{{colors.primary.default.hex}}"
// Mapping Material Colors to the 16 slots
readonly property color color0: "{{colors.surface.default.hex}}"
readonly property color color1: "{{colors.error.default.hex}}"
readonly property color color2: "{{colors.primary.default.hex}}"
readonly property color color3: "{{colors.tertiary.default.hex}}"
readonly property color color4: "{{colors.secondary.default.hex}}"
readonly property color color5: "{{colors.primary_container.default.hex}}"
readonly property color color6: "{{colors.secondary_container.default.hex}}"
readonly property color color7: "{{colors.on_surface.default.hex}}"
readonly property color color8: "{{colors.surface_variant.default.hex}}"
readonly property color color9: "{{colors.error_container.default.hex}}"
readonly property color color10: "{{colors.inverse_primary.default.hex}}"
readonly property color color11: "{{colors.on_tertiary_container.default.hex}}"
readonly property color color12: "{{colors.on_secondary_container.default.hex}}"
readonly property color color13: "{{colors.on_primary_container.default.hex}}"
readonly property color color14: "{{colors.on_surface_variant.default.hex}}"
readonly property color color15: "{{colors.inverse_surface.default.hex}}"
}

42
templates/discord.css Normal file
View File

@ -0,0 +1,42 @@
/**
* @name Midnight (Matugen Edition)
*/
@import url('https://refact0r.github.io/midnight-discord/build/midnight.css');
:root {
--font: 'figtree';
--corner-text: 'Midnight';
/* Status Indicators */
--online-indicator: {{colors.primary.default.hex}};
--dnd-indicator: {{colors.error.default.hex}};
--idle-indicator: {{colors.tertiary.default.hex}};
--streaming-indicator: {{colors.primary_container.default.hex}};
/* Accent Colors */
--accent-1: {{colors.secondary.default.hex}};
--accent-2: {{colors.on_secondary_container.default.hex}};
--accent-3: {{colors.secondary_container.default.hex}};
--accent-4: {{colors.primary.default.hex}};
--accent-5: {{colors.error.default.hex}};
/* Backgrounds */
--bg-1: {{colors.background.default.hex}};
--bg-2: {{colors.surface.default.hex}};
--bg-3: {{colors.background.default.hex}};
--bg-4: {{colors.background.default.hex}};
/* Text Colors */
--text-0: {{colors.on_background.default.hex}};
--text-1: {{colors.on_background.default.hex}};
--text-2: {{colors.on_background.default.hex}};
--text-3: {{colors.on_background.default.hex}};
--text-4: {{colors.on_background.default.hex}};
--text-5: {{colors.surface_variant.default.hex}};
/* Popups & Modals */
--hover: {{colors.secondary.default.hex}}1a;
--active: {{colors.secondary.default.hex}}33;
--message-hover: {{colors.surface.default.hex}}0a;
}

7
templates/fuzzel.ini Normal file
View File

@ -0,0 +1,7 @@
[colors]
background={{colors.background.default.hex_stripped}}ff
text={{colors.on_background.default.hex_stripped}}ff
match={{colors.secondary.default.hex_stripped}}ff
selection={{colors.secondary.default.hex_stripped}}ff
selection-text={{colors.background.default.hex_stripped}}ff
border={{colors.secondary.default.hex_stripped}}ff

37
templates/gtk.css Normal file
View File

@ -0,0 +1,37 @@
/* GTK3 / GTK4 Color Overrides - Generated by Matugen */
@define-color accent_color {{colors.secondary.default.hex}};
@define-color accent_bg_color {{colors.secondary.default.hex}};
@define-color accent_fg_color {{colors.background.default.hex}};
@define-color window_bg_color {{colors.background.default.hex}};
@define-color window_fg_color {{colors.on_background.default.hex}};
@define-color view_bg_color {{colors.background.default.hex}};
@define-color view_fg_color {{colors.on_background.default.hex}};
@define-color headerbar_bg_color {{colors.background.default.hex}};
@define-color headerbar_fg_color {{colors.on_background.default.hex}};
@define-color dialog_bg_color {{colors.background.default.hex}};
@define-color dialog_fg_color {{colors.on_background.default.hex}};
@define-color popover_bg_color {{colors.background.default.hex}};
@define-color popover_fg_color {{colors.on_background.default.hex}};
/* Sidebar / Lists */
@define-color sidebar_bg_color {{colors.surface.default.hex}};
@define-color sidebar_fg_color {{colors.on_background.default.hex}};
/* Terminal / Darker Elements */
@define-color card_bg_color {{colors.surface.default.hex}};
@define-color card_fg_color {{colors.on_background.default.hex}};
/* Standard Palette */
@define-color red_1 {{colors.error.default.hex}};
@define-color green_1 {{colors.primary.default.hex}};
@define-color yellow_1 {{colors.tertiary.default.hex}};
@define-color blue_1 {{colors.secondary.default.hex}};
@define-color purple_1 {{colors.primary_container.default.hex}};
@define-color teal_1 {{colors.secondary_container.default.hex}};
@define-color orange_1 {{colors.tertiary.default.hex}};
@define-color gray_1 {{colors.surface_variant.default.hex}};

5
templates/hyprland.conf Normal file
View File

@ -0,0 +1,5 @@
# Hyprland with colors from matugen
general {
col.active_border = rgba({{colors.on_background.default.hex_stripped}}ff)
col.inactive_border = rgba({{colors.surface.default.hex_stripped}}ee)
}

27
templates/kitty.conf Normal file
View File

@ -0,0 +1,27 @@
# The kitty terminal template for matugen
cursor {{colors.primary.default.hex}}
background {{colors.background.default.hex}}
foreground {{colors.on_background.default.hex}}
color0 {{colors.surface.default.hex}}
color1 {{colors.error.default.hex}}
color2 {{colors.primary.default.hex}}
color3 {{colors.tertiary.default.hex}}
color4 {{colors.secondary.default.hex}}
color5 {{colors.primary_container.default.hex}}
color6 {{colors.secondary_container.default.hex}}
color7 {{colors.on_surface.default.hex}}
color8 {{colors.surface_variant.default.hex}}
color9 {{colors.error_container.default.hex}}
color10 {{colors.inverse_primary.default.hex}}
color11 {{colors.on_tertiary_container.default.hex}}
color12 {{colors.on_secondary_container.default.hex}}
color13 {{colors.on_primary_container.default.hex}}
color14 {{colors.on_surface_variant.default.hex}}
color15 {{colors.inverse_surface.default.hex}}
# Matugen filters are slightly different, approximating saturation/lightness logic
mark1_foreground {{colors.secondary_container.default.hex}}
mark2_foreground {{colors.on_surface.default.hex}}
mark3_foreground {{colors.secondary_container.default.hex}}

110
templates/nvim.lua Normal file
View File

@ -0,0 +1,110 @@
-- Matugen Theme
vim.cmd("hi clear")
if vim.fn.exists("syntax_on") then
vim.cmd("syntax reset")
end
vim.g.colors_name = "matugen"
local c = {
bg = "{{colors.background.default.hex}}",
fg = "{{colors.on_background.default.hex}}",
cursor = "{{colors.primary.default.hex}}",
c0 = "{{colors.surface.default.hex}}",
c1 = "{{colors.error.default.hex}}",
c2 = "{{colors.primary.default.hex}}",
c3 = "{{colors.tertiary.default.hex}}",
c4 = "{{colors.secondary.default.hex}}",
c5 = "{{colors.primary_container.default.hex}}",
c6 = "{{colors.secondary_container.default.hex}}",
c7 = "{{colors.on_surface.default.hex}}",
c8 = "{{colors.surface_variant.default.hex}}",
c9 = "{{colors.error_container.default.hex}}",
c10 = "{{colors.inverse_primary.default.hex}}",
c11 = "{{colors.on_tertiary_container.default.hex}}",
c12 = "{{colors.on_secondary_container.default.hex}}",
c13 = "{{colors.on_primary_container.default.hex}}",
c14 = "{{colors.on_surface_variant.default.hex}}",
c15 = "{{colors.inverse_surface.default.hex}}",
tbg = "{{colors.background.default.hex}}", -- Matugen filters usually not inline
}
local hl = function(group, opts)
vim.api.nvim_set_hl(0, group, opts)
end
-- Base
hl("Normal", { fg = c.fg, bg = c.bg })
hl("Cursor", { fg = c.bg, bg = c.cursor })
hl("LineNr", { fg = c.c8 })
hl("CursorLine", { bg = c.c0 })
hl("StatusLine", { fg = c.fg, bg = c.c0 })
-- Syntax
hl("Comment", { fg = c.c8, italic = true })
hl("Constant", { fg = c.c3 })
hl("String", { fg = c.c2 })
hl("Identifier", { fg = c.c4 })
hl("Function", { fg = c.c4, bold = true })
hl("Statement", { fg = c.c5 })
hl("Keyword", { fg = c.c5 })
hl("Type", { fg = c.c6 })
hl("Special", { fg = c.c1 })
-- UI
hl("Pmenu", { fg = c.fg, bg = c.c0 })
hl("PmenuSel", { fg = c.c0, bg = c.c4 })
hl("WinSeparator", { fg = c.c8 })
-- BARBAR
hl("BufferCurrent", { fg = c.fg, bg = c.bg, bold = true })
hl("BufferCurrentIndex", { fg = c.c4, bg = c.bg })
hl("BufferCurrentMod", { fg = c.c3, bg = c.bg })
hl("BufferCurrentSign", { fg = c.c4, bg = c.bg })
hl("BufferCurrentTarget", { fg = c.c1, bg = c.bg, bold = true })
hl("BufferInactive", { fg = c.c8, bg = c.bg })
hl("BufferInactiveIndex", { fg = c.c8, bg = c.bg })
hl("BufferInactiveMod", { fg = c.c8, bg = c.bg })
hl("BufferInactiveSign", { fg = c.c8, bg = c.bg })
hl("BufferInactiveTarget", { fg = c.c8, bg = c.bg, bold = true })
hl("BufferVisible", { fg = c.fg, bg = c.c0 })
hl("BufferVisibleIndex", { fg = c.fg, bg = c.c0 })
hl("BufferVisibleMod", { fg = c.c3, bg = c.c0 })
hl("BufferVisibleSign", { fg = c.c4, bg = c.c0 })
hl("BufferVisibleTarget", { fg = c.c1, bg = c.c0, bold = true })
hl("BufferTabpageFill", { fg = c.c0, bg = c.bg })
hl("TelescopeNormal", { bg = c.tbg })
-- MARKDOWN
hl("RenderMarkdownH1", { fg = c.c4, bold = true })
hl("RenderMarkdownH2", { fg = c.c3, bold = true })
hl("RenderMarkdownH3", { fg = c.c2, bold = true })
hl("RenderMarkdownH4", { fg = c.c5, bold = true })
hl("RenderMarkdownH5", { fg = c.c6, bold = true })
hl("RenderMarkdownH6", { fg = c.c1, bold = true })
hl("RenderMarkdownH1Bg", { bg = c.c0 })
hl("RenderMarkdownH2Bg", { bg = c.c0 })
hl("RenderMarkdownH3Bg", { bg = c.c0 })
hl("RenderMarkdownH4Bg", { bg = c.c0 })
hl("RenderMarkdownH5Bg", { bg = c.c0 })
hl("RenderMarkdownH6Bg", { bg = c.c0 })
hl("RenderMarkdownCode", { bg = c.tbg })
hl("RenderMarkdownCodeInline", { fg = c.c4, bg = c.tbg })
hl("RenderMarkdownBullet", { fg = c.c3 })
hl("RenderMarkdownQuote", { fg = c.c8 })
hl("RenderMarkdownDash", { fg = c.c8 })
hl("RenderMarkdownSign", { fg = c.c8 })
hl("RenderMarkdownInfo", { fg = c.c4, bg = c.c0 })
hl("RenderMarkdownSuccess", { fg = c.c2, bg = c.c0 })
hl("RenderMarkdownWarn", { fg = c.c3, bg = c.c0 })
hl("RenderMarkdownError", { fg = c.c1, bg = c.c0 })
hl("RenderMarkdownHint", { fg = c.c6, bg = c.c0 })
hl("RenderMarkdownUnchecked", { fg = c.c8 })
hl("RenderMarkdownChecked", { fg = c.c2 })

9
templates/qtct.conf Normal file
View File

@ -0,0 +1,9 @@
[ColorScheme]
# Active
active_colors={{colors.on_background.default.hex}}, {{colors.background.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.on_background.default.hex}}, {{colors.inverse_surface.default.hex}}, {{colors.on_background.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.secondary.default.hex}}, {{colors.background.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.surface.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_background.default.hex}}, {{colors.surface_variant.default.hex}}
# Inactive
inactive_colors={{colors.surface_variant.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.inverse_surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.background.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.surface.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}
# Disabled
disabled_colors={{colors.surface_variant.default.hex}}, {{colors.surface.default.hex}}, {{colors.on_surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.inverse_surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.background.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.background.default.hex}}, {{colors.secondary.default.hex}}, {{colors.primary_container.default.hex}}, {{colors.surface.default.hex}}, {{colors.background.default.hex}}, {{colors.surface.default.hex}}, {{colors.surface_variant.default.hex}}, {{colors.surface_variant.default.hex}}