diff --git a/bin/omarchy-menu b/bin/omarchy-menu index b4e0a822..f5179cb2 100755 --- a/bin/omarchy-menu +++ b/bin/omarchy-menu @@ -381,7 +381,7 @@ go_to_menu() { *remove*) show_remove_menu ;; *update*) show_update_menu ;; *system*) show_system_menu ;; - *about*) terminal bash -c 'fastfetch; read -n 1 -s' ;; + *about*) alacritty --class Omarchy -o font.size=9 -e bash -c 'fastfetch; read -n 1 -s' ;; esac } diff --git a/bin/omarchy-pkg-ignored b/bin/omarchy-pkg-ignored new file mode 100755 index 00000000..765fe69c --- /dev/null +++ b/bin/omarchy-pkg-ignored @@ -0,0 +1,7 @@ +#!/bin/bash + +IGNORED_PACKAGES_FILE="$OMARCHY_PATH/install/packages.ignored" + +if [[ -f $IGNORED_PACKAGES_FILE ]]; then + tr '\r\n' ',' <"$IGNORED_PACKAGES_FILE" | sed 's/,$//' +fi diff --git a/bin/omarchy-pkg-pinned b/bin/omarchy-pkg-pinned new file mode 100755 index 00000000..503d5c76 --- /dev/null +++ b/bin/omarchy-pkg-pinned @@ -0,0 +1,7 @@ +#!/bin/bash + +PINNED_PACKAGES_FILE="$OMARCHY_PATH/install/packages.pinned" + +if [[ -f $PINNED_PACKAGES_FILE ]]; then + tr '\r\n' ',' <"$PINNED_PACKAGES_FILE" | sed 's/,$//' +fi diff --git a/bin/omarchy-update-system-pkgs b/bin/omarchy-update-system-pkgs index e3a12fa5..2c41d733 100755 --- a/bin/omarchy-update-system-pkgs +++ b/bin/omarchy-update-system-pkgs @@ -1,12 +1,13 @@ #!/bin/bash echo -e "\e[32m\nUpdate system packages\e[0m" -sudo pacman -Syu --noconfirm -echo +echo "sudo pacman -Syu --noconfirm --ignore \"$(omarchy-pkg-ignored)\"" +sudo pacman -Syu --noconfirm --ignore "$(omarchy-pkg-ignored)" if omarchy-pkg-aur-accessible; then echo -e "\e[32m\nUpdate AUR packages\e[0m" - yay -Syu --noconfirm + echo "yay -Syu --noconfirm --ignore \"$(omarchy-pkg-ignored)\"" + yay -Syu --noconfirm --ignore "$(omarchy-pkg-ignored)" echo else echo -e "\e[31m\nAUR is unavailable (so skipping updates)\e[0m" diff --git a/config/fastfetch/config.jsonc b/config/fastfetch/config.jsonc index 18c8cdf9..c7a5739d 100644 --- a/config/fastfetch/config.jsonc +++ b/config/fastfetch/config.jsonc @@ -63,41 +63,14 @@ "format": "\u001b[90m┌──────────────────────Software──────────────────────┐" }, { - "type": "os", - "key": "󰣇 OS", - "keyColor": "yellow" + "type": "command", + "key": "\ue900 OS", + "keyColor": "blue", + "text": "version=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/dev/null); echo \"Omarchy $version\"" }, { "type": "kernel", "key": "│ ├", - "keyColor": "yellow" - }, - { - "type": "packages", - "key": "│ ├󰏖", - "keyColor": "yellow" - }, - { - "type": "shell", - "key": "└ └", - "keyColor": "yellow" - }, - "break", - { - "type": "command", - "key": "Ø Omarchy", - "keyColor": "blue", - "text": "version=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/dev/null); echo \"$version\"" - }, - { - "type": "command", - "key": "│ ├󰸌", - "keyColor": "blue", - "text": "theme=$(omarchy-theme-current); echo -e \"$theme \\e[38m●\\e[37m●\\e[36m●\\e[35m●\\e[34m●\\e[33m●\\e[32m●\\e[31m●\"" - }, - { - "type": "de", - "key": " DE", "keyColor": "blue" }, { @@ -105,29 +78,35 @@ "key": "│ ├", "keyColor": "blue" }, + { + "type": "de", + "key": " DE", + "keyColor": "blue" + }, + { + "type": "terminal", + "key": "│ ├", + "keyColor": "blue" + }, + { + "type": "packages", + "key": "│ ├󰏖", + "keyColor": "blue" + }, { "type": "wmtheme", "key": "│ ├󰉼", "keyColor": "blue" }, { - "type": "icons", - "key": "│ ├󰀻", - "keyColor": "blue" - }, - { - "type": "cursor", - "key": "│ ├", - "keyColor": "blue" + "type": "command", + "key": "│ ├󰸌", + "keyColor": "blue", + "text": "theme=$(omarchy-theme-current); echo -e \"$theme \\e[38m●\\e[37m●\\e[36m●\\e[35m●\\e[34m●\\e[33m●\\e[32m●\\e[31m●\"" }, { "type": "terminalfont", - "key": "│ ├", - "keyColor": "blue" - }, - { - "type": "terminal", - "key": "└ └", + "key": "└ └", "keyColor": "blue" }, { diff --git a/install.sh b/install.sh index 21ff1c0b..44e2887c 100755 --- a/install.sh +++ b/install.sh @@ -38,6 +38,7 @@ source $OMARCHY_INSTALL/config/xcompose.sh source $OMARCHY_INSTALL/config/mise-ruby.sh source $OMARCHY_INSTALL/config/docker.sh source $OMARCHY_INSTALL/config/mimetypes.sh +source $OMARCHY_INSTALL/config/localdb.sh source $OMARCHY_INSTALL/config/hardware/network.sh source $OMARCHY_INSTALL/config/hardware/fix-fkeys.sh source $OMARCHY_INSTALL/config/hardware/bluetooth.sh @@ -51,8 +52,8 @@ source $OMARCHY_INSTALL/login/plymouth.sh source $OMARCHY_INSTALL/login/limine-snapper.sh source $OMARCHY_INSTALL/login/alt-bootloaders.sh -# Updates -sudo updatedb +# Pin bad packages +sudo pacman -U --noconfirm https://pkgs.omarchy.org/x86_64/abseil-cpp-20250512.1-1-x86_64.pkg.tar.zst # Reboot clear diff --git a/install/config/localdb.sh b/install/config/localdb.sh new file mode 100644 index 00000000..73721488 --- /dev/null +++ b/install/config/localdb.sh @@ -0,0 +1,2 @@ +# Update localdb so that locate will find everything installed +sudo updatedb diff --git a/install/packages.ignored b/install/packages.ignored new file mode 100644 index 00000000..0b612e32 --- /dev/null +++ b/install/packages.ignored @@ -0,0 +1 @@ +abseil-cpp diff --git a/install/packages.pinned b/install/packages.pinned new file mode 100644 index 00000000..f349af9e --- /dev/null +++ b/install/packages.pinned @@ -0,0 +1 @@ +https://pkgs.omarchy.org/x86_64/abseil-cpp-20250512.1-1-x86_64.pkg.tar.zst diff --git a/install/packaging/pins.sh b/install/packaging/pins.sh new file mode 100755 index 00000000..bacb6165 --- /dev/null +++ b/install/packaging/pins.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +# We pin explicit packages that are bad upstream here +pinned_packages=$(omarchy-pkg-pinned) + +if [[ -n $pinned_packages ]]; then + echo -e "\e[32m\nInstall pinned system packages\e[0m" + + for pinned in $pinned_packages; do + echo "sudo pacman -U --noconfirm $pinned" + sudo pacman -U --noconfirm $pinned + done +fi diff --git a/migrations/1756208867.sh b/migrations/1756208867.sh new file mode 100644 index 00000000..5c351d6b --- /dev/null +++ b/migrations/1756208867.sh @@ -0,0 +1,3 @@ +echo "Update fastfetch config" + +omarchy-refresh-config fastfetch/config.jsonc \ No newline at end of file diff --git a/migrations/1756284863.sh b/migrations/1756284863.sh new file mode 100644 index 00000000..3e1308bd --- /dev/null +++ b/migrations/1756284863.sh @@ -0,0 +1,3 @@ +echo "Pin abseil-cpp as the latest package is broken" + +sudo pacman -U --noconfirm https://archive.archlinux.org/packages/u/uwsm/uwsm-0.23.0-1-any.pkg.tar.zst