Compare commits

...

21 Commits

Author SHA1 Message Date
Ryan Hughes
920e85d97b Make HEY the default mailto handler 2025-09-19 20:40:54 -04:00
Ryan Hughes
a746812504 Limit pattern to prevent incorrect matches 2025-09-19 20:39:20 -04:00
David Heinemeier Hansson
ad01082a86 Ensure libyaml is available for installs made before that was on the ISO 2025-09-19 18:44:36 -04:00
David Heinemeier Hansson
ba743c623d Give output on what's intended to happen 2025-09-19 17:44:13 -04:00
David Heinemeier Hansson
779c1b9ecc Add Update > Hardware > Audio for restarting pipewire service 2025-09-19 17:44:03 -04:00
David Heinemeier Hansson
e4ab5bee14 Catch obsidian vault dialog too 2025-09-19 17:31:20 -04:00
Taha
f60b9d1cb4 Fix Matte Black theme ghostty and vscode configs (#1801)
* Update Matte Black ghostty.conf with more color settings

* Rename theme from 'MatteBlack' to 'Matte Black'
2025-09-19 15:41:52 -04:00
Johan Sørensen
70661d5d5b Hide hyperland cursor while typing (#1812) 2025-09-19 15:40:54 -04:00
David Heinemeier Hansson
ad155b2545 Ghostty needs a very different scrollfactor than Alacritty and Kitty
cc @mitchellh
2025-09-19 05:32:47 -05:00
Omar Skalli
206930def8 Improve theme-set-vscode to support jsonc and respect symlinks (#1756) 2025-09-18 16:43:01 -05:00
David Heinemeier Hansson
ed3b723c7f Merge branch 'master' into dev 2025-09-17 23:02:32 +02:00
David Heinemeier Hansson
83ab85799b Fix permissions 2025-09-17 23:02:23 +02:00
David Heinemeier Hansson
ffe7cd5099 Fix osaka jade theme for ghostty 2025-09-17 21:03:52 +02:00
David Heinemeier Hansson
28c4814f5a Fix osaka jade theme for ghostty 2025-09-17 21:03:44 +02:00
David Heinemeier Hansson
cf41ecaaa5 Merge pull request #1568 from basecamp/dev
Omarchy 3.0
2025-09-17 20:47:41 +02:00
David Heinemeier Hansson
9aef0ffab6 Use conditional theme file instead and send correct signal 2025-09-17 20:45:02 +02:00
David Heinemeier Hansson
f6383fd3e9 Now it is opt-in 2025-09-17 16:40:38 +02:00
David Heinemeier Hansson
e81994f182 Dont let the update system notification expire 2025-09-17 16:36:11 +02:00
David Heinemeier Hansson
7ca60bd590 We no longer need gcc14 for Ruby 2025-09-17 16:16:32 +02:00
David Heinemeier Hansson
dac34aa5e0 Move adding Google Account into Install > Service > Chromium Account
Otherwise it'll prompt on first start for everyone.
2025-09-17 16:13:49 +02:00
David Heinemeier Hansson
81165f1947 This made it seem like the extension couldn't be removed by the user (#1722) 2025-09-17 16:07:48 +02:00
28 changed files with 114 additions and 56 deletions

View File

@@ -0,0 +1,13 @@
#!/bin/bash
if [[ -f ~/.config/chromium-flags.conf ]]; then
CONF=~/.config/chromium-flags.conf
grep -qxF -- "--oauth2-client-id=77185425430.apps.googleusercontent.com" "$CONF" ||
echo "--oauth2-client-id=77185425430.apps.googleusercontent.com" >>"$CONF"
grep -qxF -- "--oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT" "$CONF" ||
echo "--oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT" >>"$CONF"
echo "Now you can login to your Google Account in Chromium."
fi

View File

@@ -7,7 +7,7 @@ fi
WINDOW_PATTERN="$1"
LAUNCH_COMMAND="${2:-"uwsm app -- $WINDOW_PATTERN"}"
WINDOW_ADDRESS=$(hyprctl clients -j | jq -r --arg p "$WINDOW_PATTERN" '.[]|select((.class+" "+.title)|test($p;"i"))|.address' | head -n1)
WINDOW_ADDRESS=$(hyprctl clients -j | jq -r --arg p "$WINDOW_PATTERN" '.[]|select((.class|test("\\b" + $p + "\\b";"i")) or (.title|test("\\b" + $p + "\\b";"i")))|.address' | head -n1)
if [[ -n $WINDOW_ADDRESS ]]; then
hyprctl dispatch focuswindow "address:$WINDOW_ADDRESS"

View File

@@ -249,10 +249,11 @@ show_install_menu() {
}
show_install_service_menu() {
case $(menu "Install" " Dropbox\n Tailscale\n󰟵 Bitwarden") in
case $(menu "Install" " Dropbox\n Tailscale\n󰟵 Bitwarden\n Chromium Account") in
*Dropbox*) present_terminal omarchy-install-dropbox ;;
*Tailscale*) present_terminal omarchy-install-tailscale ;;
*Bitwarden*) install_and_launch "Bitwarden" "bitwarden bitwarden-cli" "bitwarden" ;;
*Chromium*) present_terminal omarchy-install-chromium-google-account ;;
*) show_install_menu ;;
esac
}
@@ -429,7 +430,8 @@ show_update_config_menu() {
}
show_update_hardware_menu() {
case $(menu "Restart" "󱚾 Wi-Fi\n󰂯 Bluetooth") in
case $(menu "Restart" " Audio\n󱚾 Wi-Fi\n󰂯 Bluetooth") in
*Audio*) present_terminal omarchy-restart-pipewire ;;
*Wi-Fi*) present_terminal omarchy-restart-wifi ;;
*Bluetooth*) present_terminal omarchy-restart-bluetooth ;;
*) show_update_menu ;;

