Merge branch 'omarchy-4' into quattro

This commit is contained in:
David Heinemeier Hansson
2026-06-08 16:28:52 +02:00
1326 changed files with 61383 additions and 11210 deletions
-28
View File
@@ -1,28 +0,0 @@
echo "Add UWSM env"
export OMARCHY_PATH="$HOME/.local/share/omarchy"
export PATH="$OMARCHY_PATH/bin:$PATH"
mkdir -p "$HOME/.config/uwsm/"
cat <<EOF | tee "$HOME/.config/uwsm/env"
export OMARCHY_PATH=$HOME/.local/share/omarchy
export PATH=$OMARCHY_PATH/bin/:$PATH
EOF
# Ensure we have the latest repos and are ready to pull
omarchy-update-keyring
omarchy-refresh-pacman
sudo systemctl restart systemd-timesyncd
sudo pacman -Sy # Normally not advisable, but we'll do a full -Syu before finishing
mkdir -p ~/.local/state/omarchy/migrations
touch ~/.local/state/omarchy/migrations/1751134560.sh
# Remove old AUR packages to prevent a super lengthy build on old Omarchy installs
omarchy-pkg-drop zoom qt5-remoteobjects wf-recorder wl-screenrec
# Get rid of old AUR packages
bash $OMARCHY_PATH/migrations/1756060611.sh
touch ~/.local/state/omarchy/migrations/1756060611.sh
bash omarchy-update-perform
-5
View File
@@ -1,5 +0,0 @@
echo "Ensure all indexes and packages are up to date"
omarchy-update-keyring
omarchy-refresh-pacman
sudo pacman -Syu --noconfirm
-3
View File
@@ -1,3 +0,0 @@
echo "Remove obsolete gcc14 AUR package that takes eons to update"
omarchy-pkg-drop gcc14
-3
View File
@@ -1,3 +0,0 @@
echo "Ensure the Arch keyring is up to date"
omarchy-update-keyring
-8
View File
@@ -1,8 +0,0 @@
# Turn on bluetooth service so blueberry or bluetui works out the box
echo "Let's turn on Bluetooth service so the controls work"
if systemctl is-enabled --quiet bluetooth.service && systemctl is-active --quiet bluetooth.service; then
# Bluetooth is already enabled, nothing to change
:
else
sudo systemctl enable --now bluetooth.service
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Add missing installation of bat (used by the ff alias)"
omarchy-pkg-add bat
-3
View File
@@ -1,3 +0,0 @@
echo "Installing missing fd terminal tool for finding files"
omarchy-pkg-add fd
-22
View File
@@ -1,22 +0,0 @@
echo "Switching from vlc to mpv for the default video player"
if omarchy-cmd-missing mpv; then
omarchy-pkg-drop vlc
rm ~/.local/share/applications/vlc.desktop
omarchy-pkg-add mpv
xdg-mime default mpv.desktop video/mp4
xdg-mime default mpv.desktop video/x-msvideo
xdg-mime default mpv.desktop video/x-matroska
xdg-mime default mpv.desktop video/x-flv
xdg-mime default mpv.desktop video/x-ms-wmv
xdg-mime default mpv.desktop video/mpeg
xdg-mime default mpv.desktop video/ogg
xdg-mime default mpv.desktop video/webm
xdg-mime default mpv.desktop video/quicktime
xdg-mime default mpv.desktop video/3gpp
xdg-mime default mpv.desktop video/3gpp2
xdg-mime default mpv.desktop video/x-ms-asf
xdg-mime default mpv.desktop video/x-ogm+ogg
xdg-mime default mpv.desktop video/x-theora+ogg
xdg-mime default mpv.desktop application/ogg
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Ensure Docker config is set"
if [[ ! -f /etc/docker/daemon.json ]]; then
sudo mkdir -p /etc/docker
echo '{"log-driver":"json-file","log-opts":{"max-size":"10m","max-file":"5"}}' | sudo tee /etc/docker/daemon.json
fi
-4
View File
@@ -1,4 +0,0 @@
echo "Add LocalSend as new default application"
omarchy-pkg-drop localsend-bin
omarchy-pkg-add localsend
-3
View File
@@ -1,3 +0,0 @@
echo "Install ffmpegthumbnailer for video thumbnails in the file manager"
omarchy-pkg-add ffmpegthumbnailer
-3
View File
@@ -1,3 +0,0 @@
echo "Install bash-completion"
omarchy-pkg-add bash-completion
-6
View File
@@ -1,6 +0,0 @@
echo "Install Impala as new wifi selection TUI"
if omarchy-cmd-missing impala; then
omarchy-pkg-add impala
omarchy-refresh-waybar
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Permanently fix F-keys on Apple-mode keyboards (like Lofree Flow84)"
source $OMARCHY_PATH/install/config/hardware/fix-fkeys.sh
-3
View File
@@ -1,3 +0,0 @@
echo "Adding gnome-keyring to make 1password work with 2FA codes"
omarchy-pkg-add gnome-keyring
-4
View File
@@ -1,4 +0,0 @@
echo "Install Plymouth splash screen"
omarchy-pkg-add uwsm plymouth
source "$OMARCHY_PATH/install/login/plymouth.sh"
-9
View File
@@ -1,9 +0,0 @@
echo "Switching to polkit-gnome for better fingerprint authentication compatibility"
if ! command -v /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &>/dev/null; then
sudo pacman -S --noconfirm --needed polkit-gnome
systemctl --user stop hyprpolkitagent
systemctl --user disable hyprpolkitagent
sudo pacman -Rns --noconfirm hyprpolkitagent
setsid /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
fi
-10
View File
@@ -1,10 +0,0 @@
echo "Enable battery low notifications for laptops"
if ls /sys/class/power_supply/BAT* &>/dev/null && [[ ! -f ~/.local/share/omarchy/config/systemd/user/omarchy-battery-monitor.service ]]; then
mkdir -p ~/.config/systemd/user
cp ~/.local/share/omarchy/config/systemd/user/omarchy-battery-monitor.* ~/.config/systemd/user/
systemctl --user daemon-reload
systemctl --user enable --now omarchy-battery-monitor.timer || true
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Update chromium.desktop to ensure we are always using wayland"
xdg-settings set default-web-browser chromium.desktop
xdg-mime default chromium.desktop x-scheme-handler/http
xdg-mime default chromium.desktop x-scheme-handler/https
-19
View File
@@ -1,19 +0,0 @@
echo "Update to use UWSM and seamless login"
if omarchy-cmd-missing uwsm; then
sudo rm -f /etc/systemd/system/getty@tty1.service.d/override.conf
sudo rmdir /etc/systemd/system/getty@tty1.service.d/ 2>/dev/null || true
if [[ -f $HOME/.bash_profile ]]; then
# Remove the specific line
sed -i '/^\[\[ -z \$DISPLAY && \$(tty) == \/dev\/tty1 \]\] && exec Hyprland$/d' "$HOME/.bash_profile"
echo "Cleaned up .bash_profile"
fi
if [[ -f $HOME/.config/environment.d/fcitx.conf ]]; then
echo "Removing GTK_IM_MODULE from fcitx config for Wayland..."
sed -i 's/^GTK_IM_MODULE=fcitx$//' "$HOME/.config/environment.d/fcitx.conf"
fi
source $OMARCHY_PATH/install/login/plymouth.sh
fi
-7
View File
@@ -1,7 +0,0 @@
echo "Set a default fontconfig"
if [[ ! -f $HOME/.config/fontconfig/fonts.conf ]]; then
mkdir -p ~/.config/fontconfig
cp ~/.local/share/omarchy/config/fontconfig/fonts.conf ~/.config/fontconfig/
fc-cache -fv
fi
-9
View File
@@ -1,9 +0,0 @@
echo "Setting up GPG configuration with multiple keyservers for better reliability"
if [[ ! -f /etc/gnupg/dirmngr.conf ]]; then
sudo mkdir -p /etc/gnupg
sudo cp ~/.local/share/omarchy/default/gpg/dirmngr.conf /etc/gnupg/
sudo chmod 644 /etc/gnupg/dirmngr.conf
sudo gpgconf --kill dirmngr || true
sudo gpgconf --launch dirmngr || true
fi
-4
View File
@@ -1,4 +0,0 @@
echo "Add color and animation to pacman installs"
grep -q '^Color' /etc/pacman.conf || sudo sed -i '/^\[options\]/a Color' /etc/pacman.conf
grep -q '^ILoveCandy' /etc/pacman.conf || sudo sed -i '/^\[options\]/a ILoveCandy' /etc/pacman.conf
-5
View File
@@ -1,5 +0,0 @@
echo "Add new matte black theme"
if [[ ! -L $HOME/.config/omarchy/themes/matte-black ]]; then
ln -snf ~/.local/share/omarchy/themes/matte-black ~/.config/omarchy/themes/
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Install missing docker-buildx package for out-of-the-box Kamal compatibility"
omarchy-pkg-add docker-buildx
-16
View File
@@ -1,16 +0,0 @@
echo "Make light themes possible"
if [[ -f ~/.local/share/applications/blueberry.desktop ]]; then
rm -f ~/.local/share/applications/blueberry.desktop
rm -f ~/.local/share/applications/org.pulseaudio.pavucontrol.desktop
update-desktop-database ~/.local/share/applications/
gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"
omarchy-refresh-waybar
fi
if [[ ! -L $HOME/.config/omarchy/themes/rose-pine ]]; then
ln -snf ~/.local/share/omarchy/themes/rose-pine ~/.config/omarchy/themes/
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Rename waybar config file for syntax highlighting"
if [[ -f ~/.config/waybar/config ]]; then
mv ~/.config/waybar/config ~/.config/waybar/config.jsonc
fi
-18
View File
@@ -1,18 +0,0 @@
echo "Prevent docker from requiring network readiness on boot"
if [[ ! -f /etc/systemd/system/docker.service.d/no-block-boot.conf ]]; then
sudo mkdir -p /etc/systemd/system/docker.service.d/
sudo tee /etc/systemd/system/docker.service.d/no-block-boot.conf <<'EOF'
[Unit]
DefaultDependencies=no
EOF
sudo mkdir -p /etc/systemd/system/plymouth-quit.service.d/
sudo tee /etc/systemd/system/plymouth-quit.service.d/wait-for-graphical.conf <<'EOF'
[Unit]
After=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl mask plymouth-quit-wait.service
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Add Catppuccin Latte light theme"
if [[ ! -L $HOME/.config/omarchy/themes/catppuccin-latte ]]; then
ln -snf ~/.local/share/omarchy/themes/catppuccin-latte ~/.config/omarchy/themes/
fi
-8
View File
@@ -1,8 +0,0 @@
echo "Replace volume control GUI with a TUI"
if omarchy-cmd-missing wiremix; then
omarchy-pkg-add wiremix
omarchy-pkg-drop pavucontrol
omarchy-refresh-applications
omarchy-refresh-waybar
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Remove needless fcitx5-configtool package"
omarchy-pkg-drop fcitx5-configtool
-3
View File
@@ -1,3 +0,0 @@
echo "Install satty for the new screenshot flow"
omarchy-pkg-add satty
-11
View File
@@ -1,11 +0,0 @@
echo "Replace wofi with walker as the default launcher"
if omarchy-cmd-missing walker; then
omarchy-pkg-add walker-bin libqalculate
omarchy-pkg-drop wofi
rm -rf ~/.config/wofi
mkdir -p ~/.config/walker
cp -r ~/.local/share/omarchy/config/walker/* ~/.config/walker/
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Install swayOSD to show volume status"
if omarchy-cmd-missing swayosd-server; then
omarchy-pkg-add swayosd
setsid uwsm-app -- swayosd-server &>/dev/null &
fi
-9
View File
@@ -1,9 +0,0 @@
echo "Adding SwayOSD theming"
if [[ ! -d ~/.config/swayosd ]]; then
mkdir -p ~/.config/swayosd
cp -r ~/.local/share/omarchy/config/swayosd/* ~/.config/swayosd/
pkill swayosd-server
setsid uwsm-app -- swayosd-server &>/dev/null &
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Allow updating of timezone by right-clicking on the clock (or running omarchy-cmd-tzupdate)"
if omarchy-cmd-missing tzupdate; then
bash "$OMARCHY_PATH/install/config/timezones.sh"
omarchy-refresh-waybar
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Add the new ristretto theme as an option"
if [[ ! -L ~/.config/omarchy/themes/ristretto ]]; then
ln -nfs ~/.local/share/omarchy/themes/ristretto ~/.config/omarchy/themes/
fi
-12
View File
@@ -1,12 +0,0 @@
echo "Migrate from manually downloaded fonts to font packages"
if ! pacman -Q ttf-cascadia-mono-nerd &>/dev/null; then
sudo pacman -S --noconfirm ttf-cascadia-mono-nerd
rm -rf ~/.local/share/fonts/Caskaydia*
fc-cache
fi
if ! pacman -Q ttf-ia-writer &>/dev/null; then
sudo pacman -S --noconfirm ttf-ia-writer
rm -rf ~/.local/share/fonts/iAWriterMonoS*
fc-cache
fi
-9
View File
@@ -1,9 +0,0 @@
echo "Add icon theme coloring"
if ! pacman -Q yaru-icon-theme &>/dev/null; then
sudo pacman -S --noconfirm yaru-icon-theme
if [[ -f ~/.config/omarchy/current/theme/icons.theme ]]; then
gsettings set org.gnome.desktop.interface icon-theme "$(<~/.config/omarchy/current/theme/icons.theme)"
fi
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Add hyprsunset blue light filter"
if ! command -v hyprsunset &>/dev/null; then
sudo pacman -S --noconfirm --needed hyprsunset
fi
omarchy-refresh-hyprsunset
-17
View File
@@ -1,17 +0,0 @@
echo "Enable auto-discovery of network printers"
if [[ ! -f /etc/systemd/resolved.conf.d/10-disable-multicast.conf ]]; then
omarchy-pkg-add avahi nss-mdns
# Disable multicast dns in resolved. Avahi will provide this for better network printer discovery
sudo mkdir -p /etc/systemd/resolved.conf.d
echo "[Resolve]\nMulticastDNS=no" | sudo tee /etc/systemd/resolved.conf.d/10-disable-multicast.conf
sudo systemctl enable --now avahi-daemon.service
fi
if ! grep -q '^CreateRemotePrinters Yes' /etc/cups/cups-browsed.conf; then
omarchy-pkg-add cups-browsed
# Enable automatically adding remote printers
echo 'CreateRemotePrinters Yes' | sudo tee -a /etc/cups/cups-browsed.conf
sudo systemctl enable --now cups-browsed.service
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Add support for accessing Android phone data via file manager"
omarchy-pkg-add gvfs-mtp
-5
View File
@@ -1,5 +0,0 @@
echo "Add auto-update icon to waybar when update available"
if ! grep -q "custom/update" ~/.config/waybar/config.jsonc; then
omarchy-refresh-waybar
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Update Waybar for new Omarchy menu"
if ! grep -q "" ~/.config/waybar/config.jsonc; then
omarchy-refresh-waybar
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Remove old Omarchy TUI app now that we have the Omarchy Menu"
rm -f ~/.local/share/applications/omarchy.desktop
-11
View File
@@ -1,11 +0,0 @@
echo "Offer to reorganize hyprland.conf as per new defaults"
if [[ ! -f ~/.config/hypr/autostarts.conf ]]; then
echo -e "\nOmarchy now splits default .config/hypr/hyprland.conf into sub-configs."
echo -e "Resetting to defaults will overwrite your configuration, but save it as .bak.\n"
if gum confirm "Use new default hyprland.conf config?"; then
omarchy-refresh-hyprland || true
else
echo "Left your existing configuration in place!"
fi
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Set SwayOSD max volume back to 100"
if ! grep -q "max_volume = 100" ~/.config/swayosd/config.toml; then
sed -i 's/max_volume = 150/max_volume = 100/' ~/.config/swayosd/config.toml
omarchy-restart-swayosd
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Add xmlstarlet needed for updating fonts via Omarchy menu"
omarchy-pkg-add xmlstarlet
-3
View File
@@ -1,3 +0,0 @@
echo "Fix multicast dns config for printers"
echo -e "[Resolve]\nMulticastDNS=no" | sudo tee /etc/systemd/resolved.conf.d/10-disable-multicast.conf
-7
View File
@@ -1,7 +0,0 @@
echo "Make new Osaka Jade theme available as new default"
if [[ ! -L ~/.config/omarchy/themes/osaka-jade ]]; then
rm -rf ~/.config/omarchy/themes/osaka-jade
git -C ~/.local/share/omarchy checkout -f themes/osaka-jade
ln -nfs ~/.local/share/omarchy/themes/osaka-jade ~/.config/omarchy/themes/osaka-jade
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Tune MTU probing for more reliable SSH"
echo "net.ipv4.tcp_mtu_probing=1" | sudo tee -a /etc/sysctl.d/99-sysctl.conf
-5
View File
@@ -1,5 +0,0 @@
echo "Disable systemd-networkd-wait-online"
sudo rm -rf /etc/systemd/system/systemd-networkd-wait-online.service.d/wait-for-only-one-interface.conf
sudo systemctl disable systemd-networkd-wait-online.service
sudo systemctl mask systemd-networkd-wait-online.service
-27
View File
@@ -1,27 +0,0 @@
echo "Update polkit policy to yield to fingerprint and fido2"
# If fprint exists in polkit, it was wrong and needs reset
if [[ -f /etc/pam.d/polkit-1 ]] && grep -Fq 'pam_fprintd.so' /etc/pam.d/polkit-1; then
sudo tee /etc/pam.d/polkit-1 >/dev/null <<'EOF'
auth sufficient pam_fprintd.so
auth required pam_unix.so
account required pam_unix.so
password required pam_unix.so
session required pam_unix.so
EOF
fi
# If fido2 is in sudo, it won't be in polkit either way
if grep -q pam_u2f.so /etc/pam.d/sudo && [[ -f /etc/pam.d/polkit-1 ]] && ! grep -q 'pam_u2f.so' /etc/pam.d/polkit-1; then
sudo sed -i '1i auth sufficient pam_u2f.so cue authfile=/etc/fido2/fido2' /etc/pam.d/polkit-1
elif grep -q pam_u2f.so /etc/pam.d/sudo && [[ ! -f /etc/pam.d/polkit-1 ]]; then
sudo tee /etc/pam.d/polkit-1 >/dev/null <<'EOF'
auth sufficient pam_u2f.so cue authfile=/etc/fido2/fido2
auth required pam_unix.so
account required pam_unix.so
password required pam_unix.so
session required pam_unix.so
EOF
fi
-23
View File
@@ -1,23 +0,0 @@
echo "Configure Docker to use the host's DNS resolver"
if omarchy-cmd-present docker; then
# If the daemon configuration has been changed since we wrote it, leave it as-is
ORIGINAL_CONFIG='{"log-driver":"json-file","log-opts":{"max-size":"10m","max-file":"5"}}'
NEW_CONFIG='{
"log-driver": "json-file",
"log-opts": { "max-size": "10m", "max-file": "5" },
"dns": ["172.17.0.1"],
"bip": "172.17.0.1/16"
}'
if grep -Fq "$ORIGINAL_CONFIG" /etc/docker/daemon.json 2>/dev/null; then
echo "$NEW_CONFIG" | sudo tee /etc/docker/daemon.json >/dev/null
fi
# Expose systemd-resolved to our Docker network
echo -e '[Resolve]\nDNSStubListenerExtra=172.17.0.1' | sudo tee /etc/systemd/resolved.conf.d/20-docker-dns.conf >/dev/null
sudo systemctl restart systemd-resolved
sudo systemctl restart docker
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Increase sudo attempts limit to 10"
source $OMARCHY_PATH/install/config/increase-sudo-tries.sh
-31
View File
@@ -1,31 +0,0 @@
echo "Reset DNS configuration to DHCP (remove forced Cloudflare DNS)"
# Reset DNS to use DHCP by default instead of forcing Cloudflare
# This preserves local development environments (.local domains, etc.)
# Users can still opt-in to Cloudflare DNS using: omarchy-setup-dns cloudflare
if [[ -f /etc/systemd/resolved.conf ]]; then
# Backup current config with timestamp
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/systemd/resolved.conf "/etc/systemd/resolved.conf.bak.${backup_timestamp}"
# Remove explicit DNS entries to use DHCP
sudo sed -i '/^DNS=/d' /etc/systemd/resolved.conf
sudo sed -i '/^FallbackDNS=/d' /etc/systemd/resolved.conf
# Add empty DNS entries to ensure DHCP is used
echo "DNS=" | sudo tee -a /etc/systemd/resolved.conf >/dev/null
echo "FallbackDNS=" | sudo tee -a /etc/systemd/resolved.conf >/dev/null
# Remove any forced DNS config from systemd-networkd
if [[ -f /etc/systemd/network/99-omarchy-dns.network ]]; then
sudo rm -f /etc/systemd/network/99-omarchy-dns.network
sudo systemctl restart systemd-networkd
fi
# Restart systemd-resolved to apply changes
sudo systemctl restart systemd-resolved
echo "DNS configuration reset to use DHCP (router DNS)"
echo "To use Cloudflare DNS, run: omarchy-setup-dns Cloudflare"
fi
-9
View File
@@ -1,9 +0,0 @@
echo "Ensure fcitx5 does not overwrite xkb layout"
FCITX5_CONF_DIR="$HOME/.config/fcitx5/conf"
FCITX5_XCB_CONF="$FCITX5_CONF_DIR/xcb.conf"
if [[ ! -f $FCITX5_XCB_CONF ]]; then
mkdir -p "$FCITX5_CONF_DIR"
cp "$OMARCHY_PATH/config/fcitx5/conf/xcb.conf" "$FCITX5_XCB_CONF"
fi
-4
View File
@@ -1,4 +0,0 @@
echo "Change behaviour of XF86PowerOff button to show omarchy system menu insead of shutting down immediately"
source $OMARCHY_PATH/install/config/hardware/ignore-power-button.sh
setsid systemd-inhibit --what=handle-power-key --why="Temporary disable power button before restart" sleep infinity &
-5
View File
@@ -1,5 +0,0 @@
echo "Add .config/brave-flags.conf by default to ensure Brave runs under Wayland"
if [[ ! -f ~/.config/brave-flags.conf ]]; then
cp $OMARCHY_PATH/config/brave-flags.conf ~/.config/
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Add minimal starship prompt to terminal"
if omarchy-cmd-missing starship; then
omarchy-pkg-add starship
cp $OMARCHY_PATH/config/starship.toml ~/.config/starship.toml
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Ensure TTE and dependencies are installed"
omarchy-pkg-add python-poetry-core python-terminaltexteffects
-3
View File
@@ -1,3 +0,0 @@
echo "Add potentially missing dependency for power profile controls"
omarchy-pkg-add python-gobject
-3
View File
@@ -1,3 +0,0 @@
echo "Disable USB autosuspend"
bash "$OMARCHY_PATH/install/config/hardware/usb-autosuspend.sh"
-21
View File
@@ -1,21 +0,0 @@
#!/bin/bash
echo "Migrating to use omarchy-launch-webapp and omarchy-launch-browser"
for desktop_file in ~/.local/share/applications/*.desktop; do
if grep -q 'Exec=chromium --new-window --ozone-platform=wayland --app=' "$desktop_file"; then
url=$(grep '^Exec=' "$desktop_file" | sed -n 's/.*--app="\?\([^"]*\)"\?.*/\1/p')
if [[ -n $url ]]; then
sed -i "s|^Exec=.*|Exec=omarchy-launch-webapp \"$url\"|" "$desktop_file"
fi
fi
done
echo "Updating Hyprland bindings"
HYPR_BINDINGS_FILE="$HOME/.config/hypr/bindings.conf"
if [[ -f $HYPR_BINDINGS_FILE ]]; then
sed -i 's/\$browser =.*chromium.*$/\$browser = omarchy-launch-browser/' "$HYPR_BINDINGS_FILE"
sed -i 's/\$webapp="/omarchy-launch-webapp "/g' "$HYPR_BINDINGS_FILE"
sed -i '/^\$webapp = \$browser --app/d' "$HYPR_BINDINGS_FILE"
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Ensure latest uwsm is installed"
sudo pacman -Syu --noconfirm uwsm
-4
View File
@@ -1,4 +0,0 @@
echo "Switch from lazydocker-bin to lazydocker official"
omarchy-pkg-drop lazydocker-bin
omarchy-pkg-add lazydocker
-4
View File
@@ -1,4 +0,0 @@
echo "Copy Omarchy logo to ~/.config/omarchy/branding/screensaver.txt so screensaver can be personalized"
mkdir -p ~/.config/omarchy/branding
cp $OMARCHY_PATH/logo.txt ~/.config/omarchy/branding/screensaver.txt
-5
View File
@@ -1,5 +0,0 @@
echo "Use current terminal shell cwd for new terminal working directories"
if ! grep -q "working-directory" ~/.config/hypr/bindings.conf; then
sed -i '/bindd = SUPER, RETURN, Terminal, exec, \$terminal/ s|$| --working-directory=$(omarchy-cmd-terminal-cwd)|' ~/.config/hypr/bindings.conf
fi
-6
View File
@@ -1,6 +0,0 @@
echo "Update fastfetch config with new Omarchy logo"
omarchy-refresh-config fastfetch/config.jsonc
mkdir -p ~/.config/omarchy/branding
cp $OMARCHY_PATH/icon.txt ~/.config/omarchy/branding/about.txt
-3
View File
@@ -1,3 +0,0 @@
echo "Use verbose package lists for pacman"
sudo sed -i '/^ILoveCandy$/a VerbosePkgLists' /etc/pacman.conf
-5
View File
@@ -1,5 +0,0 @@
echo "Add new Omarchy Menu icon to Waybar"
mkdir -p ~/.local/share/fonts
cp ~/.local/share/omarchy/config/omarchy.ttf ~/.local/share/fonts/
fc-cache
-19
View File
@@ -1,19 +0,0 @@
echo "Migrate AUR packages to official repos where possible"
reinstall_package_opr() {
if omarchy-pkg-present $1; then
sudo pacman -Rns --noconfirm $1
sudo pacman -S --noconfirm ${2:-$1}
fi
}
omarchy-pkg-drop yay-bin-debug
reinstall_package_opr yay-bin yay
reinstall_package_opr obsidian-bin obsidian
reinstall_package_opr localsend-bin localsend
reinstall_package_opr omarchy-chromium-bin omarchy-chromium
reinstall_package_opr python-terminaltexteffects
reinstall_package_opr tzupdate
reinstall_package_opr typora
reinstall_package_opr ttf-ia-writer
-6
View File
@@ -1,6 +0,0 @@
echo "Replace buggy native Zoom client with webapp"
if omarchy-pkg-present zoom; then
omarchy-pkg-drop zoom
omarchy-webapp-install "Zoom" https://app.zoom.us/wc/home https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/zoom.png
fi
-10
View File
@@ -1,10 +0,0 @@
echo "Checking and correcting Snapper configs if needed"
if command -v snapper &>/dev/null; then
if ! sudo snapper list-configs 2>/dev/null | grep -q "root"; then
sudo snapper -c root create-config /
fi
if ! sudo snapper list-configs 2>/dev/null | grep -q "home"; then
sudo snapper -c home create-config /home
fi
fi
-5
View File
@@ -1,5 +0,0 @@
echo "Remove old About, Activity, Audio Settings apps that are in Omarchy Menu or hotkey"
rm -f ~/.local/share/applications/About.desktop
rm -f ~/.local/share/applications/Activity.desktop
rm -f ~/.local/share/applications/wiremix.desktop
-7
View File
@@ -1,7 +0,0 @@
echo "Symlink files needed for Nautilus navigation icons"
sudo ln -snf /usr/share/icons/Adwaita/symbolic/actions/go-previous-symbolic.svg /usr/share/icons/Yaru/scalable/actions/go-previous-symbolic.svg
sudo ln -snf /usr/share/icons/Adwaita/symbolic/actions/go-next-symbolic.svg /usr/share/icons/Yaru/scalable/actions/go-next-symbolic.svg
sudo gtk-update-icon-cache /usr/share/icons/Yaru
pkill -x nautilus || true
-3
View File
@@ -1,3 +0,0 @@
echo "Remove no-longer-needed sudoless package listing updates"
sudo rm -f /etc/sudoers.d/repositories
-4
View File
@@ -1,4 +0,0 @@
echo "Move Omarchy Package Repository after Arch core/extra/multilib and remove AUR"
omarchy-refresh-pacman
sudo pacman -Syu --noconfirm
-3
View File
@@ -1,3 +0,0 @@
echo "Stop restarting waybar on unlock to see if we have solved the stacking problem for good"
omarchy-refresh-hypridle
-7
View File
@@ -1,7 +0,0 @@
echo "Remove any Chaotic-AUR infrastructure packages"
omarchy-pkg-drop chaotic-keyring chaotic-mirrorlist
if sudo pacman-key --list-keys 3056513887B78AEB >/dev/null 2>&1; then
sudo pacman-key --delete 3056513887B78AEB
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Use new Omarchy mirror as default"
omarchy-refresh-pacman
-3
View File
@@ -1,3 +0,0 @@
echo "Add back ttf-ia-writer if it was missing"
omarchy-pkg-add ttf-ia-writer
-6
View File
@@ -1,6 +0,0 @@
echo "Removing UseDNS=no from network files to fix DNS issue"
for file in /etc/systemd/network/*.network; do
[[ -f $file ]] || continue
sudo sed -i '/^UseDNS=no/d' "$file"
done
-5
View File
@@ -1,5 +0,0 @@
echo "Remove opacity from alacritty.toml so Hyprland can control fully"
if [[ -f ~/.config/alacritty/alacritty.toml ]]; then
sed -i '/opacity = 0.98/d' ~/.config/alacritty/alacritty.toml
fi
-4
View File
@@ -1,4 +0,0 @@
echo "Replace JetBrains Mono font with the Nerd Font edition"
omarchy-pkg-add ttf-jetbrains-mono-nerd
omarchy-pkg-drop ttf-jetbrains-mono
-3
View File
@@ -1,3 +0,0 @@
echo "Add Samba network drive support to the file manager"
omarchy-pkg-add gvfs-smb
-3
View File
@@ -1,3 +0,0 @@
echo "Ensure qt5-wayland is installed so KeepassXC, Nextcloud, Sqlite Browser, and other apps display correctly"
omarchy-pkg-add qt5-wayland
-3
View File
@@ -1,3 +0,0 @@
echo "Fix audio input on AMD Framework laptops"
source $OMARCHY_PATH/install/config/hardware/framework/fix-f13-amd-audio-input.sh || true
-5
View File
@@ -1,5 +0,0 @@
echo "Fix JetBrains font setting"
if [[ $(omarchy-font-current) == JetBrains* ]]; then
omarchy-font-set "JetBrainsMono Nerd Font"
fi
-11
View File
@@ -1,11 +0,0 @@
echo "Enable UFW systemd service for existing installations"
if omarchy-cmd-present ufw; then
if sudo ufw status | grep -q "Status: active\|22/tcp\|53317"; then
if ! systemctl is-enabled ufw >/dev/null 2>&1; then
sudo systemctl enable ufw --now
echo "UFW systemd service enabled"
fi
fi
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Install Copy URL extension for Chromium"
omarchy-refresh-chromium
-7
View File
@@ -1,7 +0,0 @@
echo "Create managed policy directories for Chromium and Brave for theme switching"
sudo mkdir -p /etc/chromium/policies/managed
sudo chmod a+rw /etc/chromium/policies/managed
sudo mkdir -p /etc/brave/policies/managed
sudo chmod a+rw /etc/brave/policies/managed
-6
View File
@@ -1,6 +0,0 @@
echo "Add locale to the waybar clock format"
sed -i \
-e 's/{:%A %H:%M}/{:L%A %H:%M}/' \
-e 's/{:%d %B W%V %Y}/{:L%d %B W%V %Y}/' \
"$HOME/.config/waybar/config.jsonc"
-8
View File
@@ -1,8 +0,0 @@
echo "Fix DHCP DNS to allow VPN DNS override"
if [[ -f /etc/systemd/resolved.conf ]]; then
if grep -q "^DNS=$" /etc/systemd/resolved.conf && grep -q "^FallbackDNS=$" /etc/systemd/resolved.conf; then
sudo sed -i '/^DNS=$/d; /^FallbackDNS=$/d' /etc/systemd/resolved.conf
sudo systemctl restart systemd-resolved
fi
fi
-7
View File
@@ -1,7 +0,0 @@
echo "Enable mDNS resolution for existing Avahi installations"
if systemctl is-enabled avahi-daemon.service >/dev/null 2>&1; then
if ! grep -q "mdns_minimal" /etc/nsswitch.conf; then
sudo sed -i 's/^hosts:.*/hosts: mymachines mdns_minimal [NOTFOUND=return] resolve files myhostname dns/' /etc/nsswitch.conf
fi
fi
-3
View File
@@ -1,3 +0,0 @@
echo "Copy Omarchy default app icons to .local/share/icons"
source $OMARCHY_PATH/install/packaging/icons.sh
-6
View File
@@ -1,6 +0,0 @@
echo "Update Zoom webapp to handle zoommtg:// and zoomus:// protocol links"
if [[ -f ~/.local/share/applications/Zoom.desktop ]]; then
omarchy-webapp-remove Zoom
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"
fi
-4
View File
@@ -1,4 +0,0 @@
echo "6Ghz Wi-Fi + Intel graphics acceleration for existing installations"
bash "$OMARCHY_PATH/install/config/hardware/set-wireless-regdom.sh"
bash "$OMARCHY_PATH/install/config/hardware/intel/video-acceleration.sh"
-3
View File
@@ -1,3 +0,0 @@
echo "Add screen recording indicator to Waybar"
gum confirm "Replace current Waybar config (backup will be made)?" && omarchy-refresh-waybar
-2
View File
@@ -1,2 +0,0 @@
echo "Update plymouth theme to avoid freetype2 issue that broke the styled login screen"
omarchy-refresh-plymouth

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