mirror of
https://github.com/basecamp/omarchy.git
synced 2026-02-17 15:25:37 +00:00
Compare commits
65 Commits
v3.3.2
...
e567020e1b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e567020e1b | ||
|
|
f78f5b2c2c | ||
|
|
ec305459f8 | ||
|
|
55231e9726 | ||
|
|
a8e0762fbe | ||
|
|
bb91f90839 | ||
|
|
a7995efac2 | ||
|
|
5b534de6a0 | ||
|
|
4fe357972e | ||
|
|
7015601d77 | ||
|
|
532f4310d0 | ||
|
|
56b02f62b5 | ||
|
|
83628ab3bd | ||
|
|
d89614248b | ||
|
|
77a57aa838 | ||
|
|
e455d1bd68 | ||
|
|
adfe182984 | ||
|
|
febd18ce84 | ||
|
|
768c553c4c | ||
|
|
bf99a2ddc0 | ||
|
|
0930583526 | ||
|
|
4a6baafd05 | ||
|
|
c1bf6c4694 | ||
|
|
66daacb30d | ||
|
|
5b2c0dafbf | ||
|
|
988418aea1 | ||
|
|
25451f4a03 | ||
|
|
d884265d46 | ||
|
|
5e1ce16358 | ||
|
|
713b6e3a36 | ||
|
|
2c7b283aef | ||
|
|
4701726c83 | ||
|
|
bfc3c69cf1 | ||
|
|
21514dc577 | ||
|
|
5ff76df5e4 | ||
|
|
bab0004d08 | ||
|
|
93079858f1 | ||
|
|
4287472e02 | ||
|
|
291786d36a | ||
|
|
ed9a4a45ba | ||
|
|
05b82cbee5 | ||
|
|
697d09022a | ||
|
|
1ff31cfe41 | ||
|
|
cd995319bf | ||
|
|
281f0b86d2 | ||
|
|
55668f4c6d | ||
|
|
9c71962a16 | ||
|
|
7d77500c33 | ||
|
|
fb1d9ccfa3 | ||
|
|
2f75e9c7ec | ||
|
|
b22ed8448a | ||
|
|
a0d2f007fd | ||
|
|
955844cb5d | ||
|
|
295c7c91fc | ||
|
|
bc1a531534 | ||
|
|
4cec214a53 | ||
|
|
0b5ba427b2 | ||
|
|
53b8fc4257 | ||
|
|
dcb9527770 | ||
|
|
6c35e840f5 | ||
|
|
da984ce243 | ||
|
|
65bafa4f3b | ||
|
|
f5a35a1afe | ||
|
|
c9b3e13df8 | ||
|
|
9775b01070 |
10
bin/omarchy-battery-present
Executable file
10
bin/omarchy-battery-present
Executable file
@@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
for bat in /sys/class/power_supply/BAT*; do
|
||||||
|
[[ -r "$bat/present" ]] &&
|
||||||
|
[[ "$(cat "$bat/present")" == "1" ]] &&
|
||||||
|
[[ "$(cat "$bat/type")" == "Battery" ]] &&
|
||||||
|
exit 0
|
||||||
|
done
|
||||||
|
|
||||||
|
exit 1
|
||||||
21
bin/omarchy-brightness-display
Executable file
21
bin/omarchy-brightness-display
Executable file
@@ -0,0 +1,21 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Adjust brightness on the most likely display device.
|
||||||
|
# Usage: omarchy-brightness-display <step>
|
||||||
|
|
||||||
|
step="${1:-+5%}"
|
||||||
|
|
||||||
|
# Start with the first possible output, then refine to the most likely given an order heuristic.
|
||||||
|
device="$(ls -1 /sys/class/backlight 2>/dev/null | head -n1)"
|
||||||
|
for candidate in amdgpu_bl* intel_backlight acpi_video*; do
|
||||||
|
if [[ -e "/sys/class/backlight/$candidate" ]]; then
|
||||||
|
device="$candidate"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# Set the actual brightness of the display device.
|
||||||
|
brightnessctl -d "$device" set "$step" >/dev/null
|
||||||
|
|
||||||
|
# Use SwayOSD to display the new brightness setting.
|
||||||
|
omarchy-swayosd-brightness "$(brightnessctl -d "$device" -m | cut -d',' -f4 | tr -d '%')"
|
||||||
12
bin/omarchy-brightness-display-apple
Executable file
12
bin/omarchy-brightness-display-apple
Executable file
@@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Adjust the brightness on Apple Studio Displays and Apple XDR Displays using asdcontrol.
|
||||||
|
|
||||||
|
if [[ $# -eq 0 ]]; then
|
||||||
|
echo "Adjust Apple Display Brightness by passing +5000 or -5000 (or any range from 0-60000)"
|
||||||
|
else
|
||||||
|
device="$(sudo asdcontrol --detect /dev/usb/hiddev* | grep ^/dev/usb/hiddev | cut -d: -f1)"
|
||||||
|
sudo asdcontrol "$device" -- "$1" >/dev/null
|
||||||
|
value="$(sudo asdcontrol "$device" | awk -F= '/BRIGHTNESS=/{print $2+0}')"
|
||||||
|
omarchy-swayosd-brightness "$(( value * 100 / 60000 ))"
|
||||||
|
fi
|
||||||
40
bin/omarchy-brightness-keyboard
Executable file
40
bin/omarchy-brightness-keyboard
Executable file
@@ -0,0 +1,40 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Adjust keyboard backlight brightness using available steps.
|
||||||
|
# Usage: omarchy-brightness-keyboard <up|down>
|
||||||
|
|
||||||
|
direction="${1:-up}"
|
||||||
|
|
||||||
|
# Find keyboard backlight device (look for *kbd_backlight* pattern in leds class).
|
||||||
|
device=""
|
||||||
|
for candidate in /sys/class/leds/*kbd_backlight*; do
|
||||||
|
if [[ -e "$candidate" ]]; then
|
||||||
|
device="$(basename "$candidate")"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ -z "$device" ]]; then
|
||||||
|
echo "No keyboard backlight device found" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Get current and max brightness to determine step size.
|
||||||
|
max_brightness="$(brightnessctl -d "$device" max)"
|
||||||
|
current_brightness="$(brightnessctl -d "$device" get)"
|
||||||
|
|
||||||
|
# Calculate step as one unit (keyboards typically have discrete levels like 0-3).
|
||||||
|
if [[ "$direction" == "up" ]]; then
|
||||||
|
new_brightness=$((current_brightness + 1))
|
||||||
|
[[ $new_brightness -gt $max_brightness ]] && new_brightness=$max_brightness
|
||||||
|
else
|
||||||
|
new_brightness=$((current_brightness - 1))
|
||||||
|
[[ $new_brightness -lt 0 ]] && new_brightness=0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Set the new brightness.
|
||||||
|
brightnessctl -d "$device" set "$new_brightness" >/dev/null
|
||||||
|
|
||||||
|
# Use SwayOSD to display the new brightness setting.
|
||||||
|
percent=$((new_brightness * 100 / max_brightness))
|
||||||
|
omarchy-swayosd-brightness "$percent"
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Adjust the brightness on Apple Studio Displays and Apple XDR Displays using asdcontrol.
|
|
||||||
|
|
||||||
if [[ $# -eq 0 ]]; then
|
|
||||||
echo "Adjust Apple Display Brightness by passing +5000 or -5000 (or any range from 0-60000)"
|
|
||||||
else
|
|
||||||
DEVICE="$(sudo asdcontrol --detect /dev/usb/hiddev* | grep ^/dev/usb/hiddev | cut -d: -f1)"
|
|
||||||
sudo asdcontrol "$DEVICE" -- "$1" >/dev/null
|
|
||||||
VALUE="$(sudo asdcontrol "$DEVICE" | awk -F= '/BRIGHTNESS=/{print $2+0}')"
|
|
||||||
swayosd-client \
|
|
||||||
--monitor "$(hyprctl monitors -j | jq -r '.[]|select(.focused==true).name')" \
|
|
||||||
--custom-icon display-brightness \
|
|
||||||
--custom-progress "$(awk -v v="$VALUE" 'BEGIN{printf "%.2f", v/60000}')" \
|
|
||||||
--custom-progress-text "$(( VALUE * 100 / 60000 ))%"
|
|
||||||
fi
|
|
||||||
@@ -14,6 +14,7 @@ fi
|
|||||||
DESKTOP_AUDIO="false"
|
DESKTOP_AUDIO="false"
|
||||||
MICROPHONE_AUDIO="false"
|
MICROPHONE_AUDIO="false"
|
||||||
WEBCAM="false"
|
WEBCAM="false"
|
||||||
|
WEBCAM_DEVICE=""
|
||||||
STOP_RECORDING="false"
|
STOP_RECORDING="false"
|
||||||
|
|
||||||
for arg in "$@"; do
|
for arg in "$@"; do
|
||||||
@@ -21,6 +22,7 @@ for arg in "$@"; do
|
|||||||
--with-desktop-audio) DESKTOP_AUDIO="true" ;;
|
--with-desktop-audio) DESKTOP_AUDIO="true" ;;
|
||||||
--with-microphone-audio) MICROPHONE_AUDIO="true" ;;
|
--with-microphone-audio) MICROPHONE_AUDIO="true" ;;
|
||||||
--with-webcam) WEBCAM="true" ;;
|
--with-webcam) WEBCAM="true" ;;
|
||||||
|
--webcam-device=*) WEBCAM_DEVICE="${arg#*=}" ;;
|
||||||
--stop-recording) STOP_RECORDING="true"
|
--stop-recording) STOP_RECORDING="true"
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
@@ -32,6 +34,15 @@ cleanup_webcam() {
|
|||||||
start_webcam_overlay() {
|
start_webcam_overlay() {
|
||||||
cleanup_webcam
|
cleanup_webcam
|
||||||
|
|
||||||
|
# Auto-detect first available webcam if none specified
|
||||||
|
if [[ -z "$WEBCAM_DEVICE" ]]; then
|
||||||
|
WEBCAM_DEVICE=$(v4l2-ctl --list-devices 2>/dev/null | grep -m1 "^\s*/dev/video" | tr -d '\t')
|
||||||
|
if [[ -z "$WEBCAM_DEVICE" ]]; then
|
||||||
|
notify-send "No webcam devices found" -u critical -t 3000
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Get monitor scale
|
# Get monitor scale
|
||||||
local scale=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true) | .scale')
|
local scale=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true) | .scale')
|
||||||
|
|
||||||
@@ -41,7 +52,7 @@ start_webcam_overlay() {
|
|||||||
# Try preferred 16:9 resolutions in order, use first available
|
# Try preferred 16:9 resolutions in order, use first available
|
||||||
local preferred_resolutions=("640x360" "1280x720" "1920x1080")
|
local preferred_resolutions=("640x360" "1280x720" "1920x1080")
|
||||||
local video_size_arg=""
|
local video_size_arg=""
|
||||||
local available_formats=$(v4l2-ctl --list-formats-ext -d /dev/video0 2>/dev/null)
|
local available_formats=$(v4l2-ctl --list-formats-ext -d "$WEBCAM_DEVICE" 2>/dev/null)
|
||||||
|
|
||||||
for resolution in "${preferred_resolutions[@]}"; do
|
for resolution in "${preferred_resolutions[@]}"; do
|
||||||
if echo "$available_formats" | grep -q "$resolution"; then
|
if echo "$available_formats" | grep -q "$resolution"; then
|
||||||
@@ -50,7 +61,7 @@ start_webcam_overlay() {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
ffplay -f v4l2 $video_size_arg -framerate 30 /dev/video0 \
|
ffplay -f v4l2 $video_size_arg -framerate 30 "$WEBCAM_DEVICE" \
|
||||||
-vf "scale=${target_width}:-1" \
|
-vf "scale=${target_width}:-1" \
|
||||||
-window_title "WebcamOverlay" \
|
-window_title "WebcamOverlay" \
|
||||||
-noborder \
|
-noborder \
|
||||||
|
|||||||
@@ -67,4 +67,8 @@ sudo cp "$OMARCHY_PATH/default/systemd/hibernate.conf" /etc/systemd/sleep.conf.d
|
|||||||
echo "Regenerating initramfs..."
|
echo "Regenerating initramfs..."
|
||||||
sudo limine-mkinitcpio
|
sudo limine-mkinitcpio
|
||||||
|
|
||||||
echo "Hibernation enabled"
|
echo
|
||||||
|
|
||||||
|
if gum confirm "Reboot to enable hiberation?"; then
|
||||||
|
omarchy-cmd-reboot
|
||||||
|
fi
|
||||||
|
|||||||
@@ -88,10 +88,11 @@ show_learn_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_trigger_menu() {
|
show_trigger_menu() {
|
||||||
case $(menu "Trigger" " Capture\n Share\n Toggle") in
|
case $(menu "Trigger" " Capture\n Share\n Toggle\n Hardware") in
|
||||||
*Capture*) show_capture_menu ;;
|
*Capture*) show_capture_menu ;;
|
||||||
*Share*) show_share_menu ;;
|
*Share*) show_share_menu ;;
|
||||||
*Toggle*) show_toggle_menu ;;
|
*Toggle*) show_toggle_menu ;;
|
||||||
|
*Hardware*) show_hardware_menu ;;
|
||||||
*) show_main_menu ;;
|
*) show_main_menu ;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
@@ -113,13 +114,43 @@ show_screenshot_menu() {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get_webcam_list() {
|
||||||
|
v4l2-ctl --list-devices 2>/dev/null | while IFS= read -r line; do
|
||||||
|
if [[ "$line" != $'\t'* && -n "$line" ]]; then
|
||||||
|
local name="$line"
|
||||||
|
IFS= read -r device || break
|
||||||
|
device=$(echo "$device" | tr -d '\t' | head -1)
|
||||||
|
[[ -n "$device" ]] && echo "$device $name"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
show_webcam_select_menu() {
|
||||||
|
local devices=$(get_webcam_list)
|
||||||
|
local count=$(echo "$devices" | grep -c . 2>/dev/null || echo 0)
|
||||||
|
|
||||||
|
if [[ -z "$devices" || "$count" -eq 0 ]]; then
|
||||||
|
notify-send "No webcam devices found" -u critical -t 3000
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$count" -eq 1 ]]; then
|
||||||
|
echo "$devices" | awk '{print $1}'
|
||||||
|
else
|
||||||
|
menu "Select Webcam" "$devices" | awk '{print $1}'
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
show_screenrecord_menu() {
|
show_screenrecord_menu() {
|
||||||
omarchy-cmd-screenrecord --stop-recording && exit 0
|
omarchy-cmd-screenrecord --stop-recording && exit 0
|
||||||
|
|
||||||
case $(menu "Screenrecord" " With desktop audio\n With desktop + microphone audio\n With desktop + microphone audio + webcam") in
|
case $(menu "Screenrecord" " With desktop audio\n With desktop + microphone audio\n With desktop + microphone audio + webcam") in
|
||||||
*"With desktop audio") omarchy-cmd-screenrecord --with-desktop-audio ;;
|
*"With desktop audio") omarchy-cmd-screenrecord --with-desktop-audio ;;
|
||||||
*"With desktop + microphone audio") omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio ;;
|
*"With desktop + microphone audio") omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio ;;
|
||||||
*"With desktop + microphone audio + webcam") omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio --with-webcam ;;
|
*"With desktop + microphone audio + webcam")
|
||||||
|
local device=$(show_webcam_select_menu) || { back_to show_capture_menu; return; }
|
||||||
|
omarchy-cmd-screenrecord --with-desktop-audio --with-microphone-audio --with-webcam --webcam-device="$device"
|
||||||
|
;;
|
||||||
*) back_to show_capture_menu ;;
|
*) back_to show_capture_menu ;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
@@ -143,6 +174,13 @@ show_toggle_menu() {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
show_hardware_menu() {
|
||||||
|
case $(menu "Toggle" " Hybrid GPU") in
|
||||||
|
*"Hybrid GPU"*) present_terminal omarchy-toggle-hybrid-gpu ;;
|
||||||
|
*) show_trigger_menu ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
show_style_menu() {
|
show_style_menu() {
|
||||||
case $(menu "Style" " Theme\n Font\n Background\n Hyprland\n Screensaver\n About") in
|
case $(menu "Style" " Theme\n Font\n Background\n Hyprland\n Screensaver\n About") in
|
||||||
*Theme*) show_theme_menu ;;
|
*Theme*) show_theme_menu ;;
|
||||||
@@ -407,7 +445,7 @@ show_remove_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_remove_development_menu() {
|
show_remove_development_menu() {
|
||||||
case $(menu "Remove" " Ruby on Rails\n JavaScript\n Go\n PHP\n Python\n Elixir\n Zig\n Rust\n Java\n .NET\n OCaml\n Clojure") in
|
case $(menu "Remove" " Ruby on Rails\n JavaScript\n Go\n PHP\n Python\n Elixir\n Zig\n Rust\n Java\n .NET\n OCaml\n Clojure") in
|
||||||
*Rails*) present_terminal "omarchy-remove-dev-env ruby" ;;
|
*Rails*) present_terminal "omarchy-remove-dev-env ruby" ;;
|
||||||
*JavaScript*) show_remove_javascript_menu ;;
|
*JavaScript*) show_remove_javascript_menu ;;
|
||||||
*Go*) present_terminal "omarchy-remove-dev-env go" ;;
|
*Go*) present_terminal "omarchy-remove-dev-env go" ;;
|
||||||
@@ -425,7 +463,7 @@ show_remove_development_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_remove_javascript_menu() {
|
show_remove_javascript_menu() {
|
||||||
case $(menu "Remove" " Node.js\n Bun\n Deno") in
|
case $(menu "Remove" " Node.js\n Bun\n Deno") in
|
||||||
*Node*) present_terminal "omarchy-remove-dev-env node" ;;
|
*Node*) present_terminal "omarchy-remove-dev-env node" ;;
|
||||||
*Bun*) present_terminal "omarchy-remove-dev-env bun" ;;
|
*Bun*) present_terminal "omarchy-remove-dev-env bun" ;;
|
||||||
*Deno*) present_terminal "omarchy-remove-dev-env deno" ;;
|
*Deno*) present_terminal "omarchy-remove-dev-env deno" ;;
|
||||||
@@ -434,7 +472,7 @@ show_remove_javascript_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_remove_php_menu() {
|
show_remove_php_menu() {
|
||||||
case $(menu "Remove" " PHP\n Laravel\n Symfony") in
|
case $(menu "Remove" " PHP\n Laravel\n Symfony") in
|
||||||
*PHP*) present_terminal "omarchy-remove-dev-env php" ;;
|
*PHP*) present_terminal "omarchy-remove-dev-env php" ;;
|
||||||
*Laravel*) present_terminal "omarchy-remove-dev-env laravel" ;;
|
*Laravel*) present_terminal "omarchy-remove-dev-env laravel" ;;
|
||||||
*Symfony*) present_terminal "omarchy-remove-dev-env symfony" ;;
|
*Symfony*) present_terminal "omarchy-remove-dev-env symfony" ;;
|
||||||
@@ -443,7 +481,7 @@ show_remove_php_menu() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_remove_elixir_menu() {
|
show_remove_elixir_menu() {
|
||||||
case $(menu "Remove" " Elixir\n Phoenix") in
|
case $(menu "Remove" " Elixir\n Phoenix") in
|
||||||
*Elixir*) present_terminal "omarchy-remove-dev-env elixir" ;;
|
*Elixir*) present_terminal "omarchy-remove-dev-env elixir" ;;
|
||||||
*Phoenix*) present_terminal "omarchy-remove-dev-env phoenix" ;;
|
*Phoenix*) present_terminal "omarchy-remove-dev-env phoenix" ;;
|
||||||
*) show_remove_development_menu ;;
|
*) show_remove_development_menu ;;
|
||||||
@@ -543,6 +581,7 @@ go_to_menu() {
|
|||||||
*learn*) show_learn_menu ;;
|
*learn*) show_learn_menu ;;
|
||||||
*trigger*) show_trigger_menu ;;
|
*trigger*) show_trigger_menu ;;
|
||||||
*share*) show_share_menu ;;
|
*share*) show_share_menu ;;
|
||||||
|
*capture*) show_capture_menu ;;
|
||||||
*style*) show_style_menu ;;
|
*style*) show_style_menu ;;
|
||||||
*theme*) show_theme_menu ;;
|
*theme*) show_theme_menu ;;
|
||||||
*screenshot*) show_screenshot_menu ;;
|
*screenshot*) show_screenshot_menu ;;
|
||||||
|
|||||||
15
bin/omarchy-swayosd-brightness
Executable file
15
bin/omarchy-swayosd-brightness
Executable file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Display brightness level using SwayOSD on the current monitor.
|
||||||
|
# Usage: omarchy-swayosd-brightness <percent>
|
||||||
|
|
||||||
|
percent="$1"
|
||||||
|
|
||||||
|
progress="$(awk -v p="$percent" 'BEGIN{printf "%.2f", p/100}')"
|
||||||
|
[[ "$progress" == "0.00" ]] && progress="0.01"
|
||||||
|
|
||||||
|
swayosd-client \
|
||||||
|
--monitor "$(hyprctl monitors -j | jq -r '.[]|select(.focused==true).name')" \
|
||||||
|
--custom-icon display-brightness \
|
||||||
|
--custom-progress "$progress" \
|
||||||
|
--custom-progress-text "${percent}%"
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
CHROMIUM_THEME=~/.config/omarchy/current/theme/chromium.theme
|
CHROMIUM_THEME=~/.config/omarchy/current/theme/chromium.theme
|
||||||
|
|
||||||
if omarchy-cmd-present chromium || omarchy-cmd-present helium-browser || omarchy-cmd-present brave; then
|
if omarchy-cmd-present chromium || omarchy-cmd-present brave; then
|
||||||
if [[ -f $CHROMIUM_THEME ]]; then
|
if [[ -f $CHROMIUM_THEME ]]; then
|
||||||
THEME_RGB_COLOR=$(<$CHROMIUM_THEME)
|
THEME_RGB_COLOR=$(<$CHROMIUM_THEME)
|
||||||
THEME_HEX_COLOR=$(printf '#%02x%02x%02x' ${THEME_RGB_COLOR//,/ })
|
THEME_HEX_COLOR=$(printf '#%02x%02x%02x' ${THEME_RGB_COLOR//,/ })
|
||||||
@@ -13,14 +13,8 @@ if omarchy-cmd-present chromium || omarchy-cmd-present helium-browser || omarchy
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if omarchy-cmd-present chromium; then
|
if omarchy-cmd-present chromium; then
|
||||||
rm -f /etc/chromium/policies/managed/color.json
|
echo "{\"BrowserThemeColor\": \"$THEME_HEX_COLOR\"}" | tee "/etc/chromium/policies/managed/color.json" >/dev/null
|
||||||
chromium --no-startup-window --set-theme-color="$THEME_RGB_COLOR" >/dev/null
|
chromium --refresh-platform-policy --no-startup-window >/dev/null
|
||||||
|
|
||||||
if [[ -f ~/.config/omarchy/current/theme/light.mode ]]; then
|
|
||||||
chromium --no-startup-window --set-color-scheme="light" >/dev/null
|
|
||||||
else
|
|
||||||
chromium --no-startup-window --set-color-scheme="dark" >/dev/null
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if omarchy-cmd-present brave; then
|
if omarchy-cmd-present brave; then
|
||||||
|
|||||||
@@ -13,22 +13,21 @@ hex_to_rgb() {
|
|||||||
|
|
||||||
# Only generate dynamic templates for themes with a colors.toml definition
|
# Only generate dynamic templates for themes with a colors.toml definition
|
||||||
if [[ -f $COLORS_FILE ]]; then
|
if [[ -f $COLORS_FILE ]]; then
|
||||||
# Parse TOML using yq (treating it as YAML since the flat key=value structure is compatible)
|
|
||||||
# We convert 'key = value' to 'key: value' to make it valid YAML, then use yq/jq to generate the replacement commands.
|
|
||||||
sed_script=$(mktemp)
|
sed_script=$(mktemp)
|
||||||
|
|
||||||
# Generate standard and _strip substitutions
|
|
||||||
sed 's/=/:/' "$COLORS_FILE" | yq -r 'to_entries[] | "s|{{ \(.key) }}|\(.value)|g", "s|{{ \(.key)_strip }}|\(.value | sub("^#";""))|g"' > "$sed_script"
|
|
||||||
|
|
||||||
# Generate _rgb substitutions for hex colors
|
|
||||||
while IFS='=' read -r key value; do
|
while IFS='=' read -r key value; do
|
||||||
key=$(echo "$key" | xargs)
|
key="${key//[\"\' ]/}" # strip quotes and spaces from key
|
||||||
value=$(echo "$value" | xargs | tr -d '"')
|
[[ $key && $key != \#* ]] || continue # skip empty lines and comments
|
||||||
|
value="${value#*[\"\']}"
|
||||||
|
value="${value%%[\"\']*}" # extract value between quotes (ignores inline comments)
|
||||||
|
|
||||||
|
printf 's|{{ %s }}|%s|g\n' "$key" "$value" # {{ key }} -> value
|
||||||
|
printf 's|{{ %s_strip }}|%s|g\n' "$key" "${value#\#}" # {{ key_strip }} -> value without leading #
|
||||||
if [[ $value =~ ^# ]]; then
|
if [[ $value =~ ^# ]]; then
|
||||||
rgb=$(hex_to_rgb "$value")
|
rgb=$(hex_to_rgb "$value")
|
||||||
echo "s|{{ ${key}_rgb }}|${rgb}|g" >> "$sed_script"
|
echo "s|{{ ${key}_rgb }}|${rgb}|g"
|
||||||
fi
|
fi
|
||||||
done < "$COLORS_FILE"
|
done <"$COLORS_FILE" >"$sed_script"
|
||||||
|
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
|
|
||||||
@@ -39,7 +38,7 @@ if [[ -f $COLORS_FILE ]]; then
|
|||||||
|
|
||||||
# Don't overwrite configs already exists in the output directory (copied from theme specific folder)
|
# Don't overwrite configs already exists in the output directory (copied from theme specific folder)
|
||||||
if [[ ! -f $output_path ]]; then
|
if [[ ! -f $output_path ]]; then
|
||||||
sed -f "$sed_script" "$tpl" > "$output_path"
|
sed -f "$sed_script" "$tpl" >"$output_path"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|||||||
53
bin/omarchy-toggle-hybrid-gpu
Executable file
53
bin/omarchy-toggle-hybrid-gpu
Executable file
@@ -0,0 +1,53 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Toggle dedicated vs integrated GPU mode via supergfxd (for hybrid gpu laptops, like Asus G14).
|
||||||
|
# Requires reboot to take effect.
|
||||||
|
|
||||||
|
# Ensure supergfxctl has been installed
|
||||||
|
if omarchy-cmd-missing supergfxctl; then
|
||||||
|
omarchy-pkg-add supergfxctl
|
||||||
|
sudo systemctl enable supergfxd
|
||||||
|
|
||||||
|
# Needed to deal with restoring to sleep where going through VFIO first means we don't need to reboot.
|
||||||
|
sudo sed -i "s/\"vfio_enable\": \".*\"/\"vfio_enable\": true/" /etc/supergfxd.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
gpu_mode=$(supergfxctl -g)
|
||||||
|
|
||||||
|
case "$gpu_mode" in
|
||||||
|
"Integrated")
|
||||||
|
if gum confirm "Enable dedicated GPU and reboot?"; then
|
||||||
|
# Switch to hybrid mode
|
||||||
|
sudo sed -i "s/\"mode\": \".*\"/\"mode\": \"Hybrid\"/" /etc/supergfxd.conf
|
||||||
|
|
||||||
|
# Let hybrid mode be the default after system sleep
|
||||||
|
sudo rm -rf /usr/lib/systemd/system-sleep/force-igpu
|
||||||
|
|
||||||
|
# Remove the startup delay override (not needed for Hybrid mode)
|
||||||
|
sudo rm -rf /etc/systemd/system/supergfxd.service.d/delay-start.conf
|
||||||
|
|
||||||
|
omarchy-cmd-reboot
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"Hybrid")
|
||||||
|
if gum confirm "Use only integrated GPU and reboot?"; then
|
||||||
|
# Switch to integrated mode
|
||||||
|
sudo sed -i "s/\"mode\": \".*\"/\"mode\": \"Integrated\"/" /etc/supergfxd.conf
|
||||||
|
|
||||||
|
# Force igpu mode after system sleep (or dgpu could get activated)
|
||||||
|
sudo mkdir -p /usr/lib/systemd/system-sleep
|
||||||
|
sudo cp -p $OMARCHY_PATH/default/systemd/system-sleep/force-igpu /usr/lib/systemd/system-sleep/
|
||||||
|
|
||||||
|
# Delay supergfxd startup to avoid race condition with display manager
|
||||||
|
# that can cause system freeze when booting in Integrated mode
|
||||||
|
sudo mkdir -p /etc/systemd/system/supergfxd.service.d
|
||||||
|
sudo cp -p $OMARCHY_PATH/default/systemd/system/supergfxd.service.d/delay-start.conf /etc/systemd/system/supergfxd.service.d/
|
||||||
|
|
||||||
|
omarchy-cmd-reboot
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Hybrid GPU not found or in unknown mode."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
13
bin/omarchy-update-aur-pkgs
Executable file
13
bin/omarchy-update-aur-pkgs
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Update AUR packages if any are installed
|
||||||
|
if pacman -Qem >/dev/null; then
|
||||||
|
if omarchy-pkg-aur-accessible; then
|
||||||
|
echo -e "\e[32m\nUpdate AUR packages\e[0m"
|
||||||
|
yay -Sua --noconfirm --ignore gcc14,gcc14-libs
|
||||||
|
echo
|
||||||
|
else
|
||||||
|
echo -e "\e[31m\nAUR is unavailable (so skipping updates)\e[0m"
|
||||||
|
echo
|
||||||
|
fi
|
||||||
|
fi
|
||||||
10
bin/omarchy-update-orphan-pkgs
Executable file
10
bin/omarchy-update-orphan-pkgs
Executable file
@@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
orphans=$(pacman -Qtdq || true)
|
||||||
|
if [[ -n $orphans ]]; then
|
||||||
|
echo -e "\e[32m\nRemove orphan system packages\e[0m"
|
||||||
|
for pkg in $orphans; do
|
||||||
|
sudo pacman -Rs --noconfirm "$pkg" || true
|
||||||
|
done
|
||||||
|
echo
|
||||||
|
fi
|
||||||
@@ -14,6 +14,8 @@ omarchy-update-keyring
|
|||||||
omarchy-update-available-reset
|
omarchy-update-available-reset
|
||||||
omarchy-update-system-pkgs
|
omarchy-update-system-pkgs
|
||||||
omarchy-migrate
|
omarchy-migrate
|
||||||
|
omarchy-update-aur-pkgs
|
||||||
|
omarchy-update-orphan-pkgs
|
||||||
omarchy-hook post-update
|
omarchy-hook post-update
|
||||||
|
|
||||||
omarchy-update-analyze-logs
|
omarchy-update-analyze-logs
|
||||||
|
|||||||
@@ -4,24 +4,3 @@ set -e
|
|||||||
|
|
||||||
echo -e "\e[32m\nUpdate system packages\e[0m"
|
echo -e "\e[32m\nUpdate system packages\e[0m"
|
||||||
sudo pacman -Syyu --noconfirm
|
sudo pacman -Syyu --noconfirm
|
||||||
|
|
||||||
# Update AUR packages if any are installed
|
|
||||||
if pacman -Qem >/dev/null; then
|
|
||||||
if omarchy-pkg-aur-accessible; then
|
|
||||||
echo -e "\e[32m\nUpdate AUR packages\e[0m"
|
|
||||||
yay -Sua --noconfirm
|
|
||||||
echo
|
|
||||||
else
|
|
||||||
echo -e "\e[31m\nAUR is unavailable (so skipping updates)\e[0m"
|
|
||||||
echo
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
orphans=$(pacman -Qtdq || true)
|
|
||||||
if [[ -n $orphans ]]; then
|
|
||||||
echo -e "\e[32m\nRemove orphan system packages\e[0m"
|
|
||||||
for pkg in $orphans; do
|
|
||||||
sudo pacman -Rs --noconfirm "$pkg" || true
|
|
||||||
done
|
|
||||||
echo
|
|
||||||
fi
|
|
||||||
|
|||||||
@@ -254,25 +254,6 @@ remove_windows() {
|
|||||||
echo "Windows VM removal completed!"
|
echo "Windows VM removal completed!"
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_for_rdp_ready() {
|
|
||||||
local WIN_USER="$1"
|
|
||||||
local WIN_PASS="$2"
|
|
||||||
local TIMEOUT=240
|
|
||||||
local SECONDS=0
|
|
||||||
|
|
||||||
echo "Waiting for Windows VM to be ready..."
|
|
||||||
|
|
||||||
while ! timeout 5s xfreerdp3 /auth-only /cert:ignore /u:"$WIN_USER" /p:"$WIN_PASS" /v:127.0.0.1:3389 &>/dev/null; do
|
|
||||||
sleep 2
|
|
||||||
if [ $SECONDS -gt $TIMEOUT ]; then
|
|
||||||
echo "❌ Timeout waiting for RDP!"
|
|
||||||
echo " The VM might still be installing Windows."
|
|
||||||
echo " Check progress at: http://127.0.0.1:8006"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
launch_windows() {
|
launch_windows() {
|
||||||
KEEP_ALIVE=false
|
KEEP_ALIVE=false
|
||||||
if [ "$1" = "--keep-alive" ] || [ "$1" = "-k" ]; then
|
if [ "$1" = "--keep-alive" ] || [ "$1" = "-k" ]; then
|
||||||
@@ -309,11 +290,19 @@ launch_windows() {
|
|||||||
notify-send -u critical "Windows VM" "Failed to start Windows VM"
|
notify-send -u critical "Windows VM" "Failed to start Windows VM"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if ! wait_for_rdp_ready "$WIN_USER" "$WIN_PASS"; then
|
echo "Waiting for Windows VM to start..."
|
||||||
notify-send -u critical "Windows VM" "Did not come alive in time."
|
WAIT_COUNT=0
|
||||||
exit 1
|
until docker logs omarchy-windows 2>&1 | grep -qi "windows started successfully"; do
|
||||||
|
sleep 2
|
||||||
|
WAIT_COUNT=$((WAIT_COUNT + 1))
|
||||||
|
if [ $WAIT_COUNT -gt 60 ]; then # 2 minutes timeout
|
||||||
|
echo ""
|
||||||
|
echo "❌ Timeout: Windows VM failed to start within 2 minutes"
|
||||||
|
echo " Check logs: docker logs omarchy-windows"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Build the connection info
|
# Build the connection info
|
||||||
@@ -346,7 +335,7 @@ To stop: omarchy-windows-vm stop"
|
|||||||
# If scale is less than 130%, don't set any scale (use default 100)
|
# If scale is less than 130%, don't set any scale (use default 100)
|
||||||
|
|
||||||
# Connect with RDP in fullscreen (auto-detects resolution)
|
# Connect with RDP in fullscreen (auto-detects resolution)
|
||||||
xfreerdp3 /u:"$WIN_USER" /p:"$WIN_PASS" /v:127.0.0.1:3389 -grab-keyboard /sound /microphone /cert:ignore /title:"Windows VM - Omarchy" /dynamic-resolution /gfx:AVC444 /floatbar:sticky:off,default:visible,show:fullscreen $RDP_SCALE
|
xfreerdp3 /u:"$WIN_USER" /p:"$WIN_PASS" /v:127.0.0.1:3389 -grab-keyboard /sound /microphone /clipboard /cert:ignore /title:"Windows VM - Omarchy" /dynamic-resolution /gfx:AVC444 /floatbar:sticky:off,default:visible,show:fullscreen $RDP_SCALE
|
||||||
|
|
||||||
# After RDP closes, stop the container unless --keep-alive was specified
|
# After RDP closes, stop the container unless --keep-alive was specified
|
||||||
if [ "$KEEP_ALIVE" = false ]; then
|
if [ "$KEEP_ALIVE" = false ]; then
|
||||||
|
|||||||
10
boot.sh
10
boot.sh
@@ -28,12 +28,10 @@ git clone "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy >/dev/
|
|||||||
|
|
||||||
# Use custom branch if instructed, otherwise default to master
|
# Use custom branch if instructed, otherwise default to master
|
||||||
OMARCHY_REF="${OMARCHY_REF:-master}"
|
OMARCHY_REF="${OMARCHY_REF:-master}"
|
||||||
if [[ $OMARCHY_REF != "master" ]]; then
|
echo -e "\e[32mUsing branch: $OMARCHY_REF\e[0m"
|
||||||
echo -e "\e[32mUsing branch: $OMARCHY_REF\e[0m"
|
cd ~/.local/share/omarchy
|
||||||
cd ~/.local/share/omarchy
|
git fetch origin "${OMARCHY_REF}" && git checkout "${OMARCHY_REF}"
|
||||||
git fetch origin "${OMARCHY_REF}" && git checkout "${OMARCHY_REF}"
|
cd -
|
||||||
cd -
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Set edge mirror for dev installs
|
# Set edge mirror for dev installs
|
||||||
if [[ $OMARCHY_REF == "dev" ]]; then
|
if [[ $OMARCHY_REF == "dev" ]]; then
|
||||||
|
|||||||
1
config/elephant/symbols.toml
Normal file
1
config/elephant/symbols.toml
Normal file
@@ -0,0 +1 @@
|
|||||||
|
command = 'wl-copy && hyprctl dispatch sendshortcut "SHIFT, Insert,"'
|
||||||
@@ -3,6 +3,10 @@
|
|||||||
input {
|
input {
|
||||||
# Use multiple keyboard layouts and switch between them with Left Alt + Right Alt
|
# Use multiple keyboard layouts and switch between them with Left Alt + Right Alt
|
||||||
# kb_layout = us,dk,eu
|
# kb_layout = us,dk,eu
|
||||||
|
|
||||||
|
# Use a specific keyboard variant if needed (e.g. intl for international keyboards)
|
||||||
|
# kb_variant = intl
|
||||||
|
|
||||||
kb_options = compose:caps # ,grp:alts_toggle
|
kb_options = compose:caps # ,grp:alts_toggle
|
||||||
|
|
||||||
# Change speed of keyboard repeat
|
# Change speed of keyboard repeat
|
||||||
|
|||||||
@@ -116,6 +116,7 @@
|
|||||||
"format-muted": "",
|
"format-muted": "",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"headphone": "",
|
"headphone": "",
|
||||||
|
"headset": "",
|
||||||
"default": ["", "", ""]
|
"default": ["", "", ""]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -21,9 +21,9 @@ if command -v zoxide &> /dev/null; then
|
|||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
open() {
|
open() (
|
||||||
xdg-open "$@" >/dev/null 2>&1 &
|
xdg-open "$@" >/dev/null 2>&1 &
|
||||||
}
|
)
|
||||||
|
|
||||||
# Directories
|
# Directories
|
||||||
alias ..='cd ..'
|
alias ..='cd ..'
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ img2jpg() {
|
|||||||
img="$1"
|
img="$1"
|
||||||
shift
|
shift
|
||||||
|
|
||||||
magick "$img" $@ -quality 95 -strip ${img%.*}-optimized.jpg
|
magick "$img" $@ -quality 95 -strip ${img%.*}-converted.jpg
|
||||||
}
|
}
|
||||||
|
|
||||||
# Transcode any image to JPG image that's great for sharing online without being too big
|
# Transcode any image to JPG image that's great for sharing online without being too big
|
||||||
@@ -66,7 +66,14 @@ img2jpg-small() {
|
|||||||
img="$1"
|
img="$1"
|
||||||
shift
|
shift
|
||||||
|
|
||||||
magick "$img" $@ -resize 1080x\> -quality 95 -strip ${img%.*}-optimized.jpg
|
magick "$img" $@ -resize 1080x\> -quality 95 -strip ${img%.*}-small.jpg
|
||||||
|
}
|
||||||
|
# Transcode any image to JPG image that's great for sharing online without being too big
|
||||||
|
img2jpg-medium() {
|
||||||
|
img="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
magick "$img" $@ -resize 1800x\> -quality 95 -strip ${img%.*}-medium.jpg
|
||||||
}
|
}
|
||||||
|
|
||||||
# Transcode any image to compressed-but-lossless PNG
|
# Transcode any image to compressed-but-lossless PNG
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ source = ~/.local/share/omarchy/default/hypr/apps/qemu.conf
|
|||||||
source = ~/.local/share/omarchy/default/hypr/apps/retroarch.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/retroarch.conf
|
||||||
source = ~/.local/share/omarchy/default/hypr/apps/steam.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/steam.conf
|
||||||
source = ~/.local/share/omarchy/default/hypr/apps/system.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/system.conf
|
||||||
|
source = ~/.local/share/omarchy/default/hypr/apps/telegram.conf
|
||||||
source = ~/.local/share/omarchy/default/hypr/apps/terminals.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/terminals.conf
|
||||||
source = ~/.local/share/omarchy/default/hypr/apps/walker.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/walker.conf
|
||||||
source = ~/.local/share/omarchy/default/hypr/apps/webcam-overlay.conf
|
source = ~/.local/share/omarchy/default/hypr/apps/webcam-overlay.conf
|
||||||
|
|||||||
2
default/hypr/apps/telegram.conf
Normal file
2
default/hypr/apps/telegram.conf
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# Prevent Telegram from stealing focus on new messages
|
||||||
|
windowrule = focus_on_activate off, match:class org.telegram.desktop
|
||||||
@@ -6,14 +6,16 @@ bindeld = ,XF86AudioRaiseVolume, Volume up, exec, $osdclient --output-volume rai
|
|||||||
bindeld = ,XF86AudioLowerVolume, Volume down, exec, $osdclient --output-volume lower
|
bindeld = ,XF86AudioLowerVolume, Volume down, exec, $osdclient --output-volume lower
|
||||||
bindeld = ,XF86AudioMute, Mute, exec, $osdclient --output-volume mute-toggle
|
bindeld = ,XF86AudioMute, Mute, exec, $osdclient --output-volume mute-toggle
|
||||||
bindeld = ,XF86AudioMicMute, Mute microphone, exec, $osdclient --input-volume mute-toggle
|
bindeld = ,XF86AudioMicMute, Mute microphone, exec, $osdclient --input-volume mute-toggle
|
||||||
bindeld = ,XF86MonBrightnessUp, Brightness up, exec, $osdclient --brightness raise
|
bindeld = ,XF86MonBrightnessUp, Brightness up, exec, omarchy-brightness-display +5%
|
||||||
bindeld = ,XF86MonBrightnessDown, Brightness down, exec, $osdclient --brightness lower
|
bindeld = ,XF86MonBrightnessDown, Brightness down, exec, omarchy-brightness-display 5%-
|
||||||
|
bindeld = ,XF86KbdBrightnessUp, Keyboard brightness up, exec, omarchy-brightness-keyboard up
|
||||||
|
bindeld = ,XF86KbdBrightnessDown, Keyboard brightness down, exec, omarchy-brightness-keyboard down
|
||||||
|
|
||||||
# Precise 1% multimedia adjustments with Alt modifier
|
# Precise 1% multimedia adjustments with Alt modifier
|
||||||
bindeld = ALT, XF86AudioRaiseVolume, Volume up precise, exec, $osdclient --output-volume +1
|
bindeld = ALT, XF86AudioRaiseVolume, Volume up precise, exec, $osdclient --output-volume +1
|
||||||
bindeld = ALT, XF86AudioLowerVolume, Volume down precise, exec, $osdclient --output-volume -1
|
bindeld = ALT, XF86AudioLowerVolume, Volume down precise, exec, $osdclient --output-volume -1
|
||||||
bindeld = ALT, XF86MonBrightnessUp, Brightness up precise, exec, $osdclient --brightness +1
|
bindeld = ALT, XF86MonBrightnessUp, Brightness up precise, exec, omarchy-brightness-display +1%
|
||||||
bindeld = ALT, XF86MonBrightnessDown, Brightness down precise, exec, $osdclient --brightness -1
|
bindeld = ALT, XF86MonBrightnessDown, Brightness down precise, exec, omarchy-brightness-display 1%-
|
||||||
|
|
||||||
# Requires playerctl
|
# Requires playerctl
|
||||||
bindld = , XF86AudioNext, Next track, exec, $osdclient --playerctl next
|
bindld = , XF86AudioNext, Next track, exec, $osdclient --playerctl next
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
# Menus
|
# Menus
|
||||||
bindd = SUPER, SPACE, Launch apps, exec, omarchy-launch-walker
|
bindd = SUPER, SPACE, Launch apps, exec, omarchy-launch-walker
|
||||||
bindd = SUPER CTRL, E, Emoji picker, exec, omarchy-launch-walker -m symbols
|
bindd = SUPER CTRL, E, Emoji picker, exec, omarchy-launch-walker -m symbols
|
||||||
|
bindd = SUPER CTRL, C, Capture menu, exec, omarchy-menu capture
|
||||||
bindd = SUPER ALT, SPACE, Omarchy menu, exec, omarchy-menu
|
bindd = SUPER ALT, SPACE, Omarchy menu, exec, omarchy-menu
|
||||||
bindd = SUPER, ESCAPE, System menu, exec, omarchy-menu system
|
bindd = SUPER, ESCAPE, System menu, exec, omarchy-menu system
|
||||||
bindld = , XF86PowerOff, Power menu, exec, omarchy-menu system
|
bindld = , XF86PowerOff, Power menu, exec, omarchy-menu system
|
||||||
@@ -28,9 +29,9 @@ bindd = SUPER CTRL, I, Toggle locking on idle, exec, omarchy-toggle-idle
|
|||||||
bindd = SUPER CTRL, N, Toggle nightlight, exec, omarchy-toggle-nightlight
|
bindd = SUPER CTRL, N, Toggle nightlight, exec, omarchy-toggle-nightlight
|
||||||
|
|
||||||
# Control Apple Display brightness
|
# Control Apple Display brightness
|
||||||
bindd = CTRL, F1, Apple Display brightness down, exec, omarchy-cmd-apple-display-brightness -5000
|
bindd = CTRL, F1, Apple Display brightness down, exec, omarchy-brightness-display-apple -5000
|
||||||
bindd = CTRL, F2, Apple Display brightness up, exec, omarchy-cmd-apple-display-brightness +5000
|
bindd = CTRL, F2, Apple Display brightness up, exec, omarchy-brightness-display-apple +5000
|
||||||
bindd = SHIFT CTRL, F2, Apple Display full brightness, exec, omarchy-cmd-apple-display-brightness +60000
|
bindd = SHIFT CTRL, F2, Apple Display full brightness, exec, omarchy-brightness-display-apple +60000
|
||||||
|
|
||||||
# Captures
|
# Captures
|
||||||
bindd = , PRINT, Screenshot with editing, exec, omarchy-cmd-screenshot
|
bindd = , PRINT, Screenshot with editing, exec, omarchy-cmd-screenshot
|
||||||
|
|||||||
@@ -131,6 +131,11 @@ cursor {
|
|||||||
hide_on_key_press = true
|
hide_on_key_press = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Auto toggle scratchpad on switching workspace from scratchpad
|
||||||
|
binds {
|
||||||
|
hide_special_on_workspace_change = true
|
||||||
|
}
|
||||||
|
|
||||||
# Style Gum confirm to match terminal theme
|
# Style Gum confirm to match terminal theme
|
||||||
env = GUM_CONFIRM_PROMPT_FOREGROUND,6 # Cyan
|
env = GUM_CONFIRM_PROMPT_FOREGROUND,6 # Cyan
|
||||||
env = GUM_CONFIRM_SELECTED_FOREGROUND,0 # Black
|
env = GUM_CONFIRM_SELECTED_FOREGROUND,0 # Black
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ TARGET_OS_NAME="Omarchy"
|
|||||||
ESP_PATH="/boot"
|
ESP_PATH="/boot"
|
||||||
|
|
||||||
KERNEL_CMDLINE[default]="@@CMDLINE@@"
|
KERNEL_CMDLINE[default]="@@CMDLINE@@"
|
||||||
KERNEL_CMDLINE[default]+="quiet splash"
|
KERNEL_CMDLINE[default]+=" quiet splash"
|
||||||
|
|
||||||
ENABLE_UKI=yes
|
ENABLE_UKI=yes
|
||||||
CUSTOM_UKI_NAME="omarchy"
|
CUSTOM_UKI_NAME="omarchy"
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
name: Omarchy
|
name: omarchy
|
||||||
description: >
|
description: >
|
||||||
REQUIRED for ANY changes to Linux desktop, window manager, or system config.
|
REQUIRED for ANY changes to Linux desktop, window manager, or system config.
|
||||||
Use when editing ~/.config/hypr/, ~/.config/waybar/, ~/.config/walker/,
|
Use when editing ~/.config/hypr/, ~/.config/waybar/, ~/.config/walker/,
|
||||||
|
|||||||
18
default/systemd/system-sleep/force-igpu
Executable file
18
default/systemd/system-sleep/force-igpu
Executable file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Use the Vfio to Integrated trick to turn off NVIDIA dgpu when in integrated mode
|
||||||
|
# without needing to restart the computer. This is needed because computers like the Asus G14
|
||||||
|
# will wake after suspend in Hybrid mode, even if the system was in Integrated mode before
|
||||||
|
# suspending.
|
||||||
|
|
||||||
|
if [[ $1 == "post" ]]; then
|
||||||
|
# small delay so the device is fully re-enumerated
|
||||||
|
sleep 4
|
||||||
|
|
||||||
|
# force-bind dGPU to vfio (fully detached from nvidia)
|
||||||
|
/usr/bin/supergfxctl -m Vfio
|
||||||
|
sleep 1
|
||||||
|
|
||||||
|
# then go back to Integrated, which powers it off again
|
||||||
|
/usr/bin/supergfxctl -m Integrated
|
||||||
|
fi
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
[Service]
|
||||||
|
# Delay startup to avoid race condition with display manager initialization
|
||||||
|
# when booting in Integrated mode. Without this delay, the system can freeze
|
||||||
|
# on boot because supergfxd tries to disable the dGPU while the display
|
||||||
|
# subsystem is still initializing.
|
||||||
|
ExecStartPre=/bin/sleep 5
|
||||||
18
default/wireplumber/wireplumber.conf.d/alsa-soft-mixer.conf
Normal file
18
default/wireplumber/wireplumber.conf.d/alsa-soft-mixer.conf
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
## Use software volume control for all ALSA devices.
|
||||||
|
## This prevents hardware mixer quirks (like muffled audio on Realtek codecs)
|
||||||
|
## and provides consistent volume behavior across all hardware.
|
||||||
|
|
||||||
|
monitor.alsa.rules = [
|
||||||
|
{
|
||||||
|
matches = [
|
||||||
|
{
|
||||||
|
device.name = "~alsa_card.*"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
actions = {
|
||||||
|
update-props = {
|
||||||
|
api.alsa.soft-mixer = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
@@ -19,6 +19,7 @@ run_logged $OMARCHY_INSTALL/config/fast-shutdown.sh
|
|||||||
run_logged $OMARCHY_INSTALL/config/sudoless-asdcontrol.sh
|
run_logged $OMARCHY_INSTALL/config/sudoless-asdcontrol.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/input-group.sh
|
run_logged $OMARCHY_INSTALL/config/input-group.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/omarchy-ai-skill.sh
|
run_logged $OMARCHY_INSTALL/config/omarchy-ai-skill.sh
|
||||||
|
run_logged $OMARCHY_INSTALL/config/powerprofilesctl-rules.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/network.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/network.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/set-wireless-regdom.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/set-wireless-regdom.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-fkeys.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-fkeys.sh
|
||||||
@@ -26,6 +27,7 @@ run_logged $OMARCHY_INSTALL/config/hardware/bluetooth.sh
|
|||||||
run_logged $OMARCHY_INSTALL/config/hardware/printer.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/printer.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/usb-autosuspend.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/usb-autosuspend.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/ignore-power-button.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/ignore-power-button.sh
|
||||||
|
run_logged $OMARCHY_INSTALL/config/hardware/legacy-gpu-terminal.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/nvidia.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/nvidia.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-f13-amd-audio-input.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-f13-amd-audio-input.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-bcm43xx.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-bcm43xx.sh
|
||||||
@@ -33,3 +35,5 @@ run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-spi-keyboard.sh
|
|||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-suspend-nvme.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-suspend-nvme.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-t2.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-t2.sh
|
||||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-surface-keyboard.sh
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-surface-keyboard.sh
|
||||||
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-asus-rog-audio-mixer.sh
|
||||||
|
run_logged $OMARCHY_INSTALL/config/hardware/fix-asus-rog-mic.sh
|
||||||
|
|||||||
9
install/config/hardware/fix-asus-rog-audio-mixer.sh
Normal file
9
install/config/hardware/fix-asus-rog-audio-mixer.sh
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# Fix audio volume on Asus ROG laptops by using a soft mixer.
|
||||||
|
|
||||||
|
if [[ "$(cat /sys/class/dmi/id/sys_vendor 2>/dev/null)" == "ASUSTeK COMPUTER INC." ]] &&
|
||||||
|
grep -q "ROG" /sys/class/dmi/id/product_family 2>/dev/null; then
|
||||||
|
|
||||||
|
mkdir -p ~/.config/wireplumber/wireplumber.conf.d/
|
||||||
|
cp $OMARCHY_PATH/default/wireplumber/wireplumber.conf.d/alsa-soft-mixer.conf ~/.config/wireplumber/wireplumber.conf.d/
|
||||||
|
rm -rf ~/.local/state/wireplumber/default-routes
|
||||||
|
fi
|
||||||
17
install/config/hardware/fix-asus-rog-mic.sh
Normal file
17
install/config/hardware/fix-asus-rog-mic.sh
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Fix internal mic gain on ASUS ROG laptops with Realtek ALC285.
|
||||||
|
# The mic boost is way too high by default, causing clipping.
|
||||||
|
# Sets levels and stores ALSA state so it persists across reboots.
|
||||||
|
|
||||||
|
if [[ "$(cat /sys/class/dmi/id/sys_vendor 2>/dev/null)" == "ASUSTeK COMPUTER INC." ]] &&
|
||||||
|
grep -q "ROG" /sys/class/dmi/id/product_family 2>/dev/null; then
|
||||||
|
|
||||||
|
for card in /proc/asound/card*/codec*; do
|
||||||
|
if grep -q "ALC285" "$card" 2>/dev/null; then
|
||||||
|
cardnum=$(echo "$card" | grep -oP 'card\K\d+')
|
||||||
|
amixer -c "$cardnum" set 'Internal Mic Boost' 0 >/dev/null 2>&1 || true
|
||||||
|
amixer -c "$cardnum" set 'Capture' 70% >/dev/null 2>&1 || true
|
||||||
|
sudo alsactl store "$cardnum" 2>/dev/null || true
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
17
install/config/hardware/legacy-gpu-terminal.sh
Normal file
17
install/config/hardware/legacy-gpu-terminal.sh
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# Ghostty requires modern GPU acceleration (OpenGL/Vulkan) which is often unstable
|
||||||
|
# or missing on legacy hardware. Detect legacy GPU drivers and fall back to Alacritty.
|
||||||
|
|
||||||
|
legacy_drivers=("radeon")
|
||||||
|
|
||||||
|
for card in /sys/class/drm/card*; do
|
||||||
|
if [[ -e "$card/device/driver" ]]; then
|
||||||
|
driver=$(basename "$(readlink -f "$card/device/driver")")
|
||||||
|
|
||||||
|
for legacy in "${legacy_drivers[@]}"; do
|
||||||
|
if [[ "$driver" == "$legacy" ]]; then
|
||||||
|
omarchy-install-terminal alacritty
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done
|
||||||
@@ -7,8 +7,8 @@ if [ -n "$NVIDIA" ]; then
|
|||||||
if echo "$NVIDIA" | grep -qE "RTX [2-9][0-9]|GTX 16"; then
|
if echo "$NVIDIA" | grep -qE "RTX [2-9][0-9]|GTX 16"; then
|
||||||
# Turing (16xx, 20xx), Ampere (30xx), Ada (40xx), and newer recommend the open-source kernel modules
|
# Turing (16xx, 20xx), Ampere (30xx), Ada (40xx), and newer recommend the open-source kernel modules
|
||||||
PACKAGES=(nvidia-open-dkms nvidia-utils lib32-nvidia-utils libva-nvidia-driver)
|
PACKAGES=(nvidia-open-dkms nvidia-utils lib32-nvidia-utils libva-nvidia-driver)
|
||||||
elif echo "$NVIDIA" | grep -qE "GTX 9|GTX 10|Quadro P"; then
|
elif echo "$NVIDIA" | grep -qE "GTX 9|GTX 10|Quadro P|MX1|MX2|MX3"; then
|
||||||
# Pascal (10xx or Quadro Pxxx) and Maxwell (9xx) use legacy branch that can only be installed from AUR
|
# Pascal (10xx, Quadro Pxxx, MX150, MX2xx, and MX3xx) and Maxwell (9xx, MX110, and MX130) use legacy branch that can only be installed from AUR
|
||||||
PACKAGES=(nvidia-580xx-dkms nvidia-580xx-utils lib32-nvidia-580xx-utils)
|
PACKAGES=(nvidia-580xx-dkms nvidia-580xx-utils lib32-nvidia-580xx-utils)
|
||||||
fi
|
fi
|
||||||
# Bail if no supported GPU
|
# Bail if no supported GPU
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
omarchy-refresh-applications
|
omarchy-refresh-applications
|
||||||
update-desktop-database ~/.local/share/applications
|
update-desktop-database ~/.local/share/applications
|
||||||
|
|
||||||
|
# Open directories in file manager
|
||||||
|
xdg-mime default org.gnome.Nautilus.desktop inode/directory
|
||||||
|
|
||||||
# Open all images with imv
|
# Open all images with imv
|
||||||
xdg-mime default imv.desktop image/png
|
xdg-mime default imv.desktop image/png
|
||||||
xdg-mime default imv.desktop image/jpeg
|
xdg-mime default imv.desktop image/jpeg
|
||||||
|
|||||||
26
install/config/powerprofilesctl-rules.sh
Executable file
26
install/config/powerprofilesctl-rules.sh
Executable file
@@ -0,0 +1,26 @@
|
|||||||
|
if omarchy-battery-present; then
|
||||||
|
mapfile -t profiles < <(omarchy-powerprofiles-list)
|
||||||
|
|
||||||
|
if [[ ${#profiles[@]} -gt 0 ]]; then
|
||||||
|
|
||||||
|
# Default AC profile:
|
||||||
|
# 3 profiles → performance
|
||||||
|
# 2 profiles → balanced
|
||||||
|
# 1 profile → profiles[0]
|
||||||
|
ac_profile="${profiles[2]:-${profiles[1]:-${profiles[0]}}}"
|
||||||
|
|
||||||
|
# Default Battery profile:
|
||||||
|
# 3 profiles → balanced
|
||||||
|
# 2 profiles → balanced
|
||||||
|
# 1 profile → profiles[0]
|
||||||
|
battery_profile="${profiles[1]:-${profiles[0]}}"
|
||||||
|
|
||||||
|
cat <<EOF | sudo tee "/etc/udev/rules.d/99-power-profile.rules"
|
||||||
|
SUBSYSTEM=="power_supply", ATTR{type}=="Mains", ATTR{online}=="0", RUN+="/usr/bin/powerprofilesctl set $battery_profile"
|
||||||
|
SUBSYSTEM=="power_supply", ATTR{type}=="Mains", ATTR{online}=="1", RUN+="/usr/bin/powerprofilesctl set $ac_profile"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
sudo udevadm control --reload
|
||||||
|
sudo udevadm trigger --subsystem-match=power_supply
|
||||||
|
fi
|
||||||
|
fi
|
||||||
@@ -1,10 +1,8 @@
|
|||||||
if ls /sys/class/power_supply/BAT* &>/dev/null; then
|
if omarchy-battery-present; then
|
||||||
# This computer runs on a battery
|
|
||||||
powerprofilesctl set balanced || true
|
powerprofilesctl set balanced || true
|
||||||
|
|
||||||
# Enable battery monitoring timer for low battery notifications
|
# Enable battery monitoring timer for low battery notifications
|
||||||
systemctl --user enable --now omarchy-battery-monitor.timer
|
systemctl --user enable --now omarchy-battery-monitor.timer
|
||||||
else
|
else
|
||||||
# This computer runs on power outlet
|
|
||||||
powerprofilesctl set performance || true
|
powerprofilesctl set performance || true
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ bluetui
|
|||||||
bolt
|
bolt
|
||||||
brightnessctl
|
brightnessctl
|
||||||
btop
|
btop
|
||||||
|
chromium
|
||||||
clang
|
clang
|
||||||
cups
|
cups
|
||||||
cups-browsed
|
cups-browsed
|
||||||
@@ -87,7 +88,6 @@ nss-mdns
|
|||||||
nvim
|
nvim
|
||||||
obs-studio
|
obs-studio
|
||||||
obsidian
|
obsidian
|
||||||
omarchy-chromium
|
|
||||||
omarchy-nvim
|
omarchy-nvim
|
||||||
omarchy-walker
|
omarchy-walker
|
||||||
opencode
|
opencode
|
||||||
@@ -144,5 +144,4 @@ xmlstarlet
|
|||||||
xournalpp
|
xournalpp
|
||||||
yaru-icon-theme
|
yaru-icon-theme
|
||||||
yay
|
yay
|
||||||
yq
|
|
||||||
zoxide
|
zoxide
|
||||||
|
|||||||
@@ -19,5 +19,5 @@ if [[ -n ${OMARCHY_ONLINE_INSTALL:-} ]]; then
|
|||||||
|
|
||||||
|
|
||||||
# Refresh all repos
|
# Refresh all repos
|
||||||
sudo pacman -Syu --noconfirm
|
sudo pacman -Syyu --noconfirm
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
echo "Migrate to new theme setup"
|
echo "Migrate to new theme setup"
|
||||||
|
|
||||||
omarchy-pkg-add yq
|
|
||||||
|
|
||||||
# Move user-added backgrounds from Omarchy theme folders to user config
|
# Move user-added backgrounds from Omarchy theme folders to user config
|
||||||
OMARCHY_DIR="$HOME/.local/share/omarchy"
|
OMARCHY_DIR="$HOME/.local/share/omarchy"
|
||||||
USER_BACKGROUNDS_DIR="$HOME/.config/omarchy/backgrounds"
|
USER_BACKGROUNDS_DIR="$HOME/.config/omarchy/backgrounds"
|
||||||
|
|||||||
14
migrations/1768270644.sh
Executable file
14
migrations/1768270644.sh
Executable file
@@ -0,0 +1,14 @@
|
|||||||
|
echo "Add icon for headset audio profile in Waybar"
|
||||||
|
|
||||||
|
if ! grep -q '"headset": ""' "$HOME/.config/waybar/config.jsonc"; then
|
||||||
|
sed -i '
|
||||||
|
/"pulseaudio": {/,/^[ ]*}/{
|
||||||
|
/"format-icons": {/,/^[ ]*}/{
|
||||||
|
/"default":/i\
|
||||||
|
\ "headset": "",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
' "$HOME/.config/waybar/config.jsonc"
|
||||||
|
|
||||||
|
omarchy-restart-waybar
|
||||||
|
fi
|
||||||
19
migrations/1768906440.sh
Normal file
19
migrations/1768906440.sh
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
echo "Migrate legacy mobile NVIDIA GPUs to nvidia-580xx driver (if needed)"
|
||||||
|
|
||||||
|
# Only migrate MX1xx, 2xx or 3xx (Pascal/Maxwell)
|
||||||
|
NVIDIA="$(lspci | grep -i 'nvidia')"
|
||||||
|
if echo "$NVIDIA" | grep -qE "MX1|MX2|MX3"; then
|
||||||
|
if ! pacman -Qq | grep -qE '^linux(-[a-z0-9]+)?-headers$'; then
|
||||||
|
echo "Error: no linux headers package installed (required for DKMS drivers). Please install the appropriate headers and re-run this migration."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Piping yes to override existing packages
|
||||||
|
yes | sudo pacman -S nvidia-580xx-dkms nvidia-580xx-utils lib32-nvidia-580xx-utils
|
||||||
|
|
||||||
|
# Verify packages were installed
|
||||||
|
if ! pacman -Qq nvidia-580xx-dkms nvidia-580xx-utils lib32-nvidia-580xx-utils &>/dev/null; then
|
||||||
|
echo "Error: NVIDIA 580xx driver packages failed to install"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
9
migrations/1768916735.sh
Normal file
9
migrations/1768916735.sh
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
echo "Fix microphone gain and audio mixing on Asus ROG laptops"
|
||||||
|
|
||||||
|
source "$OMARCHY_PATH/install/config/hardware/fix-asus-rog-mic.sh"
|
||||||
|
source "$OMARCHY_PATH/install/config/hardware/fix-asus-rog-audio-mixer.sh"
|
||||||
|
|
||||||
|
if [[ "$(cat /sys/class/dmi/id/sys_vendor 2>/dev/null)" == "ASUSTeK COMPUTER INC." ]] &&
|
||||||
|
grep -q "ROG" /sys/class/dmi/id/product_family 2>/dev/null; then
|
||||||
|
omarchy-restart-pipewire
|
||||||
|
fi
|
||||||
4
migrations/1769182209.sh
Normal file
4
migrations/1769182209.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
echo "Enable auto-pasting for the emoji picker"
|
||||||
|
|
||||||
|
omarchy-refresh-config elephant/symbols.toml
|
||||||
|
omarchy-restart-walker
|
||||||
5
migrations/1769510847.sh
Normal file
5
migrations/1769510847.sh
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
echo "Switch back to mainline chromium now that it supports full live themeing"
|
||||||
|
|
||||||
|
omarchy-pkg-drop omarchy-chromium
|
||||||
|
omarchy-pkg-add chromium
|
||||||
|
omarchy-theme-set-browser
|
||||||
3
migrations/1769566732.sh
Executable file
3
migrations/1769566732.sh
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
echo "Set Power Profiles Rules when plugged in (balanced) and unplugged (power-saver)"
|
||||||
|
|
||||||
|
source $OMARCHY_PATH/install/config/powerprofilesctl-rules.sh
|
||||||
3
migrations/1769619823.sh
Normal file
3
migrations/1769619823.sh
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
echo "Open directories in file manager using the shell open command"
|
||||||
|
|
||||||
|
xdg-mime default org.gnome.Nautilus.desktop inode/directory
|
||||||
2
themes/catppuccin/waybar.css
Normal file
2
themes/catppuccin/waybar.css
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
@define-color foreground #cdd6f4;
|
||||||
|
@define-color background #181824;
|
||||||
BIN
themes/miasma/backgrounds/01-miasma.jpg
Normal file
BIN
themes/miasma/backgrounds/01-miasma.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 653 KiB |
BIN
themes/miasma/backgrounds/02-miasma.jpg
Normal file
BIN
themes/miasma/backgrounds/02-miasma.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 983 KiB |
70
themes/miasma/btop.theme
Normal file
70
themes/miasma/btop.theme
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
# Main background, empty for terminal default, need to be empty if you want transparent background
|
||||||
|
theme[main_bg]="#222222"
|
||||||
|
|
||||||
|
# Main text color
|
||||||
|
theme[main_fg]="#c2c2b0"
|
||||||
|
|
||||||
|
# Title color for boxes
|
||||||
|
theme[title]="#bb7744"
|
||||||
|
|
||||||
|
# Highlight color for keyboard shortcuts
|
||||||
|
theme[hi_fg]="#c9a554"
|
||||||
|
|
||||||
|
# Background color of selected item in processes box
|
||||||
|
theme[selected_bg]="#e4c47a"
|
||||||
|
|
||||||
|
# Foreground color of selected item in processes box
|
||||||
|
theme[selected_fg]="#000000"
|
||||||
|
|
||||||
|
# Color of inactive/disabled text
|
||||||
|
theme[inactive_fg]="#666666"
|
||||||
|
|
||||||
|
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
||||||
|
theme[proc_misc]="#bb7744"
|
||||||
|
|
||||||
|
# Box outline and divider line color
|
||||||
|
theme[cpu_box]="#5f875f"
|
||||||
|
theme[mem_box]="#5f875f"
|
||||||
|
theme[net_box]="#5f875f"
|
||||||
|
theme[proc_box]="#5f875f"
|
||||||
|
theme[div_line]="#666666"
|
||||||
|
|
||||||
|
# Gradient for all meters and graphs
|
||||||
|
theme[temp_start]="#c9a554"
|
||||||
|
theme[temp_mid]="#78824b"
|
||||||
|
theme[temp_end]="#5f875f"
|
||||||
|
|
||||||
|
|
||||||
|
theme[cpu_start]="#c9a554"
|
||||||
|
theme[cpu_mid]="#78824b"
|
||||||
|
theme[cpu_end]="#5f875f"
|
||||||
|
|
||||||
|
|
||||||
|
theme[free_start]="#78824b"
|
||||||
|
theme[free_mid]="#b36d43"
|
||||||
|
theme[free_end]="#b36d43"
|
||||||
|
|
||||||
|
|
||||||
|
theme[cached_start]="#b36d43"
|
||||||
|
theme[cached_mid]="#b36d43"
|
||||||
|
theme[cached_end]="#b36d43"
|
||||||
|
|
||||||
|
|
||||||
|
theme[available_start]="#c9a554"
|
||||||
|
theme[available_mid]="#c9a554"
|
||||||
|
theme[available_end]="#c9a554"
|
||||||
|
|
||||||
|
|
||||||
|
theme[used_start]="#5f875f"
|
||||||
|
theme[used_mid]="#5f875f"
|
||||||
|
theme[used_end]="#5f875f"
|
||||||
|
|
||||||
|
|
||||||
|
theme[download_start]="#b36d43"
|
||||||
|
theme[download_mid]="#c9a554"
|
||||||
|
theme[download_end]="#78824b"
|
||||||
|
|
||||||
|
|
||||||
|
theme[upload_start]="#b36d43"
|
||||||
|
theme[upload_mid]="#c9a554"
|
||||||
|
theme[upload_end]="#78824b"
|
||||||
23
themes/miasma/colors.toml
Normal file
23
themes/miasma/colors.toml
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
accent = "#78824b"
|
||||||
|
cursor = "#c7c7c7"
|
||||||
|
foreground = "#c2c2b0"
|
||||||
|
background = "#222222"
|
||||||
|
selection_foreground = "#c2c2b0"
|
||||||
|
selection_background = "#78824b"
|
||||||
|
|
||||||
|
color0 = "#000000"
|
||||||
|
color1 = "#685742"
|
||||||
|
color2 = "#5f875f"
|
||||||
|
color3 = "#b36d43"
|
||||||
|
color4 = "#78824b"
|
||||||
|
color5 = "#bb7744"
|
||||||
|
color6 = "#c9a554"
|
||||||
|
color7 = "#d7c483"
|
||||||
|
color8 = "#666666"
|
||||||
|
color9 = "#685742"
|
||||||
|
color10 = "#5f875f"
|
||||||
|
color11 = "#b36d43"
|
||||||
|
color12 = "#78824b"
|
||||||
|
color13 = "#bb7744"
|
||||||
|
color14 = "#c9a554"
|
||||||
|
color15 = "#d7c483"
|
||||||
1
themes/miasma/icons.theme
Normal file
1
themes/miasma/icons.theme
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Yaru-wartybrown
|
||||||
88
themes/miasma/neovim.lua
Normal file
88
themes/miasma/neovim.lua
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"xero/miasma.nvim",
|
||||||
|
priority = 1000,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"LazyVim/LazyVim",
|
||||||
|
opts = {
|
||||||
|
colorscheme = "miasma",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
-- local function has_miasma_in_user_plugins()
|
||||||
|
-- local plugins_dir = vim.fn.expand("~/.config/nvim/lua/plugins")
|
||||||
|
-- if vim.fn.isdirectory(plugins_dir) ~= 1 then
|
||||||
|
-- return false
|
||||||
|
-- end
|
||||||
|
-- local plugin_files = vim.fn.glob(plugins_dir .. "/**/*.lua", true, true)
|
||||||
|
-- for _, file in ipairs(plugin_files) do
|
||||||
|
-- local ok, lines = pcall(vim.fn.readfile, file)
|
||||||
|
-- if ok then
|
||||||
|
-- for _, line in ipairs(lines) do
|
||||||
|
-- if line:find("xero/miasma.nvim", 1, true) then
|
||||||
|
-- return true
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- return false
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- if has_miasma_in_user_plugins() then
|
||||||
|
-- return {
|
||||||
|
-- {
|
||||||
|
-- "xero/miasma.nvim",
|
||||||
|
-- lazy = false,
|
||||||
|
-- priority = 1000,
|
||||||
|
-- config = function()
|
||||||
|
-- vim.cmd("colorscheme miasma")
|
||||||
|
-- end,
|
||||||
|
-- },
|
||||||
|
-- }
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- return {
|
||||||
|
-- {
|
||||||
|
-- "bjarneo/aether.nvim",
|
||||||
|
-- name = "aether",
|
||||||
|
-- priority = 1000,
|
||||||
|
-- opts = {
|
||||||
|
-- disable_italics = false,
|
||||||
|
-- colors = {
|
||||||
|
-- -- Monotone shades (base00-base07)
|
||||||
|
-- base00 = "#222222", -- Default background
|
||||||
|
-- base01 = "#666666", -- Lighter background (status bars)
|
||||||
|
-- base02 = "#e4c47a", -- Selection background
|
||||||
|
-- base03 = "#666666", -- Comments, invisibles
|
||||||
|
-- base04 = "#c2c2b0", -- Dark foreground
|
||||||
|
-- base05 = "#c2c2b0", -- Default foreground
|
||||||
|
-- base06 = "#d7c483", -- Light foreground
|
||||||
|
-- base07 = "#d7c483", -- Light background
|
||||||
|
--
|
||||||
|
-- -- Accent colors (base08-base0F)
|
||||||
|
-- base08 = "#685742", -- Variables, errors, red
|
||||||
|
-- base09 = "#685742", -- Integers, constants, orange
|
||||||
|
-- base0A = "#b36d43", -- Classes, types, yellow
|
||||||
|
-- base0B = "#5f875f", -- Strings, green
|
||||||
|
-- base0C = "#c9a554", -- Support, regex, cyan
|
||||||
|
-- base0D = "#78824b", -- Functions, keywords, blue
|
||||||
|
-- base0E = "#bb7744", -- Keywords, storage, magenta
|
||||||
|
-- base0F = "#b36d43", -- Deprecated, brown/yellow
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- config = function(_, opts)
|
||||||
|
-- require("aether").setup(opts)
|
||||||
|
-- vim.cmd.colorscheme("aether")
|
||||||
|
--
|
||||||
|
-- -- Enable hot reload
|
||||||
|
-- require("aether.hotreload").setup()
|
||||||
|
-- end,
|
||||||
|
-- },
|
||||||
|
-- {
|
||||||
|
-- "LazyVim/LazyVim",
|
||||||
|
-- opts = {
|
||||||
|
-- colorscheme = "aether",
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- }
|
||||||
BIN
themes/miasma/preview.png
Normal file
BIN
themes/miasma/preview.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 506 KiB |
4
themes/miasma/vscode.json
Normal file
4
themes/miasma/vscode.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"name": "In The Fog Dark",
|
||||||
|
"extension": "ganevru.in-the-fog-theme"
|
||||||
|
}
|
||||||
BIN
themes/tokyo-night/backgrounds/0-swirl-buck.jpg
Normal file
BIN
themes/tokyo-night/backgrounds/0-swirl-buck.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.8 MiB |
Reference in New Issue
Block a user