View File

@@ -1,4 +1,5 @@
#!/bin/bash
echo -e "Unblocking bluetooth...\n"
rfkill unblock bluetooth
rfkill list bluetooth

4
bin/omarchy-restart-pipewire Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
echo -e "Restarting pirewire audio service...\n"
systemctl --user restart pipewire.service

View File

@@ -1,4 +1,5 @@
#!/bin/bash
echo -e "Unblocking wifi...\n"
rfkill unblock wifi
rfkill list wifi

View File

@@ -3,12 +3,5 @@
case "$TERMINAL" in
"alacritty") touch ~/.config/alacritty/alacritty.toml ;;
"kitty") killall -SIGUSR1 kitty ;;
"ghostty")
# Use a default theme if none exists
if [[ ! -f ~/.config/omarchy/current/theme/ghostty.conf ]]; then
echo "theme = Spacegray" >~/.config/omarchy/current/theme/ghostty.conf
fi
killall -USRSIG2 ghostty
;;
"ghostty") killall -SIGUSR2 ghostty ;;
esac

View File

@@ -1,5 +1,8 @@
#!/bin/bash
# Note: We cannot use `jq` to update settings.json because its JSONC (allows comments),
# which jq doesnt support.
VS_CODE_THEME="$HOME/.config/omarchy/current/theme/vscode.json"
VS_CODE_SETTINGS="$HOME/.config/Code/User/settings.json"
VS_CODE_SKIP_FLAG="$HOME/.local/state/omarchy/toggles/skip-vscode-theme-changes"
@@ -15,12 +18,29 @@ if omarchy-cmd-present code && [[ ! -f "$VS_CODE_SKIP_FLAG" ]]; then
code --install-extension "$extension" >/dev/null
fi
# Update theme in settings.json
jq -n --arg t "$theme_name" '(input? // {}) | .["workbench.colorTheme"] = $t' "$VS_CODE_SETTINGS" >"${VS_CODE_SETTINGS}.new"
# Create config file if there isn't already one
mkdir -p "$(dirname "$VS_CODE_SETTINGS")"
if [[ ! -f "$VS_CODE_SETTINGS" ]]; then
printf '{\n}\n' > "$VS_CODE_SETTINGS"
fi
# Create a `workbench.colorTheme` entry in settings.
if ! grep -q '"workbench.colorTheme"' "$VS_CODE_SETTINGS"; then
# Insert `"workbench.colorTheme": "",` immediately after the first `{`
# Use sed's first-match range (0,/{/) to only replace the first `{`
sed -i --follow-symlinks -E '0,/\{/{s/\{/{\
"workbench.colorTheme": "",/}' "$VS_CODE_SETTINGS"
fi
# Update theme
sed -i --follow-symlinks -E \
"s/(\"workbench.colorTheme\"[[:space:]]*:[[:space:]]*\")[^\"]*(\")/\1$theme_name\2/" \
"$VS_CODE_SETTINGS"
else
# Remove theme from settings.json when the theme doesn't have vscode support
jq 'del(.["workbench.colorTheme"])' "$VS_CODE_SETTINGS" >"${VS_CODE_SETTINGS}.new"
fi
if [[ -f "$VS_CODE_SETTINGS" ]]; then
sed -i --follow-symlinks -E '/"workbench\.colorTheme"[[:space:]]*:[^,}]*,?/d' "$VS_CODE_SETTINGS"
mv "${VS_CODE_SETTINGS}.new" "$VS_CODE_SETTINGS"
fi
fi
fi

