Compare commits

..

12 Commits

Author SHA1 Message Date
David Heinemeier Hansson
fd632f90e1 Add optional extra install for hyprscrolling 2025-10-20 16:34:13 -07:00
Stefan Gründel
42a5b3bf22 disable update checks in VS Code on install, now creating target dir first (#2636)
Co-authored-by: Ryan Hughes <ryan@heyoodle.com>
2025-10-20 14:21:44 -07:00
Ryan Hughes
f0f319ed92 Move version forward 2025-10-20 12:30:20 -04:00
Ryan Hughes
12f9beab86 Update version 2025-10-20 11:23:14 -04:00
Ryan Hughes
572bbf823b Update walker migration to run for everyone 2025-10-20 10:52:03 -04:00
Bruno Martins
f297ad1e99 fix: universal RAM detection (locale-independent) (#2566)
* fix: make RAM detection compatible with all locales (free output in any language)

* Look at total RAM, not just free

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2025-10-20 07:01:44 -07:00
Jon Kinney
c4f93787d6 Error fallback if terminal was not installed successfully (#2611) 2025-10-20 06:55:28 -07:00
Timo Hubois
730cba2e2a feat(clipboard.conf): add descriptions (#2615) 2025-10-20 06:54:38 -07:00
David Heinemeier Hansson
d70d84af71 Fix changing workspace with mousescroll
Fixes #2586
2025-10-20 06:53:14 -07:00
Brian Blakely
d11d30ac31 Add binding for tiled full screen toggle (#2598)
This seems niche, but you might like it. Binds Super + Ctrl + F to force-tile a fullscreen app. It works nice for things including running games in a tile or watching YouTube in a pip tile without needing to configure these apps specifically to do so.
2025-10-20 05:27:49 -07:00
David Heinemeier Hansson
ef52bb5f93 Move version forward 2025-10-19 09:29:44 +02:00
David Heinemeier Hansson
73036988ed Update version 2025-10-19 09:29:04 +02:00
12 changed files with 125 additions and 44 deletions

View File

@@ -0,0 +1,12 @@
#!/bin/bash
echo "Installing hyprscrolling plugin"
omarchy-pkg-add meson cpio cmake
hyprpm update
hyprpm add https://github.com/hyprwm/hyprland-plugins
hyprpm enable hyprscrolling
if ! grep -q '/hypr/scrolling\.conf' ~/.config/hypr/hyprland.conf; then
sed -i '/source = ~\/\.local\/share\/omarchy\/default\/hypr\/windows\.conf/a source = ~/.local/share/omarchy/default/hypr/scrolling.conf' ~/.config/hypr/hyprland.conf
fi

View File

@@ -8,12 +8,14 @@ fi
package="$1" package="$1"
# Install package # Install package
omarchy-pkg-add $package if omarchy-pkg-add $package; then
# Set as default terminal
echo "Setting $package as new default terminal..."
sed -i "/export TERMINAL=/ c\export TERMINAL=$package" ~/.config/uwsm/default
# Set as default terminal # Restart is needed for new default to take effect
echo "Setting $package as new default terminal..." echo
sed -i "/export TERMINAL=/ c\export TERMINAL=$package" ~/.config/uwsm/default gum confirm "Restart to use new terminal?" && systemctl reboot --no-wall
else
# Restart is needed for new default to take effect echo "Failed to install $package"
echo fi
gum confirm "Restart to use new terminal?" && systemctl reboot --no-wall

View File

@@ -3,7 +3,7 @@
echo "Installing VSCode..." echo "Installing VSCode..."
omarchy-pkg-add visual-studio-code-bin omarchy-pkg-add visual-studio-code-bin
mkdir -p ~/.vscode mkdir -p ~/.vscode ~/.config/Code/User
cat > ~/.vscode/argv.json << 'EOF' cat > ~/.vscode/argv.json << 'EOF'
// This configuration file allows you to pass permanent command line arguments to VS Code. // This configuration file allows you to pass permanent command line arguments to VS Code.

View File

@@ -232,7 +232,7 @@ show_setup_security_menu() {
} }
show_install_menu() { show_install_menu() {
case $(menu "Install" "󰣇 Package\n󰣇 AUR\n Web App\n TUI\n Service\n Style\n󰵮 Development\n Editor\n Terminal\n󱚤 AI\n󰍲 Windows\n Gaming") in case $(menu "Install" "󰣇 Package\n󰣇 AUR\n Web App\n TUI\n Service\n Style\n󰵮 Development\n Editor\n Terminal\n󱚤 AI\n󰍲 Windows\n Gaming\n Extra") in
*Package*) terminal omarchy-pkg-install ;; *Package*) terminal omarchy-pkg-install ;;
*AUR*) terminal omarchy-pkg-aur-install ;; *AUR*) terminal omarchy-pkg-aur-install ;;
*Web*) present_terminal omarchy-webapp-install ;; *Web*) present_terminal omarchy-webapp-install ;;
@@ -245,6 +245,7 @@ show_install_menu() {
*AI*) show_install_ai_menu ;; *AI*) show_install_ai_menu ;;
*Windows*) present_terminal "omarchy-windows-vm install" ;; *Windows*) present_terminal "omarchy-windows-vm install" ;;
*Gaming*) show_install_gaming_menu ;; *Gaming*) show_install_gaming_menu ;;
*Extra*) show_install_extra_menu ;;
*) show_main_menu ;; *) show_main_menu ;;
esac esac
} }
@@ -309,6 +310,13 @@ show_install_gaming_menu() {
esac esac
} }
show_install_extra_menu() {
case $(menu "Install" " Hyprscrolling") in
*Hyprscrolling*) present_terminal omarchy-install-hyprscrolling ;;
*) show_install_menu ;;
esac
}
show_install_style_menu() { show_install_style_menu() {
case $(menu "Install" "󰸌 Theme\n Background\n Font") in case $(menu "Install" "󰸌 Theme\n Background\n Font") in
*Theme*) present_terminal omarchy-theme-install ;; *Theme*) present_terminal omarchy-theme-install ;;

