2026-08-24 10:17:20 -05:00
|
|
|
-- Change the default Omarchy look'n'feel.
|
|
|
|
|
|
|
|
|
|
-- https://wiki.hypr.land/Configuring/Basics/Variables/#general
|
|
|
|
|
-- hl.config({
|
|
|
|
|
-- general = {
|
|
|
|
|
-- -- No gaps between windows or borders.
|
|
|
|
|
-- gaps_in = 0,
|
|
|
|
|
-- gaps_out = 0,
|
|
|
|
|
-- border_size = 0,
|
|
|
|
|
--
|
|
|
|
|
-- -- Change to niri-like side-scrolling layout.
|
|
|
|
|
-- layout = "scrolling",
|
|
|
|
|
-- },
|
|
|
|
|
-- })
|
|
|
|
|
|
|
|
|
|
-- https://wiki.hypr.land/Configuring/Basics/Variables/#decoration
|
|
|
|
|
-- hl.config({
|
|
|
|
|
-- decoration = {
|
|
|
|
|
-- -- Use round window corners.
|
|
|
|
|
-- rounding = 8,
|
|
|
|
|
--
|
|
|
|
|
-- -- Dim unfocused windows (0.0 = no dim, 1.0 = fully dimmed).
|
|
|
|
|
-- dim_inactive = true,
|
|
|
|
|
-- dim_strength = 0.15,
|
|
|
|
|
-- },
|
|
|
|
|
-- })
|
|
|
|
|
|
|
|
|
|
-- https://wiki.hypr.land/Configuring/Basics/Variables/#animations
|
|
|
|
|
-- hl.config({
|
|
|
|
|
-- animations = {
|
|
|
|
|
-- -- Disable all animations.
|
|
|
|
|
-- enabled = false,
|
|
|
|
|
-- },
|
|
|
|
|
-- })
|
|
|
|
|
|
2026-08-29 11:21:11 -04:00
|
|
|
-- The Spectra theme re-enables the workspace slide (its hyprland.lua sets
|
|
|
|
|
-- `workspaces` enabled with the "flow" bezier), overriding Omarchy's default
|
|
|
|
|
-- `hl.animation({ leaf = "workspaces", enabled = false })`. This file loads
|
|
|
|
|
-- after the theme, so turn it back off here. workspacesIn/workspacesOut are
|
|
|
|
|
-- not overridden anywhere, so they inherit this.
|
|
|
|
|
hl.animation({ leaf = "workspaces", enabled = false })
|
|
|
|
|
|
2026-08-24 10:17:20 -05:00
|
|
|
-- https://wiki.hypr.land/Configuring/Basics/Variables/#layout
|
|
|
|
|
-- hl.config({
|
|
|
|
|
-- layout = {
|
|
|
|
|
-- -- Avoid overly wide single-window layouts on wide screens.
|
|
|
|
|
-- single_window_aspect_ratio = { 1, 1 },
|
|
|
|
|
-- },
|
|
|
|
|
-- })
|
|
|
|
|
|
|
|
|
|
-- https://wiki.hypr.land/Configuring/Layouts/Scrolling-Layout/
|
|
|
|
|
-- hl.config({
|
|
|
|
|
-- scrolling = {
|
|
|
|
|
-- -- See only one column per screen instead of two.
|
|
|
|
|
-- column_width = 0.97,
|
|
|
|
|
-- },
|
|
|
|
|
-- })
|
2026-08-28 10:52:19 -04:00
|
|
|
|
2026-08-28 14:14:20 -04:00
|
|
|
-- hyprglass (Apple-style liquid glass) is loaded, but the Spectra theme owns
|
|
|
|
|
-- blur now: ~/.config/omarchy/themes/spectra/hyprland.lua enables
|
|
|
|
|
-- decoration:blur for windows and a layer_rule for the Quickshell surfaces.
|
|
|
|
|
-- Two blur passes over the same surface just costs GPU time, so hyprglass's
|
|
|
|
|
-- layer pass stays off here. The namespaces it used to whitelist (waybar,
|
|
|
|
|
-- swaync, quickshell:bezel) do not exist under Omarchy 4 anyway -- the shell is
|
|
|
|
|
-- Quickshell under omarchy-bar / omarchy-menu / omarchy-notifications / ...
|
|
|
|
|
-- To hand the shell surfaces back to hyprglass: set layers.enabled = 1, restore
|
|
|
|
|
-- the hg.layer() calls below with the omarchy-* namespaces, and drop those same
|
|
|
|
|
-- namespaces from the theme's hl.layer_rule.
|
2026-08-28 10:52:19 -04:00
|
|
|
if hl.plugin.hyprglass then
|
|
|
|
|
local hg = hl.plugin.hyprglass
|
|
|
|
|
|
|
|
|
|
hg.config({
|
|
|
|
|
default_theme = "dark",
|
|
|
|
|
default_preset = "clear",
|
|
|
|
|
tint_color = 0x8899aa22,
|
|
|
|
|
|
|
|
|
|
brightness = 0.9,
|
|
|
|
|
dark = { brightness = 0.82 },
|
|
|
|
|
light = { adaptive_boost = 0.5 },
|
|
|
|
|
|
2026-08-28 14:14:20 -04:00
|
|
|
layers = { enabled = 0 },
|
2026-08-28 10:52:19 -04:00
|
|
|
})
|
|
|
|
|
|
|
|
|
|
-- Layer surfaces: each call whitelists the namespace and configures it
|
2026-08-28 14:14:20 -04:00
|
|
|
-- hg.layer("omarchy-bar", { preset = "subtle", mask_threshold = 0.05 })
|
|
|
|
|
-- hg.layer("omarchy-notifications")
|
|
|
|
|
-- hg.layer("omarchy-menu", { preset = "ui", mask_threshold = 0.3 })
|
2026-08-28 10:52:19 -04:00
|
|
|
|
|
|
|
|
-- Presets
|
|
|
|
|
hg.preset("clear", {
|
|
|
|
|
glass_opacity = 0.8,
|
|
|
|
|
blur_strength = 1.5,
|
|
|
|
|
dark = { brightness = 0.7 },
|
|
|
|
|
light = { brightness = 1.2 },
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
hg.preset("contrasted", {
|
|
|
|
|
inherits = "high_contrast",
|
|
|
|
|
contrast = 1.2,
|
|
|
|
|
adaptive_dim = 1.5,
|
|
|
|
|
dark = { tint_color = 0x02142aa9 },
|
|
|
|
|
})
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|