11
bin/omarchy-webapp-handler-hey Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
url="$1"
web_url="https://app.hey.com"
# Handle mailto: URLs
if [[ $url =~ ^mailto: ]]; then
email=$(echo "$url" | sed 's/mailto://')
web_url="https://app.hey.com/messages/new?to=$email"
fi
exec omarchy-launch-webapp "$web_url"

View File

@@ -2,5 +2,3 @@
--ozone-platform-hint=wayland
--enable-features=TouchpadOverscrollHistoryNavigation
--load-extension=~/.local/share/omarchy/default/chromium/extensions/copy-url
--oauth2-client-id=77185425430.apps.googleusercontent.com
--oauth2-client-secret=OTJgUOQcT7lO7GsGZq2G4IlT

View File

@@ -1,5 +1,5 @@
# Dynamic theme colors
config-file = "~/.config/omarchy/current/theme/ghostty.conf"
config-file = ?"~/.config/omarchy/current/theme/ghostty.conf"
# Font
font-family = "CaskaydiaMono Nerd Font"

View File

@@ -27,8 +27,9 @@ input {
}
}
# Scroll faster in the terminal
windowrule = scrolltouchpad 1.5, tag:terminal
# Scroll nicely in the terminal
windowrule = scrolltouchpad 1.5, class:(Alacritty|kitty)
windowrule = scrolltouchpad 0.2, class:com.mitchellh.ghostty
# Enable touchpad gestures for changing workspaces
# See https://wiki.hyprland.org/Configuring/Gestures/

View File

@@ -1,8 +0,0 @@
{
"ExtensionInstallForcelist": [
"aeblfdkhhhdcdjpifhhbdiojplfjncoa;https://clients2.google.com/service/update2/crx"
],
"ExtensionInstallAllowlist": [
"aeblfdkhhhdcdjpifhhbdiojplfjncoa"
]
}

View File

@@ -1,8 +0,0 @@
{
"ExtensionInstallForcelist": [
"aeblfdkhhhdcdjpifhhbdiojplfjncoa;https://clients2.google.com/service/update2/crx"
],
"ExtensionInstallAllowlist": [
"aeblfdkhhhdcdjpifhhbdiojplfjncoa"
]
}

View File

@@ -4,7 +4,7 @@ windowrule = center, tag:floating-window
windowrule = size 800 600, tag:floating-window
windowrule = tag +floating-window, class:(blueberry.py|Impala|Wiremix|org.gnome.NautilusPreviewer|com.gabm.satty|Omarchy|About|TUI.float)
windowrule = tag +floating-window, class:(xdg-desktop-portal-gtk|sublime_text|DesktopEditors|org.gnome.Nautilus), title:^(Open.*Files?|Open Folder|Save.*Files?|Save.*As|Save|All Files)
windowrule = tag +floating-window, class:(xdg-desktop-portal-gtk|sublime_text|DesktopEditors|org.gnome.Nautilus), title:^(Open.*Files?|Open [F|f]older.*|Save.*Files?|Save.*As|Save|All Files)
# Fullscreen screensaver
windowrule = fullscreen, class:Screensaver

View File

@@ -87,3 +87,8 @@ misc {
disable_splash_rendering = true
focus_on_activate = true
}
# https://wiki.hypr.land/Configuring/Variables/#cursor
cursor {
hide_on_key_press = true
}

View File

