#!/bin/bash # omarchy:summary=Print the active Omarchy package channel set -euo pipefail conf=${OMARCHY_CONFIG_FILE:-/etc/omarchy.conf} omarchy_path=${OMARCHY_PATH:-/usr/share/omarchy} if [[ -r $conf ]]; then configured_path=$(bash -c 'source "$1"; printf "%s\n" "${OMARCHY_PATH:-}"' bash "$conf" 2>/dev/null || true) [[ -n $configured_path ]] && omarchy_path="$configured_path" fi # Dev is a linked source checkout: OMARCHY_PATH points somewhere other than # the package-backed install at /usr/share/omarchy. This takes precedence over # the package channels, since the checkout overrides whatever is installed. if [[ $omarchy_path != "/usr/share/omarchy" ]]; then echo dev exit 0 fi # omarchy-dev / omarchy-settings-dev are only shipped from the edge mirror, so # their presence alone means edge. omarchy / omarchy-settings come from either # the stable or rc mirror, distinguished by omarchy-version-channel. if pacman -Q omarchy-dev omarchy-settings-dev >/dev/null 2>&1; then echo edge elif pacman -Q omarchy omarchy-settings >/dev/null 2>&1; then channel=$(omarchy-version-channel 2>/dev/null | awk '{ print $1 }') case "$channel" in stable) echo stable ;; rc) echo rc ;; *) echo unknown ;; esac else echo unknown fi