Merge pull request #305 from basecamp/dev

Omarchy v1.6.1
This commit is contained in:
David Heinemeier Hansson
2025-07-23 14:56:04 -04:00
committed by GitHub
25 changed files with 146 additions and 20 deletions

View File

@ -24,12 +24,13 @@ main_menu() {
update_menu() { update_menu() {
show_ascii_art show_ascii_art
local menu=("Omarchy" "Waybar" "Walker" "Plymouth" "Desktop apps" "Back") local menu=("Omarchy" "Waybar" "Walker" "Plymouth" "SwayOSD" "Desktop apps" "Back")
local commands=( local commands=(
"omarchy-update" "omarchy-update"
"omarchy-refresh-waybar" "omarchy-refresh-waybar"
"omarchy-refresh-walker" "omarchy-refresh-walker"
"omarchy-refresh-plymouth" "omarchy-refresh-plymouth"
"omarchy-refresh-swayosd"
"omarchy-refresh-applications" "omarchy-refresh-applications"
"main_menu" "main_menu"
) )
@ -119,12 +120,13 @@ setup_menu() {
} }
setup_docker_dbs() { setup_docker_dbs() {
options=("MySQL" "Redis" "PostgreSQL") options=("MariaDB" "MySQL" "Redis" "PostgreSQL")
choices=$(printf "%s\n" "${options[@]}" | gum choose --no-limit --header "Select databases (space to select, return to install, esc to cancel)") || main_menu choices=$(printf "%s\n" "${options[@]}" | gum choose --no-limit --header "Select databases (space to select, return to install, esc to cancel)") || main_menu
if [[ -n "$choices" ]]; then if [[ -n "$choices" ]]; then
for db in $choices; do for db in $choices; do
case $db in case $db in
MariaDB) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mariadb11 -e MARIADB_ROOT_PASSWORD= -e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=true mariadb:11.8 ;;
MySQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4 ;; MySQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4 ;;
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;; Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
PostgreSQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16 ;; PostgreSQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16 ;;

13
bin/omarchy-refresh-swayosd Executable file
View File

@ -0,0 +1,13 @@
#!/bin/bash
cp -f ~/.config/swayosd/config.toml ~/.config/swayosd/config.toml.bak 2>/dev/null
cp -f ~/.local/share/omarchy/config/swayosd/config.toml ~/.config/swayosd/ 3>/dev/null
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
setsid uwsm app -- swayosd-server &>/dev/null &

View File

@ -35,11 +35,11 @@ fi
# Trigger alacritty config reload # Trigger alacritty config reload
touch "$HOME/.config/alacritty/alacritty.toml" touch "$HOME/.config/alacritty/alacritty.toml"
# Trigger btop config reload
pkill -SIGUSR2 btop
# Restart components to apply new theme # Restart components to apply new theme
pkill -SIGUSR2 btop
pkill -SIGUSR2 waybar pkill -SIGUSR2 waybar
pkill swayosd-server
setsid uwsm app -- swayosd-server &>/dev/null &
makoctl reload makoctl reload
hyprctl reload hyprctl reload

View File

@ -0,0 +1,4 @@
[server]
show_percentage = true
max_volume = 150
style = "./style.css"

28
config/swayosd/style.css Normal file
View File

@ -0,0 +1,28 @@
@import "../omarchy/current/theme/swayosd.css";
window {
border-radius: 0;
opacity: 0.97;
border: 2px solid @border-color;
background-color: @background-color;
}
label {
font-family: 'CaskaydiaMono Nerd Font', monospace;
font-size: 11pt;
color: @label;
}
image {
color: @image;
}
progressbar {
border-radius: 0;
}
progress {
background-color: @progress;
}

View File

@ -4,4 +4,4 @@ source ~/.local/share/omarchy/default/bash/functions
source ~/.local/share/omarchy/default/bash/prompt source ~/.local/share/omarchy/default/bash/prompt
source ~/.local/share/omarchy/default/bash/init source ~/.local/share/omarchy/default/bash/init
source ~/.local/share/omarchy/default/bash/envs source ~/.local/share/omarchy/default/bash/envs
bind -f ~/.local/share/omarchy/default/bash/inputrc [[ $- == *i* ]] && bind -f ~/.local/share/omarchy/default/bash/inputrc

View File

@ -1,13 +1,16 @@
# Only display the OSD on the currently focused monitor
$osdclient = swayosd-client --monitor "$(hyprctl monitors -j | jq -r '.[] | select(.focused == true).name')"
# Laptop multimedia keys for volume and LCD brightness (with OSD) # Laptop multimedia keys for volume and LCD brightness (with OSD)
bindel = ,XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise bindel = ,XF86AudioRaiseVolume, exec, $osdclient --output-volume raise
bindel = ,XF86AudioLowerVolume, exec, swayosd-client --output-volume lower bindel = ,XF86AudioLowerVolume, exec, $osdclient --output-volume lower
bindel = ,XF86AudioMute, exec, swayosd-client --output-volume mute-toggle bindel = ,XF86AudioMute, exec, $osdclient --output-volume mute-toggle
bindel = ,XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle bindel = ,XF86AudioMicMute, exec, $osdclient --input-volume mute-toggle
bindel = ,XF86MonBrightnessUp, exec, swayosd-client --brightness raise bindel = ,XF86MonBrightnessUp, exec, $osdclient --brightness raise
bindel = ,XF86MonBrightnessDown, exec, swayosd-client --brightness lower bindel = ,XF86MonBrightnessDown, exec, $osdclient --brightness lower
# Requires playerctl # Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioNext, exec, $osdclient --playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause bindl = , XF86AudioPause, exec, $osdclient --playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioPlay, exec, $osdclient --playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous bindl = , XF86AudioPrev, exec, $osdclient --playerctl previous

View File

@ -6,7 +6,7 @@ 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)$
windowrule = size 800 600, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer)$ windowrule = size 800 600, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty)$
windowrule = size 645 450, class:Omarchy windowrule = size 645 450, class:Omarchy
windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$ windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$

