Compare commits

...

51 Commits

Author SHA1 Message Date
David Heinemeier Hansson
fc82476f24 We have already added the Omarchy repo before getting to here
So fine to just do a straight install
2025-08-27 15:23:48 +02:00
David Heinemeier Hansson
dd719051cb No longer need the sudoless pacman runs 2025-08-27 15:22:23 +02:00
David Heinemeier Hansson
18aef9fd86 Does not warrant a full system update 2025-08-27 15:19:00 +02:00
David Heinemeier Hansson
3d1e9ced81 Need to refresh even just for Omarchy repository 2025-08-27 15:18:30 +02:00
David Heinemeier Hansson
c677098165 Does not need a full system update 2025-08-27 15:17:26 +02:00
David Heinemeier Hansson
ca455c434a Combine 2025-08-27 15:16:34 +02:00
David Heinemeier Hansson
2e8a57fac4 Don't need a full system update for this 2025-08-27 15:16:28 +02:00
David Heinemeier Hansson
20ab2ee81e Get rid of all naked -Sy usage 2025-08-27 14:52:38 +02:00
David Heinemeier Hansson
4cbc8eef43 Get rid of -Sy and -Syy 2025-08-27 14:45:59 +02:00
David Heinemeier Hansson
e5927fc1b2 Fix ghostty compatibility here too 2025-08-27 14:38:14 +02:00
David Heinemeier Hansson
175066ecba Fix migration not to add working-directory if already there
And make command line compatible with Ghostty too
2025-08-27 14:38:00 +02:00
David Heinemeier Hansson
cf4e1c0eb7 Better resilience for fetching the tags 2025-08-27 14:26:30 +02:00
David Heinemeier Hansson
b264c6540a Use floating terminal 2025-08-27 14:19:07 +02:00
David Heinemeier Hansson
90cdbd5504 Run the omarchy-update in a terminal process not owned by waybar so it'll survive being restarted 2025-08-27 14:14:03 +02:00
David Heinemeier Hansson
147242cbba Same permissions as everything 2025-08-27 14:13:23 +02:00
David Heinemeier Hansson
c09ac13f90 Add refresh fastfetch config 2025-08-27 12:59:31 +02:00
David Heinemeier Hansson
ec85068c67 Use omarchy-version 2025-08-27 12:59:21 +02:00
David Heinemeier Hansson
8cbd6be687 Merge pull request #1166 from basecamp/dev
Omarchy v2.0.2
2025-08-27 12:50:36 +02:00
David Heinemeier Hansson
aef9a3dc0f Merge branch 'master' into dev 2025-08-27 12:49:31 +02:00
David Heinemeier Hansson
2294393d71 Just force it for now 2025-08-27 12:39:36 +02:00
David Heinemeier Hansson
2b0d2e4751 Should be exe 2025-08-27 12:35:48 +02:00
David Heinemeier Hansson
0f8a94aa50 Pin at the end 2025-08-27 12:26:03 +02:00
David Heinemeier Hansson
4eb2fab33d Ignore for yay too 2025-08-27 12:21:25 +02:00
David Heinemeier Hansson
a43edcde7d Quote it 2025-08-27 12:14:03 +02:00
David Heinemeier Hansson
742e601baf Pinning packages when one goes bad (#1162)
* Don't update system packages to prevent issues from something too new at the wrong time

* Add system to pin and ignore bad packages

To deal with the abseil-cpp issue
2025-08-27 12:06:08 +02:00
David Heinemeier Hansson
710bb023cd Don't update system packages to prevent issues from something too new at the wrong time 2025-08-27 10:54:23 +02:00
David Heinemeier Hansson
a7df6c0941 Move updatedb into its own config file with better explanation 2025-08-27 10:53:47 +02:00
David Heinemeier Hansson
2d12085eb1 Merge pull request #1119 from tahayvr/fastfetch-config
Update Fastfetch config
2025-08-26 15:51:54 +02:00
Taha
9a2cdc2bc4 Update fastfetch info 2025-08-26 06:28:25 -07:00
David Heinemeier Hansson
66818266ff Force font size 9 for the about screen
We had this but lost it
2025-08-26 12:46:19 +02:00
David Heinemeier Hansson
3affd55a90 Merge pull request #1113 from basecamp/dev
Omarchy 2.0.1
2025-08-26 12:31:45 +02:00
David Heinemeier Hansson
a7322fe7ae Remove apps we don't use any more 2025-08-26 12:27:35 +02:00
David Heinemeier Hansson
5e3d8e5f22 Treat all the major browsers the same 2025-08-26 12:16:23 +02:00
Josh LeBlanc
128e090165 include more chromium browsers in chromium rules (#1090)
* include more chromium browsers in chromium rules

* Use tag to avoid declaring the match twice

* Fix the match to actual browser class names as reported by hyprctl clients

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2025-08-26 12:10:24 +02:00
John Schmidt
13f2cd9641 fix multiple word app names (#1087)
* fix multiple word app names

* fix multiple words string handling

* upstream selector and tui-remove multi-select

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2025-08-26 11:57:39 +02:00
David Heinemeier Hansson
334aa214ba Merge branch 'master' into dev 2025-08-26 11:53:04 +02:00
Ryan Hughes
27c4b74e90 Don't add EFI entry for AMI until we figure out their bug (#1109) 2025-08-26 11:52:50 +02:00
Adi Yeroslav
44c9be7958 Fix emoji picker description (#1091) 2025-08-26 09:19:34 +02:00
Oleg Luganskiy
23c9229fdd fix(hypr): convert TAB workspace bindings from bind to bindd (#1098) 2025-08-26 09:17:09 +02:00
William Tio
f22755df4f Remove Omarchy from the list of selectable fonts (#1101) 2025-08-26 09:15:46 +02:00
David Heinemeier Hansson
ee9ae96414 Merge branch 'master' into dev 2025-08-26 09:15:13 +02:00
David Heinemeier Hansson
d5a340f6b7 Merge pull request #1103 from meerzulee/master
fix: typo at waybar/config.jsonc
2025-08-26 09:14:42 +02:00
David Heinemeier Hansson
0e88962e4f Bring multi-select and custom X remover to TUI 2025-08-26 09:14:14 +02:00
David Heinemeier Hansson
7e2d266a9a Don't think the selector looks quite right, but the remover does 2025-08-26 09:13:22 +02:00
David Heinemeier Hansson
7bf65360f9 Merge pull request #1104 from hipsterusername/remove-selection-ux
UX: Change webapp removal selection icons
2025-08-26 09:12:23 +02:00
David Heinemeier Hansson
1c486a037b Merge pull request #1106 from tahayvr/icon-in-menu
Update Omarchy icon in unified menu
2025-08-26 09:11:39 +02:00
Taha
ea21d0a7b7 Update omarchy icon in unified menu 2025-08-25 23:56:50 -07:00
Kent Keirsey
51830d5ce1 Change removal selection icons 2025-08-26 00:08:10 -04:00
Meerzulee
f0a12463a6 fixing typo at config.jsonc
Fixing `nospacing` to `spacing`. 

There is no such a config as `nospacing` in Waybar source code.
2025-08-26 10:01:24 +06:00
David Heinemeier Hansson
a8965dd271 Merge pull request #1076 from manofcolombia/omarchy-launch-nix
Check for apps.desktop in ~/.nix-profile - omarchy-launch-*
2025-08-25 20:16:29 +02:00
Zak Lantz
c2fee1b7fa check for desktop apps in ~/.nix-profile 2025-08-25 12:17:16 -04:00
47 changed files with 172 additions and 130 deletions

View File

@@ -1,3 +1,3 @@
#!/bin/bash
fc-list :spacing=100 -f "%{family[0]}\n" | grep -v -i -E 'emoji|signwriting' | sort -u
fc-list :spacing=100 -f "%{family[0]}\n" | grep -v -i -E 'emoji|signwriting|omarchy' | sort -u

View File

@@ -6,7 +6,7 @@ if [[ -z "$1" ]]; then
fi
install_php() {
sudo pacman -Sy php composer php-sqlite --noconfirm
sudo pacman -S php composer php-sqlite --noconfirm
# Install Path for Composer
if [[ ":$PATH:" != *":$HOME/.config/composer/vendor/bin:"* ]]; then

View File

@@ -2,8 +2,7 @@
echo "Adding multilib repository for 32-bit compatibility"
sudo sed -i '/^\s*#\[multilib\]/,/^$/{s/^\s*#//}' /etc/pacman.conf
sudo pacman -Sy
echo "Now pick dependencies matching your graphics card"
sudo pacman -S steam
sudo pacman -Syu steam
setsid gtk-launch steam >/dev/null 2>&1 &

View File

@@ -1,3 +1,3 @@
#!/bin/bash
exec setsid uwsm app -- $(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,/usr}/share/applications/$(xdg-settings get default-web-browser) 2>/dev/null | head -1) ${args[@]} $@
exec setsid uwsm app -- $(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,~/.nix-profile,/usr}/share/applications/$(xdg-settings get default-web-browser) 2>/dev/null | head -1) ${args[@]} $@

View File

@@ -0,0 +1,4 @@
#!/bin/bash
cmd="$*"
setsid alacritty --class Omarchy -e bash -c "omarchy-show-logo; $cmd; omarchy-show-done"

View File

@@ -7,4 +7,4 @@ google-chrome* | brave-browser* | microsoft-edge* | opera* | vivaldi*) ;;
*) browser="chromium.desktop" ;;
esac
exec setsid uwsm app -- $(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,/usr}/share/applications/$browser 2>/dev/null | head -1) --app="$1" "${@:2}"
exec setsid uwsm app -- $(sed -n 's/^Exec=\([^ ]*\).*/\1/p' {~/.local,~/.nix-profile,/usr}/share/applications/$browser 2>/dev/null | head -1) --app="$1" "${@:2}"

View File

@@ -26,7 +26,7 @@ terminal() {
}
present_terminal() {
alacritty --class Omarchy -e bash -c "omarchy-show-logo; eval \"$1\"; omarchy-show-done;"
omarchy-launch-floating-terminal-with-presentation $1
}
edit_in_nvim() {
@@ -35,23 +35,23 @@ edit_in_nvim() {
}
install() {
present_terminal "echo 'Installing $1...'; sudo pacman -Sy --noconfirm $2"
present_terminal "echo 'Installing $1...'; sudo pacman -S --noconfirm $2"
}
install_and_launch() {
present_terminal "echo 'Installing $1...'; sudo pacman -Sy --noconfirm $2 && setsid gtk-launch $3"
present_terminal "echo 'Installing $1...'; sudo pacman -S --noconfirm $2 && setsid gtk-launch $3"
}
install_font() {
present_terminal "echo 'Installing $1...'; sudo pacman -Sy --noconfirm --needed $2 && sleep 2 && omarchy-font-set '$3'"
present_terminal "echo 'Installing $1...'; sudo pacman -S --noconfirm --needed $2 && sleep 2 && omarchy-font-set '$3'"
}
aur_install() {
present_terminal "echo 'Installing $1 from AUR...'; yay -Sy --noconfirm $2"
present_terminal "echo 'Installing $1 from AUR...'; yay -S --noconfirm $2"
}
aur_install_and_launch() {
present_terminal "echo 'Installing $1 from AUR...'; yay -Sy --noconfirm $2 && setsid gtk-launch $3"
present_terminal "echo 'Installing $1 from AUR...'; yay -S --noconfirm $2 && setsid gtk-launch $3"
}
show_learn_menu() {
@@ -315,7 +315,7 @@ show_remove_menu() {
}
show_update_menu() {
case $(menu "Update" "󰣇 Omarchy\n Config\n󰸌 Themes\n Process\n Timezone") in
case $(menu "Update" " Omarchy\n Config\n󰸌 Themes\n Process\n Timezone") in
*Omarchy*) present_terminal omarchy-update ;;
*Config*) show_update_config_menu ;;
*Themes*) present_terminal omarchy-theme-update ;;
@@ -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
}

View File

@@ -18,7 +18,7 @@ pkg_names=$(yay -Slqa | fzf "${fzf_args[@]}")
if [[ -n "$pkg_names" ]]; then
# Convert newline-separated selections to space-separated for yay
echo "$pkg_names" | tr '\n' ' ' | xargs yay -Sy --noconfirm
echo "$pkg_names" | tr '\n' ' ' | xargs yay -S --noconfirm
sudo updatedb
omarchy-show-done
fi

7
bin/omarchy-pkg-ignored Executable file
View File

@@ -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

View File

@@ -14,12 +14,11 @@ fzf_args=(
--color 'pointer:green,marker:green'
)
sudo pacman -Sy
pkg_names=$(pacman -Slq | fzf "${fzf_args[@]}")
if [[ -n "$pkg_names" ]]; then
# Convert newline-separated selections to space-separated for yay
echo "$pkg_names" | tr '\n' ' ' | xargs sudo pacman -Sy --noconfirm
echo "$pkg_names" | tr '\n' ' ' | xargs sudo pacman -S --noconfirm
sudo updatedb
omarchy-show-done
fi

7
bin/omarchy-pkg-pinned Executable file
View File

@@ -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

3
bin/omarchy-refresh-fastfetch Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
omarchy-refresh-config fastfetch/config.jsonc

View File

@@ -3,8 +3,8 @@
ICON_DIR="$HOME/.local/share/applications/icons"
DESKTOP_DIR="$HOME/.local/share/applications/"
if [ "$#" -ne 1 ]; then
# Find all web apps
if [ "$#" -eq 0 ]; then
# Find all TUIs
while IFS= read -r -d '' file; do
if grep -q '^Exec=.*alacritty.*-e' "$file"; then
TUIS+=("$(basename "${file%.desktop}")")
@@ -14,23 +14,28 @@ if [ "$#" -ne 1 ]; then
if ((${#TUIS[@]})); then
IFS=$'\n' SORTED_TUIS=($(sort <<<"${TUIS[*]}"))
unset IFS
APP_NAME=$(gum choose --header "Select TUI to remove..." "${SORTED_TUIS[@]}")
APP_NAMES_STRING=$(gum choose --no-limit --header "Select TUI to remove..." --selected-prefix="✗ " "${SORTED_TUIS[@]}")
# Convert newline-separated string to array
APP_NAMES=()
while IFS= read -r line; do
[[ -n "$line" ]] && APP_NAMES+=("$line")
done <<< "$APP_NAMES_STRING"
else
echo "No TUIs to remove."
exit 1
fi
else
APP_NAME="$1"
# Use array to preserve spaces in app names
APP_NAMES=("$@")
fi
if [[ -z "$APP_NAME" ]]; then
echo "You must provide TUI name."
if [[ ${#APP_NAMES[@]} -eq 0 ]]; then
echo "You must provide TUI names."
exit 1
fi
rm "$DESKTOP_DIR/$APP_NAME.desktop"
rm "$ICON_DIR/$APP_NAME.png"
if [ "$#" -ne 1 ]; then
echo -e "Removed $APP_NAME\n"
fi
for APP_NAME in "${APP_NAMES[@]}"; do
rm -f "$DESKTOP_DIR/$APP_NAME.desktop"
rm -f "$ICON_DIR/$APP_NAME.png"
echo "Removed $APP_NAME"
done

View File

@@ -1,13 +1,18 @@
#!/bin/bash
# Ensure remote is reachable
if ! git -C "$OMARCHY_PATH" ls-remote &>/dev/null; then
echo "Error: Unable to reach remote repository."
# Get remote tag
latest_tag=$(git -C "$OMARCHY_PATH" ls-remote --tags origin | grep -v "{}" | awk '{print $2}' | sed 's#refs/tags/##' | sort -V | tail -n 1)
if [[ -z "$latest_tag" ]]; then
echo "Error: Could not retrieve latest tag."
exit 1
fi
latest_tag=$(git -C "$OMARCHY_PATH" ls-remote --tags origin | grep -v "{}" | awk '{print $2}' | sed 's#refs/tags/##' | sort -V | tail -n 1)
# Get local tag
current_tag=$(git -C "$OMARCHY_PATH" describe --tags $(git -C "$OMARCHY_PATH" rev-list --tags --max-count=1))
if [[ -z "$current_tag" ]]; then
echo "Error: Could not retrieve current tag."
exit 1
fi
if [[ "$current_tag" != "$latest_tag" ]]; then
echo "Omarchy update available ($latest_tag)"

View File

@@ -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"

View File

@@ -14,21 +14,27 @@ if [ "$#" -eq 0 ]; then
if ((${#WEB_APPS[@]})); then
IFS=$'\n' SORTED_WEB_APPS=($(sort <<<"${WEB_APPS[*]}"))
unset IFS
APP_NAMES=$(gum choose --no-limit --header "Select web app to remove..." "${SORTED_WEB_APPS[@]}")
APP_NAMES_STRING=$(gum choose --no-limit --header "Select web app to remove..." --selected-prefix="✗ " "${SORTED_WEB_APPS[@]}")
# Convert newline-separated string to array
APP_NAMES=()
while IFS= read -r line; do
[[ -n "$line" ]] && APP_NAMES+=("$line")
done <<< "$APP_NAMES_STRING"
else
echo "No web apps to remove."
exit 1
fi
else
APP_NAMES="$*"
# Use array to preserve spaces in app names
APP_NAMES=("$@")
fi
if [[ -z "$APP_NAMES" ]]; then
if [[ ${#APP_NAMES[@]} -eq 0 ]]; then
echo "You must provide web app names."
exit 1
fi
for APP_NAME in $APP_NAMES; do
for APP_NAME in "${APP_NAMES[@]}"; do
rm -f "$DESKTOP_DIR/$APP_NAME.desktop"
rm -f "$ICON_DIR/$APP_NAME.png"
echo "Removed $APP_NAME"

View File

@@ -14,7 +14,7 @@ ansi_art=' ▄▄▄
clear
echo -e "\n$ansi_art\n"
sudo pacman -Sy --noconfirm --needed git
sudo pacman -Syu --noconfirm --needed git
# Use custom repo if specified, otherwise default to basecamp/omarchy
OMARCHY_REPO="${OMARCHY_REPO:-basecamp/omarchy}"

View File

@@ -63,41 +63,14 @@
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
},
{
"type": "os",
"key": "󰣇 OS",
"keyColor": "yellow"
"type": "command",
"key": "\ue900 OS",
"keyColor": "blue",
"text": "version=$(omarchy-version); 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"
},
{

View File

@@ -2,7 +2,7 @@
$terminal = uwsm app -- alacritty
$browser = omarchy-launch-browser
bindd = SUPER, return, Terminal, exec, $terminal --working-directory $(omarchy-cmd-terminal-cwd)
bindd = SUPER, return, Terminal, exec, $terminal --working-directory=$(omarchy-cmd-terminal-cwd)
bindd = SUPER, F, File manager, exec, uwsm app -- nautilus --new-window
bindd = SUPER, B, Browser, exec, $browser
bindd = SUPER, M, Music, exec, uwsm app -- spotify

View File

@@ -46,7 +46,7 @@
"custom/update": {
"format": "",
"exec": "omarchy-update-available",
"on-click": "alacritty --class Omarchy --title Omarchy -e omarchy-update",
"on-click": "omarchy-launch-floating-terminal-with-presentation omarchy-update",
"tooltip-format": "Omarchy update available",
"interval": 3600
},
@@ -72,7 +72,7 @@
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
"tooltip-format-disconnected": "Disconnected",
"interval": 3,
"nospacing": 1,
"spacing": 1,
"on-click": "alacritty --class=Impala -e impala"
},
"battery": {

View File

@@ -1,6 +1,6 @@
# App-specific tweaks
source = ~/.local/share/omarchy/default/hypr/apps/pip.conf
source = ~/.local/share/omarchy/default/hypr/apps/chromium.conf
source = ~/.local/share/omarchy/default/hypr/apps/browser.conf
source = ~/.local/share/omarchy/default/hypr/apps/hyprshot.conf
source = ~/.local/share/omarchy/default/hypr/apps/retroarch.conf
source = ~/.local/share/omarchy/default/hypr/apps/steam.conf

View File

@@ -0,0 +1,13 @@
# Browser types
windowrule = tag +chromium-based-browser, class:([cC]hrom(e|ium)|[bB]rave-browser|Microsoft-edge|Vivaldi-stable)
windowrule = tag +firefox-based-browser, class:(Firefox|zen|librewolf)
# Force chromium-based browsers into a tile to deal with --app bug
windowrule = tile, tag:chromium-based-browser
# Only a subtle opacity change, but not for video sites
windowrule = opacity 1 0.97, tag:chromium-based-browser
windowrule = opacity 1 0.97, tag:firefox-based-browser
# Some video sites should never have opacity applied to them
windowrule = opacity 1.0 1.0, initialTitle:(youtube\.com_/|app\.zoom\.us_/wc/home)

View File

@@ -1,6 +0,0 @@
# Force chromium into a tile to deal with --app bug
windowrule = tile, class:^(Chromium)$
# Only slight opacity when unfocused
windowrule = opacity 1 0.97, class:^(Chromium|chromium|google-chrome|google-chrome-unstable|Brave-browser|brave-browser)$
windowrule = opacity 1 1, initialTitle:(youtube.com_/|app.zoom.us_/wc/home)

View File

@@ -39,8 +39,8 @@ bindd = SUPER SHIFT, code:18, Move window to workspace 9, movetoworkspace, 9
bindd = SUPER SHIFT, code:19, Move window to workspace 10, movetoworkspace, 10
# Tab between workspaces
bind = SUPER, TAB, workspace, e+1
bind = SUPER SHIFT, TAB, workspace, e-1
bindd = SUPER, TAB, Next workspace, workspace, e+1
bindd = SUPER SHIFT, TAB, Previous workspace, workspace, e-1
# Swap active window with the one next to it with SUPER + SHIFT + arrow keys
bindd = SUPER SHIFT, left, Swap window to the left, swapwindow, l

View File

@@ -1,6 +1,6 @@
# Menus
bindd = SUPER, SPACE, Launch apps, exec, walker -p "Start…"
bindd = SUPER CTRL, E, Show clipboard, exec, walker -m Emojis
bindd = SUPER CTRL, E, Emoji picker, exec, walker -m Emojis
bindd = SUPER ALT, SPACE, Omarchy menu, exec, omarchy-menu
bindd = SUPER, ESCAPE, Power menu, exec, omarchy-menu system
bindld = , XF86PowerOff, Power menu, exec, omarchy-menu system

View File

@@ -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,11 +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
# Update system packages
sudo pacman -Syu --noconfirm
# 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

View File

@@ -36,7 +36,7 @@ if [ -n "$(lspci | grep -i 'nvidia')" ]; then
fi
# force package database refresh
sudo pacman -Syy
sudo pacman -Syu
# Install packages
PACKAGES_TO_INSTALL=(

2
install/config/localdb.sh Executable file
View File

@@ -0,0 +1,2 @@
# Update localdb so that locate will find everything installed
sudo updatedb

View File

@@ -85,7 +85,8 @@ EOF
fi
# Add UKI entry to UEFI machines to skip bootloader showing on normal boot
if [ -n "$EFI" ] && efibootmgr &>/dev/null && ! efibootmgr | grep -q Omarchy; then
if [ -n "$EFI" ] && efibootmgr &>/dev/null && ! efibootmgr | grep -q Omarchy &&
! cat /sys/class/dmi/id/bios_vendor 2>/dev/null | grep -qi "American Megatrends"; then
sudo efibootmgr --create \
--disk "$(findmnt -n -o SOURCE /boot | sed 's/p\?[0-9]*$//')" \
--part "$(findmnt -n -o SOURCE /boot | grep -o 'p\?[0-9]*$' | sed 's/^p//')" \

1
install/packages.ignored Normal file
View File

@@ -0,0 +1 @@
abseil-cpp

1
install/packages.pinned Normal file
View File

@@ -0,0 +1 @@
https://pkgs.omarchy.org/x86_64/abseil-cpp-20250512.1-1-x86_64.pkg.tar.zst

13
install/packaging/pins.sh Executable file
View File

@@ -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

View File

@@ -1,7 +1,7 @@
#!/bin/bash
# Install build tools
sudo pacman -Sy --needed --noconfirm base-devel
sudo pacman -S --needed --noconfirm base-devel
# Add fun and color and verbosity to the pacman installer
if ! grep -q "ILoveCandy" /etc/pacman.conf; then
@@ -30,16 +30,10 @@ if [[ "$(uname -m)" == "x86_64" ]] && [ -z "$DISABLE_CHAOTIC" ]; then
if ! grep -q "chaotic-aur" /etc/pacman.conf; then
echo -e '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist' | sudo tee -a /etc/pacman.conf >/dev/null
fi
# Refresh all repos
sudo pacman -Sy
else
echo -e "Failed to install Chaotic-AUR, so won't include it in pacman config!"
fi
fi
# Allow repository index updates without sudo
sudo tee /etc/sudoers.d/repositories >/dev/null <<EOF
$USER ALL=(ALL) NOPASSWD: /usr/bin/pacman -Sy
EOF
sudo chmod 440 /etc/sudoers.d/repositories
# Refresh all repos
sudo pacman -Syu

View File

@@ -3,5 +3,5 @@ echo "Add Omarchy Package Repository"
if ! grep -q "omarchy" /etc/pacman.conf; then
sudo sed -i '/^\[core\]/i [omarchy]\nSigLevel = Optional TrustAll\nServer = https:\/\/pkgs.omarchy.org\/$arch\/\n' /etc/pacman.conf
sudo systemctl restart systemd-timesyncd
sudo pacman -Sy
sudo pacman -Syu
fi

View File

@@ -1,4 +1,4 @@
echo "Install Plymouth splash screen"
sudo pacman -Sy --needed --noconfirm uwsm plymouth
sudo pacman -S --needed --noconfirm uwsm plymouth
source "$HOME/.local/share/omarchy/install/login/plymouth.sh"

View File

@@ -1,7 +1,7 @@
echo "Replace wofi with walker as the default launcher"
if ! command -v walker &>/dev/null; then
sudo pacman -Sy --noconfirm --needed walker-bin libqalculate
sudo pacman -S --noconfirm --needed walker-bin libqalculate
sudo pacman -Rns --noconfirm wofi
rm -rf ~/.config/wofi

View File

@@ -11,7 +11,7 @@ if [[ "$(uname -m)" == "x86_64" ]] && ! grep -q '^\[chaotic-aur\]' /etc/pacman.c
echo -e '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist' | sudo tee -a /etc/pacman.conf >/dev/null
# Refresh pacman package databases
sudo pacman -Sy
sudo pacman -Syu
else
echo "Failed to install Chaotic-AUR, so won't include it in pacman config!"
fi

View File

@@ -1,3 +1,3 @@
echo "Add xmlstarlet needed for updating fonts via Omarchy menu"
sudo pacman -Sy --noconfirm --needed xmlstarlet
sudo pacman -S --noconfirm --needed xmlstarlet

View File

@@ -1,4 +1,4 @@
echo "Update and restart Walker to resolve stuck Omarchy menu"
sudo pacman -Sy --noconfirm walker-bin
sudo pacman -Syu --noconfirm walker-bin
omarchy-restart-walker

View File

@@ -11,7 +11,7 @@ set_theme_colors() {
if command -v chromium &>/dev/null; then
sudo pacman -Rns --noconfirm chromium || true
sudo pacman -Sy --noconfirm omarchy-chromium
sudo pacman -S --noconfirm omarchy-chromium
if pgrep -x chromium; then
if gum confirm "Chromium must be restarted. Ready?"; then

View File

@@ -1,3 +1,3 @@
echo "Ensure latest uwsm is installed"
sudo pacman -Sy --noconfirm uwsm
sudo pacman -Syu --noconfirm uwsm

View File

@@ -1,3 +1,5 @@
echo "Use current terminal shell cwd for new terminal working directories"
sed -i 's|bindd = SUPER, return, Terminal, exec, \$terminal|bindd = SUPER, return, Terminal, exec, $terminal --working-directory $(omarchy-cmd-terminal-cwd)|' ~/.config/hypr/bindings.conf
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

View File

@@ -1,6 +0,0 @@
echo "Allow pacman -Sy without sudo to easier installs"
sudo tee /etc/sudoers.d/repositories >/dev/null <<EOF
$USER ALL=(ALL) NOPASSWD: /usr/bin/pacman -Sy
EOF
sudo chmod 440 /etc/sudoers.d/repositories

5
migrations/1756203383.sh Normal file
View File

@@ -0,0 +1,5 @@
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

3
migrations/1756208867.sh Normal file
View File

@@ -0,0 +1,3 @@
echo "Update fastfetch config"
omarchy-refresh-config fastfetch/config.jsonc

3
migrations/1756284863.sh Normal file
View File

@@ -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

3
migrations/1756300740.sh Normal file
View File

@@ -0,0 +1,3 @@
echo "Remove no-longer-needed sudoless package listing updates"
sudo rm -f /etc/sudoers.d/repositories