Merge pull request #3852 from basecamp/dev

Omarchy 3.2.3
This commit is contained in:
David Heinemeier Hansson
2025-12-15 14:09:38 -08:00
committed by GitHub
54 changed files with 1549 additions and 41 deletions

View File

@@ -13,3 +13,5 @@ case "$channel" in
"dev") omarchy-branch-set "dev" && omarchy-refresh-pacman "edge" ;;
*) echo "Unknown channel: $channel"; exit 1; ;;
esac
omarchy-update -y

View File

@@ -11,20 +11,25 @@ exit_screensaver() {
exit 0
}
# Exit the screensaver on signals and input from keyboard and mouse
trap exit_screensaver SIGINT SIGTERM SIGHUP SIGQUIT
printf '\e[?1000h\e[?1003h' # Enable mouse tracking (clicks: 1000, movement: 1003)
while read -rsn1 -t 0.1; do :; done # Flush any pending input
printf '\033]11;rgb:00/00/00\007' # Set background color to black
hyprctl keyword cursor:invisible true &>/dev/null
tty=$(tty 2>/dev/null)
while true; do
tte -i ~/.config/omarchy/branding/screensaver.txt \
--frame-rate 120 --canvas-width 0 --canvas-height 0 --reuse-canvas --anchor-canvas c --anchor-text c\
--random-effect --exclude-effects dev_worm \
--no-eol --no-restore-cursor &
while pgrep -x tte >/dev/null; do
if read -n 1 -t 1 || ! screensaver_in_focus; then
while pgrep -t "${tty#/dev/}" -x tte >/dev/null; do
if read -rsn1 -t 1 || ! screensaver_in_focus; then
exit_screensaver
fi
done

View File

@@ -5,4 +5,4 @@ omarchy-pkg-add dropbox dropbox-cli libappindicator-gtk3 python-gpgme nautilus-d
echo "Starting Dropbox..."
uwsm-app -- dropbox-cli start &>/dev/null &
echo "See Dropbox icon behind hover tray in top right and right-click for setup."
echo "See Dropbox icon behind hover tray in top right and right-click for setup."

View File

@@ -3,8 +3,10 @@
default_browser=$(xdg-settings get default-web-browser)
browser_exec=$(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,~/.nix-profile,/usr}/share/applications/$default_browser 2>/dev/null | head -1)
if [[ $browser_exec =~ (firefox|zen|librewolf) ]]; then
if [[ $browser_exec =~ (firefox|zen|librewolf|mullvad) ]]; then
private_flag="--private-window"
elif [[ $browser_exec =~ edge ]]; then
private_flag="--inprivate"
else
private_flag="--incognito"
fi

View File

@@ -13,6 +13,9 @@ if [[ -f ~/.local/state/omarchy/toggles/screensaver-off ]] && [[ $1 != "force" ]
exit 1
fi
# Silently quit Walker on overlay
walker -q
focused=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true).name')
terminal=$(xdg-terminal-exec --print-id)

View File