@@ -15,7 +15,6 @@ run_logged $OMARCHY_INSTALL/config/docker.sh
run_logged $OMARCHY_INSTALL/config/mimetypes.sh
run_logged $OMARCHY_INSTALL/config/localdb.sh
run_logged $OMARCHY_INSTALL/config/sudoless-asdcontrol.sh
run_logged $OMARCHY_INSTALL/config/browser-policies.sh
run_logged $OMARCHY_INSTALL/config/hardware/network.sh
run_logged $OMARCHY_INSTALL/config/hardware/set-wireless-regdom.sh
run_logged $OMARCHY_INSTALL/config/hardware/fix-fkeys.sh

View File

@@ -1,9 +0,0 @@
# Add 1password extension to Chromium
sudo mkdir -p /etc/chromium/policies/managed/
sudo cp $OMARCHY_PATH/default/chromium/policies/managed/onepassword.json /etc/chromium/policies/managed/onepassword.json
sudo chmod 644 /etc/chromium/policies/managed/onepassword.json
# Add 1password extension to future Brave installs
sudo mkdir -p /etc/brave/policies/managed/
sudo cp $OMARCHY_PATH/default/brave/policies/managed/onepassword.json /etc/brave/policies/managed/onepassword.json
sudo chmod 644 /etc/brave/policies/managed/onepassword.json

View File

@@ -33,3 +33,6 @@ xdg-mime default mpv.desktop video/x-ms-asf
xdg-mime default mpv.desktop video/x-ogm+ogg
xdg-mime default mpv.desktop video/x-theora+ogg
xdg-mime default mpv.desktop application/ogg
# Use Hey for mailto: links
xdg-mime default HEY.desktop x-scheme-handler/mailto

View File

@@ -1,2 +1,2 @@
notify-send " Update System" "When you have internet, click to update the system." -t 30000
notify-send " Update System" "When you have internet, click to update the system." -u critical
notify-send "👋 Welcome to Omarchy" "You're in for a great computing adventure. Have fun!" -t 30000

View File

@@ -31,7 +31,6 @@ fd
ffmpegthumbnailer
fontconfig
fzf
gcc14
github-cli
gnome-calculator
gnome-keyring

View File

@@ -1,4 +1,4 @@
omarchy-webapp-install "HEY" https://app.hey.com HEY.png
omarchy-webapp-install "HEY" https://app.hey.com HEY.png "omarchy-webapp-handler-hey %u" "x-scheme-handler/mailto"
omarchy-webapp-install "Basecamp" https://launchpad.37signals.com Basecamp.png
omarchy-webapp-install "WhatsApp" https://web.whatsapp.com/ WhatsApp.png
omarchy-webapp-install "Google Photos" https://photos.google.com/ "Google Photos.png"

0
migrations/1757021485.sh Executable file → Normal file
View File

View File

@@ -1,3 +0,0 @@
echo "Refresh chromium-flags.conf to add option of logging in to Google account for settings sync"
omarchy-refresh-config chromium-flags.conf

3
migrations/1758318253.sh Normal file
View File

@@ -0,0 +1,3 @@
echo "Ensure libyaml is available for installing Ruby"
omarchy-pkg-add libyaml

View File

@@ -1,3 +1,12 @@
background = #121212
foreground = #BEBEBE
cursor-color = #EAEAEA
cursor-text = #121212
selection-background = #333333
selection-foreground = #EAEAEA
# normal colors
palette = 0=#333333
palette = 1=#D35F5F

View File

@@ -1,4 +1,4 @@
{
"name": "MatteBlack",
"name": "Matte Black",
"extension": "TahaYVR.matteblack"
}

View File

@@ -1 +1,25 @@
theme = TokyoNight
# primary
background = #111c18
foreground = #C1C497
cursor-color = #D7C995
cursor-text = #000000
# normal colors
palette = 0=#23372B
palette = 1=#FF5345
palette = 2=#549e6a
palette = 3=#459451
palette = 4=#509475
palette = 5=#D2689C
palette = 6=#2DD5B7
palette = 7=#F6F5DD
# bright colors
palette = 8=#53685B
palette = 9=#db9f9c
palette = 10=#143614
palette = 11=#E5C736
palette = 12=#ACD4CF
palette = 13=#75bbb3
palette = 14=#8CD3CB
palette = 15=#9eebb3