View File

@ -3,6 +3,9 @@
# Copy over Omarchy configs # Copy over Omarchy configs
cp -R ~/.local/share/omarchy/config/* ~/.config/ cp -R ~/.local/share/omarchy/config/* ~/.config/
# Use default bashrc from Omarchy
echo "source ~/.local/share/omarchy/default/bash/rc" >~/.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
@ -13,8 +16,9 @@ sudo chmod 644 /etc/gnupg/dirmngr.conf
sudo gpgconf --kill dirmngr || true sudo gpgconf --kill dirmngr || true
sudo gpgconf --launch dirmngr || true sudo gpgconf --launch dirmngr || true
# Use default bashrc from Omarchy # Increase lockout limit to 10 and decrease timeout to 2 minutes
echo "source ~/.local/share/omarchy/default/bash/rc" >~/.bashrc sudo sed -i 's|^\(auth\s\+required\s\+pam_faillock.so\)\s\+preauth.*$|\1 preauth silent deny=10 unlock_time=120|' "/etc/pam.d/system-auth"
sudo sed -i 's|^\(auth\s\+\[default=die\]\s\+pam_faillock.so\)\s\+authfail.*$|\1 authfail deny=10 unlock_time=120|' "/etc/pam.d/system-auth"
# Set common git aliases # Set common git aliases
git config --global alias.co checkout git config --global alias.co checkout

View File

@ -35,6 +35,9 @@ if [ -n "$(lspci | grep -i 'nvidia')" ]; then
sudo sed -i '/^#\[multilib\]/,/^#Include/ s/^#//' /etc/pacman.conf sudo sed -i '/^#\[multilib\]/,/^#Include/ s/^#//' /etc/pacman.conf
fi fi
# force package database refresh
sudo pacman -Syy
# Install packages # Install packages
PACKAGES_TO_INSTALL=( PACKAGES_TO_INSTALL=(
"${KERNEL_HEADERS}" "${KERNEL_HEADERS}"

View File

@ -15,7 +15,7 @@ for f in ~/.local/share/omarchy/themes/*; do ln -s "$f" ~/.config/omarchy/themes
# Set initial theme # Set initial theme
mkdir -p ~/.config/omarchy/current mkdir -p ~/.config/omarchy/current
ln -snf ~/.config/omarchy/themes/tokyo-night ~/.config/omarchy/current/theme ln -snf ~/.config/omarchy/themes/tokyo-night ~/.config/omarchy/current/theme
ln -snf ~/.config/omarchy/current/theme/backgrounds/1-Pawel-Czerwinski-Abstract-Purple-Blue.jpg ~/.config/omarchy/current/background ln -snf ~/.config/omarchy/current/theme/backgrounds/1-scenery-pink-lakeside-sunset-lake-landscape-scenic-panorama-7680x3215-144.png ~/.config/omarchy/current/background
# Set specific app links for current theme # Set specific app links for current theme
ln -snf ~/.config/omarchy/current/theme/neovim.lua ~/.config/nvim/lua/plugins/theme.lua ln -snf ~/.config/omarchy/current/theme/neovim.lua ~/.config/nvim/lua/plugins/theme.lua

9
migrations/1753224615.sh Executable file
View File

@ -0,0 +1,9 @@
echo "Adding SwayOSD theming"
if [[ ! -d ~/.config/swayosd ]]; then
mkdir -p ~/.config/swayosd
cp -r ~/.local/share/omarchy/config/swayosd/* ~/.config/swayosd/
pkill swayosd-server
setsid uwsm app -- swayosd-server &>/dev/null &
fi

6
migrations/1753286633.sh Normal file
View File

@ -0,0 +1,6 @@
echo "Increase lockout limit to 10, decrease timeout to 2 minutes"
if ! grep -q 'deny=10' /etc/pam.d/system-auth; then
sudo sed -i 's|^\(auth\s\+required\s\+pam_faillock.so\)\s\+preauth.*$|\1 preauth silent deny=10 unlock_time=120|' "/etc/pam.d/system-auth"
sudo sed -i 's|^\(auth\s\+\[default=die\]\s\+pam_faillock.so\)\s\+authfail.*$|\1 authfail deny=10 unlock_time=120|' "/etc/pam.d/system-auth"
fi

View File

@ -0,0 +1,6 @@
@define-color background-color #eff1f5;
@define-color border-color #4c4f69;
@define-color label #4c4f69;
@define-color image #4c4f69;
@define-color progress #4c4f69;

View File

@ -0,0 +1,6 @@
@define-color background-color #24273a;
@define-color border-color #c6d0f5;
@define-color label #c6d0f5;
@define-color image #c6d0f5;
@define-color progress #c6d0f5;

View File

@ -0,0 +1,6 @@
@define-color background-color #2d353b;
@define-color border-color #d3c6aa;
@define-color label #d3c6aa;
@define-color image #d3c6aa;
@define-color progress #d3c6aa;

View File

@ -0,0 +1,6 @@
@define-color background-color #282828;
@define-color border-color #ebdbb2;
@define-color label #ebdbb2;
@define-color image #ebdbb2;
@define-color progress #ebdbb2;

View File

@ -0,0 +1,6 @@
@define-color background-color #1f1f28;
@define-color border-color #dcd7ba;
@define-color label #dcd7ba;
@define-color image #dcd7ba;
@define-color progress #dcd7ba;

View File

@ -0,0 +1,6 @@
@define-color background-color #121212;
@define-color border-color #EAEAEA;
@define-color label #EAEAEA;
@define-color image #EAEAEA;
@define-color progress #EAEAEA;

6
themes/nord/swayosd.css Normal file
View File

@ -0,0 +1,6 @@
@define-color background-color #2E3440;
@define-color border-color #D8DEE9;
@define-color label #D8DEE9;
@define-color image #D8DEE9;
@define-color progress #D8DEE9;

View File

@ -0,0 +1,6 @@
@define-color background-color #faf4ed;
@define-color border-color #575279;
@define-color label #575279;
@define-color image #575279;
@define-color progress #575279;

View File

@ -0,0 +1,6 @@
@define-color background-color #1a1b26;
@define-color border-color #33ccff;
@define-color label #33ccff;
@define-color image #33ccff;
@define-color progress #33ccff;