@@ -309,11 +309,12 @@ show_install_style_menu() {
}
show_install_font_menu() {
case $(menu "Install" " Meslo LG Mono\n Fira Code\n Victor Code\n Bistream Vera Mono" "--width 350") in
case $(menu "Install" " Meslo LG Mono\n Fira Code\n Victor Code\n Bistream Vera Mono\n Iosevka" "--width 350") in
*Meslo*) install_font "Meslo LG Mono" "ttf-meslo-nerd" "MesloLGL Nerd Font" ;;
*Fira*) install_font "Fira Code" "ttf-firacode-nerd" "FiraCode Nerd Font" ;;
*Victor*) install_font "Victor Code" "ttf-victor-mono-nerd" "VictorMono Nerd Font" ;;
*Bistream*) install_font "Bistream Vera Code" "ttf-bitstream-vera-mono-nerd" "BitstromWera Nerd Font" ;;
*Iosevka*) install_font "Iosevka" "ttf-iosevka-nerd" "Iosevka Nerd Font Mono" ;;
*) show_install_menu ;;
esac
}
@@ -377,8 +378,9 @@ show_remove_menu() {
}
show_update_menu() {
case $(menu "Update" " Omarchy\n Config\n󰸌 Extra Themes\n Process\n󰇅 Hardware\n Firmware\n Password\n Timezone\n Time") in
case $(menu "Update" " Omarchy\n󰔫 Channel\n Config\n󰸌 Extra Themes\n Process\n󰇅 Hardware\n Firmware\n Password\n Timezone\n Time") in
*Omarchy*) present_terminal omarchy-update ;;
*Channel*) show_update_channel_menu ;;
*Config*) show_update_config_menu ;;
*Themes*) present_terminal omarchy-theme-update ;;
*Process*) show_update_process_menu ;;
@@ -391,6 +393,14 @@ show_update_menu() {
esac
}
show_update_channel_menu() {
case $(menu "Update channel" "🟢 Stable\n🟡 Edge\n🔴 Dev") in
*Stable*) present_terminal "omarchy-channel-set stable" ;;
*Edge*) present_terminal "omarchy-channel-set edge" ;;
*Dev*) present_terminal "omarchy-channel-set dev" ;;
*) show_update_menu ;;
esac
}
show_update_process_menu() {
case $(menu "Restart" " Hypridle\n Hyprsunset\n Swayosd\n󰌧 Walker\n󰍜 Waybar") in
*Hypridle*) omarchy-restart-hypridle ;;
@@ -434,10 +444,9 @@ show_update_password_menu() {
}
show_system_menu() {
case $(menu "System" " Lock\n󱄄 Screensaver\n󰤄 Suspend\n󰜉 Restart\n󰐥 Shutdown") in
case $(menu "System" " Lock\n󱄄 Screensaver\n󰜉 Restart\n󰐥 Shutdown") in
*Lock*) omarchy-lock-screen ;;
*Screensaver*) omarchy-launch-screensaver force ;;
*Suspend*) systemctl suspend ;;
*Restart*) omarchy-cmd-reboot ;;
*Shutdown*) omarchy-cmd-shutdown ;;
*) back_to show_main_menu ;;

View File

@@ -10,4 +10,8 @@ mkdir -p ~/.local/share/applications
cp ~/.local/share/omarchy/applications/*.desktop ~/.local/share/applications/
cp ~/.local/share/omarchy/applications/hidden/*.desktop ~/.local/share/applications/
# Refresh the webapps
bash $OMARCHY_PATH/install/packaging/icons.sh
bash $OMARCHY_PATH/install/packaging/webapps.sh
update-desktop-database ~/.local/share/applications

View File

@@ -3,6 +3,7 @@
# Ensure walker is set to autostart
mkdir -p ~/.config/autostart/
cp $OMARCHY_PATH/autostart/walker.desktop ~/.config/autostart/
systemctl --user daemon-reload
omarchy-refresh-config walker/config.toml
omarchy-refresh-config elephant/calc.toml

View File

@@ -1,8 +1,5 @@
#!/bin/bash
pkill elephant
pkill walker
# Detect if we're running as root (from pacman hook)
if [[ $EUID -eq 0 ]]; then
# Get the owner of this script to determine which user to run as
@@ -13,10 +10,9 @@ if [[ $EUID -eq 0 ]]; then
systemd-run --uid="$SCRIPT_OWNER" --setenv=XDG_RUNTIME_DIR="/run/user/$USER_UID" \
bash -c "
systemctl --user restart elephant.service
setsid walker --gapplication-service &
systemctl --user restart app-walker@autostart.service
"
else
elephant service enable 2>/dev/null
systemctl --user restart elephant.service
setsid walker --gapplication-service &
systemctl --user restart app-walker@autostart.service
fi

View File

@@ -4,7 +4,8 @@ set -e
trap 'echo ""; echo -e "\033[0;31mSomething went wrong during the update!\n\nPlease review the output above carefully, correct the error, and retry the update.\n\nIf you need assistance, get help from the community at https://omarchy.org/discord\033[0m"' ERR
if omarchy-update-confirm; then
if [[ $1 == "-y" ]] || omarchy-update-confirm; then
omarchy-update-without-idle
omarchy-snapshot create || [ $? -eq 127 ]
omarchy-update-git
omarchy-update-perform

View File

@@ -3,7 +3,7 @@
set -e
echo -e "\e[32m\nUpdate system packages\e[0m"
sudo pacman -Syu --noconfirm
sudo pacman -Syyu --noconfirm
# Update AUR packages if any are installed
if pacman -Qem >/dev/null; then

View File

@@ -0,0 +1,4 @@
#!/bin/bash
# Ensure screensaver/sleep doesn't set in during updates
hyprctl dispatch tagwindow +noidle &> /dev/null