Customize the bar layout and text without losing your settings
Build a compact Omarchy Shell bar, understand layout and appearance overrides, and restore your previous setup.
Based on public documentation; not hardware-tested. Match the instructions to your version and hardware.
Suppose the clock is too long, the text is small, and the bar feels crowded on your laptop. The goal here is a shorter clock, a deliberate widget order, and larger shell text without automatically making the horizontal bar taller. Change those separately so you can tell which adjustment helped.
These examples target the built-in Omarchy Shell bar in the pinned source, not Waybar. Check omarchy version, omarchy bar --help, and omarchy plugin list first. If your installation uses Waybar or lacks these commands, use its matching documentation rather than creating files from this tutorial. The source version is a development baseline, not a compatibility promise for every 4.x installation.
1. Layout and appearance answer different questions
Section titled “1. Layout and appearance answer different questions”shell.json → which bar and widgets run, their order and settingsactive theme/shell.toml → the theme's colors, spacing and sizespersonal shell.toml → local appearance overrides above the themeOmarchy Shell → renders the bar and its panels| Goal | Control | What it changes |
|---|---|---|
| Move the bar or a widget | omarchy bar / shell.json |
Placement |
| Change the clock format | The clock’s own setting | Text content |
| Enable a widget | Plugin commands | Presence in the layout |
| Enlarge shell text | Personal shell.toml, [font] |
Shell typography |
| Keep a fixed bar height | Personal shell.toml, [bar] |
Bar sizing policy |
| Change palette | Theme selector | Theme-provided appearance |
shell.json is the full personal configuration once customized; it does not deep-merge a tiny fragment with the shipped file. Do not replace it with a three-line example. shell.toml provides appearance overrides, and its personal keys win over the active theme. Consequently, a local fixed height can survive a theme change even when the colors change.
2. Record and back up the starting point
Section titled “2. Record and back up the starting point”Use the commands below as queries, one at a time:
omarchy bar positionomarchy bar backgroundomarchy bar get omarchy.clock formatomarchy plugin listAn absent explicit clock format may produce no value and a nonzero exit status; record that it was inherited. Also record the clock’s section and neighbours from your current ~/.config/omarchy/shell.json.
Back up that file if it exists:
cp -i ~/.config/omarchy/shell.json ~/.config/omarchy/shell.json.before-bar-editIf it does not exist, record that fact: the shell is using defaults. Keep the generated personal file after the exercise for inspection; to return to the absent-file state, move it to a fresh archive name and restart the shell. Do not copy a guessed default over unrelated settings.
If ~/.config/omarchy/shell.toml already exists, back it up separately to shell.toml.before-bar-edit. If the backup name exists, choose a new name; do not overwrite an earlier checkpoint.
3. Shorten the clock before removing widgets
Section titled “3. Shorten the clock before removing widgets”omarchy bar set omarchy.clock format "HH:mm"Look for a 24-hour time such as 14:35. This changes the displayed format, not the system timezone. Try opening the clock panel as well: changing its label should not remove calendar access.
Then, if you want the clock first in the center section:
omarchy bar move omarchy.clock --section center --index 0Index 0 means the first entry within that section, not the first widget across the screen. Center anchoring and the widths of other sections still affect its visual location. On a vertical bar, widgets may use compact forms instead of the same horizontal text.
Conceptual layout, not an operating-system screenshot:
before: [menu · workspaces] [indicators · long clock · weather] [tray · controls]after: [menu · workspaces] [short clock · indicators · weather] [tray · controls]Keep weather for now. If shortening the clock resolves the crowding, you have avoided removing a useful feature unnecessarily.
4. Add or remove one widget deliberately
Section titled “4. Add or remove one widget deliberately”Find the exact id in omarchy plugin list. For example, if omarchy.media is available and you want playback controls:
omarchy plugin enable omarchy.media --section centerStart playback in an application that exposes media information. An enabled widget can remain empty when there is nothing to display; that is different from an unknown plugin id. If it was absent before this exercise, disabling it reverses this addition:
omarchy plugin disable omarchy.mediaFor a widget already present, omarchy bar move changes its location. omarchy bar put leaves an existing placement alone. Do not repeatedly add the same id hoping that it will move. Widgets that permit multiple instances need source placement arguments to identify the intended instance.
Reordering the right section can also change the panel addressed by numbered shortcuts. Check both the mouse action and the numbered shortcut you actually use.
5. Increase text while controlling the bar height
Section titled “5. Increase text while controlling the bar height”Open your personal ~/.config/omarchy/shell.toml in an editor. Merge these keys into existing sections; create the file only if absent. Do not duplicate [font] or [bar] headers:
[font]base-size = 14
[bar]scale-with-font = falsesize-horizontal = 28This example targets shell text and a horizontal bar. base-size scales shell typography, including menus and popups. The sizing flag stops the bar’s configured height from scaling along with that base size. 28 is a starting point, not a guarantee that every font will fit.
If text clips, increase the height or reduce the text size. Fixed height is not an automatic fit algorithm. A supported display cutout can impose a higher minimum on a top bar. Vertical bars use size-vertical instead. Screen scaling also changes how logical sizes appear physically; see display scaling.
For a coordinated change to shell, GTK and terminal text, use the separate font and text-size guide. That control has a wider effect than editing the shell alone.
6. Diagnose the observed failure
Section titled “6. Diagnose the observed failure”| Observation | Check next |
|---|---|
| Command reports an unknown option | Installed command help and version |
| Entire bar is missing | Bar visibility toggle and whether the shell is running |
| One widget is missing | Exact id, enabled state, and whether it has data to show |
| Edit is ignored | Personal file location and JSON/TOML syntax |
| Theme changes everything except height | Personal [bar] override above the theme |
| Larger text overlaps icons | Available space, height and font metrics |
If you edited JSON by hand and jq is installed, jq empty ~/.config/omarchy/shell.json checks JSON syntax. It does not validate plugin ids or guarantee that the layout is usable. Do not edit the file and drag widgets simultaneously; both modify the same personal state.
7. Verify and restore the right scope
Section titled “7. Verify and restore the right scope”Check the clock, panels, smallest screen, and a different theme. Save the previous theme name and return to it afterwards. Log out and back in after saving work if you need to confirm persistence.
For exact rollback, restore the saved JSON and TOML files, then run omarchy restart shell from an unlocked graphical session. The shell briefly restarts its UI, including panels and notification handling; this is not merely a clock refresh. If you created the TOML file, remove only the keys added here, or archive the whole file only when it contains nothing else you want to keep.
omarchy bar reset selects the built-in bar; it does not restore your old layout. omarchy bar defaults replaces the bar with the shipped layout, including relevant service widgets; it is not a restoration of your personal backup. A visibility toggle is separate from layout files and must be restored separately.
Sources and next steps
Section titled “Sources and next steps”Bar command implementation · Shell configuration and sizing · Official bar manual
Continue with configuration loading, text and fonts, or application theme differences.