View File

@@ -58,8 +58,8 @@ Categories=System;Virtualization;
EOF EOF
# Get system resources # Get system resources
TOTAL_RAM=$(free -h | grep "^Mem:" | awk '{print $2}') TOTAL_RAM=$(free -h | awk 'NR==2 {print $2}')
TOTAL_RAM_GB=$(free -g | grep "^Mem:" | awk '{print $2}') TOTAL_RAM_GB=$(awk 'NR==1 {printf "%d", $2/1024/1024}' /proc/meminfo)
TOTAL_CORES=$(nproc) TOTAL_CORES=$(nproc)
echo "" echo ""

View File

@@ -1,5 +1,5 @@
# Copy / Paste # Copy / Paste
bind = SUPER, C, sendshortcut, CTRL, Insert, bindd = SUPER, C, Copy, sendshortcut, CTRL, Insert,
bind = SUPER, V, sendshortcut, SHIFT, Insert, bindd = SUPER, V, Paste, sendshortcut, SHIFT, Insert,
bind = SUPER, X, sendshortcut, CTRL, X, bindd = SUPER, X, Cut, sendshortcut, CTRL, X,
bindd = SUPER CTRL, V, Clipboard, exec, omarchy-launch-walker -m clipboard bindd = SUPER CTRL, V, Clipboard, exec, omarchy-launch-walker -m clipboard

View File

@@ -7,6 +7,7 @@ bindd = SUPER, J, Toggle split, togglesplit, # dwindle
bindd = SUPER, P, Pseudo window, pseudo, # dwindle bindd = SUPER, P, Pseudo window, pseudo, # dwindle
bindd = SUPER, T, Toggle floating, togglefloating, bindd = SUPER, T, Toggle floating, togglefloating,
bindd = SUPER, F, Force full screen, fullscreen, 0 bindd = SUPER, F, Force full screen, fullscreen, 0
bindd = SUPER CTRL, F, Tiled full screen, fullscreenstate, 0 2
bindd = SUPER ALT, F, Full width, fullscreen, 1 bindd = SUPER ALT, F, Full width, fullscreen, 1
# Move focus with SUPER + arrow keys # Move focus with SUPER + arrow keys
@@ -63,8 +64,8 @@ bindd = SUPER SHIFT, code:20, Shrink window up, resizeactive, 0 -100
bindd = SUPER SHIFT, code:21, Expand window down, resizeactive, 0 100 bindd = SUPER SHIFT, code:21, Expand window down, resizeactive, 0 100
# Scroll through existing workspaces with SUPER + scroll # Scroll through existing workspaces with SUPER + scroll
bindd = SUPER, MOUSE_DOWN, Scroll active workspace forward, workspace, e+1 bindd = SUPER, mouse_down, Scroll active workspace forward, workspace, e+1
bindd = SUPER, MOUSE_UP, Scroll active workspace backward, workspace, e-1 bindd = SUPER, mouse_up, Scroll active workspace backward, workspace, e-1
# Move/resize windows with mainMod + LMB/RMB and dragging # Move/resize windows with mainMod + LMB/RMB and dragging
bindmd = SUPER, mouse:272, Move window, movewindow bindmd = SUPER, mouse:272, Move window, movewindow

