62 Commits

Author SHA1 Message Date
07d88a4b9a Include timezones setup by default! 2025-07-30 23:48:51 +02:00
88e62994d1 Merge branch 'master' into dev 2025-07-30 23:44:41 +02:00
1c2b5ea8e0 Omarchy 1.8.0 (#415)
* Update location of sourced install script

* Add OMARCHY_PATH for easy access

* Formatting

* Enable using finder in walker (#396)

* Enable using finder in walker

* capitalize name property

* Hot reload theme for quick switching

* Use fonts from AUR instead of downloading them directly like an animal

* Include the common JetBrains substitution

* Add a very basic font selector for terminal

* Give the new font selector a bit of room to breathe

* Swap Spotify GUI to TUI

* Correct package name

* Add theme update script (#391)

* Move updating themes from Updates to theme menu

Yeah, it could go in either spot, but since we have one entire category
dedicated to themes, lets keep it there.

* Revert "Correct package name"

This reverts commit 4c46c2208a.

* Revert "Swap Spotify GUI to TUI"

This reverts commit b09d2d68cd.

* Added backup timestamps to various omarchy-refresh-* files to prevent clobbering (#402)

* Added backup timestamps to omarchy-refresh-[hyprlock|swayosd|walker|waybar] scripts to prevent data loss if ran multiple times

* Added new script (omarchy-refresh-config) for refreshing various config files with automated backup creation

* update plymouth logo (#406)

* Track migrations via state files to avoid running migrations that have already been performed. (#411)

* Just use set -e instead of manually checking for return values

* Fix migration

* Unused

* Migrate fonts to packages

* No longer needed

* Use fd for better performance on walker finder

* Add walker config refresh to enable the finder

* Dropbox is now an optional setup

---------

Co-authored-by: Shigeto Kumagai <shk@all.daynight.jp>
Co-authored-by: Mohamedsayhii <63726183+Mohamedsayhii@users.noreply.github.com>
Co-authored-by: Ryan Hughes <ryan@heyoodle.com>
Co-authored-by: Andy Davis <developer.andy@gmail.com>
Co-authored-by: Taha <paprikataha@gmail.com>
2025-07-30 23:44:27 +02:00
f0b1dd286b Dropbox is now an optional setup 2025-07-30 23:32:17 +02:00
7f66623317 Add walker config refresh to enable the finder 2025-07-30 23:27:21 +02:00
41c40e0e1d Use fd for better performance on walker finder 2025-07-30 23:26:01 +02:00
c1a7f5a4e4 No longer needed 2025-07-30 22:54:50 +02:00
a0aa6862f5 Migrate fonts to packages 2025-07-30 22:54:45 +02:00
231438b2ea Unused 2025-07-30 22:54:33 +02:00
a98adc499a Fix migration 2025-07-30 22:47:34 +02:00
74552b9f6e Just use set -e instead of manually checking for return values 2025-07-30 18:43:10 +02:00
49c154cb1f Track migrations via state files to avoid running migrations that have already been performed. (#411) 2025-07-30 18:40:59 +02:00
51f3d15ead update plymouth logo (#406) 2025-07-30 16:13:40 +02:00
ff5630c64f Added backup timestamps to various omarchy-refresh-* files to prevent clobbering (#402)
* Added backup timestamps to omarchy-refresh-[hyprlock|swayosd|walker|waybar] scripts to prevent data loss if ran multiple times

* Added new script (omarchy-refresh-config) for refreshing various config files with automated backup creation
2025-07-30 16:12:37 +02:00
d4f6859022 Revert "Swap Spotify GUI to TUI"
This reverts commit b09d2d68cd.
2025-07-29 19:17:41 +02:00
8c2f51c08c Revert "Correct package name"
This reverts commit 4c46c2208a.
2025-07-29 19:17:39 +02:00
91f5c4646c Move updating themes from Updates to theme menu
Yeah, it could go in either spot, but since we have one entire category
dedicated to themes, lets keep it there.
2025-07-29 16:44:55 +02:00
25f4513feb Add theme update script (#391) 2025-07-29 16:42:18 +02:00
4c46c2208a Correct package name 2025-07-29 16:33:47 +02:00
b09d2d68cd Swap Spotify GUI to TUI 2025-07-29 16:31:40 +02:00
5c98de75d1 Give the new font selector a bit of room to breathe 2025-07-29 15:27:34 +02:00
66db3867a6 Add a very basic font selector for terminal 2025-07-29 15:27:25 +02:00
4f56efe0e9 Include the common JetBrains substitution 2025-07-29 15:18:30 +02:00
5405d383dc Use fonts from AUR instead of downloading them directly like an animal 2025-07-29 15:15:39 +02:00
8ab18c1d38 Hot reload theme for quick switching 2025-07-29 14:42:48 +02:00
c95d14e5e2 Enable using finder in walker (#396)
* Enable using finder in walker

* capitalize name property
2025-07-29 14:28:14 +02:00
bdf5540cf3 Formatting 2025-07-29 14:21:14 +02:00
033b638992 Merge pull request #393 from sailoz/fix-splash-migration
Update location of sourced install script
2025-07-29 12:53:21 +02:00
eb74d4cb6f Add OMARCHY_PATH for easy access 2025-07-29 08:42:27 +02:00
1b576eb7f8 Update location of sourced install script 2025-07-29 13:14:37 +09:00
b7cbffc91d Merge pull request #383 from basecamp/dev
Omarchy v1.7.0
2025-07-28 14:13:59 +02:00
9c5a29def4 Fix sort order bug with italics 2025-07-28 13:14:35 +02:00
189596cc88 Add migration for new ristretto theme 2025-07-28 13:01:02 +02:00
fbec9b5163 Always setsid so we don't die with the script 2025-07-28 12:58:57 +02:00
7f2c9391d2 /etc/sudoers.d is not accessible without sudo 2025-07-28 12:57:23 +02:00
bba8802c29 Merge branch 'master' into dev 2025-07-28 12:52:49 +02:00
51fe5bf6e8 Add ristretto theme to default themes (#384)
* Add ristretto theme to defaults

* Update alacritty.toml
2025-07-28 12:49:12 +02:00
588ce42f08 Split and explain 2025-07-28 10:03:11 +02:00
c589130d8b Merge pull request #379 from c4software/patch-3
Add ALT+Tab bindings to cycle windows and bring active to top
2025-07-28 10:02:47 +02:00
e39ec15197 Merge pull request #380 from sobran/fix/steam-windowrule
Fix: restrict Steam centering to only the main window
2025-07-28 09:59:15 +02:00
7589683cd1 Adjust migration to check for whether fastfetch already has the change or not 2025-07-28 09:58:51 +02:00
b1753c1c7c Merge pull request #382 from tahayvr/omarchy-in-fastfetch
Display current Omarchy version in Fastfetch
2025-07-28 09:56:31 +02:00
e8d095c787 Match logo.txt 2025-07-28 09:32:44 +02:00
01d6deae34 Add migration script for Omarchy version in fastfetch 2025-07-27 23:34:10 -07:00
478b2da0f1 Add omarchy version to fastfetch config 2025-07-27 23:24:06 -07:00
9d7ed32fc9 Fix: restrict Steam centering to only the main window 2025-07-28 00:33:53 +02:00
eca4f65475 Add ALT+Tab bindings to cycle windows and bring active to top 2025-07-27 21:07:20 +02:00
a801fde7b9 Recommend starship.rs for prompt 2025-07-27 14:10:04 -04:00
35a603d0d2 Don't force 2 2025-07-27 13:10:51 -04:00
e446c4c71e Improve the examples and include the fractional scaling example 2025-07-27 12:33:54 -04:00
2953db18d9 Reveal a fully .bashrc that provides examples of what to overwrite 2025-07-27 10:45:22 -04:00
6e664c84a9 Merge pull request #369 from basecamp/update-boot-ansi
Update boot.sh ANSI
2025-07-26 22:02:09 -04:00
44925a6085 More readable 2025-07-26 21:58:09 -04:00
a0c90fb3db Not needed 2025-07-26 21:57:27 -04:00
008fab9df3 Turn dazzle into a full-blown screensaver 2025-07-26 21:53:13 -04:00
ffd136cdc6 Add a fun dazzle with the Omarchy logo that just keeps looping 2025-07-26 21:10:52 -04:00
0ff139860d Update boot.sh ANSI 2025-07-26 17:04:50 -07:00
42886f86bb Ordering 2025-07-26 18:49:33 -04:00
24e3f752ba Float and center About 2025-07-26 18:49:22 -04:00
64c6e872fc Match Omarchy TUI window to the slimmer logo 2025-07-26 18:38:55 -04:00
65577c1757 Merge branch 'dev' 2025-07-26 18:31:22 -04:00
b50a4e7a74 No color works better with more themes 2025-07-26 18:31:11 -04:00
48 changed files with 517 additions and 294 deletions

View File

@ -5,17 +5,22 @@ PATH="$PATH:$HOME/.local/share/omarchy/bin"
show_ascii_art() { show_ascii_art() {
clear clear
tte -i ~/.local/share/omarchy/logo.txt --frame-rate 640 expand tte -i ~/.local/share/omarchy/logo.txt --frame-rate 640 --no-color expand
echo " $OMARCHY_VERSION" echo " $OMARCHY_VERSION"
} }
main_menu() { main_menu() {
show_ascii_art show_ascii_art
local options=("Theme" "Setup" "Update" "Manual" "Exit") local options=("Theme" "Font" "Setup" "Update" "Manual" "Exit")
choice=$(printf "%s\n" "${options[@]}" | gum choose --header "") || exit 0 choice=$(printf "%s\n" "${options[@]}" | gum choose --header "") || exit 0
case "$choice" in case "$choice" in
Theme) theme_menu ;; Theme) theme_menu ;;
Font)
omarchy-font-menu
ack_command
main_menu
;;
Update) update_menu ;; Update) update_menu ;;
Setup) setup_menu ;; Setup) setup_menu ;;
Manual) open_manual ;; Manual) open_manual ;;
@ -53,10 +58,11 @@ update_menu() {
theme_menu() { theme_menu() {
show_ascii_art show_ascii_art
local menu=("Pick" "Install" "Remove" "Back") local menu=("Pick" "Install" "Update" "Remove" "Back")
local commands=( local commands=(
"omarchy-theme-menu" "omarchy-theme-menu"
"install_theme_prompt" "install_theme_prompt"
"omarchy-theme-update"
"remove_theme_prompt" "remove_theme_prompt"
"main_menu" "main_menu"
) )

10
bin/omarchy-cmd-screensaver Executable file
View File

@ -0,0 +1,10 @@
#!/bin/bash
trap "exit" SIGINT
while true; do
effect=$(tte 2>&1 | grep -oP '{\K[^}]+' | tr ',' ' ' | tr ' ' '\n' | sed -n '/^beams$/,$p' | sort -u | shuf -n1)
tte -i ~/.local/share/omarchy/logo.txt \
--frame-rate 240 --canvas-width 0 --canvas-height 0 --anchor-canvas c --anchor-text c \
"$effect"
done

12
bin/omarchy-font-menu Executable file
View File

@ -0,0 +1,12 @@
#!/bin/bash
font=$(
fc-list :spacing=100 -f "%{family[0]}\n" |
grep -v -i -E 'emoji|signwriting' |
sort -u |
gum choose --header "Choose terminal font"
)
if [[ -n "$font" ]]; then
sed -i "s/family = \".*\"/family = \"$font\"/g" ~/.config/alacritty/alacritty.toml
fi

5
bin/omarchy-launch-screensaver Executable file
View File

@ -0,0 +1,5 @@
#!/bin/bash
pkill -f "alacritty --class Screensaver" ||
alacritty --class Screensaver --title Screensaver -o 'colors.primary.background="#000000"' \
-e ~/.local/share/omarchy/bin/omarchy-cmd-screensaver

30
bin/omarchy-refresh-config Executable file
View File

@ -0,0 +1,30 @@
#!/bin/bash
# This script deploys ~/.local/share/omarchy/config/X/Y/Z -> ~/.config/X/Y/Z
config_file=$1
if [[ -z "$config_file" ]]; then
cat << USAGE
Usage: $0 [config_file]
Must provide a file path from the .config directory to be refreshed.
To copy ~/.local/share/omarchy/config/hypr/hyprlock.conf to ~/.config/hypr/hyprlock.conf
$0 hypr/hyprlock.conf
USAGE
exit 1
fi
# Backup the destination file (with timestamp) to avoid clobbering (Ex: hyprlock.conf.bak.1753817951)
backup_file="${HOME}/.config/${config_file}.bak.$(date +%s)"
cp -f "${HOME}/.config/${config_file}" "$backup_file" 2>/dev/null
# Deploy the source file
cp -f "${HOME}/.local/share/omarchy/config/${config_file}" "${HOME}/.config/${config_file}" 2>/dev/null
# Compare and delete/inform accordingly
if cmp -s "${HOME}/.config/${config_file}" "$backup_file"; then
rm $backup_file
else
echo -e "\e[31mExisting "${HOME}/.config/${config_file}" replaced with new Omarchy default, but ${backup_file} file was made.\e[0m"
fi

View File

@ -1,11 +1,4 @@
#!/bin/bash #!/bin/bash
# Overwrite local Hyprlock settings with the latest in Omarchy, but create a backup if it differs # Overwrite local Hyprlock settings with the latest in Omarchy
cp -f ~/.config/hypr/hyprlock.conf ~/.config/hypr/hyprlock.conf.bak 2>/dev/null omarchy-refresh-config hypr/hyprlock.conf
cp -f ~/.local/share/omarchy/config/hypr/hyprlock.conf ~/.config/hypr/ 2>/dev/null
if cmp -s ~/.config/hypr/hyprlock.conf.bak ~/.config/hypr/hyprlock.conf; then
rm ~/.config/hypr/hyprlock.conf.bak
else
echo -e "\e[31mExisting .config/hypr/hyprlock.conf replaced with new Omarchy default, but a .bak file was made.\e[0m"
fi

View File

@ -1,13 +1,7 @@
#!/bin/bash #!/bin/bash
cp -f ~/.config/swayosd/config.toml ~/.config/swayosd/config.toml.bak 2>/dev/null omarchy-refresh-config swayosd/config.toml
cp -f ~/.local/share/omarchy/config/swayosd/config.toml ~/.config/swayosd/ 3>/dev/null omarchy-refresh-config swayosd/style.css
if cmp -s ~/.config/swayosd/config.toml.bak ~/.config/swayosd/config.toml; then
rm ~/.config/swayosd//config.toml.bak
else
echo -e "\e[31mExisting .config/swayosd/config.toml replaced with new Omarchy default, but a .bak file was made.\e[0m"
fi
pkill swayosd-server pkill swayosd-server
setsid uwsm app -- swayosd-server &>/dev/null & setsid uwsm app -- swayosd-server &>/dev/null &

View File

@ -1,13 +1,6 @@
#!/bin/bash #!/bin/bash
cp -f ~/.config/walker/config.toml ~/.config/walker/config.toml.bak 2>/dev/null omarchy-refresh-config walker/config.toml
cp -f ~/.local/share/omarchy/config/walker/config.toml ~/.config/walker/ 2>/dev/null
if cmp -s ~/.config/walker/config.toml.bak ~/.config/walker/config.toml; then
rm ~/.config/walker/config.toml.bak
else
echo -e "\e[31mExisting .config/walker/config.toml replaced with new Omarchy default, but a .bak file was made.\e[0m"
fi
pkill walker pkill walker
uwsm app -- walker --gapplication-service & setsid uwsm app -- walker --gapplication-service &

View File

@ -1,25 +1,7 @@
#!/bin/bash #!/bin/bash
# Backup existing settings omarchy-refresh-config waybar/config.jsonc
cp -f ~/.config/waybar/config.jsonc ~/.config/waybar/config.jsonc.bak 2>/dev/null omarchy-refresh-config waybar/style.css
cp -f ~/.config/waybar/style.css ~/.config/waybar/style.css.bak 2>/dev/null
# Overwrite local waybar settings with the latest in Omarchy
cp -f ~/.local/share/omarchy/config/waybar/config.jsonc ~/.config/waybar/ 2>/dev/null
cp -f ~/.local/share/omarchy/config/waybar/style.css ~/.config/waybar/ 2>/dev/null
# Remove identical backup files
if cmp -s ~/.config/waybar/config.jsonc.bak ~/.config/waybar/config.jsonc; then
rm ~/.config/waybar/config.jsonc.bak
else
echo -e "\e[31mExisting .config/waybar/config.jsonc replaced with new Omarchy default, but a .bak file was made.\e[0m"
fi
if cmp -s ~/.config/waybar/style.css.bak ~/.config/waybar/style.css; then
rm ~/.config/waybar/style.css.bak
else
echo -e "\e[31mExisting .config/waybar/style.css replaced with new Omarchy default, but a .bak file was made.\e[0m"
fi
# Restart waybar # Restart waybar
pkill -SIGUSR2 waybar pkill -SIGUSR2 waybar

View File

@ -6,7 +6,7 @@ CURRENT_THEME_NAME=$(basename "$(realpath "$CURRENT_THEME_DIR")")
# Build themes list with pretty display names # Build themes list with pretty display names
mapfile -t themes < <( mapfile -t themes < <(
find "$THEMES_DIR" -mindepth 1 -maxdepth 1 \( -type d -o -type l \) | while read -r path; do find "$THEMES_DIR" -mindepth 1 -maxdepth 1 \( -type d -o -type l \) | sort | while read -r path; do
filename=$(basename "$path") filename=$(basename "$path")
display_name=$(echo "$filename" | sed -E 's/(^|-)([a-z])/\1\u\2/g; s/-/ /g') display_name=$(echo "$filename" | sed -E 's/(^|-)([a-z])/\1\u\2/g; s/-/ /g')
@ -15,7 +15,7 @@ mapfile -t themes < <(
else else
echo "$display_name" echo "$display_name"
fi fi
done | sort done
) )
# Show Walker menu # Show Walker menu

4
bin/omarchy-theme-update Executable file
View File

@ -0,0 +1,4 @@
#!/bin/bash
for dir in ~/.config/omarchy/themes/*/; do
[ -d "$dir" ] && [ ! -L "${dir%/}" ] && echo "Updating: $(basename "$dir")" && git -C "$dir" pull
done

View File

@ -1,26 +1,30 @@
#!/bin/bash #!/bin/bash
# Exit immediately if a command exits with a non-zero status
set -e
STATE_DIR="$HOME/.local/state/omarchy/migrations"
cd ~/.local/share/omarchy cd ~/.local/share/omarchy
if [[ $1 == "all" ]]; then # Create the migrations state directory, we will store an empty file for each migration that has already been performed.
# Run all migrations since the root commit mkdir -p "$STATE_DIR"
migration_starting_point=$(git log --max-parents=0 --first-parent --format="%H")
else
# Remember the commit we're at before upgrading in order to only run new migrations
migration_starting_point=$(git log -1 --format=%H)
fi
# Get the latest while trying to preserve any modifications # Get the latest while trying to preserve any modifications
git pull --autostash git pull --autostash
git diff --check || git reset --merge git diff --check || git reset --merge
# Run any pending migrations # Run any pending migrations
for file in $(git diff --name-only --diff-filter=A $migration_starting_point.. migrations/*.sh); do for file in migrations/*.sh; do
filename=$(basename "$file") filename=$(basename "$file")
migrate_at="${filename%.sh}" migrate_at="${filename%.sh}"
echo -e "\e[32m\nRunning migration ($migrate_at)\e[0m" # Migration already applied, to re-run it simply delete the state file and try again
[ -e "${STATE_DIR}/$filename" ] && continue
echo -e "\e[32m\nRunning migration (${filename%.sh})\e[0m"
source $file source $file
touch "${STATE_DIR}/$filename"
done done
# Update system packages # Update system packages
@ -29,3 +33,4 @@ yay -Syu --noconfirm
# Back to where we came from # Back to where we came from
cd - >/dev/null cd - >/dev/null

17
boot.sh
View File

@ -1,14 +1,15 @@
#!/bin/bash #!/bin/bash
ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ansi_art=' ▄▄▄
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ █ ▄█████ ▄███████████▄ ▄███████ ▄███████ ███████ ▄█ █ █▄
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ▀███████████ ▀▀███▀▀▀▀▀ ███ ▀▀███▀▀▀▀███▀ ▄██ ███
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
██████ █ ███ █ ███ █▀ ███ ███ ████████▀ ███ █▀ █████▀ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███ ███
███ ███ ' ███ ███ ███ ███ ███ ▄███▄▄▄███ ▄███▄▄▄██▀ ███ ▄███▄▄▄███▄ ███▄▄▄███
███ ███ ███ ███ ███ ▀███▀▀▀███ ▀███▀▀▀▀ ███ ▀▀███▀▀▀███ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ███ ███ ██████████ ███ █▄ ███ ███ ▄██ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
▀█████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ███████▀ ███ █▀ ▀█████▀
███ █▀ '
clear clear
echo -e "\n$ansi_art\n" echo -e "\n$ansi_art\n"

View File

@ -47,7 +47,7 @@
{ {
"type": "swap", "type": "swap",
"key": "└ └󰓡 ", "key": "└ └󰓡 ",
"keyColor": "green", "keyColor": "green"
}, },
{ {
"type": "custom", "type": "custom",
@ -79,6 +79,12 @@
"keyColor": "yellow" "keyColor": "yellow"
}, },
"break", "break",
{
"type": "command",
"key": "│ ├Ø",
"keyColor": "blue",
"text": "version=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/dev/null); echo \"Omarchy $version\""
},
{ {
"type": "de", "type": "de",
"key": " DE", "key": " DE",
@ -97,17 +103,17 @@
{ {
"type": "icons", "type": "icons",
"key": "│ ├󰀻", "key": "│ ├󰀻",
"keyColor": "blue", "keyColor": "blue"
}, },
{ {
"type": "cursor", "type": "cursor",
"key": "│ ├", "key": "│ ├",
"keyColor": "blue", "keyColor": "blue"
}, },
{ {
"type": "terminalfont", "type": "terminalfont",
"key": "│ ├", "key": "│ ├",
"keyColor": "blue", "keyColor": "blue"
}, },
{ {
"type": "terminal", "type": "terminal",
@ -138,7 +144,6 @@
"type": "custom", "type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘" "format": "\u001b[90m└────────────────────────────────────────────────────┘"
}, },
"break", "break"
] ]
} }

View File

@ -1,17 +1,20 @@
# See https://wiki.hyprland.org/Configuring/Monitors/ # See https://wiki.hyprland.org/Configuring/Monitors/
# List current monitors and resolutions possible: hyprctl monitors
# Change to 1 if on a 1x display (then change last "auto" to 1 in monitor=)
# Change to something like 1.75 for fractional scaling (can work well with 1.66667 monitor scaling)
# Note: You must relaunch Hyprland after changing any env like this (use Super+Esc, then Relaunch)
env = GDK_SCALE,2
# Use single default monitor (see all monitors with: hyprctl monitors)
# Format: monitor = [port], resolution, position, scale # Format: monitor = [port], resolution, position, scale
# You must relaunch Hyprland after changing any envs (use Super+Esc, then Relaunch)
# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K.
env = GDK_SCALE,2
monitor=,preferred,auto,auto monitor=,preferred,auto,auto
# Exmaple for fractional scaling that works well with GDK_SCALE,1.75 # Good compromise for 27" or 32" 4K monitors (but fractional!)
# env = GDK_SCALE,1.75
# monitor=,preferred,auto,1.666667 # monitor=,preferred,auto,1.666667
# Straight 1x setup for low-resolution displays like 1080p or 1440p
# env = GDK_SCALE,1
# monitor=,preferred,auto,1
# Example for Framework 13 w/ 6K XDR Apple display # Example for Framework 13 w/ 6K XDR Apple display
# monitor = DP-5, 6016x3384@60.00, auto, 2 # monitor = DP-5, 6016x3384@60, auto, 2
# monitor = eDP-1, 2880x1920@120.00, auto, 2 # monitor = eDP-1, 2880x1920@120, auto, 2

View File

@ -6,7 +6,7 @@ theme = "omarchy-default"
theme_base = [] theme_base = []
theme_location = ["~/.local/share/omarchy/default/walker/themes/"] theme_location = ["~/.local/share/omarchy/default/walker/themes/"]
monitor = "" monitor = ""
hotreload_theme = false hotreload_theme = true
as_window = false as_window = false
timeout = 0 timeout = 0
disable_click_to_close = false disable_click_to_close = false
@ -199,20 +199,21 @@ typeahead = true
hidden = true hidden = true
[builtins.finder] [builtins.finder]
use_fd = false use_fd = true
fd_flags = "--ignore-vcs --type file --type directory" fd_flags = "--ignore-vcs --type file --type directory"
cmd_alt = "xdg-open $(dirname ~/%RESULT%)" cmd_alt = "xdg-open $(dirname ~/%RESULT%)"
weight = 5 weight = 5
icon = "file" icon = "file"
name = "finder" name = "Finder"
placeholder = "Finder" placeholder = "Finder"
switcher_only = true switcher_only = true
ignore_gitignore = true ignore_gitignore = true
refresh = true refresh = true
concurrency = 8 concurrency = 8
show_icon_when_single = true show_icon_when_single = true
preview_images = false preview_images = true
hidden = true hidden = false
prefix = '.'
[builtins.runner] [builtins.runner]
eager_loading = true eager_loading = true

View File

@ -12,3 +12,6 @@ fi
# Set complete path # Set complete path
export PATH="./bin:$HOME/.local/bin:$HOME/.local/share/omarchy/bin:$PATH" export PATH="./bin:$HOME/.local/bin:$HOME/.local/share/omarchy/bin:$PATH"
set +h set +h
# Omarchy path
export OMARCHY_PATH="/home/$USER/.local/share/omarchy"

14
default/bashrc Normal file
View File

@ -0,0 +1,14 @@
# All the default Omarchy aliases and functions
# (don't mess with these directly, just overwrite them here!)
source ~/.local/share/omarchy/default/bash/rc
# Add your own exports, aliases, and functions here.
#
# Make an alias for invoking commands you use constantly
# alias p='python'
#
# Use VSCode instead of neovim as your default editor
# export EDITOR="code"
#
# Set a custom prompt with the directory revealed (alternatively use https://starship.rs)
# PS1="\W \[\e]0;\w\a\]$PS1"

View File

@ -43,6 +43,10 @@ bind = SUPER SHIFT, right, swapwindow, r
bind = SUPER SHIFT, up, swapwindow, u bind = SUPER SHIFT, up, swapwindow, u
bind = SUPER SHIFT, down, swapwindow, d bind = SUPER SHIFT, down, swapwindow, d
# Cycle through applications on active workspace
bind = ALT, Tab, cyclenext
bind = ALT, Tab, bringactivetotop
# Resize active window # Resize active window
bind = SUPER, minus, resizeactive, -100 0 bind = SUPER, minus, resizeactive, -100 0
bind = SUPER, equal, resizeactive, 100 0 bind = SUPER, equal, resizeactive, 100 0

View File

@ -32,5 +32,8 @@ bind = CTRL, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenshot outp
bind = ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord bind = ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord
bind = CTRL ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord output bind = CTRL ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord output
# Screensaver
bind = SUPER ALT, SPACE, exec, ~/.local/share/omarchy/bin/omarchy-launch-screensaver
# Color picker # Color picker
bind = SUPER, PRINT, exec, hyprpicker -a bind = SUPER, PRINT, exec, hyprpicker -a

View File

@ -70,7 +70,7 @@ animations {
} }
# Application-sepcific animation # Application-sepcific animation
layerrule=noanim,walker layerrule = noanim,walker
# Remove 1px border around hyprshot screenshots # Remove 1px border around hyprshot screenshots
layerrule = noanim, selection layerrule = noanim, selection

View File

@ -5,10 +5,11 @@ windowrule = suppressevent maximize, class:.*
windowrule = tile, class:^(Chromium)$ windowrule = tile, class:^(Chromium)$
# Float and center settings and previews # Float and center settings and previews
windowrule = float, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$ windowrule = float, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy|About)$
windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy|About)$
windowrule = size 800 600, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty)$ windowrule = size 800 600, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty)$
windowrule = size 645 450, class:Omarchy windowrule = size 590 450, class:Omarchy
windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$ windowrule = size 700 470 class:About
# Float and center file pickers # Float and center file pickers
windowrule = float, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Files?|All Files|Save) windowrule = float, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Files?|All Files|Save)
@ -16,9 +17,12 @@ windowrule = center, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Fi
# Float Steam, fullscreen RetroArch # Float Steam, fullscreen RetroArch
windowrule = float, class:steam windowrule = float, class:steam
windowrule = center, class:steam windowrule = center, class:steam, title:Steam
windowrule = fullscreen, class:^(com.libretro.RetroArch)$ windowrule = fullscreen, class:^(com.libretro.RetroArch)$
# Fullscreen screensaver
windowrule = fullscreen, class:Screensaver
# Just dash of opacity # Just dash of opacity
windowrule = opacity 0.97 0.9, class:.* windowrule = opacity 0.97 0.9, class:.*
windowrule = opacity 1 0.97, class:^(Chromium|chromium|google-chrome|google-chrome-unstable)$ windowrule = opacity 1 0.97, class:^(Chromium|chromium|google-chrome|google-chrome-unstable)$

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -38,6 +38,7 @@ source $OMARCHY_INSTALL/config/detect-keyboard-layout.sh
source $OMARCHY_INSTALL/config/fix-fkeys.sh source $OMARCHY_INSTALL/config/fix-fkeys.sh
source $OMARCHY_INSTALL/config/network.sh source $OMARCHY_INSTALL/config/network.sh
source $OMARCHY_INSTALL/config/power.sh source $OMARCHY_INSTALL/config/power.sh
source $OMARCHY_INSTALL/config/timezones.sh
source $OMARCHY_INSTALL/config/login.sh source $OMARCHY_INSTALL/config/login.sh
source $OMARCHY_INSTALL/config/nvidia.sh source $OMARCHY_INSTALL/config/nvidia.sh

View File

@ -4,7 +4,7 @@
cp -R ~/.local/share/omarchy/config/* ~/.config/ cp -R ~/.local/share/omarchy/config/* ~/.config/
# Use default bashrc from Omarchy # Use default bashrc from Omarchy
echo "source ~/.local/share/omarchy/default/bash/rc" >~/.bashrc cp ~/.local/share/omarchy/default/bashrc ~/.bashrc
# Ensure application directory exists for update-desktop-database # Ensure application directory exists for update-desktop-database
mkdir -p ~/.local/share/applications mkdir -p ~/.local/share/applications

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
if [[ ! -f /etc/sudoers.d/omarchy-tzupdate ]]; then if ! command -v tzupdate &>/dev/null; then
yay -S --noconfirm --needed tzupdate yay -S --noconfirm --needed tzupdate
sudo tee /etc/sudoers.d/omarchy-tzupdate >/dev/null <<EOF sudo tee /etc/sudoers.d/omarchy-tzupdate >/dev/null <<EOF
%wheel ALL=(root) NOPASSWD: /usr/bin/tzupdate, /usr/bin/timedatectl %wheel ALL=(root) NOPASSWD: /usr/bin/tzupdate, /usr/bin/timedatectl

View File

@ -1,36 +1,7 @@
#!/bin/bash #!/bin/bash
yay -S --noconfirm --needed ttf-font-awesome ttf-cascadia-mono-nerd ttf-ia-writer noto-fonts noto-fonts-emoji
if [ -z "$OMARCHY_BARE" ]; then if [ -z "$OMARCHY_BARE" ]; then
yay -S --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji noto-fonts-cjk noto-fonts-extra yay -S --noconfirm --needed ttf-jetbrains-mono noto-fonts-cjk noto-fonts-extra
else
yay -S --noconfirm --needed ttf-font-awesome noto-fonts noto-fonts-emoji
fi
mkdir -p ~/.local/share/fonts
if ! fc-list | grep -qi "CaskaydiaMono Nerd Font"; then
cd /tmp
wget https://github.com/ryanoasis/nerd-fonts/releases/latest/download/CascadiaMono.zip
unzip CascadiaMono.zip -d CascadiaFont
cp CascadiaFont/CaskaydiaMonoNerdFont-Regular.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFont-Bold.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFont-Italic.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFont-BoldItalic.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Regular.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Bold.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Italic.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-BoldItalic.ttf ~/.local/share/fonts
rm -rf CascadiaMono.zip CascadiaFont
fc-cache
cd -
fi
if ! fc-list | grep -qi "iA Writer Mono S"; then
cd /tmp
wget -O iafonts.zip https://github.com/iaolo/iA-Fonts/archive/refs/heads/master.zip
unzip iafonts.zip -d iaFonts
cp iaFonts/iA-Fonts-master/iA\ Writer\ Mono/Static/iAWriterMonoS-*.ttf ~/.local/share/fonts
rm -rf iafonts.zip iaFonts
fc-cache
cd -
fi fi

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,2 +1,2 @@
echo "Install Plymouth splash screen" echo "Install Plymouth splash screen"
source "$HOME/.local/share/omarchy/install/login.sh" source "$HOME/.local/share/omarchy/install/config/login.sh"

View File

@ -1,14 +0,0 @@
echo "Add missing Propo version of Caskaydia Mono Nerd Font for Waybar use"
if ! fc-list | grep -qi "CaskaydiaMono Nerd Font Propo"; then
cd /tmp
wget https://github.com/ryanoasis/nerd-fonts/releases/latest/download/CascadiaMono.zip
unzip CascadiaMono.zip -d CascadiaFont
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Regular.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Bold.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-Italic.ttf ~/.local/share/fonts
cp CascadiaFont/CaskaydiaMonoNerdFontPropo-BoldItalic.ttf ~/.local/share/fonts
rm -rf CascadiaMono.zip CascadiaFont
fc-cache
cd -
fi

View File

@ -1,5 +0,0 @@
echo "Add missing libappindicator-gtk3 for Dropbox icon tray to work right"
if ! pacman -Q libappindicator-gtk3 &>/dev/null; then
yay -S --noconfirm --needed libappindicator-gtk3
fi

View File

@ -1,6 +0,0 @@
echo "Add missing Dropbox dependencies"
# Dropbox is still there, but the dependencies aren't yet
if command -v dropbox-cli &>/dev/null && ! pacman -Q libappindicator-gtk3 &>/dev/null; then
yay -S --noconfirm --needed dropbox libappindicator-gtk3 python-gpgme nautilus-dropbox
fi

View File

@ -12,8 +12,6 @@ if [[ "$(uname -m)" == "x86_64" ]] && ! grep -q '^\[chaotic-aur\]' /etc/pacman.c
# Refresh pacman package databases # Refresh pacman package databases
sudo pacman -Sy sudo pacman -Sy
chaotic_ok=1
else else
echo "Failed to install Chaotic-AUR, so won't include it in pacman config!" echo "Failed to install Chaotic-AUR, so won't include it in pacman config!"
fi fi

View File

@ -1,5 +1,5 @@
echo "Allow updating of timezone by right-clicking on the clock (or running omarchy-cmd-tzupdate)" echo "Allow updating of timezone by right-clicking on the clock (or running omarchy-cmd-tzupdate)"
if [[ ! -f /etc/sudoers.d/omarchy-tzupdate ]]; then if ! command -v tzupdate &>/dev/null; then
bash ~/.local/share/omarchy/install/config/timezones.sh bash ~/.local/share/omarchy/install/config/timezones.sh
omarchy-refresh-waybar omarchy-refresh-waybar
fi fi

5
migrations/1753683888.sh Normal file
View File

@ -0,0 +1,5 @@
echo "Adding Omarchy version info to fastfetch"
if ! grep -q "omarchy" ~/.config/fastfetch/config.jsonc; then
cp ~/.local/share/omarchy/config/fastfetch/config.jsonc ~/.config/fastfetch/
fi

5
migrations/1753689791.sh Normal file
View File

@ -0,0 +1,5 @@
echo "Add the new ristretto theme as an option"
if [[ ! -L ~/.config/omarchy/themes/ristretto ]]; then
ln -nfs ~/.local/share/omarchy/themes/ristretto ~/.config/omarchy/themes/
fi

12
migrations/1753908454.sh Normal file
View File

@ -0,0 +1,12 @@
echo "Migrate from manually downloaded fonts to font packages"
if ! yay -Q ttf-cascadia-mono-nerd &>/dev/null; then
yay -S --noconfirm ttf-cascadia-mono-nerd
rm -rf ~/.local/share/fonts/Caskaydia*
fc-cache
fi
if ! yay -Q ttf-ia-writer &>/dev/null; then
yay -S --noconfirm ttf-ia-writer
rm -rf ~/.local/share/fonts/iAWriterMonoS*
fc-cache
fi

4
migrations/1753910761.sh Normal file
View File

@ -0,0 +1,4 @@
echo "Update Walker config to include . as the leader key for the finder"
if ! grep -q 'prefix = "."' ~/.config/walker/config.toml; then
omarchy-refresh-walker
fi

View File

@ -0,0 +1,33 @@
[colors]
[colors.normal]
black = "#2c2525"
red = "#fd6883"
green = "#adda78"
yellow = "#f9cc6c"
blue = "#f38d70"
magenta = "#a8a9eb"
cyan = "#85dacc"
white = "#e6d9db"
[colors.bright]
black = "#463a3a"
red = "#ff8297"
green = "#c8e292"
yellow = "#fcd675"
blue = "#f8a788"
magenta = "#bebffd"
cyan = "#9bf1e1"
white = "#f1e5e7"
[colors.cursor]
cursor = '#c3b7b8'
text = '#c3b7b8'
[colors.primary]
background = '#2c2525'
foreground = '#e6d9db'
[colors.selection]
background = '#403e41'
text = '#e6d9db'

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 KiB

View File

@ -0,0 +1,82 @@
#Btop monokai pro ristretto theme
#Reconfigured from monokai theme
# Main background, empty for terminal default, need to be empty if you want transparent background
theme[main_bg]="#2c2421"
# Main text color
theme[main_fg]="#e6d9db"
# Title color for boxes
theme[title]="#e6d9db"
# Higlight color for keyboard shortcuts
theme[hi_fg]="#fd6883"
# Background color of selected item in processes box
theme[selected_bg]="#3d2f2a"
# Foreground color of selected item in processes box
theme[selected_fg]="#e6d9db"
# Color of inactive/disabled text
theme[inactive_fg]="#72696a"
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
theme[proc_misc]="#adda78"
# Cpu box outline color
theme[cpu_box]="#5b4a45"
# Memory/disks box outline color
theme[mem_box]="#5b4a45"
# Net up/down box outline color
theme[net_box]="#5b4a45"
# Processes box outline color
theme[proc_box]="#5b4a45"
# Box divider line and small boxes line color
theme[div_line]="#72696a"
# Temperature graph colors
theme[temp_start]="#a8a9eb"
theme[temp_mid]="#f38d70"
theme[temp_end]="#fd6a85"
# CPU graph colors
theme[cpu_start]="#adda78"
theme[cpu_mid]="#f9cc6c"
theme[cpu_end]="#fd6883"
# Mem/Disk free meter
theme[free_start]="#5b4a45"
theme[free_mid]="#adda78"
theme[free_end]="#c5e2a3"
# Mem/Disk cached meter
theme[cached_start]="#5b4a45"
theme[cached_mid]="#85dacc"
theme[cached_end]="#b3e8dd"
# Mem/Disk available meter
theme[available_start]="#5b4a45"
theme[available_mid]="#f9cc6c"
theme[available_end]="#fce2a3"
# Mem/Disk used meter
theme[used_start]="#5b4a45"
theme[used_mid]="#fd6a85"
theme[used_end]="#feb5c7"
# Download graph colors
theme[download_start]="#3d2f2a"
theme[download_mid]="#a8a9eb"
theme[download_end]="#c5c6f0"
# Upload graph colors
theme[upload_start]="#3d2f2a"
theme[upload_mid]="#fd6a85"
theme[upload_end]="#feb5c7"

View File

@ -0,0 +1,4 @@
general {
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgb(e6d9db)
}

View File

@ -0,0 +1,5 @@
$color = rgba(44,37,37,1.0)
$inner_color = rgba(44,37,37,0.8)
$outer_color = rgba(230,217,219,1.0)
$font_color = rgba(230,217,219,1.0)
$check_color = rgba(253,104,131,1.0)

21
themes/ristretto/mako.ini Normal file
View File

@ -0,0 +1,21 @@
text-color=#e6d9db
border-color=#e6d9db
background-color=#2c2525
width=420
height=110
padding=10
border-size=2
font=Liberation Sans 11
anchor=top-right
outer-margin=20
default-timeout=5000
max-icon-size=32
[app-name=Spotify]
invisible=1
[mode=do-not-disturb]
invisible=true
[mode=do-not-disturb app-name=notify-send]
invisible=false

View File

@ -0,0 +1,22 @@
return {
{
"gthelding/monokai-pro.nvim",
config = function()
require("monokai-pro").setup({
filter = "ristretto",
override = function()
return {
NonText = { fg = "#948a8b" },
}
end,
})
vim.cmd([[colorscheme monokai-pro]])
end,
},
{
"LazyVim/LazyVim",
opts = {
colorscheme = "monokai-pro",
},
},
}

View File

@ -0,0 +1,5 @@
@define-color background-color #2c2525;
@define-color border-color #c3b7b8;
@define-color label #c3b7b8;
@define-color image #c3b7b8;
@define-color progress #c3b7b8;

View File

@ -0,0 +1,6 @@
@define-color selected-text #fabd2f;
@define-color text #e6d9db;
@define-color base #2c2525;
@define-color border #e6d9db;
@define-color foreground #e6d9db;
@define-color background #2c2525;

View File

@ -0,0 +1,2 @@
@define-color foreground #e6d9db;
@define-color background #2c2525;