#!/bin/bash # Overwrite the package configuration for /etc/pacman with the Omarchy default of using its dedicated mirrors and repositories, then update all packages. # This is used after switching between Omarchy release channels to ensure the right packages for the right channel are available. # Take backup of existing files sudo cp -f /etc/pacman.conf /etc/pacman.conf.bak sudo cp -f /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak channel="${1:-stable}" if [[ "$channel" != "stable" && "$channel" != "rc" && "$channel" != "edge" ]]; then echo "Error: Invalid channel '$channel'. Must be one of: stable, rc, edge" exit 1 fi echo "Setting channel to $channel" echo sudo cp -f "$OMARCHY_PATH/default/pacman/pacman-$channel.conf" /etc/pacman.conf sudo cp -f "$OMARCHY_PATH/default/pacman/mirrorlist-$channel" /etc/pacman.d/mirrorlist # Reset all package DBs and then update sudo pacman -Syyu --noconfirm