View File

@@ -0,0 +1,18 @@
plugin {
hyprscrolling {
column_width = 0.7
fullscreen_on_one_column = true
focus_fit_method = 1
}
}
general {
layout = scrolling
}
bindd = SUPER, period, Focus right window column, layoutmsg, move +col
bindd = SUPER, comma, Focus left window column, layoutmsg, move -col
bindd = SUPER SHIFT, period, Move window column right, layoutmsg, movewindowto r
bindd = SUPER SHIFT, comma, Move window column left, layoutmsg, movewindowto l
bindd = SUPER SHIFT, up, Move window column up, layoutmsg, movewindowto u
bindd = SUPER SHIFT, down, Move window column down, layoutmsg, movewindowto d

View File

@@ -1,26 +0,0 @@
echo "Migrate to Walker 2.0.0"
# Ensure we kill walker even if there's a restarting service running
kill -9 $(pgrep -x walker)
omarchy-pkg-drop walker-bin walker-bin-debug
omarchy-pkg-add elephant \
elephant-calc \
elephant-clipboard \
elephant-bluetooth \
elephant-desktopapplications \
elephant-files \
elephant-menus \
elephant-providerlist \
elephant-runner \
elephant-symbols \
elephant-unicode \
elephant-websearch \
elephant-todo \
walker
source $OMARCHY_PATH/install/config/walker-elephant.sh
rm -rf ~/.config/walker/themes
omarchy-refresh-walker

45
migrations/1758107879.sh Normal file
View File

@@ -0,0 +1,45 @@
echo "Migrate to Walker 2.0.0"
NEEDS_MIGRATION=false
PACKAGES=(
"elephant"
"elephant-calc"
"elephant-clipboard"
"elephant-bluetooth"
"elephant-desktopapplications"
"elephant-files"
"elephant-menus"
"elephant-providerlist"
"elephant-runner"
"elephant-symbols"
"elephant-unicode"
"elephant-websearch"
"elephant-todo"
"walker"
)
for pkg in "${PACKAGES[@]}"; do
if ! omarchy-pkg-present "$pkg"; then
NEEDS_MIGRATION=true
break
fi
done
WALKER_MAJOR=$(walker -v 2>&1 | grep -oP '^\d+' || echo "0")
if [[ "$WALKER_MAJOR" -lt 2 ]]; then
NEEDS_MIGRATION=true
fi
if $NEEDS_MIGRATION; then
kill -9 $(pgrep -x walker) 2>/dev/null || true
omarchy-pkg-drop walker-bin walker-bin-debug
omarchy-pkg-add "${PACKAGES[@]}"
source $OMARCHY_PATH/install/config/walker-elephant.sh
rm -rf ~/.config/walker/themes
omarchy-refresh-walker
fi

21
migrations/1760974946.sh Normal file
View File

@@ -0,0 +1,21 @@
echo "Turn off VSCode's own auto-update feature (we rely on pacman)"
# Note: We cannot use `jq` to update settings.json because its JSONC (allows comments),
# which jq doesnt support.
VS_CODE_SETTINGS="$HOME/.config/Code/User/settings.json"
# If VSCode is installed, ensure that the "update.mode" setting is set to "none"
if omarchy-cmd-present code; then
mkdir -p "$(dirname "$VS_CODE_SETTINGS")"
if [[ ! -f "$VS_CODE_SETTINGS" ]]; then
# If settings.json doesn't exist, create it with just the update.mode setting
printf '{\n "update.mode": "none"\n}\n' > "$VS_CODE_SETTINGS"
elif ! grep -q '"update.mode"' "$VS_CODE_SETTINGS"; then
# Insert "update.mode": "none", immediately after the first "{"
# Use sed's first-match range (0,/{/) to only replace the first "{
sed -i --follow-symlinks -E '0,/\{/{s/\{/{\
"update.mode": "none",/}' "$VS_CODE_SETTINGS"
fi
fi

View File

@@ -1 +1 @@
3.1.0-RC 3.2.0-Beta