mirror of
https://github.com/arthur-pbty/arthur-os.git
synced 2026-08-05 20:28:25 +02:00
Reduce Settings to just Bar Settings
The other don't add enough over the Omarchy Menu
This commit is contained in:
Executable
+18
@@ -0,0 +1,18 @@
|
||||
#!/bin/bash
|
||||
|
||||
# omarchy:summary=Launch the Omarchy bar settings panel
|
||||
# omarchy:group=launch
|
||||
# omarchy:name=settings
|
||||
# omarchy:args=[bar]
|
||||
# omarchy:examples=omarchy launch settings | omarchy launch settings bar
|
||||
|
||||
case "${1:-}" in
|
||||
""|bar)
|
||||
;;
|
||||
*)
|
||||
echo "Usage: omarchy-launch-settings [bar]" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exec omarchy-shell-ipc shell summon omarchy.settings "{}"
|
||||
@@ -1,23 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# omarchy:summary=Launch the Omarchy settings panel
|
||||
# omarchy:group=launch
|
||||
# omarchy:name=settings
|
||||
# omarchy:args=[bar|plugins|defaults|style]
|
||||
# omarchy:examples=omarchy launch settings | omarchy launch settings defaults | omarchy launch settings style
|
||||
|
||||
category="${1:-}"
|
||||
payload="{}"
|
||||
case "$category" in
|
||||
bar|plugins|defaults|style)
|
||||
payload=$(printf '{"category":"%s"}' "$category")
|
||||
;;
|
||||
"")
|
||||
;;
|
||||
*)
|
||||
echo "Usage: omarchy-launch-settings [bar|plugins|defaults|style]" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exec omarchy-shell-ipc shell summon omarchy.settings "$payload"
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# omarchy:summary=Set or toggle corner radius for the omarchy-shell menu and settings panel
|
||||
# omarchy:summary=Set or toggle corner radius for the omarchy-shell menu and bar settings panel
|
||||
# omarchy:args=[toggle|sharp|round]
|
||||
# omarchy:examples=omarchy style corners quickshell toggle | omarchy style corners quickshell round | omarchy style corners quickshell sharp
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
-- Window and layer rules for the Omarchy Quickshell surfaces. The
|
||||
-- shell-wide bar / menu / popouts are layer-shell; the settings panel is
|
||||
-- a regular Hyprland window via Quickshell's FloatingWindow.
|
||||
-- shell-wide bar / menu / popouts are layer-shell; the bar settings panel
|
||||
-- is a regular Hyprland window via Quickshell's FloatingWindow.
|
||||
|
||||
-- Keep the menu instant: no layer-shell fade/slide animation.
|
||||
hl.layer_rule({ match = { namespace = "omarchy-menu" }, no_anim = true, animation = "none" })
|
||||
@@ -8,13 +8,13 @@ hl.layer_rule({ match = { namespace = "omarchy-menu" }, no_anim = true, animatio
|
||||
-- Image selector overlay should also pop without animation.
|
||||
hl.layer_rule({ match = { namespace = "omarchy-image-selector" }, no_anim = true, animation = "none" })
|
||||
|
||||
-- Settings panel floats centered with a sensible default size instead of
|
||||
-- Bar settings floats centered with a sensible default size instead of
|
||||
-- tiling — it's a transient dialog, not a workspace surface.
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Settings$" }, float = true })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Settings$" }, center = true })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Settings$" }, size = { 960, 700 } })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Bar Settings$" }, float = true })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Bar Settings$" }, center = true })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Omarchy Bar Settings$" }, size = { 760, 620 } })
|
||||
|
||||
-- Per-widget settings dialog opens as a smaller FloatingWindow off the
|
||||
-- settings panel; keep it floating with its own default size.
|
||||
-- bar settings panel; keep it floating with its own default size.
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Widget settings " }, float = true })
|
||||
hl.window_rule({ match = { class = "^org.quickshell$", title = "^Widget settings " }, size = { 380, 320 } })
|
||||
|
||||
@@ -164,9 +164,8 @@
|
||||
"setup.config.hypridle": {"icon":"","label":"Hypridle","keywords":"idle","action":"omarchy-launch-config-editor ~/.config/hypr/hypridle.conf && omarchy-restart-hypridle"},
|
||||
"setup.config.hyprlock": {"icon":"","label":"Hyprlock","keywords":"lock","action":"omarchy-launch-config-editor ~/.config/hypr/hyprlock.conf"},
|
||||
"setup.config.hyprsunset": {"icon":"","label":"Hyprsunset","keywords":"night light","action":"omarchy-launch-config-editor ~/.config/hypr/hyprsunset.conf && omarchy-restart-hyprsunset"},
|
||||
"setup.config.osd": {"icon":"","label":"OSD","action":"omarchy launch settings"},
|
||||
"setup.config.walker": {"icon":"","label":"Walker","keywords":"launcher","action":"omarchy-launch-config-editor ~/.config/walker/config.toml && omarchy-restart-walker"},
|
||||
"setup.config.bar": {"icon":"","label":"Bar","keywords":"quickshell shell config","action":"omarchy-launch-settings bar"},
|
||||
"setup.config.bar": {"icon":"","label":"Bar","keywords":"quickshell shell config settings widgets position","action":"omarchy-launch-settings bar"},
|
||||
"setup.config.xcompose": {"icon":"","label":"XCompose","keywords":"compose key","action":"omarchy-launch-config-editor ~/.XCompose && omarchy-restart-xcompose"},
|
||||
|
||||
// Install
|
||||
|
||||
@@ -8,12 +8,15 @@ so they cannot be disabled.
|
||||
User-installed plugins live alongside these conceptually but on disk under
|
||||
`~/.config/omarchy/plugins/<plugin-id>/` rather than in this directory.
|
||||
|
||||
| Plugin | id | kinds | activation | entry point |
|
||||
|------------------|--------------------------|--------------|-------------|----------------------------------------------|
|
||||
| Bar | `omarchy.bar` | `bar` | persistent | `bar/Bar.qml` |
|
||||
| Settings | `omarchy.settings` | `panel` | on-demand | `settings/SettingsPanel.qml` |
|
||||
| Image picker | `omarchy.image-picker` | `overlay` | on-demand | `image-picker/ImagePicker.qml` |
|
||||
| Omarchy menu | `omarchy.menu` | `menu` | on-demand | `menu/Menu.qml` |
|
||||
| Plugin | id | kinds | activation | entry point |
|
||||
|---------------|-------------------------|-----------|------------|-------------------------------------|
|
||||
| Bar | `omarchy.bar` | `bar` | persistent | `bar/Bar.qml` |
|
||||
| Bar settings | `omarchy.settings` | `panel` | on-demand | `settings/SettingsPanel.qml` |
|
||||
| Image picker | `omarchy.image-picker` | `overlay` | on-demand | `image-picker/ImagePicker.qml` |
|
||||
| Omarchy menu | `omarchy.menu` | `menu` | on-demand | `menu/Menu.qml` |
|
||||
| Notifications | `omarchy.notifications` | `service` | persistent | `notifications/Service.qml` |
|
||||
| OSD | `omarchy.osd` | `panel` | persistent | `osd/Osd.qml` |
|
||||
| Polkit agent | `omarchy.polkit` | `service` | persistent | `polkit/PolkitAgent.qml` |
|
||||
|
||||
## Bar
|
||||
|
||||
@@ -26,16 +29,14 @@ and customization schema.
|
||||
|
||||
## Bar settings
|
||||
|
||||
Visual editor for the entire shell config. Summoned by
|
||||
Visual editor for the bar layout. Summoned by
|
||||
`omarchy-shell-ipc shell summon omarchy.settings "{}"` (which is what
|
||||
`omarchy launch settings` ultimately calls). Provides:
|
||||
|
||||
- bar position and center-anchor controls
|
||||
- per-section add/move/remove/edit of bar widget entries
|
||||
- a separate "Other plugins" section for panels, overlays, services,
|
||||
and menus (entries that live in `plugins[]` rather than the bar layout)
|
||||
- a Plugin Manager tab listing every discovered plugin with its manifest
|
||||
- a dynamic settings form driven by each widget's manifest schema, that
|
||||
writes inline back to the corresponding shell.json entry
|
||||
- dynamic per-widget settings forms that write inline back to the
|
||||
corresponding shell.json entry
|
||||
|
||||
## Image picker
|
||||
|
||||
@@ -64,6 +65,13 @@ clears it without writing a selection.
|
||||
The plugin has `keepLoaded: true` so the layer-shell window survives
|
||||
between summons within a single shell session.
|
||||
|
||||
## Polkit agent
|
||||
|
||||
Theme-aware authentication dialog for privileged actions. It uses
|
||||
Quickshell's native `Quickshell.Services.Polkit.PolkitAgent` backend and
|
||||
runs inside the long-lived `omarchy-shell` process, replacing the old
|
||||
`polkit-gnome-authentication-agent-1` autostart.
|
||||
|
||||
## Omarchy menu
|
||||
|
||||
Quickshell-powered replacement for the legacy Walker-driven `omarchy-menu`.
|
||||
|
||||
@@ -18,7 +18,7 @@ Item {
|
||||
// The omarchy-shell host injects omarchyPath when it instantiates this Bar.
|
||||
// Default fallback keeps the file loadable in isolation (e.g. for QML tooling).
|
||||
required property string omarchyPath
|
||||
// Injected by the host shell. Shared with the settings panel so both
|
||||
// Injected by the host shell. Shared with the bar settings panel so both
|
||||
// see the same widget catalogue.
|
||||
required property var barWidgetRegistry
|
||||
// Injected by the host shell every time shell.json is reloaded. Holds the
|
||||
|
||||
@@ -169,6 +169,6 @@ layout list.
|
||||
Third-party widgets ship as separate plugins under
|
||||
`~/.config/omarchy/plugins/<plugin-id>/` with their own `manifest.json`
|
||||
declaring `kinds: ["bar-widget"]` and a `barWidget` entry point. See
|
||||
[../../README.md](../../README.md) for the manifest schema and the
|
||||
Plugin Manager tab in `omarchy launch settings` for enable/disable
|
||||
controls.
|
||||
[../../README.md](../../README.md) for the manifest schema. Enable or
|
||||
rescan third-party plugins with `omarchy-shell-ipc shell setPluginEnabled`
|
||||
and `omarchy-shell-ipc shell rescanPlugins`.
|
||||
|
||||
@@ -34,7 +34,7 @@ Item {
|
||||
readonly property string imageCacheDir: cacheDir + "notification-images/"
|
||||
readonly property string styleStatePath: home + "/.local/state/omarchy/toggles/quickshell-menu.json"
|
||||
|
||||
// Corner radius is shared with omarchy-shell menu and settings panel —
|
||||
// Corner radius is shared with omarchy-shell menu and bar settings panel —
|
||||
// `omarchy style corners <sharp|round>` writes this file once and every
|
||||
// surface reads it. Default 0 for sharp corners.
|
||||
property int cornerRadius: 0
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,10 +1,10 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"id": "omarchy.settings",
|
||||
"name": "Omarchy Settings",
|
||||
"name": "Omarchy Bar Settings",
|
||||
"version": "1.0.0",
|
||||
"author": "Omarchy",
|
||||
"description": "Customize the bar, plugins, defaults, and look-and-feel of Omarchy",
|
||||
"description": "Customize the Omarchy bar position and widgets",
|
||||
"kinds": ["panel"],
|
||||
"activation": "on-demand",
|
||||
"entryPoints": { "panel": "SettingsPanel.qml" }
|
||||
|
||||
@@ -3,7 +3,7 @@ import QtQuick
|
||||
// Instance, not a singleton — instantiated once by shell.qml and injected into
|
||||
// plugins that need to read or extend the widget catalogue. Relative-path
|
||||
// singleton imports were creating per-importer instances which prevented the
|
||||
// settings panel from seeing what the bar registered.
|
||||
// bar settings panel from seeing what the bar registered.
|
||||
QtObject {
|
||||
id: registry
|
||||
|
||||
|
||||
Reference in New Issue
Block a user