67 Commits

Author SHA1 Message Date
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
b322d1cb47 Merge pull request #356 from basecamp/dev
Omarchy v1.6.2
2025-07-26 17:17:21 -04:00
d503b0cc37 Fix path 2025-07-26 17:14:31 -04:00
eeb784d087 Fix path here too 2025-07-26 16:49:43 -04:00
07a16487c0 Fix paths 2025-07-26 16:48:45 -04:00
c814aa534d Install if MISSING 2025-07-26 16:47:25 -04:00
6de445a2a6 Spelling 2025-07-26 16:37:49 -04:00
73d8c70e06 Ensure we detach from the session so swaybg doesn't die with it 2025-07-26 16:36:42 -04:00
e3bf801654 Don't add this twice on rerunning either 2025-07-26 15:58:38 -04:00
b4d75729d9 Don't add the keys twice 2025-07-26 15:53:53 -04:00
68a221e456 Simplify and make it idempotent 2025-07-26 15:52:00 -04:00
42963368c0 Reference correct file 2025-07-26 15:43:29 -04:00
cf688baa34 We don't have this any more 2025-07-26 15:42:59 -04:00
0a8a502cf2 Add migration to refresh walker to get the = leader key for calculator 2025-07-26 15:37:28 -04:00
9844d4ab22 Merge pull request #362 from ryanrhughes/add-prefix-to-walker-calc
Add "=" as default walker prefix
2025-07-26 15:32:54 -04:00
cec5482483 Merge pull request #361 from basecamp/adjust-logo-assets
Adjust logo assets
2025-07-26 13:23:20 -04:00
bd43aee907 Merge pull request #348 from ryanrhughes/combine-plymouth-and-login
Combine plymouth and login installers
2025-07-26 13:22:44 -04:00
6afbff2c27 Add "=" as default walker prefix 2025-07-26 13:12:28 -04:00
cc79664efc Combined login will run refresh commands 2025-07-26 13:09:28 -04:00
162952f102 Run combined login now 2025-07-26 13:09:28 -04:00
f693c33310 Combine plymouth and login 2025-07-26 13:09:28 -04:00
32aa290af5 Update logo svg 2025-07-26 10:02:50 -07:00
fbdbf852eb Update logo txt 2025-07-26 10:02:29 -07:00
5b654d0282 Be careful not to exit the entire migration runner 2025-07-26 13:02:22 -04:00
4929d3e201 Merge pull request #351 from JaxonWright/bare-improvements
Improvements to Bare Install
2025-07-26 13:01:31 -04:00
29bfeba5cc Merge pull request #357 from rmacklin/fix-step-total
Fix step total in install.sh subtexts
2025-07-26 12:55:43 -04:00
4e9e13f88d Merge pull request #359 from saullrb/dev
Better handle chaotic aur installation
2025-07-26 12:55:26 -04:00
7f3af84a60 #330: update "add missing installation of Zoom" migration to skip if bare install 2025-07-26 12:41:22 -04:00
62fb66a74a omarchy-refresh-applications(#330/#341): do not copy xtras .desktop declarations if in bare mode 2025-07-26 12:41:22 -04:00
cb48956a37 config.sh(#330): if bare install, create bare.mode file to allow updates to skip steps not applicable to bare installs 2025-07-26 12:41:22 -04:00
4e4e82c5b9 fix chaotic aur installation 2025-07-26 13:17:13 -03:00
302e92860e Fix step total in install.sh subtexts 2025-07-26 09:00:20 -07:00
eace29af7d Allow updating timezone from right-clicking the clock
Closes #314
2025-07-26 11:15:08 -04:00
51e2fa8598 Merge pull request #349 from ryanrhughes/update-theme-sh
Convert installers yay and check for existence to make re-runs faster
2025-07-26 09:55:08 -04:00
c081078e72 Protect pacman config from adopting broken mirror setup 2025-07-26 09:52:11 -04:00
3c2559297d Convert to yay and check for existence 2025-07-25 22:16:50 -04:00
49 changed files with 682 additions and 379 deletions

View File

@ -5,8 +5,8 @@ PATH="$PATH:$HOME/.local/share/omarchy/bin"
show_ascii_art() {
clear
tte -i ~/.local/share/omarchy/logo.txt --frame-rate 640 expand
echo " $OMARCHY_VERSION"
tte -i ~/.local/share/omarchy/logo.txt --frame-rate 640 --no-color expand
echo " $OMARCHY_VERSION"
}
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

5
bin/omarchy-cmd-tzupdate Executable file
View File

@ -0,0 +1,5 @@
#!/bin/bash
sudo tzupdate
new_timezone=$(timedatectl show -p Timezone --value)
notify-send "Timezone has been set to $new_timezone"

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

View File

@ -10,7 +10,8 @@ mkdir -p ~/.local/share/applications
cp ~/.local/share/omarchy/applications/*.desktop ~/.local/share/applications/
cp ~/.local/share/omarchy/applications/hidden/*.desktop ~/.local/share/applications/
if [ -z "$OMARCHY_BARE" ]; then
# Only copy xtras if user is not in bare mode
if [[ ! -f ~/.local/state/omarchy/bare.mode ]] && [ -z "$OMARCHY_BARE" ]; then
cp ~/.local/share/omarchy/applications/xtras/*.desktop ~/.local/share/applications/
fi

View File

@ -10,4 +10,4 @@ else
fi
pkill walker
uwsm app -- walker --gapplication-service &
setsid uwsm app -- walker --gapplication-service &

View File

@ -11,7 +11,7 @@ TOTAL=${#BACKGROUNDS[@]}
if [[ $TOTAL -eq 0 ]]; then
notify-send "No background was found for theme" -t 2000
pkill -x swaybg
uwsm app -- swaybg --color '#000000' >/dev/null 2>&1 &
setsid uwsm app -- swaybg --color '#000000' >/dev/null 2>&1 &
else
# Get current background from symlink
if [[ -L "$CURRENT_BACKGROUND_LINK" ]]; then
@ -44,5 +44,5 @@ else
# Relaunch swaybg
pkill -x swaybg
uwsm app -- swaybg -i "$CURRENT_BACKGROUND_LINK" -m fill >/dev/null 2>&1 &
setsid uwsm app -- swaybg -i "$CURRENT_BACKGROUND_LINK" -m fill >/dev/null 2>&1 &
fi

View File

@ -6,7 +6,7 @@ CURRENT_THEME_NAME=$(basename "$(realpath "$CURRENT_THEME_DIR")")
# Build themes list with pretty display names
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")
display_name=$(echo "$filename" | sed -E 's/(^|-)([a-z])/\1\u\2/g; s/-/ /g')
@ -15,7 +15,7 @@ mapfile -t themes < <(
else
echo "$display_name"
fi
done | sort
done
)
# Show Walker menu

19
boot.sh
View File

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

View File

@ -1,144 +1,149 @@
{
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
"logo": {
"padding": {
"top": 5,
"right": 6
}
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
"logo": {
"padding": {
"top": 5,
"right": 6
}
},
"modules": [
"break",
{
"type": "custom",
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐"
},
"modules": [
"break",
{
"type": "custom",
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐"
},
{
"type": "host",
"key": " PC",
"keyColor": "green"
},
{
"type": "cpu",
"key": "│ ├",
"showPeCoreCount": true,
"keyColor": "green"
},
{
"type": "gpu",
"key": "│ ├",
"detectionMethod": "pci",
"keyColor": "green"
},
{
"type": "display",
"key": "│ ├󱄄",
"keyColor": "green"
},
{
"type": "disk",
"key": "│ ├󰋊",
"keyColor": "green"
},
{
"type": "memory",
"key": "│ ├",
"keyColor": "green"
},
{
"type": "swap",
"key": "└ └󰓡 ",
"keyColor": "green",
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break",
{
"type": "custom",
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
},
{
"type": "os",
"key": " OS",
"keyColor": "yellow"
},
{
"type": "kernel",
"key": "│ ├",
"keyColor": "yellow"
},
{
"type": "packages",
"key": "│ ├󰏖",
"keyColor": "yellow"
},
{
"type": "shell",
"key": "└ └",
"keyColor": "yellow"
},
"break",
{
"type": "de",
"key": " DE",
"keyColor": "blue"
},
{
"type": "wm",
"key": "│ ├",
"keyColor": "blue"
},
{
"type": "wmtheme",
"key": "│ ├󰉼",
"keyColor": "blue"
},
{
"type": "icons",
"key": "│ ├󰀻",
"keyColor": "blue",
},
{
"type": "cursor",
"key": "│ ├",
"keyColor": "blue",
},
{
"type": "terminalfont",
"key": "│ ├",
"keyColor": "blue",
},
{
"type": "terminal",
"key": "└ └",
"keyColor": "blue"
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break",
{
"type": "custom",
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐"
},
{
"type": "command",
"key": " OS Age ",
"keyColor": "magenta",
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
},
{
"type": "uptime",
"key": " Uptime ",
"keyColor": "magenta"
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break",
]
{
"type": "host",
"key": " PC",
"keyColor": "green"
},
{
"type": "cpu",
"key": "│ ├",
"showPeCoreCount": true,
"keyColor": "green"
},
{
"type": "gpu",
"key": "│ ├",
"detectionMethod": "pci",
"keyColor": "green"
},
{
"type": "display",
"key": "│ ├󱄄",
"keyColor": "green"
},
{
"type": "disk",
"key": "│ ├󰋊",
"keyColor": "green"
},
{
"type": "memory",
"key": "│ ├",
"keyColor": "green"
},
{
"type": "swap",
"key": "└ └󰓡 ",
"keyColor": "green"
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break",
{
"type": "custom",
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐"
},
{
"type": "os",
"key": " OS",
"keyColor": "yellow"
},
{
"type": "kernel",
"key": "│ ├",
"keyColor": "yellow"
},
{
"type": "packages",
"key": "│ ├󰏖",
"keyColor": "yellow"
},
{
"type": "shell",
"key": "└ └",
"keyColor": "yellow"
},
"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",
"key": " DE",
"keyColor": "blue"
},
{
"type": "wm",
"key": "│ ├",
"keyColor": "blue"
},
{
"type": "wmtheme",
"key": "│ ├󰉼",
"keyColor": "blue"
},
{
"type": "icons",
"key": "│ ├󰀻",
"keyColor": "blue"
},
{
"type": "cursor",
"key": "│ ├",
"keyColor": "blue"
},
{
"type": "terminalfont",
"key": "│ ├",
"keyColor": "blue"
},
{
"type": "terminal",
"key": "└ └",
"keyColor": "blue"
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break",
{
"type": "custom",
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐"
},
{
"type": "command",
"key": " OS Age ",
"keyColor": "magenta",
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days"
},
{
"type": "uptime",
"key": " Uptime ",
"keyColor": "magenta"
},
{
"type": "custom",
"format": "\u001b[90m└────────────────────────────────────────────────────┘"
},
"break"
]
}

View File

@ -1,17 +1,20 @@
# See https://wiki.hyprland.org/Configuring/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)
# List current monitors and resolutions possible: hyprctl monitors
# 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
# 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
# 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
# monitor = DP-5, 6016x3384@60.00, auto, 2
# monitor = eDP-1, 2880x1920@120.00, auto, 2
# monitor = DP-5, 6016x3384@60, auto, 2
# monitor = eDP-1, 2880x1920@120, auto, 2

View File

@ -139,6 +139,7 @@ name = "Calculator"
icon = "accessories-calculator"
placeholder = "Calculator"
min_chars = 3 # Min chars to calculate. 3 allows "3+3"
prefix = "="
[builtins.windows]
weight = 5

View File

@ -50,7 +50,8 @@
"clock": {
"format": "{:%A %H:%M}",
"format-alt": "{:%d %B W%V %Y}",
"tooltip": false
"tooltip": false,
"on-click-right": "~/.local/share/omarchy/bin/omarchy-cmd-tzupdate"
},
"network": {
"format-icons": ["󰤯","󰤟","󰤢","󰤥","󰤨"],

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, down, swapwindow, d
# Cycle through applications on active workspace
bind = ALT, Tab, cyclenext
bind = ALT, Tab, bringactivetotop
# Resize active window
bind = SUPER, minus, 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 = 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
bind = SUPER, PRINT, exec, hyprpicker -a

View File

@ -5,10 +5,11 @@ windowrule = suppressevent maximize, class:.*
windowrule = tile, class:^(Chromium)$
# 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 645 450, class:Omarchy
windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$
windowrule = size 590 400, class:Omarchy
windowrule = size 700 470 class:About
# Float and center file pickers
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
windowrule = float, class:steam
windowrule = center, class:steam
windowrule = center, class:steam, title:Steam
windowrule = fullscreen, class:^(com.libretro.RetroArch)$
# Fullscreen screensaver
windowrule = fullscreen, class:Screensaver
# Just dash of opacity
windowrule = opacity 0.97 0.9, class:.*
windowrule = opacity 1 0.97, class:^(Chromium|chromium|google-chrome|google-chrome-unstable)$

View File

@ -39,12 +39,11 @@ source $OMARCHY_INSTALL/config/fix-fkeys.sh
source $OMARCHY_INSTALL/config/network.sh
source $OMARCHY_INSTALL/config/power.sh
source $OMARCHY_INSTALL/config/login.sh
source $OMARCHY_INSTALL/config/plymouth.sh
source $OMARCHY_INSTALL/config/nvidia.sh
# Development
show_logo decrypt 920
show_subtext "Installing terminal tools [2/10]"
show_subtext "Installing terminal tools [2/5]"
source $OMARCHY_INSTALL/development/terminal.sh
source $OMARCHY_INSTALL/development/development.sh
source $OMARCHY_INSTALL/development/nvim.sh
@ -54,7 +53,7 @@ source $OMARCHY_INSTALL/development/firewall.sh
# Desktop
show_logo slice 60
show_subtext "Installing desktop tools [3/10]"
show_subtext "Installing desktop tools [3/5]"
source $OMARCHY_INSTALL/desktop/desktop.sh
source $OMARCHY_INSTALL/desktop/hyprlandia.sh
source $OMARCHY_INSTALL/desktop/theme.sh

View File

@ -4,11 +4,17 @@
cp -R ~/.local/share/omarchy/config/* ~/.config/
# 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
mkdir -p ~/.local/share/applications
# If bare install, allow a way for its exclusions to not get added in updates
if [ -n "$OMARCHY_BARE" ]; then
mkdir -p ~/.local/state/omarchy
touch ~/.local/state/omarchy/bare.mode
fi
# Setup GPG configuration with multiple keyservers for better reliability
sudo mkdir -p /etc/gnupg
sudo cp ~/.local/share/omarchy/default/gpg/dirmngr.conf /etc/gnupg/

View File

@ -3,6 +3,6 @@
if [[ ! -f /etc/modprobe.d/hid_apple.conf ]]; then
echo "options hid_apple fnmode=2" | sudo tee /etc/modprobe.d/hid_apple.conf
# Rely on install/plymouth.sh to do the rebuild
# Rely on install/login.sh to do the rebuild
# sudo mkinitcpio -P
fi

View File

@ -1,13 +1,143 @@
#!/bin/bash
yay -S --noconfirm --needed uwsm
# Hyprland launched via UWSM and login directly as user, rely on disk encryption + hyprlock for security
if ! command -v uwsm &>/dev/null || ! command -v plymouth &>/dev/null; then
yay -S --noconfirm --needed uwsm plymouth
fi
# Compile the seamless login helper -- needed to prevent seeing terminal between loader and desktop
cat <<'CCODE' >/tmp/seamless-login.c
# ==============================================================================
# PLYMOUTH SETUP
# ==============================================================================
if ! grep -Eq '^HOOKS=.*plymouth' /etc/mkinitcpio.conf; then
# Backup original mkinitcpio.conf just in case
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/mkinitcpio.conf "/etc/mkinitcpio.conf.bak.${backup_timestamp}"
# Add plymouth to HOOKS array after 'base udev' or 'base systemd'
if grep "^HOOKS=" /etc/mkinitcpio.conf | grep -q "base systemd"; then
sudo sed -i '/^HOOKS=/s/base systemd/base systemd plymouth/' /etc/mkinitcpio.conf
elif grep "^HOOKS=" /etc/mkinitcpio.conf | grep -q "base udev"; then
sudo sed -i '/^HOOKS=/s/base udev/base udev plymouth/' /etc/mkinitcpio.conf
else
echo "Couldn't add the Plymouth hook"
fi
# Regenerate initramfs
sudo mkinitcpio -P
fi
# Add kernel parameters for Plymouth
if [ -d "/boot/loader/entries" ]; then # systemd-boot
echo "Detected systemd-boot"
for entry in /boot/loader/entries/*.conf; do
if [ -f "$entry" ]; then
# Skip fallback entries
if [[ "$(basename "$entry")" == *"fallback"* ]]; then
echo "Skipped: $(basename "$entry") (fallback entry)"
continue
fi
# Skip if splash it already present for some reason
if ! grep -q "splash" "$entry"; then
sudo sed -i '/^options/ s/$/ splash quiet/' "$entry"
else
echo "Skipped: $(basename "$entry") (splash already present)"
fi
fi
done
elif [ -f "/etc/default/grub" ]; then # Grub
echo "Detected grub"
# Backup GRUB config before modifying
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/default/grub "/etc/default/grub.bak.${backup_timestamp}"
# Check if splash is already in GRUB_CMDLINE_LINUX_DEFAULT
if ! grep -q "GRUB_CMDLINE_LINUX_DEFAULT.*splash" /etc/default/grub; then
# Get current GRUB_CMDLINE_LINUX_DEFAULT value
current_cmdline=$(grep "^GRUB_CMDLINE_LINUX_DEFAULT=" /etc/default/grub | cut -d'"' -f2)
# Add splash and quiet if not present
new_cmdline="$current_cmdline"
if [[ ! "$current_cmdline" =~ splash ]]; then
new_cmdline="$new_cmdline splash"
fi
if [[ ! "$current_cmdline" =~ quiet ]]; then
new_cmdline="$new_cmdline quiet"
fi
# Trim any leading/trailing spaces
new_cmdline=$(echo "$new_cmdline" | xargs)
sudo sed -i "s/^GRUB_CMDLINE_LINUX_DEFAULT=\".*\"/GRUB_CMDLINE_LINUX_DEFAULT=\"$new_cmdline\"/" /etc/default/grub
# Regenerate grub config
sudo grub-mkconfig -o /boot/grub/grub.cfg
else
echo "GRUB already configured with splash kernel parameters"
fi
elif [ -d "/etc/cmdline.d" ]; then # UKI
echo "Detected a UKI setup"
# Relying on mkinitcpio to assemble a UKI
# https://wiki.archlinux.org/title/Unified_kernel_image
if ! grep -q splash /etc/cmdline.d/*.conf; then
# Need splash, create the omarchy file
echo "splash" | sudo tee -a /etc/cmdline.d/omarchy.conf
fi
if ! grep -q quiet /etc/cmdline.d/*.conf; then
# Need quiet, create or append the omarchy file
echo "quiet" | sudo tee -a /etc/cmdline.d/omarchy.conf
fi
elif [ -f "/etc/kernel/cmdline" ]; then # UKI Alternate
# Alternate UKI kernel cmdline location
echo "Detected a UKI setup"
# Backup kernel cmdline config before modifying
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/kernel/cmdline "/etc/kernel/cmdline.bak.${backup_timestamp}"
current_cmdline=$(cat /etc/kernel/cmdline)
# Add splash and quiet if not present
new_cmdline="$current_cmdline"
if [[ ! "$current_cmdline" =~ splash ]]; then
new_cmdline="$new_cmdline splash"
fi
if [[ ! "$current_cmdline" =~ quiet ]]; then
new_cmdline="$new_cmdline quiet"
fi
# Trim any leading/trailing spaces
new_cmdline=$(echo "$new_cmdline" | xargs)
# Write new file
echo $new_cmdline | sudo tee /etc/kernel/cmdline
else
echo ""
echo " None of systemd-boot, GRUB, or UKI detected. Please manually add these kernel parameters:"
echo " - splash (to see the graphical splash screen)"
echo " - quiet (for silent boot)"
echo ""
fi
if [ "$(plymouth-set-default-theme)" != "omarchy" ]; then
sudo cp -r "$HOME/.local/share/omarchy/default/plymouth" /usr/share/plymouth/themes/omarchy/
sudo plymouth-set-default-theme -R omarchy
fi
# ==============================================================================
# SEAMLESS LOGIN
# ==============================================================================
if [ ! -x /usr/local/bin/seamless-login ]; then
# Compile the seamless login helper -- needed to prevent seeing terminal between loader and desktop
cat <<'CCODE' >/tmp/seamless-login.c
/*
* Seamless Login - Minimal SDDM-style Plymouth transition
* Replicates SDDM's VT management for seamless auto-login
*/
* Seamless Login - Minimal SDDM-style Plymouth transition
* Replicates SDDM's VT management for seamless auto-login
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
@ -76,12 +206,14 @@ int main(int argc, char *argv[]) {
}
CCODE
gcc -o /tmp/seamless-login /tmp/seamless-login.c
sudo mv /tmp/seamless-login /usr/local/bin/seamless-login
sudo chmod +x /usr/local/bin/seamless-login
rm /tmp/seamless-login.c
gcc -o /tmp/seamless-login /tmp/seamless-login.c
sudo mv /tmp/seamless-login /usr/local/bin/seamless-login
sudo chmod +x /usr/local/bin/seamless-login
rm /tmp/seamless-login.c
fi
cat <<EOF | sudo tee /etc/systemd/system/omarchy-seamless-login.service
if [ ! -f /etc/systemd/system/omarchy-seamless-login.service ]; then
cat <<EOF | sudo tee /etc/systemd/system/omarchy-seamless-login.service
[Unit]
Description=Omarchy Seamless Auto-Login
Documentation=https://github.com/basecamp/omarchy
@ -107,19 +239,29 @@ PAMName=login
[Install]
WantedBy=graphical.target
EOF
fi
# Make plymouth remain until graphical.target
sudo mkdir -p /etc/systemd/system/plymouth-quit.service.d
sudo tee /etc/systemd/system/plymouth-quit.service.d/wait-for-graphical.conf <<'EOF'
if [ ! -f /etc/systemd/system/plymouth-quit.service.d/wait-for-graphical.conf ]; then
# Make plymouth remain until graphical.target
sudo mkdir -p /etc/systemd/system/plymouth-quit.service.d
sudo tee /etc/systemd/system/plymouth-quit.service.d/wait-for-graphical.conf <<'EOF'
[Unit]
After=multi-user.target
EOF
fi
# Prevent plymouth-quit-wait.service
sudo systemctl mask plymouth-quit-wait.service
# Mask plymouth-quit-wait.service only if not already masked
if ! systemctl is-enabled plymouth-quit-wait.service | grep -q masked; then
sudo systemctl mask plymouth-quit-wait.service
sudo systemctl daemon-reload
fi
sudo systemctl daemon-reload
sudo systemctl enable omarchy-seamless-login.service
# Enable omarchy-seamless-login.service only if not already enabled
if ! systemctl is-enabled omarchy-seamless-login.service | grep -q enabled; then
sudo systemctl enable omarchy-seamless-login.service
fi
# Disable getty@tty1 to prevent conflicts
sudo systemctl disable getty@tty1.service
# Disable getty@tty1.service only if not already disabled
if ! systemctl is-enabled getty@tty1.service | grep -q disabled; then
sudo systemctl disable getty@tty1.service
fi

View File

@ -1,121 +0,0 @@
#!/bin/bash
if ! command -v plymouth &>/dev/null; then
yay -S --noconfirm --needed plymouth
# Skip if plymouth already exists for some reason
# Backup original mkinitcpio.conf just in case
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/mkinitcpio.conf "/etc/mkinitcpio.conf.bak.${backup_timestamp}"
# Add plymouth to HOOKS array after 'base udev' or 'base systemd'
if grep "^HOOKS=" /etc/mkinitcpio.conf | grep -q "base systemd"; then
sudo sed -i '/^HOOKS=/s/base systemd/base systemd plymouth/' /etc/mkinitcpio.conf
elif grep "^HOOKS=" /etc/mkinitcpio.conf | grep -q "base udev"; then
sudo sed -i '/^HOOKS=/s/base udev/base udev plymouth/' /etc/mkinitcpio.conf
else
echo "Couldn't add the Plymouth hook"
fi
# Regenerate initramfs
sudo mkinitcpio -P
# Add kernel parameters for Plymouth (systemd-boot only)
if [ -d "/boot/loader/entries" ]; then
echo "Detected systemd-boot"
for entry in /boot/loader/entries/*.conf; do
if [ -f "$entry" ]; then
# Skip fallback entries
if [[ "$(basename "$entry")" == *"fallback"* ]]; then
echo "Skipped: $(basename "$entry") (fallback entry)"
continue
fi
# Skip if splash it already present for some reason
if ! grep -q "splash" "$entry"; then
sudo sed -i '/^options/ s/$/ splash quiet/' "$entry"
else
echo "Skipped: $(basename "$entry") (splash already present)"
fi
fi
done
elif [ -f "/etc/default/grub" ]; then
echo "Detected grub"
# Backup GRUB config before modifying
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/default/grub "/etc/default/grub.bak.${backup_timestamp}"
# Check if splash is already in GRUB_CMDLINE_LINUX_DEFAULT
if ! grep -q "GRUB_CMDLINE_LINUX_DEFAULT.*splash" /etc/default/grub; then
# Get current GRUB_CMDLINE_LINUX_DEFAULT value
current_cmdline=$(grep "^GRUB_CMDLINE_LINUX_DEFAULT=" /etc/default/grub | cut -d'"' -f2)
# Add splash and quiet if not present
new_cmdline="$current_cmdline"
if [[ ! "$current_cmdline" =~ splash ]]; then
new_cmdline="$new_cmdline splash"
fi
if [[ ! "$current_cmdline" =~ quiet ]]; then
new_cmdline="$new_cmdline quiet"
fi
# Trim any leading/trailing spaces
new_cmdline=$(echo "$new_cmdline" | xargs)
sudo sed -i "s/^GRUB_CMDLINE_LINUX_DEFAULT=\".*\"/GRUB_CMDLINE_LINUX_DEFAULT=\"$new_cmdline\"/" /etc/default/grub
# Regenerate grub config
sudo grub-mkconfig -o /boot/grub/grub.cfg
else
echo "GRUB already configured with splash kernel parameters"
fi
elif [ -d "/etc/cmdline.d" ]; then
echo "Detected a UKI setup"
# Relying on mkinitcpio to assemble a UKI
# https://wiki.archlinux.org/title/Unified_kernel_image
if ! grep -q splash /etc/cmdline.d/*.conf; then
# Need splash, create the omarchy file
echo "splash" | sudo tee -a /etc/cmdline.d/omarchy.conf
fi
if ! grep -q quiet /etc/cmdline.d/*.conf; then
# Need quiet, create or append the omarchy file
echo "quiet" | sudo tee -a /etc/cmdline.d/omarchy.conf
fi
elif [ -f "/etc/kernel/cmdline" ]; then
# Alternate UKI kernel cmdline location
echo "Detected a UKI setup"
# Backup kernel cmdline config before modifying
backup_timestamp=$(date +"%Y%m%d%H%M%S")
sudo cp /etc/kernel/cmdline "/etc/kernel/cmdline.bak.${backup_timestamp}"
current_cmdline=$(cat /etc/kernel/cmdline)
# Add splash and quiet if not present
new_cmdline="$current_cmdline"
if [[ ! "$current_cmdline" =~ splash ]]; then
new_cmdline="$new_cmdline splash"
fi
if [[ ! "$current_cmdline" =~ quiet ]]; then
new_cmdline="$new_cmdline quiet"
fi
# Trim any leading/trailing spaces
new_cmdline=$(echo "$new_cmdline" | xargs)
# Write new file
echo $new_cmdline | sudo tee /etc/kernel/cmdline
else
echo ""
echo "Neither systemd-boot nor GRUB detected. Please manually add these kernel parameters:"
echo " - splash (to see the graphical splash screen)"
echo " - quiet (for silent boot)"
echo ""
fi
# Copy and set the Plymouth theme
sudo cp -r "$HOME/.local/share/omarchy/default/plymouth" /usr/share/plymouth/themes/omarchy/
sudo plymouth-set-default-theme -R omarchy
fi

View File

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

View File

@ -1,10 +1,15 @@
#!/bin/bash
# Use dark mode for QT apps too (like kdenlive)
sudo pacman -S --noconfirm kvantum-qt5
if ! yay -Q kvantum-qt5 &>/dev/null; then
yay -S --noconfirm kvantum-qt5
fi
# Prefer dark mode everything
sudo pacman -S --noconfirm gnome-themes-extra # Adds Adwaita-dark theme
if ! yay -Q gnome-themes-extra &>/dev/null; then
yay -S --noconfirm gnome-themes-extra # Adds Adwaita-dark theme
fi
gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark"
gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"

View File

@ -1,37 +1,41 @@
#!/bin/bash
# Only add Chaotic-AUR if the architecture is x86_64 so ARM users can build the packages
if [[ "$(uname -m)" == "x86_64" ]]; then
# Import Chaotic-AUR key
sudo pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
sudo pacman-key --lsign-key 3056513887B78AEB
if [[ "$(uname -m)" == "x86_64" ]] && ! command -v yay &>/dev/null; then
# Try installing Chaotic-AUR keyring and mirrorlist
if ! pacman-key --list-keys 3056513887B78AEB >/dev/null 2>&1 &&
sudo pacman-key --recv-key 3056513887B78AEB &&
sudo pacman-key --lsign-key 3056513887B78AEB &&
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst' &&
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'; then
# Install Chaotic-AUR keyring and mirrorlist
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
# Add Chaotic-AUR repo to pacman config
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
# Add Chaotic-AUR repo to pacman config
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
# Install yay
sudo pacman -S --needed --noconfirm yay
else
sudo pacman -S --needed --noconfirm base-devel
if ! command -v yay &>/dev/null; then
cd /tmp
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si --noconfirm
cd -
rm -rf yay-bin
cd ~
# Install yay directly from Chaotic-AUR
sudo pacman -Sy --needed --noconfirm yay
else
echo "Failed to install Chaotic-AUR, so won't include it in pacman config!"
fi
fi
# Manually install yay from AUR if not already available
if ! command -v yay &>/dev/null; then
# Install build tools
sudo pacman -Sy --needed --noconfirm base-devel
cd /tmp
rm -rf yay-bin
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si --noconfirm
cd -
rm -rf yay-bin
cd ~
fi
# Add fun and color to the pacman installer
sudo sed -i '/^\[options\]/a Color\nILoveCandy' /etc/pacman.conf
if ! grep -q "ILoveCandy" /etc/pacman.conf; then
sudo sed -i '/^\[options\]/a Color\nILoveCandy' /etc/pacman.conf
fi

1
logo.svg Normal file
View File

@ -0,0 +1 @@
<svg fill="none" height="285" viewBox="0 0 1215 285" width="1215" xmlns="http://www.w3.org/2000/svg"><g fill="#000"><path clip-rule="evenodd" d="m720 120h-15v15h-14.998v14.999l-60.002.001v15.002l90-.002v.002h.002l-.002 89.998h-15v15h-13v15h-17v-89.998h-45v90l-45-.002v-89.998h-14.998v-30h14.998v-15.002h-14.998v-30.001h14.998v-75h15v-14.997h15v-15.002h105.002zm-90-.001h45v-74.997h-45z" fill-rule="evenodd"/><path clip-rule="evenodd" d="m105 30.002h15v14.997h15v180.001h-15v15h-15v15.002h-75v-15.002h-15v-15h-15v-180.001h15v-14.997h15v-15.002h75zm-60 194.998h45v-179.998h-45z" fill-rule="evenodd"/><path d="m300 15h60v15h15v14.999h15v180.001h-15v15h-15v15h-15l-.004-209.998h-44.994v-.002h-.002v210.002h-45v-210h-44.998v179.997h-.002v30.003h-15v-15.002h-15v-15h-14.998v-180.001h14.998v-14.999h15v-15h60v-15h45z"/><path clip-rule="evenodd" d="m555 225h-15v15h-15v15h-15v-105.001l-44.998.001v105.002h-45.002v-105.002h-15v-30.001h15v-75h15.002v-14.997h15v-15.002h105zm-89.998-105.001h44.998v-74.997h-44.998z" fill-rule="evenodd"/><path d="m885 75h-15v15h-15v15h-15v-59.998h-45v179.998h45v-59.998h15v14.997h15v15.001h15v30h-15v15h-15v15.002l-105-.002v-210.001h14.998v-14.997h15.002v-15.002h105z"/><path d="m960 119.999h45v-104.999h15v15h15v14.999h15v75.001h15v15h-15v90h-15v15h-15v15h-15v-105h-45v105.002l-45-.002v-105h-30v-15h15v-15.001h15v-75h15v-14.997h15v-15.002h15z"/><path d="m1125 119.999h45v-104.999h15v15h15v15h15v180h-15v15h-15v15.002l-75-.002v-15h-15v-15h-15v-45.001h15v-14.997-.002h30v60h45v-75h-90v-105.001h15v-14.997h15v-15.002h15z"/></g></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1,9 +1,10 @@
▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ █████ ██▄
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███▄▄▄███
███ ███ ███ ███ ███ ███ ███ ███▄▄▄▄██ ███ ███▄▄▄▄███▄ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ███████████ ▀███▀▀▀▀▀ ███ ▀▀███▀▀▀▀███ ▄██ ███
███ ███ ███ ███ ███ ███ ███ ███████████ ███ █▄ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██ ███
██████ █ ███ █ ███ █▀ ███ ███ ████████ ███ █▀ █████▀
███ ███
▄▄
█████▄ ▄███████████ ██████ ██████ ██████ █ █▄ ▄█ █▄
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ██ ███ █▀ ███ ███ ███ ███
███ ███ ███ ███ ███ ███▄▄▄██████▄▄▄██▀ ███ ███▄▄▄███▄ ███▄▄▄███
███ ███ ███ ███ ███ ███▀▀▀███ ███▀▀▀▀ ███ ▀▀███▀▀▀███ ▀▀▀▀▀▀███
███ ███ ███ ███ ███ ███ ███ █████████ ███ █ ███ ███ ██ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██ ███ ███ ███
▀█████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ███████▀ ███ █▀ █████▀
███ █▀

View File

@ -1,2 +1,2 @@
echo "Permanently fix F-keys on Apple-mode keyboards (like Lofree Flow84)"
source ~/.local/share/omarchy/install/fix-fkeys.sh
source ~/.local/share/omarchy/install/config/fix-fkeys.sh

View File

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

View File

@ -14,6 +14,5 @@ if ! command -v uwsm &>/dev/null; then
sed -i 's/^GTK_IM_MODULE=fcitx$//' "$HOME/.config/environment.d/fcitx.conf"
fi
omarchy-refresh-plymouth -y
source ~/.local/share/omarchy/install/login.sh
source ~/.local/share/omarchy/install/config/login.sh
fi

View File

@ -1,2 +1,2 @@
echo "Enable ufw firewall"
source ~/.local/share/omarchy/install/firewall.sh
source ~/.local/share/omarchy/install/development/firewall.sh

View File

@ -1,5 +1,7 @@
echo "Add missing installation of Zoom"
if [[ ! -f ~/.local/state/omarchy/bare.mode ]]; then
echo "Add missing installation of Zoom"
if ! command -v zoom &>/dev/null; then
yay -S --noconfirm --needed zoom
if ! command -v zoom &>/dev/null; then
yay -S --noconfirm --needed zoom
fi
fi

View File

@ -1,17 +1,20 @@
echo "Add Chaotic-AUR to get compiled binaries"
if [[ "$(uname -m)" == "x86_64" ]] && ! grep -q '^\[chaotic-aur\]' /etc/pacman.conf; then
# Import Chaotic-AUR key
sudo pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
sudo pacman-key --lsign-key 3056513887B78AEB
# Try installing Chaotic-AUR keyring and mirrorlist
if sudo pacman-key --recv-key 3056513887B78AEB &&
sudo pacman-key --lsign-key 3056513887B78AEB &&
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst' &&
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'; then
# Install Chaotic-AUR keyring and mirrorlist
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
# Add Chaotic-AUR repo to pacman config
echo -e '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist' | sudo tee -a /etc/pacman.conf >/dev/null
# Add Chaotic-AUR repo to pacman config
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
# Refresh pacman package databases
sudo pacman -Sy
chaotic_ok=1
else
echo "Failed to install Chaotic-AUR, so won't include it in pacman config!"
fi
fi

View File

@ -1,4 +1,4 @@
echo "Add Terminal Text Effects for rizzing Omarchy"
if yay -Qe python-terminaltexteffects &>/dev/null; then
if ! yay -Qe python-terminaltexteffects &>/dev/null; then
yay -S --noconfirm --needed python-terminaltexteffects
fi

5
migrations/1753495989.sh Normal file
View File

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

4
migrations/1753558374.sh Normal file
View File

@ -0,0 +1,4 @@
echo "Update Walker config to include = as the leader key for the calculator"
if ! grep -q 'prefix = "="' ~/.config/walker/config.toml; then
omarchy-refresh-walker
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

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

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;