mirror of
https://github.com/basecamp/omarchy.git
synced 2026-02-17 15:25:37 +00:00
Compare commits
45 Commits
remove-sta
...
pinned-pac
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
968078c6e0 | ||
|
|
9a5f3f9cee | ||
|
|
710bb023cd | ||
|
|
a7df6c0941 | ||
|
|
2d12085eb1 | ||
|
|
9a2cdc2bc4 | ||
|
|
66818266ff | ||
|
|
3affd55a90 | ||
|
|
a7322fe7ae | ||
|
|
5e3d8e5f22 | ||
|
|
128e090165 | ||
|
|
13f2cd9641 | ||
|
|
334aa214ba | ||
|
|
27c4b74e90 | ||
|
|
44c9be7958 | ||
|
|
23c9229fdd | ||
|
|
f22755df4f | ||
|
|
ee9ae96414 | ||
|
|
d5a340f6b7 | ||
|
|
0e88962e4f | ||
|
|
7e2d266a9a | ||
|
|
7bf65360f9 | ||
|
|
1c486a037b | ||
|
|
ea21d0a7b7 | ||
|
|
51830d5ce1 | ||
|
|
f0a12463a6 | ||
|
|
a8965dd271 | ||
|
|
c2fee1b7fa | ||
|
|
acc1e2f757 | ||
|
|
51f877ca1f | ||
|
|
8167633824 | ||
|
|
922acfd706 | ||
|
|
b136cc5653 | ||
|
|
52d1ac215d | ||
|
|
838d0ca27b | ||
|
|
f4ea58bdd0 | ||
|
|
6c656766f8 | ||
|
|
06e3cb4e71 | ||
|
|
1506b98fe1 | ||
|
|
2a8155cc68 | ||
|
|
35b7f44c7e | ||
|
|
4b70705252 | ||
|
|
0eda27a3bc | ||
|
|
c48f370924 | ||
|
|
dcfbd7a2e5 |
@@ -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
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "Installing all dependencies..."
|
||||
sudo pacman -S --noconfirm --needed \
|
||||
# FIXME: Should not use AUR dependencies when we can avoid it
|
||||
echo "Installing all dependencies [from AUR]..."
|
||||
yay -S --noconfirm --needed \
|
||||
dropbox dropbox-cli libappindicator-gtk3 python-gpgme nautilus-dropbox
|
||||
|
||||
echo "Starting Dropbox..."
|
||||
|
||||
@@ -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[@]} $@
|
||||
|
||||
@@ -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}"
|
||||
|
||||
@@ -219,8 +219,8 @@ show_install_editor_menu() {
|
||||
}
|
||||
|
||||
show_install_ai_menu() {
|
||||
case $(menu "Install" " Claude Code\n Gemini\n LM Studio [AUR]\n Ollama\n Crush [AUR]\n opencode [AUR]") in
|
||||
*Claude*) install "Claude Code" "claude-code" ;;
|
||||
case $(menu "Install" " Claude Code [AUR]\n Gemini\n LM Studio [AUR]\n Ollama\n Crush [AUR]\n opencode [AUR]") in
|
||||
*Claude*) aur_install "Claude Code" "claude-code" ;;
|
||||
*Gemini*) install "Gemini" "gemini-cli" ;;
|
||||
*Studio*) aur_install "LM Studio" "lmstudio" ;;
|
||||
*Ollama*) install "Ollama" "ollama" ;;
|
||||
@@ -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
|
||||
}
|
||||
|
||||
|
||||
@@ -14,7 +14,6 @@ fzf_args=(
|
||||
--color 'pointer:green,marker:green'
|
||||
)
|
||||
|
||||
yay -Sy
|
||||
pkg_names=$(yay -Slqa | fzf "${fzf_args[@]}")
|
||||
|
||||
if [[ -n "$pkg_names" ]]; then
|
||||
|
||||
7
bin/omarchy-pkg-ignored
Executable file
7
bin/omarchy-pkg-ignored
Executable 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
|
||||
7
bin/omarchy-pkg-pinned
Executable file
7
bin/omarchy-pkg-pinned
Executable 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
|
||||
@@ -1,63 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Status indicator daemon for waybar
|
||||
# Calls individual status scripts and caches results
|
||||
|
||||
STATE_DIR=~/.local/state/omarchy/status
|
||||
DAEMON_PID_FILE="$STATE_DIR/daemon.pid"
|
||||
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
mkdir -p "$STATE_DIR"
|
||||
|
||||
# Update all status files by calling individual scripts
|
||||
update_all_status_files() {
|
||||
"$SCRIPT_DIR/omarchy-status-dnd" >"$STATE_DIR/dnd"
|
||||
"$SCRIPT_DIR/omarchy-status-nightlight" >"$STATE_DIR/nightlight"
|
||||
"$SCRIPT_DIR/omarchy-status-idle" >"$STATE_DIR/idle"
|
||||
}
|
||||
|
||||
# Generate hash for change detection
|
||||
get_status_hash() {
|
||||
echo "$($(makoctl mode 2>/dev/null | grep -c 'do-not-disturb')$(hyprctl hyprsunset temperature 2>/dev/null)"
|
||||
}
|
||||
|
||||
# Start background monitoring daemon
|
||||
start_daemon() {
|
||||
if [ -f "$DAEMON_PID_FILE" ] && kill -0 $(cat "$DAEMON_PID_FILE") 2>/dev/null; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
{
|
||||
last_hash=""
|
||||
while true; do
|
||||
current_hash=$(get_status_hash)
|
||||
|
||||
if [ "$current_hash" != "$last_hash" ]; then
|
||||
update_all_status_files
|
||||
last_hash="$current_hash"
|
||||
fi
|
||||
|
||||
sleep 0.5
|
||||
done
|
||||
} &
|
||||
|
||||
echo $! >"$DAEMON_PID_FILE"
|
||||
}
|
||||
|
||||
# Main execution
|
||||
MODULE="$1"
|
||||
|
||||
if [ -z "$MODULE" ]; then
|
||||
echo "Usage: $0 [dnd|nightlight|idle]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
start_daemon
|
||||
|
||||
# Return cached status for requested module
|
||||
if [ -f "$STATE_DIR/$MODULE" ]; then
|
||||
cat "$STATE_DIR/$MODULE"
|
||||
else
|
||||
update_all_status_files
|
||||
cat "$STATE_DIR/$MODULE" 2>/dev/null || echo '{"text": "", "tooltip": "", "class": "hidden"}'
|
||||
fi
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# DND status indicator
|
||||
|
||||
if makoctl mode 2>/dev/null | grep -q 'do-not-disturb'; then
|
||||
echo '{"text": "", "tooltip": "Notifications silenced", "class": "status-dnd"}'
|
||||
else
|
||||
echo '{"text": "", "tooltip": "", "class": "hidden"}'
|
||||
fi
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Idle lock status indicator
|
||||
|
||||
if command -v hypridle >/dev/null 2>&1 && ! pgrep -x hypridle >/dev/null 2>&1; then
|
||||
echo '{"text": "", "tooltip": "Idle lock disabled", "class": "status-idle"}'
|
||||
else
|
||||
echo '{"text": "", "tooltip": "", "class": "hidden"}'
|
||||
fi
|
||||
@@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Nightlight status indicator
|
||||
|
||||
if pgrep -x hyprsunset >/dev/null 2>&1; then
|
||||
temp=$(hyprctl hyprsunset temperature 2>/dev/null | grep -oE '[0-9]+')
|
||||
if [ -n "$temp" ] && [ "$temp" -lt 6000 ]; then
|
||||
echo '{"text": "", "tooltip": "Night light active", "class": "status-nightlight"}'
|
||||
else
|
||||
echo '{"text": "", "tooltip": "", "class": "hidden"}'
|
||||
fi
|
||||
else
|
||||
echo '{"text": "", "tooltip": "", "class": "hidden"}'
|
||||
fi
|
||||
@@ -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
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#!/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"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||
DESKTOP_DIR="$HOME/.local/share/applications/"
|
||||
|
||||
if [ "$#" -ne 1 ]; then
|
||||
if [ "$#" -eq 0 ]; then
|
||||
# Find all web apps
|
||||
while IFS= read -r -d '' file; do
|
||||
if grep -q '^Exec=.*omarchy-launch-webapp.*' "$file"; then
|
||||
@@ -14,23 +14,28 @@ if [ "$#" -ne 1 ]; then
|
||||
if ((${#WEB_APPS[@]})); then
|
||||
IFS=$'\n' SORTED_WEB_APPS=($(sort <<<"${WEB_APPS[*]}"))
|
||||
unset IFS
|
||||
APP_NAME=$(gum choose --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_NAME="$1"
|
||||
# Use array to preserve spaces in app names
|
||||
APP_NAMES=("$@")
|
||||
fi
|
||||
|
||||
if [[ -z "$APP_NAME" ]]; then
|
||||
echo "You must provide web app name."
|
||||
if [[ ${#APP_NAMES[@]} -eq 0 ]]; then
|
||||
echo "You must provide web app 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
|
||||
|
||||
@@ -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"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
"spacing": 0,
|
||||
"height": 26,
|
||||
"modules-left": ["custom/omarchy", "hyprland/workspaces"],
|
||||
"modules-center": ["group/status-cluster", "clock", "custom/update"],
|
||||
"modules-center": ["clock", "custom/update"],
|
||||
"modules-right": [
|
||||
"group/tray-expander",
|
||||
"bluetooth",
|
||||
@@ -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": {
|
||||
@@ -119,32 +119,6 @@
|
||||
},
|
||||
"modules": ["custom/expand-icon", "tray"]
|
||||
},
|
||||
"group/status-cluster": {
|
||||
"orientation": "inherit",
|
||||
"modules": [
|
||||
"custom/status-dnd",
|
||||
"custom/status-nightlight",
|
||||
"custom/status-idle"
|
||||
]
|
||||
},
|
||||
"custom/status-dnd": {
|
||||
"exec": "omarchy-status-daemon dnd",
|
||||
"return-type": "json",
|
||||
"interval": 1,
|
||||
"on-click": "makoctl mode -t do-not-disturb"
|
||||
},
|
||||
"custom/status-nightlight": {
|
||||
"exec": "omarchy-status-daemon nightlight",
|
||||
"return-type": "json",
|
||||
"interval": 1,
|
||||
"on-click": "omarchy-toggle-nightlight"
|
||||
},
|
||||
"custom/status-idle": {
|
||||
"exec": "omarchy-status-daemon idle",
|
||||
"return-type": "json",
|
||||
"interval": 1,
|
||||
"on-click": "omarchy-toggle-idle"
|
||||
},
|
||||
"custom/expand-icon": {
|
||||
"format": " ",
|
||||
"tooltip": false
|
||||
|
||||
@@ -58,24 +58,6 @@ tooltip {
|
||||
margin-left: 8.75px;
|
||||
}
|
||||
|
||||
#group-status-cluster {
|
||||
margin-right: 8.75px;
|
||||
}
|
||||
|
||||
#custom-status-dnd,
|
||||
#custom-status-nightlight,
|
||||
#custom-status-idle {
|
||||
min-width: 12px;
|
||||
margin: 0 2px;
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
#custom-status-dnd.status-dnd,
|
||||
#custom-status-nightlight.status-nightlight,
|
||||
#custom-status-idle.status-idle {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
.hidden {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
13
default/hypr/apps/browser.conf
Normal file
13
default/hypr/apps/browser.conf
Normal 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)
|
||||
@@ -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)
|
||||
@@ -4,7 +4,7 @@ windowrule = center, tag:floating-window
|
||||
windowrule = size 800 600, tag:floating-window
|
||||
|
||||
windowrule = tag +floating-window, class:(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty|Omarchy|About|TUI.float)
|
||||
windowrule = tag +floating-window, class:(xdg-desktop-portal-gtk|sublime_text), title:^(Open.*Files?|Save.*Files?|All Files|Save)
|
||||
windowrule = tag +floating-window, class:(xdg-desktop-portal-gtk|sublime_text|DesktopEditors), title:^(Open.*Files?|Save.*Files?|Save.*As|All Files|Save)
|
||||
|
||||
# Fullscreen screensaver
|
||||
windowrule = fullscreen, class:Screensaver
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -22,6 +22,7 @@ source $OMARCHY_INSTALL/packaging/fonts.sh
|
||||
source $OMARCHY_INSTALL/packaging/lazyvim.sh
|
||||
source $OMARCHY_INSTALL/packaging/webapps.sh
|
||||
source $OMARCHY_INSTALL/packaging/tuis.sh
|
||||
source $OMARCHY_INSTALL/packaging/pins.sh
|
||||
|
||||
# Configuration
|
||||
source $OMARCHY_INSTALL/config/config.sh
|
||||
@@ -38,6 +39,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,12 +53,6 @@ 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
|
||||
|
||||
# Reboot
|
||||
clear
|
||||
tte -i ~/.local/share/omarchy/logo.txt --frame-rate 920 laseretch
|
||||
|
||||
2
install/config/localdb.sh
Normal file
2
install/config/localdb.sh
Normal file
@@ -0,0 +1,2 @@
|
||||
# Update localdb so that locate will find everything installed
|
||||
sudo updatedb
|
||||
@@ -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
1
install/packages.ignored
Normal file
@@ -0,0 +1 @@
|
||||
abseil-cpp
|
||||
1
install/packages.pinned
Normal file
1
install/packages.pinned
Normal 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
Normal file
13
install/packaging/pins.sh
Normal 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
|
||||
@@ -40,6 +40,6 @@ fi
|
||||
|
||||
# Allow repository index updates without sudo
|
||||
sudo tee /etc/sudoers.d/repositories >/dev/null <<EOF
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/binpacman -Sy
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/bin/pacman -Sy
|
||||
EOF
|
||||
sudo chmod 440 /etc/sudoers.d/repositories
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
echo "Add status indicators for nightlight, dnd, idle lock, and new icon to Waybar"
|
||||
echo "Add new Omarchy Menu icon to Waybar"
|
||||
|
||||
mkdir -p ~/.local/share/fonts
|
||||
cp ~/.local/share/omarchy/config/omarchy.ttf ~/.local/share/fonts/
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
echo "Allow pacman -Sy without sudo to easier installs"
|
||||
|
||||
sudo tee /etc/sudoers.d/repositories >/dev/null <<EOF
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/binpacman -Sy
|
||||
$USER ALL=(ALL) NOPASSWD: /usr/bin/pacman -Sy
|
||||
EOF
|
||||
sudo chmod 440 /etc/sudoers.d/repositories
|
||||
|
||||
5
migrations/1756203383.sh
Normal file
5
migrations/1756203383.sh
Normal 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
3
migrations/1756208867.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
echo "Update fastfetch config"
|
||||
|
||||
omarchy-refresh-config fastfetch/config.jsonc
|
||||
3
migrations/1756284863.sh
Normal file
3
migrations/1756284863.sh
Normal 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
|
||||
Reference in New Issue
Block a user