Compare commits

..
Author SHA1 Message Date
David Heinemeier Hansson 11b695e642 One more 2026-05-11 12:57:33 +02:00
David Heinemeier Hansson 4b8e941380 Use consistent glyph 2026-05-11 12:57:08 +02:00
David Heinemeier Hansson 3071dd5509 Extract selection logic into cli 2026-05-11 12:54:34 +02:00
David Heinemeier Hansson 112282679f Tweak installer 2026-05-11 12:49:18 +02:00
David Heinemeier Hansson 97e7bae6b9 Turn a single RetroArch game into its own application launcher 2026-05-11 12:39:09 +02:00
David Heinemeier Hansson fc787cd040 Agents should use the notification helper 2026-05-11 12:13:33 +02:00
David Heinemeier Hansson b2f89061c7 Add hunk for diffing as a lazy-install npx 2026-05-11 11:31:42 +02:00
92f93cb0e5 Persist Bluetooth power state across reboots (#5683)
* Persist Bluetooth power state across reboots

BlueZ defaults to AutoEnable=true, which forces controllers on at boot
regardless of the last user-set state. Setting AutoEnable=false makes
bluetoothd respect the persisted Powered state, so toggling off in
bluetui (or any DBus client) survives a reboot.

Adds the change to the install path and a migration for existing setups.

* Set reboot-required in Bluetooth persistence migration

Per review feedback, the AutoEnable=false change only takes effect on
bluetoothd startup. Without setting reboot-required, omarchy-update-restart
won't prompt the user to reboot, so the fix would only kick in at their
next organic reboot — by which time the bug may appear unfixed.

Matches the convention in migrations/1776346552.sh and similar.

* No need to ask for a reboot when this is available on the next one

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-05-11 10:21:16 +02:00
c4dbf12920 Add pre-refresh-pacman.d hooks for custom repository support (#5681)
Fires after the channel template is copied to /etc/pacman.conf and before
`pacman -Syyuu` runs, letting users layer custom Pacman repositories or
IgnorePkg directives onto the freshly-written config so they're respected
by the upgrade. Useful for users running on overlay distros (CachyOS,
Chaotic-AUR, internal company repos) where a wipe-and-reinstall would
otherwise pull vanilla Arch versions.

Ships with `pre-refresh-pacman.d/add-custom-repo.sample` showing the
pattern.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 10:19:12 +02:00
RenéandGitHub 324c9a4054 Fix fontconfig monospace binding overriding app-specific fonts (#5700)
Change monospace match from mode="assign" binding="strong" to
mode="append" binding="same" so the system font acts as a fallback
instead of overriding explicit app font configs like Ghostty's font-family.

Add migration to fix existing user configs.

Fixes #5675
2026-05-11 10:15:37 +02:00
David Heinemeier Hansson 378ba984ca Checkout the full git so branch switching is still possible
Closes #5701
2026-05-11 10:11:53 +02:00
David Heinemeier Hansson 705e26eb8a Migrate the existing imv configs 2026-05-11 10:00:28 +02:00
Jon KinneyandGitHub cea144bc51 Trash imv deletes; add Ctrl+E to edit in Satty (#5721)
* Trash imv deletes; add Ctrl+E to edit in Satty

Ctrl+X / Ctrl+Shift+X now move the image to the freedesktop trash via
`gio trash` instead of unconditional `rm`, so accidental presses are
recoverable from the file manager's Trash.

Adds Ctrl+E to open the current image in Satty (already in
omarchy-base.packages) and quit imv, mirroring the typical
screenshot → annotate workflow.

* Add -- separator to gio trash invocations

Prevents filenames starting with - from being parsed as options.
2026-05-11 10:00:20 +02:00
46365b7d4d Scope branding image pickers to ~/Pictures, fix About transcode mode (#5733)
* Scope branding image pickers to ~/Pictures, fix About transcode mode

The "Set From Image" path in both Style → About and Style → Screensaver
was scanning all of $HOME for *.svg / *.png and feeding the result into
Walker dmenu. On a populated home directory this can be tens of thousands
of entries, leaving the picker effectively unusable.

Scope the picker to ${XDG_PICTURES_DIR:-$HOME/Pictures}, matching the
pattern already used in omarchy-capture-screenshot.

While here, drop the hardcoded --mode block from omarchy-branding-about
so the About transcode falls back to the default braille mode, matching
what omarchy-branding-screensaver does and what stock about.txt ships
with. The reduced --width 54 stays so the result fits the fastfetch
logo column.

* Explain the scope of the picker

---------

Co-authored-by: Gavin Nugent <245706154+28allday@users.noreply.github.com>
Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-05-11 09:53:07 +02:00
David Heinemeier Hansson 6afb51298c Hide the unused bits 2026-05-10 21:29:58 +02:00
David Heinemeier Hansson cd461059d0 Just a little wider 2026-05-10 20:33:34 +02:00
David Heinemeier Hansson f09743b2e9 libretro-vice is now an explosion of minor pkgs 2026-05-10 16:47:21 +02:00
David Heinemeier Hansson 8788dd2eb2 Fix arg order 2026-05-10 16:44:09 +02:00
David Heinemeier Hansson 0af7cc4a76 Fix overlap 2026-05-10 16:39:01 +02:00
David Heinemeier Hansson f426ae0de8 Lookup code symbols for better keybindings list 2026-05-10 16:31:08 +02:00
642d87d443 Add fine and coarse window resize steps (#5717)
* add additional window resize shortcuts

* add additional window resize shortcuts

* Use bigger difference between the steps

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-05-10 16:26:02 +02:00
afcfaf6b1e Control Waybar position (#5730)
* Waybar positioning and shape

* Reveal weather again on left/right

* Fix indicators moving bar left/right

* Clean it up

* Cleanup

* One step forward, one step backwards

* Fix styles

* More style massage

* More tweaks

* Just position for now

* Fix keys

* No longer needed

* No need to reset

* Simplify

* Reset but protect waybar configs

* Not needed

* Fix glyph

* Not needed

* Cleanup

* Better wording

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-10 15:42:26 +02:00
David Heinemeier Hansson f26cc8f157 Send a notification when we switch 2026-05-10 15:22:41 +02:00
David Heinemeier Hansson 566c106ec1 Better wording 2026-05-10 15:11:47 +02:00
David Heinemeier Hansson 5346bc6db1 Only return state when we are toggling
Otherwise we know it!
2026-05-10 15:08:33 +02:00
David Heinemeier Hansson 0075645f0e Set hyprlock corners too 2026-05-10 15:05:34 +02:00
David Heinemeier Hansson f10c945e00 Add Receive as an option to sharing 2026-05-10 14:50:48 +02:00
David Heinemeier Hansson 8a94891e77 Better glyph 2026-05-10 14:34:44 +02:00
David Heinemeier Hansson 2e29714eee Add integrated Style > Corner controls across hyprland, mako, walker 2026-05-10 14:29:51 +02:00
David Heinemeier Hansson 40a20e2a5c Fix glyph for Zen 2026-05-10 14:28:18 +02:00
David Heinemeier Hansson 8a38615f19 Fix for new notification send 2026-05-10 11:50:30 +02:00
David Heinemeier Hansson 887c7e3751 Set mako corners round or sharp 2026-05-10 11:50:19 +02:00
David Heinemeier Hansson e099f47d53 Add toggling of hyprland window rounded corners 2026-05-10 11:31:02 +02:00
David Heinemeier Hansson 26c1f9c546 Refactor toggles and notifications 2026-05-10 11:26:59 +02:00
David Heinemeier Hansson d3a082ef11 Fix upcoming reminders listing
It was comparing NextElapseUSecMonotonic against /proc/uptime, but those
values aren’t in the same monotonic timeline for user timers, so valid
upcoming reminders were being skipped.
2026-05-10 10:52:20 +02:00
David Heinemeier Hansson 2ab639ac0a Latest version from HANCORE 2026-05-10 10:41:34 +02:00
David Heinemeier Hansson 3d42142b88 Fix group coloring 2026-05-09 22:48:23 +02:00
David Heinemeier Hansson aa6b7f2975 Make the border highlight clearer 2026-05-09 22:35:18 +02:00
David Heinemeier Hansson 47a53a18ba Add Solitude theme by HANCORE 2026-05-09 22:33:10 +02:00
David Heinemeier Hansson b2fb238453 Add Last Horizon theme by HANCORE 2026-05-09 22:05:54 +02:00
David Heinemeier Hansson 676a278653 Slim down now that we are auto-detecting GDK_SCALE 2026-05-09 20:13:04 +02:00
David Heinemeier Hansson 890e3fc8c5 Set the initial GDK_SCALE to match the monitor scale 2026-05-09 19:55:15 +02:00
David Heinemeier Hansson 3eca9573ea Make GDK_SCALE change alongside the general monitor scaling 2026-05-09 19:29:22 +02:00
154 changed files with 1236 additions and 2649 deletions
+1
View File
@@ -82,6 +82,7 @@ Use these instead of raw shell commands:
- `omarchy-cmd-missing` / `omarchy-cmd-present` - check for commands
- `omarchy-pkg-missing` / `omarchy-pkg-present` - check for packages
- `omarchy-pkg-add` - install packages (handles both pacman and AUR)
- `omarchy-notification-send` - send desktop notifications; do not call `notify-send` directly
- `omarchy-hw-asus-rog` - detect ASUS ROG hardware (and similar `hw-*` commands)
Exceptions are allowed for bootstrap, preflight, migration, and package-helper scripts where the helper may not be available yet, where the helper itself is being implemented, or where direct package-manager behavior is required.
@@ -0,0 +1,2 @@
[Desktop Entry]
Hidden=true
@@ -0,0 +1,2 @@
[Desktop Entry]
Hidden=true
@@ -0,0 +1,2 @@
[Desktop Entry]
Hidden=true
@@ -0,0 +1,2 @@
[Desktop Entry]
Hidden=true
@@ -0,0 +1,2 @@
[Desktop Entry]
Hidden=true
Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

+3
View File
@@ -40,12 +40,14 @@ GROUP_DESCRIPTIONS[default]="Default application selection"
GROUP_DESCRIPTIONS[dev]="Omarchy development tools"
GROUP_DESCRIPTIONS[drive]="Drive selection and encryption"
GROUP_DESCRIPTIONS[font]="Font management"
GROUP_DESCRIPTIONS[games]="Game launchers and helpers"
GROUP_DESCRIPTIONS[hibernation]="Hibernation setup and removal"
GROUP_DESCRIPTIONS[hook]="User hook runner"
GROUP_DESCRIPTIONS[hw]="Hardware detection and controls"
GROUP_DESCRIPTIONS[hyprland]="Hyprland window, monitor, and toggle controls"
GROUP_DESCRIPTIONS[install]="Optional software installers"
GROUP_DESCRIPTIONS[launch]="Application launchers"
GROUP_DESCRIPTIONS[mako]="Mako notification controls"
GROUP_DESCRIPTIONS[menu]="Omarchy menu commands"
GROUP_DESCRIPTIONS[migrate]="Migration runner"
GROUP_DESCRIPTIONS[notification]="Notification helpers"
@@ -61,6 +63,7 @@ GROUP_DESCRIPTIONS[restart]="Restart Omarchy components"
GROUP_DESCRIPTIONS[setup]="Interactive setup wizards"
GROUP_DESCRIPTIONS[screensaver]="Screensaver branding and animation"
GROUP_DESCRIPTIONS[snapshot]="System snapshots"
GROUP_DESCRIPTIONS[style]="Global UI style controls"
GROUP_DESCRIPTIONS[sudo]="Sudo configuration helpers"
GROUP_DESCRIPTIONS[swayosd]="SwayOSD status display helpers"
GROUP_DESCRIPTIONS[system]="Reboot, shutdown, logout, and lock"
+4 -2
View File
@@ -8,10 +8,12 @@
set -euo pipefail
SOURCE_DIR="${XDG_PICTURES_DIR:-$HOME/Pictures}"
case "${1:-}" in
image)
image=$(omarchy-menu-file "Logo image" "$HOME" "svg png")
if [[ -n $image ]] && omarchy-transcode-ascii "$image" ~/.config/omarchy/branding/about.txt --width 54 --height 26 --mode block; then
image=$(omarchy-menu-file "Pick png/svg from $SOURCE_DIR" "${SOURCE_DIR}" "svg png")
if [[ -n $image ]] && omarchy-transcode-ascii "$image" ~/.config/omarchy/branding/about.txt --width 54 --height 26; then
omarchy-launch-about >/dev/null 2>&1
fi
;;
+3 -1
View File
@@ -8,9 +8,11 @@
set -euo pipefail
SOURCE_DIR="${XDG_PICTURES_DIR:-$HOME/Pictures}"
case "${1:-}" in
image)
image=$(omarchy-menu-file "Logo image" "$HOME" "svg png")
image=$(omarchy-menu-file "Pick png/svg from $SOURCE_DIR" "${SOURCE_DIR}" "svg png")
if [[ -n $image ]] && omarchy-transcode-ascii "$image" ~/.config/omarchy/branding/screensaver.txt; then
omarchy-launch-screensaver force >/dev/null 2>&1
fi
+4 -2
View File
@@ -74,13 +74,15 @@ ACTION=$(gum choose "${OPTIONS[@]}")
case "$ACTION" in
"Upload log")
echo "Uploading debug log to logs.omarchy.org..."
URL=$(curl -sf -F "file=@$LOG_FILE" https://logs.omarchy.org/)
echo "Uploading debug log to 0x0.st..."
URL=$(curl -sF "file=@$LOG_FILE" -Fexpires=24 https://0x0.st)
if (( $? == 0 )) && [[ -n $URL ]]; then
echo "✓ Log uploaded successfully!"
echo "Share this URL:"
echo ""
echo " $URL"
echo ""
echo "This link will expire in 24 hours."
else
echo "Error: Failed to upload log file"
exit 1
+1 -1
View File
@@ -25,7 +25,7 @@ brave) desktop_id="brave-browser.desktop"; name="Brave"; glyph="󰖟" ;;
brave-origin) desktop_id="brave-origin-beta.desktop"; name="Brave Origin"; glyph="󰖟" ;;
edge) desktop_id="microsoft-edge.desktop"; name="Edge"; glyph="󰇩" ;;
firefox) desktop_id="firefox.desktop"; name="Firefox"; glyph="󰈹" ;;
zen) desktop_id="zen.desktop"; name="Zen"; glyph="󰰷" ;;
zen) desktop_id="zen.desktop"; name="Zen"; glyph="󰖟" ;;
*)
echo "Usage: omarchy-default-browser <chromium|chrome|brave|brave-origin|edge|firefox|zen>"
exit 1
+1
View File
@@ -16,6 +16,7 @@ if [[ -f $FIRST_RUN_MODE ]]; then
bash "$OMARCHY_PATH/install/first-run/firewall.sh"
bash "$OMARCHY_PATH/install/first-run/dns-resolver.sh"
bash "$OMARCHY_PATH/install/first-run/gnome-theme.sh"
bash "$OMARCHY_PATH/install/first-run/gdk-scale.sh"
bash "$OMARCHY_PATH/install/first-run/swayosd.sh"
bash "$OMARCHY_PATH/install/first-run/gtk-primary-paste.sh"
bash "$OMARCHY_PATH/install/first-run/elephant.sh"
+39
View File
@@ -0,0 +1,39 @@
#!/bin/bash
# omarchy:summary=List installed RetroArch core names
set -e
core_dir="/usr/lib/libretro"
preferred_cores=(
"Amstrad CPC|cap32"
"Arcade FBNeo|fbneo"
"Arcade MAME|mame"
"Commodore Amiga|puae"
"Commodore C128|vice_x128"
"Commodore C64|vice_x64"
"Commodore VIC-20|vice_xvic"
"Nintendo DS|desmume"
"Nintendo Game Boy / Color|gambatte"
"Nintendo Game Boy Advance|mgba"
"Nintendo GameCube / Wii|dolphin"
"Nintendo NES / Famicom|mesen"
"Nintendo 64|parallel_n64"
"Nintendo SNES / SFC|snes9x"
"NEC PC Engine / TurboGrafx-16|mednafen_pce_fast"
"NEC PC Engine CD / TurboGrafx-CD|mednafen_pce"
"NEC PC Engine SuperGrafx|mednafen_supergrafx"
"Sega Dreamcast|flycast"
"Sega Mega Drive / Master System / Game Gear|genesis_plus_gx"
"Sega Saturn|kronos"
"Sony PlayStation|mednafen_psx_hw"
"Sony PlayStation Portable|ppsspp"
)
[[ -d $core_dir ]] || exit 0
for preferred_core in "${preferred_cores[@]}"; do
label="${preferred_core%%|*}"
core="${preferred_core#*|}"
[[ -f $core_dir/${core}_libretro.so ]] && printf '%s (%s)\n' "$label" "$core"
done
+76
View File
@@ -0,0 +1,76 @@
#!/bin/bash
# omarchy:summary=Create a desktop launcher for a RetroArch game
# omarchy:args=[core path-to-game]
# omarchy:examples=omarchy games retro install snes9x ~/Games/roms/snes/game.sfc | omarchy-games-retro-install /usr/lib/libretro/mgba_libretro.so ~/Games/roms/gba/game.gba
set -e
if (( $# == 0 )); then
mapfile -t cores < <(omarchy-games-retro-cores)
if (( ${#cores[@]} == 0 )); then
omarchy-notification-send -g "󰯉" "No RetroArch cores found" "/usr/lib/libretro"
exit 1
fi
core=$(omarchy-menu-select "RetroArch core" "${cores[@]}") || exit 0
[[ -n $core ]] || exit 0
core="${core##*(}"
core="${core%)}"
game_path=$(omarchy-menu-file "Retro game" "$HOME/Games/roms" "7z bin ccd chd cue dmg elf fds gb gba gbc iso lha m3u md n64 nds nes pbp sfc smc swc zip z64") || exit 0
[[ -n $game_path ]] || exit 0
elif (( $# == 2 )); then
core="$1"
game_path="$2"
else
echo "Usage: omarchy-games-retro-install [core path-to-game]"
echo "Example: omarchy-games-retro-install snes9x ~/Games/roms/snes/game.sfc"
exit 1
fi
if [[ ! -f $game_path ]]; then
echo "Game not found: $game_path"
exit 1
fi
if [[ $core == */* ]]; then
core_path="$core"
else
core_path="/usr/lib/libretro/${core}_libretro.so"
fi
if [[ ! -f $core_path ]]; then
echo "Core not found: $core_path"
exit 1
fi
game_name=$(printf '%s' "${game_path##*/}" | sed 's/\.[^.]*$//; s/[[:space:]]*([^)]*)//g; s/[[:space:]]\+/ /g; s/^ //; s/ $//' | perl -Mopen=locale -pe 's/(^|[[:space:]])([^[:space:]])/$1\U$2/g')
desktop_name="$game_name"
desktop_id=$(printf '%s' "$desktop_name" | tr '[:upper:]' '[:lower:]' | tr -cs '[:alnum:]' '-' | sed 's/^-//; s/-$//')
desktop_dir="$HOME/.local/share/applications"
desktop_file="$desktop_dir/$desktop_id.desktop"
icon_dir="$desktop_dir/icons"
icon_path="$icon_dir/Retro Gaming.png"
mkdir -p "$desktop_dir" "$icon_dir"
[[ -f $icon_path ]] || cp "$HOME/.local/share/omarchy/applications/icons/Retro Gaming.png" "$icon_path"
cat >"$desktop_file" <<EOF
[Desktop Entry]
Version=1.0
Name=$desktop_name
Comment=Play $game_name with RetroArch
Exec=retroarch -L "$core_path" "$game_path"
Terminal=false
Type=Application
Icon=$icon_path
StartupNotify=true
Categories=Game;Emulator;
EOF
chmod +x "$desktop_file"
update-desktop-database "$desktop_dir" &>/dev/null || true
omarchy-notification-send -g "󰯉" "$game_name installed" "Start it with Super + Space"
+22 -12
View File
@@ -10,34 +10,44 @@ MIRROR_TOGGLE="internal-monitor-mirror"
# Get internal monitor name dynamically
INTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | contains("eDP")).name' | head -n 1)
enable() {
if omarchy-hyprland-toggle-enabled "$TOGGLE"; then
omarchy-hyprland-toggle --disabled-notification "󰍹 Laptop display enabled" "$TOGGLE"
on() {
if omarchy-hyprland-toggle-enabled $TOGGLE; then
omarchy-hyprland-toggle $TOGGLE off
omarchy-notification-send -g 󰍹 "Laptop display enabled"
fi
}
disable() {
off() {
if ! omarchy-hw-external-monitors; then
notify-send -u low "󰍹 Can't disable the only active display"
omarchy-notification-send -g 󰍹 "Can't disable the only active display"
exit 1
fi
if omarchy-hyprland-toggle-disabled "$TOGGLE" && omarchy-hyprland-toggle-disabled "$MIRROR_TOGGLE"; then
if omarchy-hyprland-toggle-disabled $TOGGLE && omarchy-hyprland-toggle-disabled $MIRROR_TOGGLE; then
echo "monitor=$INTERNAL,disable" >"$TOGGLE_FLAG"
notify-send -u low "󰍹 Laptop display disabled"
omarchy-notification-send -g 󰍹 "Laptop display disabled"
hyprctl reload
fi
}
recover() {
if ! omarchy-hw-external-monitors && omarchy-hyprland-toggle-enabled "$TOGGLE"; then
omarchy-hyprland-toggle "$TOGGLE"
if ! omarchy-hw-external-monitors; then
omarchy-hyprland-toggle $TOGGLE off
fi
}
toggle() {
if omarchy-hyprland-toggle-enabled $TOGGLE; then
on
else
off
fi
}
case "$1" in
on) enable ;;
off) disable ;;
toggle) if omarchy-hyprland-toggle-enabled "$TOGGLE"; then enable; else disable; fi ;;
on) on ;;
off) off ;;
toggle) toggle ;;
recover) recover ;;
*)
echo "Usage: $(basename "$0") {on|off|toggle|recover}" >&2
+24 -20
View File
@@ -12,44 +12,48 @@ INTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | contains("eDP")).na
# Get the first available external monitor
EXTERNAL=$(hyprctl monitors -j | jq -r '.[] | select(.name | contains("eDP") | not).name' | head -n 1)
enable() {
if [[ -z "$EXTERNAL" ]]; then
notify-send -u low "󰍹 No external monitors found for mirror"
on() {
if [[ -z $EXTERNAL ]]; then
omarchy-notification-send -g 󰍹 "No external monitors found for mirror"
exit 1
fi
if [[ -z "$INTERNAL" ]]; then
notify-send -u low "󰍹 No laptop monitor found to mirror"
if [[ -z $INTERNAL ]]; then
omarchy-notification-send -g 󰍹 "No laptop monitor found to mirror"
exit 1
fi
if omarchy-hyprland-toggle-enabled "$DISABLE_TOGGLE"; then
omarchy-hyprland-toggle "$DISABLE_TOGGLE"
fi
omarchy-hyprland-toggle $DISABLE_TOGGLE off
echo "monitor=$EXTERNAL, preferred, auto, 1, mirror, $INTERNAL" >"$TOGGLE_FLAG"
omarchy-notification-send -g 󰍹 "Mirroring enabled ($EXTERNAL)"
hyprctl reload
}
if omarchy-hyprland-toggle-disabled "$TOGGLE"; then
echo "monitor=$EXTERNAL, preferred, auto, 1, mirror, $INTERNAL" > "$TOGGLE_FLAG"
notify-send -u low "󰍹 Mirroring enabled ($EXTERNAL)"
hyprctl reload
off() {
if omarchy-hyprland-toggle-enabled $TOGGLE; then
omarchy-hyprland-toggle $TOGGLE off
omarchy-notification-send -g 󰍹 "Extended mode restored"
fi
}
disable() {
if omarchy-hyprland-toggle-enabled "$TOGGLE"; then
omarchy-hyprland-toggle --disabled-notification "󰍹 Extended mode restored" "$TOGGLE"
toggle() {
if omarchy-hyprland-toggle-enabled $TOGGLE; then
off
else
on
fi
}
recover() {
if ! omarchy-hw-external-monitors && omarchy-hyprland-toggle-enabled "$TOGGLE"; then
omarchy-hyprland-toggle "$TOGGLE"
if ! omarchy-hw-external-monitors; then
omarchy-hyprland-toggle $TOGGLE off
fi
}
case "$1" in
on) enable ;;
off) disable ;;
toggle) if omarchy-hyprland-toggle-enabled "$TOGGLE"; then disable; else enable; fi ;;
on) on ;;
off) off ;;
toggle) toggle ;;
recover) recover ;;
*)
echo "Usage: $(basename "$0") {on|off|toggle|recover}" >&2
+5
View File
@@ -0,0 +1,5 @@
#!/bin/bash
# omarchy:summary=Print the monitor scale of the internal monitor or first other monitor
hyprctl monitors -j | jq -r '([.[] | select(.name | contains("eDP"))][0] // .[0]).scale // empty | tonumber | if . == floor then floor else . end'
+4 -1
View File
@@ -40,7 +40,10 @@ MONITOR_CONF="$HOME/.config/hypr/monitors.conf"
if [[ -f $MONITOR_CONF ]]; then
mapfile -t ACTIVE_LINES < <(grep -E '^[[:space:]]*monitor=' "$MONITOR_CONF" | grep -vE 'disable[[:space:]]*$')
if [[ ${#ACTIVE_LINES[@]} -eq 1 ]] && [[ "${ACTIVE_LINES[0]}" =~ ^monitor=,preferred,auto, ]]; then
sed -i -E "s|^(monitor=,preferred,auto,).*|\\1${NEW_SCALE}|" "$MONITOR_CONF"
sed -i -E \
-e "s|^(monitor=,preferred,auto,).*|\\1${NEW_SCALE}|" \
-e "s|^([[:space:]]*env[[:space:]]*=[[:space:]]*GDK_SCALE,).*|\\1${NEW_SCALE}|" \
"$MONITOR_CONF"
fi
fi
+36 -23
View File
@@ -1,32 +1,45 @@
#!/bin/bash
# omarchy:summary=Toggle permanent Hyprland flags by copying them into a directory that's sourced entirely.
# omarchy:args=[--enabled-notification <text>] [--disabled-notification <text>] <flag-name>
ENABLED_NOTIFICATION=""
DISABLED_NOTIFICATION=""
while [[ $# -gt 1 ]]; do
case $1 in
--enabled-notification) ENABLED_NOTIFICATION="$2"; shift 2 ;;
--disabled-notification) DISABLED_NOTIFICATION="$2"; shift 2 ;;
*) break ;;
esac
done
# omarchy:args=<flag-name> [on|off]
FLAG_NAME="$1"
ACTION="${2:-toggle}"
FLAG="$HOME/.local/state/omarchy/toggles/hypr/$FLAG_NAME.conf"
FLAG_SOURCE="$OMARCHY_PATH/default/hypr/toggles/$FLAG_NAME.conf"
if [[ -f $FLAG ]]; then
rm $FLAG
[[ -n $DISABLED_NOTIFICATION ]] && notify-send -u low "$DISABLED_NOTIFICATION"
elif [[ -f $FLAG_SOURCE ]]; then
cp $FLAG_SOURCE $FLAG
[[ -n $ENABLED_NOTIFICATION ]] && notify-send -u low "$ENABLED_NOTIFICATION"
else
echo "Flag not found: $FLAG_NAME"
exit 1
fi
on() {
if [[ -f $FLAG_SOURCE ]]; then
mkdir -p "$(dirname "$FLAG")"
cp "$FLAG_SOURCE" "$FLAG"
else
echo "Flag not found: $FLAG_NAME"
exit 1
fi
}
hyprctl reload
off() {
rm -f "$FLAG"
}
toggle() {
if [[ -f $FLAG ]]; then
off
echo "off"
else
on
echo "on"
fi
}
case $ACTION in
on) on ;;
off) off ;;
toggle) toggle ;;
*)
echo "Usage: omarchy-hyprland-toggle <flag-name> [on|off]"
exit 1
;;
esac
hyprctl reload >/dev/null
@@ -2,7 +2,7 @@
# omarchy:summary=Toggle single-window square aspect ratio.
omarchy-hyprland-toggle \
--enabled-notification "Enable single-window square aspect ratio" \
--disabled-notification "Disable single-window square aspect ratio" \
single-window-aspect-ratio
case $(omarchy-hyprland-toggle single-window-aspect-ratio) in
on) omarchy-notification-send -g  "Enable single-window square aspect ratio" ;;
off) omarchy-notification-send -g  "Disable single-window square aspect ratio" ;;
esac
+27 -4
View File
@@ -120,7 +120,7 @@ show_custom_reminder_input() {
if [[ $minutes =~ ^[0-9]+$ ]] && ((minutes > 0)); then
show_reminder_message_input "$minutes"
elif [[ -n $minutes ]]; then
omarchy-notification-send "󰔛" "Invalid reminder" "Enter the number of minutes" -u critical
omarchy-notification-send -g 󰔛 "Invalid reminder" "Enter the number of minutes" -u critical
show_custom_reminder_input
else
back_to show_reminder_menu
@@ -195,7 +195,8 @@ show_screenrecord_menu() {
}
show_share_menu() {
case $(menu "Share" " Clipboard\n File \n Folder") in
case $(menu "Share" " Clipboard\n File \n Folder\n󰥦 Receive") in
*Receive*) uwsm-app -- localsend ;;
*Clipboard*) omarchy-menu-share clipboard ;;
*File*) terminal bash -c "omarchy-menu-share file" ;;
*Folder*) terminal bash -c "omarchy-menu-share folder" ;;
@@ -264,18 +265,39 @@ show_hardware_touchpad_haptics_menu() {
}
show_style_menu() {
case $(menu "Style" "󰸌 Theme\n󰟵 Unlock\n Font\n Background\n Hyprland\n󱄄 Screensaver\n About") in
case $(menu "Style" "󰸌 Theme\n󰟵 Unlock\n Font\n Background\n󰍜 Waybar\n󰘇 Corners\n Hyprland\n󱄄 Screensaver\n About") in
*Theme*) show_theme_menu ;;
*Unlock*) omarchy-launch-walker -m menus:omarchyunlocks --width 800 --minheight 400 ;;
*Font*) show_font_menu ;;
*Background*) show_background_menu ;;
*Corners*) show_style_corners_menu ;;
*Hyprland*) open_in_editor ~/.config/hypr/looknfeel.conf ;;
*Waybar*) show_waybar_position_menu ;;
*Screensaver*) show_screensaver_menu ;;
*About*) show_about_menu ;;
*) show_main_menu ;;
esac
}
show_style_corners_menu() {
case $(omarchy-menu-select "Corners" "󰝣 Sharp" "󰘇 Round") in
*Sharp*) omarchy-style-corners sharp ;;
*Round*) omarchy-style-corners round ;;
*) show_style_menu ;;
esac
}
show_waybar_position_menu() {
case $(menu "Waybar Position" "󰁝 Top\n󰁅 Bottom\n󰁍 Left\n󰁔 Right") in
*Top*) omarchy-style-waybar-position top ;;
*Bottom*) omarchy-style-waybar-position bottom ;;
*Left*) omarchy-style-waybar-position left ;;
*Right*) omarchy-style-waybar-position right ;;
*) show_style_menu ;;
esac
}
show_about_menu() {
case $(menu "About" " Edit Text\n Set From Image\n Restore Default") in
*Text*) omarchy-branding-about text ;;
@@ -578,8 +600,9 @@ show_install_ai_menu() {
}
show_install_gaming_menu() {
case $(menu "Install" " Steam\n RetroArch\n󰍳 Minecraft\n󰢹 NVIDIA GeForce NOW\n Xbox Cloud Gaming\n󰂯 Xbox Controller\n󰍹 Moonlight (GameStream)\n Lutris (Battle.net)\n󱓟 Heroic (Epic Games)") in
case $(menu "Install" " Steam\n󰯉 RetroArch\n󰍳 Minecraft\n󰢹 NVIDIA GeForce NOW\n Xbox Cloud Gaming\n󰂯 Xbox Controller\n󰍹 Moonlight (GameStream)\n Lutris (Battle.net)\n󱓟 Heroic (Epic Games)\n󰯉 RetroArch Game Launcher") in
*Steam*) present_terminal omarchy-install-gaming-steam ;;
*"RetroArch Game Launcher"*) omarchy-games-retro-install ;;
*RetroArch*) present_terminal omarchy-install-gaming-retroarch ;;
*Minecraft*) install_and_launch "Minecraft" "minecraft-launcher" "minecraft-launcher" ;;
*GeForce*) present_terminal omarchy-install-gaming-geforce-now ;;
+29 -1
View File
@@ -3,6 +3,23 @@
# omarchy:summary=Display Hyprland keybindings defined in your configuration using walker for an interactive search menu.
declare -A KEYCODE_SYM_MAP
# Hyprland reports XKB keycodes for code: bindings. Keep a small fallback for
# common keys so the menu remains readable if xkbcli cannot resolve a symbol.
declare -A FALLBACK_KEYCODE_SYM_MAP=(
[10]="1"
[11]="2"
[12]="3"
[13]="4"
[14]="5"
[15]="6"
[16]="7"
[17]="8"
[18]="9"
[19]="0"
[20]="MINUS"
[21]="EQUAL"
[61]="SLASH"
)
build_keymap_cache() {
local keymap
@@ -37,7 +54,18 @@ build_keymap_cache() {
}
lookup_keycode_cached() {
printf '%s\n' "${KEYCODE_SYM_MAP[$1]}"
local symbol
symbol="${KEYCODE_SYM_MAP[$1]}"
if [[ -z $symbol ]]; then
symbol="${FALLBACK_KEYCODE_SYM_MAP[$1]}"
fi
if [[ -z $symbol ]]; then
symbol="code:$1"
fi
printf '%s\n' "${symbol^^}"
}
parse_keycodes() {
+57 -13
View File
@@ -1,32 +1,76 @@
#!/bin/bash
# omarchy:summary=Send a desktop notification with Omarchy glyph and body spacing
# omarchy:args=<glyph> <headline> [description] [notify-send options]
# omarchy:examples=omarchy notification send "󰔛" "Reminder" "5 minutes are up" -u critical
# omarchy:args=<headline> [description] [-g <glyph>] [-u <low|normal|critical>] [notify-send options]
# omarchy:examples=omarchy notification send "Reminder" "5 minutes are up" -g 󰔛 -u critical
set -euo pipefail
if (($# < 2)); then
echo "Usage: omarchy-notification-send <glyph> <headline> [description] [notify-send options]"
headline=""
description=""
glyph=""
urgency="low"
args=()
parse_omarchy_option() {
case $1 in
-g | --glyph)
if (($# < 2)); then
echo "Missing value for $1" >&2
exit 1
fi
glyph="$2"
return 0
;;
-u | --urgency)
if (($# < 2)); then
echo "Missing value for $1" >&2
exit 1
fi
urgency="$2"
return 0
;;
esac
return 1
}
while (($# > 0)); do
if parse_omarchy_option "$@"; then
shift 2
else
break
fi
done
if (($# < 1)); then
echo "Usage: omarchy-notification-send [-g <glyph>] [-u <low|normal|critical>] <headline> [description] [notify-send options]"
exit 1
fi
glyph=$1
headline=$2
description=${3:-}
shift 2
headline=$1
shift
if (($# > 0)) && [[ $1 != -* ]]; then
description=$1
shift
else
description=""
fi
while (($# > 0)); do
if parse_omarchy_option "$@"; then
shift 2
else
args+=("$1")
shift
fi
done
summary="$glyph $headline"
args+=("-u" "$urgency")
if [[ -n $description ]]; then
description=$(sed 's/^/ /' <<<"$description")
notify-send "$@" "$summary" "$description"
description=$(printf '%b' "$description" | sed 's/^/ /')
notify-send "${args[@]}" "$summary" "$description"
else
notify-send "$@" "$summary"
notify-send "${args[@]}" "$summary"
fi
+3
View File
@@ -19,5 +19,8 @@ echo
sudo cp -f "$OMARCHY_PATH/default/pacman/pacman-$channel.conf" /etc/pacman.conf
sudo cp -f "$OMARCHY_PATH/default/pacman/mirrorlist-$channel" /etc/pacman.d/mirrorlist
# Allow user customization of /etc/pacman.conf before the upgrade runs
omarchy-hook pre-refresh-pacman
# Reset all package DBs and then update
sudo pacman -Syyuu --noconfirm
+2 -2
View File
@@ -1,11 +1,11 @@
#!/bin/bash
# omarchy:summary=Reinstall the Omarchy source directory from git
# omarchy:summary=Reinstall the stable Omarchy source directory from git
set -e
# Reinstall the Omarchy configuration directory from the git source.
git clone --depth=1 --branch master "https://github.com/basecamp/omarchy.git" ~/.local/share/omarchy-new >/dev/null
git clone "https://github.com/basecamp/omarchy.git" ~/.local/share/omarchy-new >/dev/null
mv $OMARCHY_PATH ~/.local/share/omarchy-old
mv ~/.local/share/omarchy-new $OMARCHY_PATH
+15 -18
View File
@@ -41,21 +41,18 @@ parse_systemd_timespan() {
}
show_reminders() {
local timers timer next next_seconds uptime remaining body=""
local timer next remaining body=""
local reminder_dir="${XDG_RUNTIME_DIR:-/tmp}/omarchy-reminders"
local reminder_message=""
local now=$(date +%s)
timers=$(systemctl --user list-timers --all --no-legend --no-pager "omarchy-reminder-*.timer" 2>/dev/null | awk '{ print $(NF - 1) }')
uptime=${SECONDS_SINCE_BOOT:-$(awk '{ print int($1) }' /proc/uptime)}
while IFS=$'\t' read -r timer next; do
[[ -z $timer || -z $next ]] && continue
for timer in $timers; do
next=$(systemctl --user show -P NextElapseUSecMonotonic "$timer" 2>/dev/null || true)
[[ -z $next ]] && continue
next=$((next / 1000000))
((next <= now)) && continue
next_seconds=$(parse_systemd_timespan "$next")
((next_seconds <= uptime)) && continue
remaining=$((next_seconds - uptime))
remaining=$((next - now))
reminder=${timer%.timer}
reminder=${reminder#omarchy-reminder-}
set_at=${reminder##*-}
@@ -64,16 +61,16 @@ show_reminders() {
[[ -f $reminder_dir/${timer%.timer}.message ]] && reminder_message=$(<"$reminder_dir/${timer%.timer}.message")
if [[ -n $reminder_message ]]; then
body+="$reminder_message in $(format_remaining $remaining) ($(date -d "@$((set_at + reminder_minutes * 60))" +%-H:%M))"$'\n'
body+="$reminder_message in $(format_remaining $remaining) ($(date -d "@$next" +%-H:%M))"$'\n'
else
body+="${reminder_minutes}-min reminder in $(format_remaining $remaining) ($(date -d "@$((set_at + reminder_minutes * 60))" +%-H:%M))"$'\n'
body+="${reminder_minutes}-min reminder in $(format_remaining $remaining) ($(date -d "@$next" +%-H:%M))"$'\n'
fi
done
done < <(systemctl --user list-timers --all --output=json "omarchy-reminder-*.timer" 2>/dev/null | jq -r '.[] | [.unit, .next] | @tsv')
if [[ -z $body ]]; then
omarchy-notification-send "󰔛" "Upcoming reminders" "No outstanding reminders" -u low
omarchy-notification-send -g 󰔛 "Upcoming reminders" "No outstanding reminders"
else
omarchy-notification-send "󰔛" "Upcoming reminders" "${body%$'\n'}" -u low
omarchy-notification-send -g 󰔛 "Upcoming reminders" "${body%$'\n'}"
fi
}
@@ -88,7 +85,7 @@ clear_reminders() {
fi
rm -f "$reminder_dir"/omarchy-reminder-*.message 2>/dev/null || true
omarchy-notification-send "󰔛" "All reminders have been cleared" -u low
omarchy-notification-send -g 󰔛 "All reminders have been cleared"
}
case ${1:-} in
@@ -134,6 +131,6 @@ if [[ -n $custom_message ]]; then
fi
systemd-run --user --quiet --collect --on-active="${minutes}m" --unit="$unit" \
bash -c 'omarchy-notification-send "󰔛" "Reminder" "$1" -u critical; rm -f "$2"' bash "$message" "$message_file"
bash -c 'omarchy-notification-send -g 󰔛 "Reminder" "$1" -u critical; rm -f "$2"' bash "$message" "$message_file"
omarchy-notification-send "󰔛" "$confirmation_title" "$confirmation" -u low
omarchy-notification-send -g 󰔛 "$confirmation_title" "$confirmation"
+20
View File
@@ -0,0 +1,20 @@
#!/bin/bash
# omarchy:summary=Set Hyprland, Hyprlock, Mako, and Walker corners to sharp or round
# omarchy:args=<sharp|round>
# omarchy:examples=omarchy style corners round | omarchy style corners sharp
if [[ $1 != "sharp" && $1 != "round" ]]; then
echo "Usage: omarchy-style-corners <sharp|round>"
exit 1
fi
omarchy-style-corners-hyprland "$1"
omarchy-style-corners-hyprlock "$1"
omarchy-style-corners-mako "$1"
omarchy-style-corners-walker "$1"
case $1 in
sharp) omarchy-notification-send "Sharp corners enabled" -g 󰝣 ;;
round) omarchy-notification-send "Round corners enabled" -g 󰘇 ;;
esac
+17
View File
@@ -0,0 +1,17 @@
#!/bin/bash
# omarchy:summary=Set or toggle shape of Hyprland window corners
# omarchy:args=[toggle|sharp|round]
# omarchy:examples=omarchy style corners hyprland toggle | omarchy style corners hyprland round | omarchy style corners hyprland sharp
case "${1:-toggle}" in
round) set -- on ;;
sharp) set -- off ;;
toggle) ;;
*)
echo "Usage: omarchy-style-corners-hyprland [toggle|sharp|round]"
exit 1
;;
esac
omarchy-hyprland-toggle rounded-corners "$1"
+35
View File
@@ -0,0 +1,35 @@
#!/bin/bash
# omarchy:summary=Set or toggle rounded Hyprlock input field corners
# omarchy:args=[toggle|sharp|round]
# omarchy:examples=omarchy style corners hyprlock toggle | omarchy style corners hyprlock round | omarchy style corners hyprlock sharp
TOGGLES_CONFIG="$HOME/.local/state/omarchy/toggles/hyprlock.conf"
set_rounding() {
local radius="$1"
mkdir -p "$(dirname "$TOGGLES_CONFIG")"
cat >"$TOGGLES_CONFIG" <<EOF
input-field {
rounding = $radius
}
EOF
}
case "${1:-toggle}" in
round) set_rounding 6 ;;
sharp) set_rounding 0 ;;
toggle)
if [[ -f $TOGGLES_CONFIG ]] && grep -q '^ rounding = 6$' "$TOGGLES_CONFIG"; then
set_rounding 0
else
set_rounding 6
fi
;;
*)
echo "Usage: omarchy-style-corners-hyprlock [toggle|sharp|round]"
exit 1
;;
esac
+38
View File
@@ -0,0 +1,38 @@
#!/bin/bash
# omarchy:summary=Set or toggle rounded Mako notification corners
# omarchy:args=[toggle|sharp|round]
# omarchy:examples=omarchy style corners mako toggle | omarchy style corners mako round | omarchy style corners mako sharp
TOGGLES_CONFIG="$HOME/.local/state/omarchy/toggles/mako.ini"
set_radius() {
local radius="$1"
mkdir -p "$(dirname "$TOGGLES_CONFIG")"
touch "$TOGGLES_CONFIG"
if grep -q '^border-radius=' "$TOGGLES_CONFIG"; then
sed -i "s/^border-radius=.*/border-radius=$radius/" "$TOGGLES_CONFIG"
else
echo "border-radius=$radius" >>"$TOGGLES_CONFIG"
fi
}
case "${1:-toggle}" in
round) set_radius 6 ;;
sharp) set_radius 0 ;;
toggle)
if [[ -f $TOGGLES_CONFIG ]] && grep -q '^border-radius=6$' "$TOGGLES_CONFIG"; then
set_radius 0
else
set_radius 6
fi
;;
*)
echo "Usage: omarchy-style-corners-mako [toggle|sharp|round]"
exit 1
;;
esac
makoctl reload
+40
View File
@@ -0,0 +1,40 @@
#!/bin/bash
# omarchy:summary=Set or toggle rounded Walker corners
# omarchy:args=[toggle|sharp|round]
# omarchy:examples=omarchy style corners walker toggle | omarchy style corners walker round | omarchy style corners walker sharp
TOGGLES_CSS="$HOME/.local/state/omarchy/toggles/walker.css"
set_radius() {
local radius="$1"
mkdir -p "$(dirname "$TOGGLES_CSS")"
touch "$TOGGLES_CSS"
if grep -q '^ border-radius:' "$TOGGLES_CSS"; then
sed -i "s/^ border-radius:.*/ border-radius: ${radius}px;/" "$TOGGLES_CSS"
elif grep -q '^border-radius:' "$TOGGLES_CSS"; then
sed -i "s/^border-radius:.*/border-radius: ${radius}px;/" "$TOGGLES_CSS"
else
echo ".box-wrapper { border-radius: ${radius}px; }" >>"$TOGGLES_CSS"
fi
}
case "${1:-toggle}" in
round) set_radius 6 ;;
sharp) set_radius 0 ;;
toggle)
if [[ -f $TOGGLES_CSS ]] && grep -q 'border-radius: 6px;' "$TOGGLES_CSS"; then
set_radius 0
else
set_radius 6
fi
;;
*)
echo "Usage: omarchy-style-corners-walker [toggle|sharp|round]"
exit 1
;;
esac
omarchy-restart-walker
+45
View File
@@ -0,0 +1,45 @@
#!/bin/bash
# omarchy:summary=Set Waybar position
# omarchy:args=<top|bottom|left|right>
# omarchy:examples=omarchy-style-waybar-position top | omarchy style waybar-position bottom
set -e
WAYBAR_CONFIG="$HOME/.config/waybar/config.jsonc"
position=$1
if [[ ! $position =~ ^(top|bottom|left|right)$ ]]; then
echo "Usage: omarchy-style-waybar-position top|bottom|left|right" >&2
exit 1
fi
# Reset config and styles before making adjustments
omarchy-refresh-config waybar/config.jsonc
omarchy-refresh-config waybar/style.css
if [[ $position == "left" || $position == "right" ]]; then
height=0
width=28
horizontal=false
else
height=26
width=0
horizontal=true
fi
# Change position
sed -i -E "s/(\"position\"[[:space:]]*:[[:space:]]*\")[a-z]+(\")/\\1${position}\\2/" "$WAYBAR_CONFIG"
# Change height/width
sed -i -E "s/(\"height\"[[:space:]]*:[[:space:]]*)[0-9]+/\\1${height}/; s/(\"width\"[[:space:]]*:[[:space:]]*)[0-9]+/\\1${width}/" "$WAYBAR_CONFIG"
# Change the clock format
if [[ $horizontal == true ]]; then
sed -i -E '/"clock"[[:space:]]*:[[:space:]]*\{/,/\}/ s/"format"[[:space:]]*:[[:space:]]*"[^"]*"/"format": "{:L%A %H:%M}"/' "$WAYBAR_CONFIG"
else
sed -i -E '/"clock"[[:space:]]*:[[:space:]]*\{/,/\}/ s/"format"[[:space:]]*:[[:space:]]*"[^"]*"/"format": "{:%H\\n —\\n%M}"/' "$WAYBAR_CONFIG"
fi
omarchy-restart-waybar
+3 -3
View File
@@ -193,14 +193,14 @@ main() {
output=$(output_path "$input" "$format" "$resolution")
if [[ $type == "video" ]]; then
omarchy-notification-send "" "Transcoding video…" "$(basename -- "$input") to $format ($resolution)"
omarchy-notification-send -g  "Transcoding video…" "$(basename -- "$input") to $format ($resolution)"
transcode_video "$input" "$format" "$resolution" "$output"
copy_to_clipboard "$output"
omarchy-notification-send "" "Transcoded to $resolution $format" "Saved and copied to clipboard."
omarchy-notification-send -g  "Transcoded to $resolution $format" "Saved and copied to clipboard."
else
transcode_picture "$input" "$format" "$resolution" "$output"
copy_to_clipboard "$output"
omarchy-notification-send "" "Transcoded to $resolution $format" "Saved and copied to clipboard."
omarchy-notification-send -g  "Transcoded to $resolution $format" "Saved and copied to clipboard."
fi
}
+12 -24
View File
@@ -1,6 +1,6 @@
#!/bin/bash
# omarchy:summary=Upload logs to logs.omarchy.org
# omarchy:summary=Upload logs to 0x0.st
# omarchy:args=<log-file>
# omarchy:hidden=true
@@ -28,7 +28,7 @@ else
echo "========================================="
echo "SYSTEM INFORMATION"
echo "========================================="
echo "Hostname: $(uname -n)"
echo "Hostname: $(hostname)"
echo "Kernel: $(uname -r)"
echo "Date: $(date)"
echo ""
@@ -41,33 +41,19 @@ fi
case "$LOG_TYPE" in
install)
# In the live ISO before reboot, the target system is mounted at /mnt so the
# omarchy install log lives at /mnt/var/log/omarchy-install.log. On the
# installed system it's at /var/log/omarchy-install.log. Prefer whichever
# exists, with /mnt taking precedence (only present in the ISO context, and
# there it's the right one).
ARCHINSTALL_LOG="/var/log/archinstall/install.log"
if [[ -s /mnt/var/log/omarchy-install.log ]]; then
OMARCHY_LOG="/mnt/var/log/omarchy-install.log"
else
OMARCHY_LOG="/var/log/omarchy-install.log"
fi
OMARCHY_LOG="/var/log/omarchy-install.log"
# Combine system info with logs
cat "$SYSTEM_INFO" >"$TEMP_LOG"
[[ -s $ARCHINSTALL_LOG ]] && cat "$ARCHINSTALL_LOG" >>"$TEMP_LOG"
if [[ -s $OMARCHY_LOG ]]; then
printf '\n========================================\nOMARCHY INSTALL LOG (%s)\n========================================\n\n' "$OMARCHY_LOG" >>"$TEMP_LOG"
cat "$OMARCHY_LOG" >>"$TEMP_LOG"
else
echo "Warning: omarchy install log not found (looked at /mnt/var/log/ and /var/log/)" >&2
fi
cat $ARCHINSTALL_LOG $OMARCHY_LOG >>"$TEMP_LOG" 2>/dev/null
if [[ ! -s $TEMP_LOG ]]; then
echo "Error: No install logs found"
exit 1
fi
echo "Uploading installation log to logs.omarchy.org..."
echo "Uploading installation log to 0x0.st..."
;;
this-boot)
@@ -80,7 +66,7 @@ this-boot)
exit 1
fi
echo "Uploading current boot logs to logs.omarchy.org..."
echo "Uploading current boot logs to 0x0.st..."
;;
last-boot)
@@ -93,7 +79,7 @@ last-boot)
exit 1
fi
echo "Uploading previous boot logs to logs.omarchy.org..."
echo "Uploading previous boot logs to 0x0.st..."
;;
installed|system-info)
@@ -112,7 +98,7 @@ installed|system-info)
exit 1
fi
echo "Uploading system information to logs.omarchy.org..."
echo "Uploading system information to 0x0.st..."
;;
*)
@@ -127,13 +113,15 @@ esac
echo ""
URL=$(curl -sf -F "file=@$TEMP_LOG" https://logs.omarchy.org/)
URL=$(curl -sF "file=@$TEMP_LOG" -Fexpires=24 https://0x0.st)
if (( $? == 0 )) && [[ -n $URL ]]; then
echo "✓ Log uploaded successfully!"
echo "Share this URL:"
echo ""
echo " $URL"
echo ""
echo "This link will expire in 24 hours."
else
echo "Error: Failed to upload log file"
exit 1
+16 -14
View File
@@ -1,20 +1,18 @@
#!/bin/bash
set -e
# Set install mode to online since boot.sh is used for curl installations
export OMARCHY_ONLINE_INSTALL=true
ansi_art=' ▄ ▄
▄███████ ▄███████ ▄████████▀ ▄█ █▄ ▄█ █▄ ▄███████
███ ███ ███ ███ ▀▀▀▀███▀▀ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███ ███ ███▄▄▄██
███▀▀▀███ ███▀▀▀▀ ███ ███▀▀▀███ ███ ███ ███▀▀▀▀
███ ███ ██████████ ███ ███ ███ ███ ███ █████████
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███ █▀ ███ █▀ ██▀ ███ █▀ ▀█████▀ ███ ██▀
▀▀▀ ▀▀▀ '
ansi_art=' ▄▄▄
▄█████ ▄███████████▄ ▄███████ ▄███████ ▄███████ ▄█ █▄ ▄█ █▄
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███ ███
███ ███ ███ ███ ███ ▄███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███▄▄▄██
███ ███ ███ ███ ███ ▀███▀▀▀███ ███▀▀▀▀ ███ ▀▀███▀▀▀███ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ███ ███ ██████████ ███ █ ███ ███ ▄██ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
█████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ███████▀ ███ █▀ ▀█████▀
███ '
clear
echo -e "\n$ansi_art\n"
@@ -40,9 +38,13 @@ sudo pacman -Syu --noconfirm --needed git
OMARCHY_REPO="${OMARCHY_REPO:-basecamp/omarchy}"
echo -e "\nCloning Omarchy from: https://github.com/${OMARCHY_REPO}.git"
echo -e "\e[32mUsing branch: $OMARCHY_REF\e[0m"
rm -rf ~/.local/share/omarchy/
git clone --branch "$OMARCHY_REF" "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy >/dev/null
git clone "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy >/dev/null
echo -e "\e[32mUsing branch: $OMARCHY_REF\e[0m"
cd ~/.local/share/omarchy
git fetch origin "${OMARCHY_REF}" && git checkout "${OMARCHY_REF}"
cd -
echo -e "\nInstallation starting..."
source ~/.local/share/omarchy/install.sh
+1 -1
View File
@@ -1 +1 @@
command = 'wl-copy && hyprctl dispatch sendshortcut "SHIFT,Insert,activewindow"'
command = 'wl-copy && hyprctl dispatch sendshortcut "SHIFT, Insert,"'
+1 -1
View File
@@ -66,7 +66,7 @@
"type": "command",
"key": "\ue900 OS",
"keyColor": "blue",
"text": "source /etc/os-release; omarchy=$(omarchy-version); echo \"$PRETTY_NAME → Omarchy $omarchy\""
"text": "version=$(omarchy-version); echo \"Omarchy $version\""
},
{
"type": "command",
+1 -1
View File
@@ -23,7 +23,7 @@
<test name="family" qual="any">
<string>monospace</string>
</test>
<edit name="family" mode="assign" binding="strong">
<edit name="family" mode="append" binding="same">
<string>JetBrainsMono Nerd Font</string>
</edit>
</match>
+10 -5
View File
@@ -6,21 +6,26 @@ bindd = SUPER SHIFT, F, File manager, exec, uwsm-app -- nautilus --new-window
bindd = SUPER ALT SHIFT, F, File manager (cwd), exec, uwsm-app -- nautilus --new-window "$(omarchy-cmd-terminal-cwd)"
bindd = SUPER SHIFT, B, Browser, exec, omarchy-launch-browser
bindd = SUPER SHIFT ALT, B, Browser (private), exec, omarchy-launch-browser --private
bindd = SUPER SHIFT, M, Music, exec, omarchy-launch-or-focus subtui
bindd = SUPER SHIFT, M, Music, exec, omarchy-launch-or-focus spotify
bindd = SUPER SHIFT ALT, M, Music TUI, exec, omarchy-launch-or-focus-tui cliamp
bindd = SUPER SHIFT, N, Editor, exec, omarchy-launch-editor
bindd = SUPER SHIFT, D, Docker, exec, omarchy-launch-tui lazydocker
bindd = SUPER SHIFT, G, Signal, exec, omarchy-launch-or-focus ^signal$ "uwsm-app -- signal-desktop"
bindd = SUPER SHIFT, O, Obsidian, exec, omarchy-launch-or-focus ^obsidian$ "uwsm-app -- obsidian"
bindd = SUPER SHIFT, W, Typora, exec, uwsm-app -- typora --enable-wayland-ime
bindd = SUPER SHIFT, SLASH, Passwords, exec, uwsm-app -- 1password
# If your web app url contains #, type it as ## to prevent hyprland treating it as a comment
bindd = SUPER SHIFT, A, ChatGPT, exec, omarchy-launch-webapp "https://chatgpt.com"
bindd = SUPER SHIFT ALT, A, Claude, exec, omarchy-launch-webapp "https://claude.ai"
bindd = SUPER SHIFT, E, Email, exec, omarchy-launch-webapp "https://outlook.com"
bindd = SUPER SHIFT ALT, A, Grok, exec, omarchy-launch-webapp "https://grok.com"
bindd = SUPER SHIFT, C, Calendar, exec, omarchy-launch-webapp "https://app.hey.com/calendar/weeks/"
bindd = SUPER SHIFT, E, Email, exec, omarchy-launch-webapp "https://app.hey.com"
bindd = SUPER SHIFT, Y, YouTube, exec, omarchy-launch-webapp "https://youtube.com/"
bindd = SUPER SHIFT ALT, G, WhatsApp, exec, omarchy-launch-or-focus-webapp WhatsApp "https://web.whatsapp.com/"
bindd = SUPER SHIFT ALT, J, Jellyfin, exec, omarchy-launch-or-focus-webapp Jellyfin "https://jellyfin.arthurp.fr/"
bindd = SUPER SHIFT ALT, I, Immich, exec, omarchy-launch-or-focus-webapp Immich "https://immich.arthurp.fr/"
bindd = SUPER SHIFT CTRL, G, Google Messages, exec, omarchy-launch-or-focus-webapp "Google Messages" "https://messages.google.com/web/conversations"
bindd = SUPER SHIFT, P, Google Photos, exec, omarchy-launch-or-focus-webapp "Google Photos" "https://photos.google.com/"
bindd = SUPER SHIFT, X, X, exec, omarchy-launch-webapp "https://x.com/"
bindd = SUPER SHIFT ALT, X, X Post, exec, omarchy-launch-webapp "https://x.com/compose/post"
# Add extra bindings
# bind = SUPER SHIFT, R, exec, alacritty -e ssh your-server
-6
View File
@@ -24,9 +24,3 @@ source = ~/.local/state/omarchy/toggles/hypr/*.conf
# Add any other personal Hyprland configuration below
# windowrule = workspace 5, match:class qemu
input {
kb_layout = fr,us
kb_variant = ,colemak_dh_iso
kb_options = grp:caps_toggle
}
+2
View File
@@ -41,3 +41,5 @@ input-field {
auth {
fingerprint:enabled = false
}
source = ~/.local/state/omarchy/toggles/hyprlock.conf
+1 -14
View File
@@ -2,25 +2,12 @@
# List current monitors and resolutions possible: hyprctl monitors
# Format: monitor = [port], resolution, position, scale
# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K.
# Default configuration
env = GDK_SCALE,2
monitor=,preferred,auto,auto
# Good compromise for 27" or 32" 4K monitors (but fractional!)
# env = GDK_SCALE,1.75
# monitor=,preferred,auto,1.6
# Straight 1x setup for low-resolution displays like 1080p or 1440p
# Or for ultrawide monitors like 34" 3440x1440 or 49" 5120x1440
# env = GDK_SCALE,1
# monitor=,preferred,auto,1
# Portrait/rotated secondary monitor (transform: 1 = 90°, 3 = 270°)
# monitor = DP-2, preferred, auto, 1, transform, 1
# Example for Framework 13 w/ 6K XDR Apple display
# monitor = DP-5, 6016x3384@60, auto, 2
# monitor = eDP-1, 2880x1920@120, auto, 2
# Disable the second ghost monitor on an Apple 6K XDR over Thunderbolt
# monitor=DP-2,disable
+7 -4
View File
@@ -3,11 +3,14 @@
# Print the current image file
<Ctrl+p> = exec lp "$imv_current_file"
# Delete the current image and quit the viewer
<Ctrl+x> = exec rm "$imv_current_file"; quit
# Trash the current image and quit the viewer (recoverable from Trash)
<Ctrl+x> = exec gio trash -- "$imv_current_file"; quit
# Delete the current image and move to the next one
<Ctrl+Shift+X> = exec rm "$imv_current_file"; close
# Trash the current image and move to the next one
<Ctrl+Shift+X> = exec gio trash -- "$imv_current_file"; close
# Rotate the currently open image by 90 degrees
<Ctrl+r> = exec mogrify -rotate 90 "$imv_current_file"
# Edit the current image in Satty and quit the viewer
<Ctrl+e> = exec satty --filename "$imv_current_file" & ; quit
@@ -0,0 +1,24 @@
#!/bin/bash
# This hook is called by `omarchy refresh pacman` AFTER the channel template
# is copied to /etc/pacman.conf and BEFORE `pacman -Syyuu` runs. Use it to
# layer customizations onto the freshly-written pacman.conf so they're
# respected by the upgrade — common cases are adding a custom repository
# (e.g. CachyOS, Chaotic-AUR, an internal company repo) or extra IgnorePkg
# lines.
#
# The hook runs as the invoking user with a warm sudo cache.
#
# To put it into use, remove .sample from this file name.
# Example: add an Include line above [core] for a custom repo.
# Maintain the repo entries in /etc/pacman.d/custom-repos.conf yourself.
CONF=/etc/pacman.conf
SNIPPET=/etc/pacman.d/custom-repos.conf
MARKER="Include = $SNIPPET"
[[ -r $SNIPPET ]] || exit 0
grep -qxF "$MARKER" "$CONF" && exit 0
sudo sed -i "0,/^\[core\]/s||$MARKER\n\n[core]|" "$CONF"
+31 -36
View File
@@ -1,12 +1,20 @@
{
"reload_style_on_change": true,
"layer": "top",
"position": "left",
"position": "top",
"spacing": 0,
"width": 35,
"modules-left": ["custom/clock", "custom/weather", "cpu", "memory", "custom/media"],
"modules-center": ["custom/update", "hyprland/workspaces", "custom/voxtype", "custom/screenrecording-indicator", "custom/idle-indicator", "custom/notification-silencing-indicator"],
"modules-right": ["group/tray-expander", "pulseaudio", "bluetooth", "network", "battery"],
"height": 26,
"width": 0,
"modules-left": ["custom/omarchy", "hyprland/workspaces"],
"modules-center": ["clock", "custom/weather", "custom/update", "custom/voxtype", "custom/screenrecording-indicator", "custom/idle-indicator", "custom/notification-silencing-indicator"],
"modules-right": [
"group/tray-expander",
"bluetooth",
"network",
"pulseaudio",
"cpu",
"battery"
],
"hyprland/workspaces": {
"on-click": "activate",
"format": "{icon}",
@@ -29,14 +37,15 @@
"2": [],
"3": [],
"4": [],
"5": [],
"6": [],
"7": [],
"8": [],
"9": [],
"10": []
"5": []
}
},
"custom/omarchy": {
"format": "<span font='omarchy'>\ue900</span>",
"on-click": "omarchy-menu",
"on-click-right": "xdg-terminal-exec",
"tooltip-format": "Omarchy Menu\n\nSuper + Alt + Space"
},
"custom/update": {
"format": "",
"exec": "omarchy-update-available",
@@ -45,23 +54,18 @@
"signal": 7,
"interval": 21600
},
"cpu": {
"interval": 2,
"format": "{icon} ",
"format-icons": ["󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"],
"on-click": "omarchy-launch-or-focus-tui btop"
"interval": 5,
"format": "󰍛",
"on-click": "omarchy-launch-or-focus-tui btop",
"on-click-right": "alacritty"
},
"memory": {
"interval": 2,
"format": "{icon} ",
"format-icons": ["󰪞", "󰪟", "󰪠", "󰪡", "󰪢", "󰪣", "󰪤", "󰪥"],
"on-click": "omarchy-launch-or-focus-tui btop"
},
"custom/clock": {
"exec": "$OMARCHY_PATH/default/waybar/clock.sh",
"return-type": "json",
"on-click": "omarchy-launch-floating-terminal-with-presentation omarchy-tz-select",
"tooltip": true
"clock": {
"format": "{:L%A %H:%M}",
"format-alt": "{:L%d %B W%V %Y}",
"tooltip": false,
"on-click-right": "omarchy-launch-floating-terminal-with-presentation omarchy-tz-select"
},
"custom/weather": {
"exec": "$OMARCHY_PATH/default/waybar/weather.sh",
@@ -70,15 +74,6 @@
"tooltip": false,
"on-click": "notify-send -u low \"$(omarchy-weather-status)\""
},
"custom/media": {
"exec": "$OMARCHY_PATH/default/waybar/media.sh",
"return-type": "json",
"interval": 1,
"on-click": "$OMARCHY_PATH/default/waybar/media_click.sh",
"on-click-right": "playerctl -p subtui next",
"on-click-middle": "playerctl -p subtui previous",
"tooltip": true
},
"network": {
"format-icons": ["󰤯", "󰤟", "󰤢", "󰤥", "󰤨"],
"format": "{icon}",
@@ -143,7 +138,7 @@
"modules": ["custom/expand-icon", "tray"]
},
"custom/expand-icon": {
"format": "",
"format": "",
"tooltip": false,
"on-scroll-up": "",
"on-scroll-down": "",
+60 -24
View File
@@ -3,6 +3,7 @@
* {
background-color: @background;
color: @foreground;
border: none;
border-radius: 0;
min-height: 0;
@@ -11,18 +12,18 @@
}
.modules-left {
margin-bottom: 8px;
margin-left: 8px;
}
.modules-right {
margin-top: 8px;
margin-right: 8px;
}
#workspaces button {
all: initial;
padding: 6px 0;
margin: 1.5px 0;
min-height: 9px;
padding: 0 6px;
margin: 0 1.5px;
min-width: 9px;
}
#workspaces button.empty {
@@ -30,29 +31,28 @@
}
#cpu,
#memory,
#custom-media,
#battery,
#pulseaudio,
#custom-omarchy,
#custom-update {
min-height: 12px;
margin: 7.5px 0;
min-width: 12px;
margin: 0 7.5px;
}
#tray {
margin-top: 16px;
margin-right: 16px;
}
#bluetooth {
margin-top: 17px;
margin-right: 17px;
}
#network {
margin-top: 13px;
margin-right: 13px;
}
#custom-expand-icon {
margin-top: 18px;
margin-right: 18px;
}
tooltip {
@@ -63,17 +63,18 @@ tooltip {
font-size: 10px;
}
#custom-clock {
margin-bottom: 8.75px;
#clock {
margin-left: 8.75px;
}
#custom-weather {
margin-bottom: 7.5px;
margin-top: 7.5px;
margin-left: 7.5px;
margin-right: 7.5px;
min-width: 14px;
}
#custom-weather.unavailable {
min-height: 0;
min-width: 0;
margin: 0;
padding: 0;
}
@@ -85,11 +86,11 @@ tooltip {
#custom-screenrecording-indicator,
#custom-idle-indicator,
#custom-notification-silencing-indicator {
min-height: 12px;
margin-bottom: 5px;
margin-top: 0;
min-width: 12px;
margin-left: 5px;
margin-right: 0;
font-size: 10px;
padding-right: 1px;
padding-bottom: 1px;
}
#custom-screenrecording-indicator.active {
@@ -102,10 +103,45 @@ tooltip {
}
#custom-voxtype {
min-height: 12px;
margin: 0 0 7.5px 0;
min-width: 12px;
margin: 0 0 0 7.5px;
}
#custom-voxtype.recording {
color: #a55555;
}
.left .modules-left, .right .modules-left { margin: 8px 0 0 0; }
.left .modules-right, .right .modules-right { margin: 0 0 8px 0; }
.left #workspaces button, .right #workspaces button {
padding: 6px 0;
margin: 1.5px 0;
}
.left #cpu, .right #cpu,
.left #battery, .right #battery,
.left #pulseaudio, .right #pulseaudio,
.left #custom-omarchy, .right #custom-omarchy,
.left #custom-update, .right #custom-update {
margin: 1.5px 0;
padding: 6px 0;
min-width: 0;
min-height: 12px;
}
.left #tray, .right #tray { margin: 0 0 16px 0; }
.left #bluetooth, .right #bluetooth { margin: 1.5px 0; padding: 6px 0; min-height: 12px; }
.left #network, .right #network { margin: 1.5px 0; padding: 6px 0; min-height: 12px; }
.left #custom-expand-icon, .right #custom-expand-icon { margin: 1.5px 0; padding: 6px 0; min-height: 12px; }
.left #clock, .right #clock { margin: 8.75px 0 0 0; }
.left #custom-weather, .right #custom-weather { margin: 1.5px 0; padding: 6px 0; min-height: 12px; min-width: 14px; margin-right: 4px; }
.left #custom-screenrecording-indicator, .right #custom-screenrecording-indicator,
.left #custom-idle-indicator, .right #custom-idle-indicator,
.left #custom-notification-silencing-indicator, .right #custom-notification-silencing-indicator {
margin: 5px 0 0 0;
min-width: 0;
min-height: 12px;
}
.left #custom-voxtype, .right #custom-voxtype { margin: 7.5px 0 0 0; min-width: 0; min-height: 12px; }
+3 -3
View File
@@ -1,5 +1,5 @@
# Copy / Paste
bindd = SUPER, C, Universal copy, sendshortcut, CTRL, Insert, activewindow
bindd = SUPER, V, Universal paste, sendshortcut, SHIFT, Insert, activewindow
bindd = SUPER, X, Universal cut, sendshortcut, CTRL, X, activewindow
bindd = SUPER, C, Universal copy, sendshortcut, CTRL, Insert,
bindd = SUPER, V, Universal paste, sendshortcut, SHIFT, Insert,
bindd = SUPER, X, Universal cut, sendshortcut, CTRL, X,
bindd = SUPER CTRL, V, Clipboard manager, exec, omarchy-launch-walker -m clipboard
+10
View File
@@ -91,6 +91,16 @@ bindd = SUPER, code:21, Shrink window left, resizeactive, 100 0 # = key
bindd = SUPER SHIFT, code:20, Shrink window up, resizeactive, 0 -100
bindd = SUPER SHIFT, code:21, Expand window down, resizeactive, 0 100
bindd = SUPER ALT, code:20, Expand window left a little, resizeactive, -25 0
bindd = SUPER ALT, code:21, Shrink window left a little, resizeactive, 25 0
bindd = SUPER SHIFT ALT, code:20, Shrink window up a little, resizeactive, 0 -25
bindd = SUPER SHIFT ALT, code:21, Expand window down a little, resizeactive, 0 25
bindd = SUPER CTRL, code:20, Expand window left a lot, resizeactive, -300 0
bindd = SUPER CTRL, code:21, Shrink window left a lot, resizeactive, 300 0
bindd = SUPER CTRL SHIFT, code:20, Shrink window up a lot, resizeactive, 0 -300
bindd = SUPER CTRL SHIFT, code:21, Expand window down a lot, resizeactive, 0 300
# Scroll through existing workspaces with SUPER + scroll
bindd = SUPER, mouse_down, Scroll active workspace forward, workspace, e+1
bindd = SUPER, mouse_up, Scroll active workspace backward, workspace, e-1
+1 -1
View File
@@ -6,7 +6,7 @@ bindd = SUPER, W, Close window, killactive,
bindd = CTRL ALT, DELETE, Close all windows, exec, omarchy-hyprland-window-close-all
# Control tiling
bindd = SUPER, J, Toggle window split, layoutmsg, togglesplit
bindd = SUPER, J, Toggle window split, togglesplit, # dwindle
bindd = SUPER, P, Pseudo window, pseudo, # dwindle
bindd = SUPER SHIFT, V, Toggle window floating/tiling, togglefloating,
bindd = SHIFT, F11, Force full screen, fullscreen, 0
+4
View File
@@ -13,6 +13,10 @@ bindd = , XF86Calculator, Calculator, exec, gnome-calculator
# Aesthetics
bindd = SUPER SHIFT, SPACE, Toggle top bar, exec, omarchy-toggle-waybar
bindd = SUPER SHIFT CTRL, UP, Move Waybar to top, exec, omarchy-style-waybar-position top
bindd = SUPER SHIFT CTRL, DOWN, Move Waybar to bottom, exec, omarchy-style-waybar-position bottom
bindd = SUPER SHIFT CTRL, LEFT, Move Waybar to left, exec, omarchy-style-waybar-position left
bindd = SUPER SHIFT CTRL, RIGHT, Move Waybar to right, exec, omarchy-style-waybar-position right
bindd = SUPER CTRL, SPACE, Theme background menu, exec, omarchy-menu background
bindd = SUPER SHIFT CTRL, SPACE, Theme menu, exec, omarchy-menu theme
bindd = SUPER, BACKSPACE, Toggle window transparency, exec, omarchy-hyprland-window-transparency-toggle
+5 -4
View File
@@ -50,8 +50,8 @@ decoration {
group {
col.border_active = $activeBorderColor
col.border_inactive = $inactiveBorderColor
col.border_locked_active = $activeBorderColor
col.border_locked_inactive = $inactiveBorderColor
col.border_locked_active = -1
col.border_locked_inactive = -1
groupbar {
font_size = 12
@@ -108,8 +108,9 @@ animations {
# See https://wiki.hypr.land/Configuring/Layouts/Dwindle-Layout/ for more
dwindle {
preserve_split = true
force_split = 2
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this
force_split = 2 # Always split on the right
}
scrolling {
@@ -0,0 +1,4 @@
decoration {
rounding = 6
rounding_power = 3
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

+1
View File
@@ -1,4 +1,5 @@
include=~/.local/share/omarchy/default/mako/core.ini
include=~/.local/state/omarchy/toggles/mako.ini
text-color={{ foreground }}
border-color={{ accent }}
+5 -5
View File
@@ -44,12 +44,12 @@ pause_media = true
# .en models are English-only but faster and more accurate for English
# large-v3-turbo is faster than large-v3 with minimal accuracy loss (recommended for GPU)
# Or provide absolute path to a custom .bin model file
model = "base"
model = "base.en"
# Language for transcription
# Use "en" for English, "auto" for auto-detection
# See: https://github.com/openai/whisper#available-models-and-languages
language = "fr"
language = "en"
# Translate non-English speech to English
translate = false
@@ -82,13 +82,13 @@ type_delay_ms = 1
[output.notification]
# Show notification when recording starts (hotkey pressed)
on_recording_start = true
on_recording_start = false
# Show notification when recording stops (transcription beginning)
on_recording_stop = true
on_recording_stop = false
# Show notification with transcribed text after transcription completes
on_transcription = true
on_transcription = false
# [text]
# Text processing options (word replacements, spoken punctuation)
@@ -1,4 +1,5 @@
@import "../../../../../../../.config/omarchy/current/theme/walker.css";
@import "../../../../../../../.local/state/omarchy/toggles/walker.css";
* {
all: unset;
-38
View File
@@ -1,38 +0,0 @@
#!/usr/bin/env bash
print_status() {
time=$(date +"%H:%M")
date=$(date +"%d/%m")
# tooltip complet
full_date=$(date +"%A %d %B %Y %H:%M:%S")
calendar=$(cal -m)
esc_calendar=$(sed 's/&/&amp;/g; s/</&lt;/g; s/>/&gt;/g' <<< "$calendar")
text="$time
$date"
tooltip="$full_date
$esc_calendar"
jq -nc \
--arg text "$text" \
--arg tooltip "$tooltip" \
'{ text: $text, tooltip: $tooltip }'
}
print_status
last=""
while true; do
current=$(date +"%H%M%S%Y%m%d")
if [[ "$current" != "$last" ]]; then
print_status
last="$current"
fi
sleep 1
done
-71
View File
@@ -1,71 +0,0 @@
#!/bin/bash
PLAYER="subtui"
# Vérifie si Subtui est lancé
if ! playerctl -l 2>/dev/null | grep -q "^${PLAYER}$"; then
echo '{"text":"󰝚","tooltip":"Subtui non lancé"}'
exit 0
fi
# Métadonnées
title=$(playerctl -p "$PLAYER" metadata title 2>/dev/null)
artist=$(playerctl -p "$PLAYER" metadata artist 2>/dev/null)
album=$(playerctl -p "$PLAYER" metadata album 2>/dev/null)
status=$(playerctl -p "$PLAYER" status 2>/dev/null)
# Valeurs par défaut
[ -z "$title" ] && title="Titre inconnu"
[ -z "$artist" ] && artist="Artiste inconnu"
[ -z "$album" ] && album="Album inconnu"
# Position actuelle (secondes)
position=$(playerctl -p "$PLAYER" position 2>/dev/null)
[ -z "$position" ] && position=0
# Durée totale (microsecondes)
length=$(playerctl -p "$PLAYER" metadata mpris:length 2>/dev/null)
[ -z "$length" ] && length=0
# Conversion sûre
position_sec=$(awk -v p="$position" 'BEGIN { printf("%d", p+0.5) }')
length_sec=$((length / 1000000))
# Format temps
elapsed=$(printf "%02d:%02d" $((position_sec/60)) $((position_sec%60)))
if [ "$length_sec" -gt 0 ]; then
duration=$(printf "%02d:%02d" $((length_sec/60)) $((length_sec%60)))
else
duration="--:--"
fi
# Icône
if [ "$status" = "Playing" ]; then
icon="󰏤"
else
icon="󰐊"
fi
# Échapper les guillemets pour JSON
title=${title//\"/\\\"}
artist=${artist//\"/\\\"}
album=${album//\"/\\\"}
# Tooltip
tooltip="$artist
$title
Album : $album
$elapsed / $duration
Clic gauche : Lecture/Pause
Clic droit : Suivant
Clic milieu : Précédent"
# Convertir les retours à la ligne pour JSON
tooltip=$(echo "$tooltip" | sed ':a;N;$!ba;s/\n/\\n/g')
# JSON final
printf '{"text":"%s","tooltip":"%s"}\n' "$icon" "$tooltip"
-9
View File
@@ -1,9 +0,0 @@
#!/bin/bash
PLAYER="subtui"
if playerctl -l 2>/dev/null | grep -q "^${PLAYER}$"; then
playerctl -p "$PLAYER" play-pause
else
ghostty -e subtui &
fi
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

+10 -10
View File
@@ -10,17 +10,17 @@
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████████████ █████████████████████████ ████
████████████ █████████████████████████ ████
████████████ ████ ████
████████████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ██████████████████████████████████████ ████
████ ██████████████████████████████████████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████ ████
████ ████ ████
████ ████ ████
████████████ ████████████
████████████ ████████████
████ ████ ████
████ ████ ████
█████████████████████████████ ████████████████████
█████████████████████████████ ████████████████████
+1
View File
@@ -16,6 +16,7 @@ run_logged $OMARCHY_INSTALL/config/fix-powerprofilesctl-shebang.sh
run_logged $OMARCHY_INSTALL/config/docker.sh
run_logged $OMARCHY_INSTALL/config/mimetypes.sh
run_logged $OMARCHY_INSTALL/config/user-dirs.sh
run_logged $OMARCHY_INSTALL/config/toggles.sh
run_logged $OMARCHY_INSTALL/config/nautilus-python.sh
run_logged $OMARCHY_INSTALL/config/localdb.sh
run_logged $OMARCHY_INSTALL/config/walker-elephant.sh
+3
View File
@@ -1,5 +1,8 @@
# Turn on bluetooth by default
chrootable_systemctl_enable bluetooth.service
# Persist last power state across reboots (default AutoEnable=true overrides it)
sudo sed -i 's/^#\?AutoEnable=.*/AutoEnable=false/' /etc/bluetooth/main.conf
mkdir -p ~/.config/wireplumber/wireplumber.conf.d/
cp "$OMARCHY_PATH/default/wireplumber/wireplumber.conf.d/bluetooth-a2dp-autoconnect.conf" ~/.config/wireplumber/wireplumber.conf.d/
+1 -1
View File
@@ -10,7 +10,7 @@ sudo mkdir -p /etc/chromium/policies/managed
sudo chmod a+rw /etc/chromium/policies/managed
# Set initial theme
omarchy-theme-set "Rainynight"
omarchy-theme-set "Tokyo Night"
rm -rf ~/.config/chromium/SingletonLock # otherwise archiso will own the chromium singleton
# Set specific app links for current theme
+5
View File
@@ -0,0 +1,5 @@
# Make sure toggles are available
mkdir -p ~/.local/state/omarchy/toggles
touch ~/.local/state/omarchy/toggles/hyprlock.conf
touch ~/.local/state/omarchy/toggles/mako.ini
touch ~/.local/state/omarchy/toggles/walker.css
+3
View File
@@ -0,0 +1,3 @@
# Set the default GDK_SCALE from what the monitor is currently reporting
sed -i -E "s|^([[:space:]]*env[[:space:]]*=[[:space:]]*GDK_SCALE,).*|\\1$(omarchy-hyprland-monitor-scale)|" ~/.config/hypr/monitors.conf
+3 -4
View File
@@ -1,6 +1,8 @@
# Omarchy core package list installed via install/packaging/base.sh
# This file is also used by the ISO builder when determining needs
1password-beta
1password-cli
aether
alacritty
alsa-utils
@@ -111,6 +113,7 @@ satty
sddm
signal-desktop
slurp
spotify
socat
starship
sushi
@@ -147,7 +150,3 @@ xournalpp
yaru-icon-theme
yay
zoxide
prismlauncher
cava
dua-cli
yazi
+1
View File
@@ -5,3 +5,4 @@ omarchy-npx-install opencode-ai opencode
omarchy-npx-install playwright playwright-cli
omarchy-npx-install @earendil-works/pi-coding-agent pi
omarchy-npx-install @kitlangton/ghui ghui
omarchy-npx-install hunkdiff hunk
+10 -2
View File
@@ -1,7 +1,15 @@
omarchy-webapp-install "HEY" https://app.hey.com HEY.png "omarchy-webapp-handler-hey %u" "x-scheme-handler/mailto"
omarchy-webapp-install "Basecamp" https://launchpad.37signals.com Basecamp.png
omarchy-webapp-install "WhatsApp" https://web.whatsapp.com/ WhatsApp.png
omarchy-webapp-install "Google Photos" https://photos.google.com/ "Google Photos.png"
omarchy-webapp-install "Google Contacts" https://contacts.google.com/ "Google Contacts.png"
omarchy-webapp-install "Google Messages" https://messages.google.com/web/conversations "Google Messages.png"
omarchy-webapp-install "Google Maps" https://maps.google.com "Google Maps.png"
omarchy-webapp-install "ChatGPT" https://chatgpt.com/ ChatGPT.png
omarchy-webapp-install "YouTube" https://youtube.com/ YouTube.png
omarchy-webapp-install "GitHub" https://github.com/ GitHub.png
omarchy-webapp-install "Jellyfin" https://jellyfin.arthurp.fr/ Jellyfin.png
omarchy-webapp-install "Immich" https://immich.arthurp.fr/ Immich.png
omarchy-webapp-install "X" https://x.com/ X.png
omarchy-webapp-install "Figma" https://figma.com/ Figma.png
omarchy-webapp-install "Discord" https://discord.com/channels/@me Discord.png
omarchy-webapp-install "Zoom" https://app.zoom.us/wc/home Zoom.png "omarchy-webapp-handler-zoom %u" "x-scheme-handler/zoommtg;x-scheme-handler/zoomus"
omarchy-webapp-install "Fizzy" https://app.fizzy.do/ Fizzy.png
+1 -64
View File
@@ -1,64 +1 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="121.92007mm"
height="35.805248mm"
viewBox="0 0 121.92009 35.805248"
version="1.1"
id="svg1"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs1" />
<g
id="layer1"
transform="translate(-52.873167,-118.10323)">
<g
id="text1"
style="font-size:3.175px;fill:none;stroke-width:0.264999"
aria-label=" ▄ ▄ &#10; ▄███████ ▄███████ ▄████████▀ ▄█ █▄ ▄██ ██▄ ▄███████&#10;███ ███ ███ ███ ▀▀▀▀███▀▀ ███ ███ ███ ███ ███ ███&#10;███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███&#10;███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███ ███ ███▄▄▄██▀&#10;███▀▀▀███ ▀███▀▀▀▀ ███ ▀▀███▀▀▀███ ███ ███ ███▀▀▀▀ &#10;███ ███ ██████████ ███ ███ ███ ███ ███ █████████&#10;███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███&#10;███ █▀ ███ ██▀ ██▀ ███ █▀ ▀█████▀ ███ ██▀&#10; ▀▀▀ ▀ ▀ ▀▀▀ ▀"
transform="translate(-19.299906,-5.3691469)">
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 159.80312,125.56788 v -2.0955 h 1.905 v 2.0955 z m 7.62001,0 v -2.0955 h 1.905 v 2.0955 z"
id="path29" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 74.078074,129.54624 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905002,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 5.715,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 5.71501,2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 7.62001,0 v -2.0955 h 1.905 v 2.0955 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 7.62001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z"
id="path30" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,133.5246 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 5.715004,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.620003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 3.81,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 7.62,2.0955 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z"
id="path31" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,137.50296 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 5.715004,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.620003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 11.43,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 11.43001,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z"
id="path32" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,141.48132 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905002,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 3.810001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905003,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905003,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 11.43,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 9.52501,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.90501,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 3.81001,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,-2.0955 v -2.0955 h 1.905 v 2.0955 z"
id="path33" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,145.45969 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905002,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 3.810001,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905003,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905003,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 15.24001,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,2.0955 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.90501,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z"
id="path34" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,149.43805 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 3.810001,0 v -4.191 h 1.905 v 4.191 z m 1.905003,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 11.43,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 11.43001,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z"
id="path35" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,153.41641 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 5.715004,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.620003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 11.43,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 11.43001,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 5.71501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z"
id="path36" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 72.173073,157.39477 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 7.620005,0 v -4.191 h 1.905 v 4.191 z m 1.905001,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 7.620005,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905001,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.620003,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 11.43,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 11.43001,2.0955 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.90499,0 v -4.191 h 1.905 v 4.191 z m 7.62001,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 9.525,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,2.0955 v -4.191 h 1.905 v 4.191 z m 1.90501,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,-2.0955 v -2.0955 h 1.905 v 2.0955 z m 7.62001,2.0955 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 7.62,0 v -4.191 h 1.905 v 4.191 z m 1.905,0 v -4.191 h 1.905 v 4.191 z m 1.90501,-2.0955 v -2.0955 h 1.905 v 2.0955 z"
id="path37" />
<path
style="font-family:'JetBrainsMono Nerd Font';-inkscape-font-specification:'JetBrainsMono Nerd Font';fill:#000000;stroke-width:0.265"
d="m 93.128086,159.27763 v -2.0955 h 1.905 v 2.0955 z m 1.905001,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 7.620003,0 v -2.0955 h 1.905 v 2.0955 z m 15.24001,0 v -2.0955 h 1.905 v 2.0955 z m 57.15004,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 1.905,0 v -2.0955 h 1.905 v 2.0955 z m 7.62,0 v -2.0955 h 1.905 v 2.0955 z"
id="path38" />
</g>
</g>
</svg>
<svg fill="none" height="285" viewBox="0 0 1215 285" width="1215" xmlns="http://www.w3.org/2000/svg"><g fill="#000"><path clip-rule="evenodd" d="m720 120h-15v15h-14.998v14.999l-60.002.001v15.002l90-.002v.002h.002l-.002 89.998h-15v15h-13v15h-17v-89.998h-45v90l-45-.002v-89.998h-14.998v-30h14.998v-15.002h-14.998v-30.001h14.998v-75h15v-14.997h15v-15.002h105.002zm-90-.001h45v-74.997h-45z" fill-rule="evenodd"/><path clip-rule="evenodd" d="m105 30.002h15v14.997h15v180.001h-15v15h-15v15.002h-75v-15.002h-15v-15h-15v-180.001h15v-14.997h15v-15.002h75zm-60 194.998h45v-179.998h-45z" fill-rule="evenodd"/><path d="m300 15h60v15h15v14.999h15v180.001h-15v15h-15v15h-15l-.004-209.998h-44.994v-.002h-.002v210.002h-45v-210h-44.998v179.997h-.002v30.003h-15v-15.002h-15v-15h-14.998v-180.001h14.998v-14.999h15v-15h60v-15h45z"/><path clip-rule="evenodd" d="m555 225h-15v15h-15v15h-15v-105.001l-44.998.001v105.002h-45.002v-105.002h-15v-30.001h15v-75h15.002v-14.997h15v-15.002h105zm-89.998-105.001h44.998v-74.997h-44.998z" fill-rule="evenodd"/><path d="m885 75h-15v15h-15v15h-15v-59.998h-45v179.998h45v-59.998h15v14.997h15v15.001h15v30h-15v15h-15v15.002l-105-.002v-210.001h14.998v-14.997h15.002v-15.002h105z"/><path d="m960 119.999h45v-104.999h15v15h15v14.999h15v75.001h15v15h-15v90h-15v15h-15v15h-15v-105h-45v105.002l-45-.002v-105h-30v-15h15v-15.001h15v-75h15v-14.997h15v-15.002h15z"/><path d="m1125 119.999h45v-104.999h15v15h15v15h15v180h-15v15h-15v15.002l-75-.002v-15h-15v-15h-15v-45.001h15v-14.997-.002h30v60h45v-75h-90v-105.001h15v-14.997h15v-15.002h15z"/></g></svg>

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

+10 -10
View File
@@ -1,10 +1,10 @@
▄███████ ▄███████ ▄████████▀ ▄█ █▄ ▄█ █▄ ▄███████
███ ███ ███ ███ ▀▀▀▀███▀▀ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███ ███ ███▄▄▄██
███▀▀▀███ ███▀▀▀▀ ███ ███▀▀▀███ ███ ███ ███▀▀▀▀
███ ███ ██████████ ███ ███ ███ ███ ███ █████████
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███ █▀ ███ █▀ ██▀ ███ █▀ ▀█████▀ ███ ██▀
▀▀▀ ▀ ▀ ▀▀▀ ▀
▄▄
▄█████ ▄███████████▄ ▄███████ ▄███████ ▄███████ ▄█ █▄ ▄█ █▄
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███ ███
███ ███ ███ ███ ███ ▄███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███▄▄▄██
███ ███ ███ ███ ███ ▀███▀▀▀███ ███▀▀▀▀ ███ ▀▀███▀▀▀███ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ███ ███ ██████████ ███ █ ███ ███ ▄██ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
█████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ███████▀ ███ █▀ ▀█████▀
███ █▀
+3
View File
@@ -0,0 +1,3 @@
echo "Persist Bluetooth power state across reboots"
sudo sed -i 's/^#\?AutoEnable=.*/AutoEnable=false/' /etc/bluetooth/main.conf
+11
View File
@@ -0,0 +1,11 @@
echo "Fix fontconfig monospace binding so app-specific fonts are not overridden"
if [[ -f ~/.config/fontconfig/fonts.conf ]] && command -v xmlstarlet >/dev/null 2>&1; then
xmlstarlet ed -L \
-u '//match[@target="pattern"][test/string="monospace"]/edit[@name="family"]/@mode' \
-v "append" \
-u '//match[@target="pattern"][test/string="monospace"]/edit[@name="family"]/@binding' \
-v "same" \
~/.config/fontconfig/fonts.conf
fc-cache -f >/dev/null 2>&1
fi
+3
View File
@@ -0,0 +1,3 @@
echo "Viewing multiple files via imv should use trash for delete and ctrl+e for editing via satty"
omarchy-refresh-config imv/config
+5
View File
@@ -0,0 +1,5 @@
echo "Create Mako and Walker toggle configs"
mkdir -p ~/.local/state/omarchy/toggles
[[ -f ~/.local/state/omarchy/toggles/mako.ini ]] || touch ~/.local/state/omarchy/toggles/mako.ini
[[ -f ~/.local/state/omarchy/toggles/walker.css ]] || touch ~/.local/state/omarchy/toggles/walker.css
+3
View File
@@ -0,0 +1,3 @@
echo "Install hunkdiff npx wrapper as hunk"
omarchy-npx-install hunkdiff hunk
-11
View File
@@ -1,11 +0,0 @@
echo "Update elephant symbols paste shortcut for Hyprland 0.55"
symbols_config=~/.config/elephant/symbols.toml
if [[ -f $symbols_config ]]; then
sed -i 's/hyprctl dispatch sendshortcut "SHIFT, Insert,"/hyprctl dispatch sendshortcut "SHIFT,Insert,activewindow"/' "$symbols_config"
else
omarchy-refresh-config elephant/symbols.toml
fi
omarchy-restart-walker
Binary file not shown.

After

Width:  |  Height:  |  Size: 475 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

+93
View File
@@ -0,0 +1,93 @@
# Main background
theme[main_bg]="#0c0b0c"
# Main text color
theme[main_fg]="#e2dddc"
# Title color for boxes
theme[title]="#b59790"
# Highlight color for keyboard shortcuts
theme[hi_fg]="#c4d8e2"
# Background color of selected item in processes box
theme[selected_bg]="#e2dddc"
# Foreground color of selected item in processes box
theme[selected_fg]="#0c0b0c"
# Color of inactive/disabled text
theme[inactive_fg]="#584e51"
# Color of text appearing on top of graphs
theme[graph_text]="#e2dddc"
# Background color of the percentage meters
theme[meter_bg]="#1e1d1e"
# Misc colors for processes box
theme[proc_misc]="#e2dddc"
# CPU, Memory, Network, Proc box outline colors
theme[cpu_box]="#584e51"
theme[mem_box]="#584e51"
theme[net_box]="#584e51"
theme[proc_box]="#584e51"
# Box divider line and small boxes line color
theme[div_line]="#6B5E73"
# Temperature graph color (Green -> Yellow -> Red)
theme[temp_start]="#87a9b0"
theme[temp_mid]="#6B5E73"
theme[temp_end]="#c38b7b"
# CPU graph colors (Blue -> Cyan -> Magenta)
theme[cpu_start]="#b59790"
theme[cpu_mid]="#a5a0b6"
theme[cpu_end]="#c4d8e2"
# Mem/Disk free meter (Reversed "Available" colors: Cyan -> Blue -> Purple)
theme[free_start]="#c4d8e2"
theme[free_mid]="#b59790"
theme[free_end]="#6B5E73"
# Mem/Disk cached meter
theme[cached_start]="#b59790"
theme[cached_mid]="#c4d8e2"
theme[cached_end]="#e2dddc"
# Mem/Disk available meter (Purple -> Blue -> Cyan)
theme[available_start]="#6B5E73"
theme[available_mid]="#b59790"
theme[available_end]="#a5a0b6"
# Mem/Disk used meter
theme[used_start]="#c38b7b"
theme[used_mid]="#6B5E73"
theme[used_end]="#584e51"
# Download graph colors
theme[download_start]="#87a9b0"
theme[download_mid]="#a5a0b6"
theme[download_end]="#cfd3cd"
# Upload graph colors
theme[upload_start]="#b59790"
theme[upload_mid]="#c4d8e2"
theme[upload_end]="#e2dddc"
# Process box color gradient
theme[process_start]="#c4d8e2"
theme[process_mid]="#a5a0b6"
theme[process_end]="#c38b7b"
# Graph gradient colors
theme[gradient_color_0]="#0c0b0c"
theme[gradient_color_1]="#584e51"
theme[gradient_color_2]="#6B5E73"
theme[gradient_color_3]="#c38b7b"
theme[gradient_color_4]="#87a9b0"
theme[gradient_color_5]="#b59790"
theme[gradient_color_6]="#a5a0b6"
theme[gradient_color_7]="#FAFCFB"
+1
View File
@@ -0,0 +1 @@
12,11,12
+35
View File
@@ -0,0 +1,35 @@
# Accent and UI colors
accent = "#b59790"
active_border_color = "#d6d3de"
active_tab_background = "#a5a0b6"
# Cursor colors
cursor = "#e2dddc"
# Primary colors
foreground = "#FAFCFB"
background = "#0c0b0c"
# Selection colors
selection_foreground = "#0c0b0c"
selection_background = "#FAFCFB"
# Normal colors (ANSI 0-7)
color0 = "#0c0b0c"
color1 = "#c38b7b"
color2 = "#87a9b0"
color3 = "#6B5E73"
color4 = "#b59790"
color5 = "#c4d8e2"
color6 = "#a5a0b6"
color7 = "#cfd3cd"
# Bright colors (ANSI 8-15)
color8 = "#584e51"
color9 = "#c38b7b"
color10 = "#87a9b0"
color11 = "#6B5E73"
color12 = "#b59790"
color13 = "#c4d8e2"
color14 = "#a5a0b6"
color15 = "#e2dddc"
+12
View File
@@ -0,0 +1,12 @@
$activeBorderColor = rgba(8a8588ee) rgba(e2dddcee)
$inactiveBorderColor = rgba(584e51aa)
general {
col.active_border = $activeBorderColor
col.inactive_border = $inactiveBorderColor
}
group {
col.border_active = $activeBorderColor
col.border_inactive = $inactiveBorderColor
}
+6
View File
@@ -0,0 +1,6 @@
$color = rgba(12, 11, 12, 1)
$inner_color = rgba(12, 11, 12, 0.66)
$outer_color = rgba(195, 139, 123, 1)
$font_color = rgba(226, 221, 220, 1)
$placeholder_color = rgba(255, 255, 255, 0.7)
$check_color = rgba(181, 151, 144, 1)
+1
View File
@@ -0,0 +1 @@
Yaru-purple

Some files were not shown because too many files have changed in this diff Show More