mirror of
https://github.com/basecamp/omarchy.git
synced 2025-07-27 04:09:23 +00:00
Compare commits
38 Commits
5d09154079
...
b656ea0625
Author | SHA1 | Date | |
---|---|---|---|
b656ea0625 | |||
611668783b | |||
cd0565a57f | |||
e464f19bff | |||
2567baf00e | |||
84065dd767 | |||
377522f804 | |||
a7b423a2c4 | |||
853d46854f | |||
785d575ecc | |||
f346c78826 | |||
47584de6db | |||
b150a1f068 | |||
9cbe88d43d | |||
790e90515e | |||
24aa77a6cf | |||
ac3aadd93a | |||
95c6882e54 | |||
cdc9f8606e | |||
ae2e626c0e | |||
3518062c1f | |||
83a8f42bd7 | |||
6a3ce098e9 | |||
d1ba090bec | |||
04ec2ba84d | |||
273c261b3e | |||
fa5b13a284 | |||
22ff741c7f | |||
702c6f015e | |||
602009ebf3 | |||
16e9553a40 | |||
98b5c862bc | |||
0c6719becc | |||
e8c23532b3 | |||
a7fb87f08b | |||
e898ae327f | |||
b21a236bf3 | |||
6ef2ce0088 |
14
ansi.sh
Normal file
14
ansi.sh
Normal file
@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
||||
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
||||
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
||||
███ ███ ███ ███ ███ ▀███████████ ▀▀███▀▀▀▀▀ ███ ▀▀███▀▀▀▀███▀ ▄██ ███
|
||||
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
|
||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
||||
███ ███ '
|
||||
|
||||
clear
|
||||
echo -e "\n$ansi_art\n"
|
17
bin/omarchy
17
bin/omarchy
@ -4,18 +4,7 @@ OMARCHY_VERSION=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/de
|
||||
PATH="$PATH:$HOME/.local/share/omarchy/bin"
|
||||
|
||||
show_ascii_art() {
|
||||
clear
|
||||
cat <<'EOF'
|
||||
▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
||||
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
||||
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
||||
███ ███ ███ ███ ███ ▀███████████ ▀▀███▀▀▀▀▀ ███ ▀▀███▀▀▀▀███▀ ▄██ ███
|
||||
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
|
||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
||||
███ ███
|
||||
EOF
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
echo " $OMARCHY_VERSION"
|
||||
}
|
||||
|
||||
@ -105,13 +94,11 @@ remove_theme_prompt() {
|
||||
|
||||
setup_menu() {
|
||||
show_ascii_art
|
||||
local menu=("Dropbox" "Add fingerprint sensor" "Remove fingerprint sensor" "Add Fido2 device" "Remove Fido2 device" "Back")
|
||||
local menu=("Dropbox" "Fingerprint sensor" "Fido2 device" "Back")
|
||||
local commands=(
|
||||
"omarchy-setup-dropbox"
|
||||
"omarchy-setup-fingerprint"
|
||||
"omarchy-setup-fingerprint --remove"
|
||||
"omarchy-setup-fido2"
|
||||
"omarchy-setup-fido2 --remove"
|
||||
"main_menu"
|
||||
)
|
||||
local choice
|
||||
|
@ -1,5 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd ~/.local/share/omarchy
|
||||
migration_file="$HOME/.local/share/omarchy/migrations/$(git log -1 --format=%cd --date=unix).sh"
|
||||
touch $migration_file
|
||||
nvim $migration_file
|
||||
|
7
bin/omarchy-first-run
Executable file
7
bin/omarchy-first-run
Executable file
@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ! -f ~/.local/state/omarchy/after-first-run.mode ]]; then
|
||||
mkdir -p ~/.local/state/omarchy
|
||||
touch ~/.local/state/omarchy/after-first-run.mode
|
||||
uwsm app -- alacritty -e ~/.local/share/omarchy/bin/omarchy-first-run-flow
|
||||
fi
|
56
bin/omarchy-first-run-flow
Executable file
56
bin/omarchy-first-run-flow
Executable file
@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Install editor in addition to Neovim?"; then
|
||||
options=("VSCode" "Cursor" "Zed" "Helix" "Nevermind")
|
||||
choice=$(printf "%s\n" "${options[@]}" | gum choose --header "Add programming editor") || exit 0
|
||||
|
||||
case "$choice" in
|
||||
VSCode) yay -Sy --noconfirm --needed vscodium-electron-bin ;;
|
||||
Cursor) yay -Sy --noconfirm --needed cursor-bin ;;
|
||||
Zed) yay -Sy --noconfirm --needed zed ;;
|
||||
Helix) yay -Sy --noconfirm --needed helix ;;
|
||||
Nevermind) ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Login to GitHub?"; then
|
||||
gh auth login
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Setup Dropbox?"; then
|
||||
omarchy-setup-dropbox
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
if gum confirm "Start Docker DBs?"; then
|
||||
options=("MySQL" "Redis" "PostgreSQL")
|
||||
choices=$(printf "%s\n" "${options[@]}" | gum choose --no-limit --header "Select databases") || exit 0
|
||||
|
||||
if [[ -n "$choices" ]]; then
|
||||
for db in $choices; do
|
||||
case $db in
|
||||
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 ;;
|
||||
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 ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
echo "Updating all system packages..."
|
||||
yay -Syu
|
||||
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
|
||||
gum spin --spinner "globe" --title "You're all set!" -- sleep 2
|
||||
setsid chromium --new-window --ozone-platform=wayland --app="https://manuals.omamix.org/2/the-omarchy-manual" >/dev/null 2>&1 &
|
||||
clear
|
@ -4,5 +4,6 @@ echo "Installing all dependencies..."
|
||||
yay -S --noconfirm --needed \
|
||||
dropbox dropbox-cli libappindicator-gtk3 python-gpgme nautilus-dropbox
|
||||
|
||||
echo "Starting Dropbox and asking for identification..."
|
||||
uwsm app -- dropbox start -i &>/dev/null &
|
||||
echo "Starting Dropbox..."
|
||||
uwsm app -- dropbox-cli start &>/dev/null &
|
||||
echo "See Dropbox icon behind hover tray in top right and right-click for setup."
|
||||
|
@ -27,7 +27,6 @@ if [[ ! -d "$THEME_PATH" ]]; then
|
||||
fi
|
||||
|
||||
# Update theme symlinks
|
||||
ln -nsf "$BACKGROUND_PATH" "$HOME/.config/omarchy/current/backgrounds"
|
||||
ln -nsf "$THEME_PATH" "$CURRENT_THEME_DIR"
|
||||
|
||||
# Change gnome modes
|
||||
|
4
boot.sh
4
boot.sh
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
ascii_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
||||
ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
||||
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
||||
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
||||
@ -10,7 +10,7 @@ ascii_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄
|
||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
||||
███ ███ '
|
||||
|
||||
echo -e "\n$ascii_art\n"
|
||||
echo -e "\n$ansi_art\n"
|
||||
|
||||
pacman -Q git &>/dev/null || sudo pacman -Sy --noconfirm --needed git
|
||||
|
||||
|
@ -56,7 +56,7 @@ bind = SUPER SHIFT, X, exec, $webapp="https://x.com/compose/post"
|
||||
input {
|
||||
# Use multiple keyboard layouts and switch between them with Alt + Space
|
||||
# kb_layout = us,dk
|
||||
# kb_options = compose:caps,grp:alt_space_toggle
|
||||
kb_options = compose:caps # ,grp:alt_space_toggle
|
||||
|
||||
# Change speed of keyboard repeat
|
||||
repeat_rate = 40
|
||||
|
@ -70,9 +70,9 @@ hidden = true
|
||||
weight = 5
|
||||
name = "applications"
|
||||
placeholder = " Search..."
|
||||
prioritize_new = true
|
||||
prioritize_new = false
|
||||
hide_actions_with_empty_query = true
|
||||
context_aware = true
|
||||
context_aware = false
|
||||
refresh = true
|
||||
show_sub_when_single = false
|
||||
show_icon_when_single = true
|
||||
@ -185,7 +185,7 @@ switcher_only = true
|
||||
history = true
|
||||
typeahead = true
|
||||
show_unqualified = false
|
||||
prefix = "."
|
||||
prefix = ":"
|
||||
|
||||
[builtins.symbols]
|
||||
after_copy = ""
|
||||
|
@ -3,6 +3,8 @@ exec-once = uwsm app -- mako
|
||||
exec-once = uwsm app -- waybar
|
||||
exec-once = uwsm app -- fcitx5
|
||||
exec-once = uwsm app -- swaybg -i ~/.config/omarchy/current/background -m fill
|
||||
exec-once = uwsm app -- swayosd-server
|
||||
exec-once = uwsm app -- walker --gapplication-service
|
||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||
exec-once = wl-clip-persist --clipboard regular --all-mime-type-regex '^(?!x-kde-passwordManagerHint).+'
|
||||
exec-once = ~/.local/share/omarchy/bin/omarchy-first-run
|
||||
|
@ -1,10 +1,10 @@
|
||||
# Laptop multimedia keys for volume and LCD brightness
|
||||
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
|
||||
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
|
||||
# Laptop multimedia keys for volume and LCD brightness (with OSD)
|
||||
bindel = ,XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise
|
||||
bindel = ,XF86AudioLowerVolume, exec, swayosd-client --output-volume lower
|
||||
bindel = ,XF86AudioMute, exec, swayosd-client --output-volume mute-toggle
|
||||
bindel = ,XF86AudioMicMute, exec, swayosd-client --input-volume mute-toggle
|
||||
bindel = ,XF86MonBrightnessUp, exec, swayosd-client --brightness raise
|
||||
bindel = ,XF86MonBrightnessDown, exec, swayosd-client --brightness lower
|
||||
|
||||
# Requires playerctl
|
||||
bindl = , XF86AudioNext, exec, playerctl next
|
||||
|
@ -5,6 +5,7 @@ bind = SUPER, W, killactive,
|
||||
bind = SUPER, J, togglesplit, # dwindle
|
||||
bind = SUPER, P, pseudo, # dwindle
|
||||
bind = SUPER, V, togglefloating,
|
||||
bind = , F11, fullscreen, 0
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = SUPER, left, movefocus, l
|
||||
|
@ -19,18 +19,18 @@ bind = SUPER, ESCAPE, exec, ~/.local/share/omarchy/bin/omarchy-menu-power
|
||||
bind = SUPER CTRL, I, exec, ~/.local/share/omarchy/bin/omarchy-toggle-idle
|
||||
|
||||
# Control Apple Display brightness
|
||||
bind = CTRL, F1, exec, ~/.local/share/omarchy/bin/omarchy-apple-display-brightness -5000
|
||||
bind = CTRL, F2, exec, ~/.local/share/omarchy/bin/omarchy-apple-display-brightness +5000
|
||||
bind = SHIFT CTRL, F2, exec, ~/.local/share/omarchy/bin/omarchy-apple-display-brightness +60000
|
||||
bind = CTRL, F1, exec, ~/.local/share/omarchy/bin/omarchy-cmd-apple-display-brightness -5000
|
||||
bind = CTRL, F2, exec, ~/.local/share/omarchy/bin/omarchy-cmd-apple-display-brightness +5000
|
||||
bind = SHIFT CTRL, F2, exec, ~/.local/share/omarchy/bin/omarchy-cmd-apple-display-brightness +60000
|
||||
|
||||
# Screenshots
|
||||
bind = , PRINT, exec, omarchy-screenshot
|
||||
bind = SHIFT, PRINT, exec, omarchy-screenshot window
|
||||
bind = CTRL, PRINT, exec, omarchy-screenshot output
|
||||
bind = , PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenshot
|
||||
bind = SHIFT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenshot window
|
||||
bind = CTRL, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenshot output
|
||||
|
||||
# Screenshots
|
||||
bind = ALT, PRINT, exec, omarchy-screenrecord
|
||||
bind = CTRL ALT, PRINT, exec, omarchy-screenrecord output
|
||||
bind = ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord
|
||||
bind = CTRL ALT, PRINT, exec, ~/.local/share/omarchy/bin/omarchy-cmd-screenrecord output
|
||||
|
||||
# Color picker
|
||||
bind = SUPER, PRINT, exec, hyprpicker -a
|
||||
|
@ -7,7 +7,7 @@ windowrule = tile, class:^(Chromium)$
|
||||
# Float and center settings and previews
|
||||
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 645 350, class:Omarchy
|
||||
windowrule = size 645 450, class:Omarchy
|
||||
windowrule = center, class:^(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|Omarchy)$
|
||||
|
||||
# Float and center file pickers
|
||||
|
@ -5,6 +5,7 @@ width = 250
|
||||
max_width = 250
|
||||
min_width = 250
|
||||
width = 250
|
||||
max_height = 600
|
||||
|
||||
[ui.window.box.search]
|
||||
hide = true
|
||||
|
@ -4,6 +4,7 @@
|
||||
yay -S --noconfirm --needed gum
|
||||
|
||||
# Configure identification
|
||||
source ~/.local/share/omarchy/ansi.sh
|
||||
echo -e "\nEnter identification for git and autocomplete..."
|
||||
export OMARCHY_USER_NAME=$(gum input --placeholder "Enter full name" --prompt "Name> ")
|
||||
export OMARCHY_USER_EMAIL=$(gum input --placeholder "Enter email address" --prompt "Email> ")
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
yay -S --noconfirm --needed \
|
||||
wget curl unzip inetutils impala \
|
||||
fd eza fzf ripgrep zoxide bat \
|
||||
fd eza fzf ripgrep zoxide bat jq \
|
||||
wl-clipboard fastfetch btop \
|
||||
man tldr less whois plocate bash-completion \
|
||||
alacritty
|
||||
|
@ -2,5 +2,5 @@
|
||||
|
||||
yay -S --noconfirm --needed \
|
||||
hyprland hyprshot hyprpicker hyprlock hypridle polkit-gnome hyprland-qtutils \
|
||||
walker-bin libqalculate waybar mako swaybg \
|
||||
walker-bin libqalculate waybar mako swaybg swayosd \
|
||||
xdg-desktop-portal-hyprland xdg-desktop-portal-gtk
|
||||
|
6
migrations/1753137931.sh
Normal file
6
migrations/1753137931.sh
Normal file
@ -0,0 +1,6 @@
|
||||
echo "Ensure first-run flow isn't run for existing installations"
|
||||
|
||||
if [[ ! -f ~/.local/state/omarchy/after-first-run.mode ]]; then
|
||||
mkdir -p ~/.local/state/omarchy
|
||||
touch ~/.local/state/omarchy/after-first-run.mode
|
||||
fi
|
6
migrations/1753138691.sh
Normal file
6
migrations/1753138691.sh
Normal file
@ -0,0 +1,6 @@
|
||||
echo "Install swayOSD to show volume status"
|
||||
|
||||
if ! command -v swayosd &>/dev/null; then
|
||||
yay -S --noconfirm --needed swayosd
|
||||
uwsm app -- swayosd-server &>/dev/null &
|
||||
fi
|
@ -1,8 +1,6 @@
|
||||
# Catppuccin Latte – mako notification theme
|
||||
text-color=#4c4f69 # text
|
||||
border-color=#dce0e8 # crust
|
||||
background-color=#eff1f5 # base
|
||||
|
||||
text-color=#4c4f69
|
||||
border-color=#dce0e8
|
||||
background-color=#eff1f5
|
||||
width=420
|
||||
height=110
|
||||
padding=10
|
||||
|
Reference in New Issue
Block a user