Window appearance: compare compact, readable, and lightweight setups
Tune gaps, borders, opacity and motion around the same working task, and understand why saved toggles can override personal settings.
Based on public documentation; not hardware-tested. Match the instructions to your version and hardware.
An attractive empty desktop tells you little about reading code beside documentation. This exercise compares three working setups using an editor, a browser and a terminal. The goal is to choose comfortable boundaries and motion, while keeping enough space for the actual work.
Examples follow the pinned 4.0.0.alpha source, not every installed Omarchy release. Check your version and that Setup → Config opens hypr/looknfeel.lua. Older .conf instructions need their own syntax. The configurations below are teaching choices, not measured performance presets or real desktop screenshots.
1. Understand the layers before changing the picture
Section titled “1. Understand the layers before changing the picture”shipped Hyprland appearance → current theme → personal looknfeel.lua → saved Omarchy appearance toggles → effective compositor settingsapplication background and font settings → content inside the windowworkspace mode → placement, and additional floating-workspace decoration| Control | What it changes | What it does not solve |
|---|---|---|
| Inner/outer gaps | Separation between tiles and screen edges | Text size inside an app |
| Border size/color | Window boundaries and focus cues | Application toolbar colors |
| Rounding | Corners of the window surface | A browser’s internal tabs |
| Opacity | How much background shows through | Contrast in an app’s own color scheme |
| Blur and shadow | Background diffusion and visual depth | More workspace area |
| Animation | Transitions between states | A slow application’s computation |
The shipped values at this snapshot include inner gaps 5, outer gaps 10, a 2 border and square corners. Shadows and blur begin disabled; themes and saved modes can change the final result. A floating workspace can also supply shadows, titlebars and full opacity. Compare on a normal tiled workspace first. Appearance defaults · Floating workspace integration
2. Establish a repeatable baseline
Section titled “2. Establish a repeatable baseline”Use the same monitor scale, theme, application font sizes and three windows throughout. Pick a browser paragraph, an editor line with comments, and terminal output you can read repeatedly. Test switching focus, dragging a floating dialog and locating the active window without relying on the mouse position.
Back up the existing personal file with a fresh name:
cp -i ~/.config/hypr/looknfeel.lua ~/.config/hypr/looknfeel.lua.before-appearanceRecord the current transparency mode and effective values:
omarchy-hyprland-window-transparencyhyprctl getoption general.gaps_inhyprctl getoption general.gaps_outhyprctl getoption general.border_sizehyprctl getoption animations.enabledAlso record the menu states for window gaps and animations. Do not toggle blindly to “reset” them. A no-gaps flag is loaded after your personal file and can keep the gaps at zero despite a valid edit. The animation switch disables blur and shadows too, not just motion. No-gaps override · Animation override
3. Compare two spatial choices
Section titled “3. Compare two spatial choices”Through the menu editor, add one experiment block to the existing looknfeel.lua. Save and exit so Omarchy applies the edit. Do not replace the complete file or leave both comparison blocks active.
Compact: reclaim space without removing every boundary
Section titled “Compact: reclaim space without removing every boundary”hl.config({ general = { gaps_in = 2, gaps_out = 4, border_size = 1 }, decoration = { rounding = 0 },})Compare the editor’s visible columns and browser wrapping. If a window becomes only a little larger, that is reasonable: removing a few units of whitespace cannot turn a narrow screen into a wide one. Check whether the thin border still makes keyboard focus obvious.
Going all the way to zero gaps and zero borders saves more space but removes two focus cues. That may work for one maximized editor and become confusing with three adjacent apps. Try it only as a separate comparison through the gaps menu, then return that toggle to its recorded state before judging this block.
Readable: make boundaries easier to recognize
Section titled “Readable: make boundaries easier to recognize”Replace the experiment block with:
hl.config({ general = { gaps_in = 6, gaps_out = 12, border_size = 2 }, decoration = { rounding = 0, dim_inactive = false },})Use the normal transparent/opaque appearance menu to compare readability over busy wallpaper. Record the original mode first; for the solid comparison:
omarchy-hyprland-window-transparency opaqueThis affects Omarchy’s supported transparency integration, including terminal theme handling; it does not promise to repair every app’s own transparent background. Existing terminals have different reload behaviour. Save any editor work and reopen a test terminal if its old appearance remains. Transparency implementation
If you prefer dimming inactive windows, test dim_inactive = true, dim_strength = 0.08 separately. When documentation must remain readable while the editor is focused, dimming the browser can work against your goal. Font size belongs in the font guide, rather than compensating with increasingly large gaps.
4. Compare motion and decoration independently
Section titled “4. Compare motion and decoration independently”Keep your preferred spacing. Record whether animations were already disabled, then try:
omarchy-toggle-animations offOpen and switch the same three windows. Judge perceived movement and ease of finding focus. The command also turns off compositor blur and shadows through its saved override. It can help a machine rendering on the CPU, but this article supplies no benchmark or battery-life guarantee.
Return to the prior switch state when comparing motion alone. omarchy-toggle-animations on removes the “off” override; it does not force every animation on if your own Lua file still sets animations.enabled = false. Likewise, removing that Lua line does not remove a saved off flag. Animation command
Glassy transparency introduces background blur and terminal transparency. It is a separate experiment, not a prerequisite for a readable setup. A transparent text surface without adequate contrast can remain hard to read even when blur looks good.
5. Choose by task, not by a screenshot
Section titled “5. Choose by task, not by a screenshot”| Test | Compact | Readable | Lightweight decoration |
|---|---|---|---|
| Editor beside docs | More room; verify active border | More separation; less available width | Same space as your chosen gaps |
| Rapid focus changes | Thin boundary may be harder to spot | Compare focused/unfocused contrast | Motion removed; verify focus remains clear |
| Busy wallpaper | Opacity still matters | Solid surfaces can help | Disabling blur alone does not remove transparency |
| Small laptop | Useful if whitespace is the limit | Large gaps may waste space | Helps motion discomfort; does not enlarge text |
These are hypotheses to test on your display. Write down one result: “I can distinguish the focused terminal and still read the browser paragraph.” Keep the smallest set of changes that achieves it. Window layout can provide a larger improvement than another two units of gaps; see layout selection.
6. When the visible result disagrees with the file
Section titled “6. When the visible result disagrees with the file”| Symptom | First check |
|---|---|
| Gaps remain zero | Saved no-gaps state and workspace-specific rules |
| Animation edit has no effect | Saved animation switch, then the loaded personal file |
| Floating windows stay opaque | Floating workspace mode’s opacity rules |
| Only one app looks different | App-drawn background and matching window rules |
| Theme change alters borders | Theme settings and your intended personal overrides |
| A border disappears only fullscreen | Compare ordinary tiles; fullscreen is another state |
Inspect hyprctl configerrors when available. An accepted file and an effective option query answer different questions: the first concerns parsing, the second concerns the final value. Do not add repeated “fix” blocks at the bottom until you know which layer owns the effect.
7. Restore the files and the switches
Section titled “7. Restore the files and the switches”Remove only the experiment block, or compare and restore the original file if there were no later changes. Return transparency and animations to their recorded values, and restore the gaps menu state. Restoring looknfeel.lua alone does not undo saved switches.
Apply through the same menu, then inspect one tiled window, one floating dialog and active/inactive text. Verify that the original focus cues return. If you keep a preferred setup, record its purpose, changed keys and switch states alongside the backup; that is more useful during updates than “make the desktop pretty.”
Continue with window rules, application theme differences and configuration maintenance. Source review does not replace testing on an actual Omarchy desktop.