Migrate dotfiles to Omarchy 4
Claude-Session: https://claude.ai/code/session_014ADhvRXuiTvrXSbConxUey
This commit is contained in:
@@ -1,3 +0,0 @@
|
||||
# Extra autostart processes
|
||||
# exec-once = uwsm-app -- my-service
|
||||
exec-once = ags run
|
||||
@@ -0,0 +1,2 @@
|
||||
-- Extra autostart processes.
|
||||
o.launch_on_start("ags run")
|
||||
@@ -1,29 +0,0 @@
|
||||
# Application bindings
|
||||
bindd = SUPER, RETURN, Terminal, exec, uwsm-app -- xdg-terminal-exec --dir="$(omarchy-cmd-terminal-cwd)"
|
||||
bindd = SUPER ALT, RETURN, Tmux, exec, uwsm-app -- xdg-terminal-exec --dir="$(omarchy-cmd-terminal-cwd)" bash -c "tmux attach || tmux new -s Work"
|
||||
bindd = SUPER SHIFT, RETURN, Browser, exec, omarchy-launch-browser
|
||||
bindd = SUPER SHIFT, F, File manager, exec, uwsm-app -- nautilus --new-window
|
||||
bindd = SUPER ALT SHIFT, F, File manager (cwd), exec, uwsm-app -- nautilus --new-window "$(omarchy-cmd-terminal-cwd)"
|
||||
bindd = SUPER SHIFT, B, Browser, exec, omarchy-launch-browser
|
||||
bindd = SUPER SHIFT ALT, B, Browser (private), exec, omarchy-launch-browser --private
|
||||
bindd = SUPER SHIFT, M, Music, exec, omarchy-launch-or-focus spotify
|
||||
bindd = SUPER SHIFT, N, Editor, exec, omarchy-launch-editor
|
||||
bindd = SUPER SHIFT, D, Docker, exec, omarchy-launch-tui lazydocker
|
||||
bindd = SUPER SHIFT, G, Signal, exec, omarchy-launch-or-focus ^signal$ "uwsm-app -- signal-desktop"
|
||||
bindd = SUPER SHIFT, O, Obsidian, exec, omarchy-launch-or-focus ^obsidian$ "uwsm-app -- obsidian -disable-gpu --enable-wayland-ime"
|
||||
|
||||
# If your web app url contains #, type it as ## to prevent hyprland treating it as a comment
|
||||
bindd = SUPER SHIFT, C, Calendar, exec, omarchy-launch-webapp "https://app.hey.com/calendar/weeks/"
|
||||
bindd = SUPER SHIFT, E, Email, exec, omarchy-launch-webapp "https://app.hey.com"
|
||||
bindd = SUPER SHIFT, Y, YouTube, exec, omarchy-launch-webapp "https://youtube.com/"
|
||||
bindd = SUPER SHIFT ALT, G, WhatsApp, exec, omarchy-launch-or-focus-webapp WhatsApp "https://web.whatsapp.com/"
|
||||
bindd = SUPER SHIFT CTRL, G, Google Messages, exec, omarchy-launch-or-focus-webapp "Google Messages" "https://messages.google.com/web/conversations"
|
||||
bindd = SUPER SHIFT, P, Google Photos, exec, omarchy-launch-or-focus-webapp "Google Photos" "https://photos.google.com/"
|
||||
|
||||
# Add extra bindings
|
||||
bindd = SUPER ALT, W, Wallpaper picker, exec, ags toggle wall-picker
|
||||
# bind = SUPER SHIFT, R, exec, alacritty -e ssh your-server
|
||||
|
||||
# Overwrite existing bindings, like putting Omarchy Menu on Super + Space
|
||||
# unbind = SUPER, SPACE
|
||||
# bindd = SUPER, SPACE, Omarchy menu, exec, omarchy-menu
|
||||
@@ -0,0 +1,4 @@
|
||||
-- Personal keybinding overrides on top of Omarchy's defaults.
|
||||
-- See current bindings and descriptions: omarchy menu keybindings --print
|
||||
|
||||
o.bind("SUPER + ALT + W", "Wallpaper picker", "ags toggle wall-picker")
|
||||
@@ -1,28 +0,0 @@
|
||||
general {
|
||||
lock_cmd = omarchy-system-lock # lock screen and 1password
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
||||
after_sleep_cmd = sleep 1 && hyprctl dispatch dpms on # delay for PAM readiness, then turn on display.
|
||||
inhibit_sleep = 3 # wait until screen is locked
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 300 # 5min
|
||||
on-timeout = pidof hyprlock || omarchy-launch-screensaver # start screensaver (if we haven't locked already)
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 301 # 5min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 480 # 8min
|
||||
on-timeout = brightnessctl -sd '*::kbd_backlight' set 0 # save state and turn off keyboard backlight
|
||||
on-resume = brightnessctl -rd '*::kbd_backlight' # restore keyboard backlight
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 480 # 8min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
# Learn how to configure Hyprland: https://wiki.hyprland.org/Configuring/
|
||||
|
||||
# Use defaults Omarchy defaults (but don't edit these directly!)
|
||||
source = ~/.local/share/omarchy/default/hypr/autostart.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/bindings/media.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/bindings/clipboard.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/bindings/tiling-v2.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/bindings/utilities.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/envs.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/looknfeel.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/input.conf
|
||||
source = ~/.local/share/omarchy/default/hypr/windows.conf
|
||||
source = ~/.config/omarchy/current/theme/hyprland.conf
|
||||
|
||||
# Change your own setup in these files (and overwrite any settings from defaults!)
|
||||
source = ~/.config/hypr/monitors.conf
|
||||
source = ~/.config/hypr/input.conf
|
||||
source = ~/.config/hypr/bindings.conf
|
||||
source = ~/.config/hypr/looknfeel.conf
|
||||
source = ~/.config/hypr/autostart.conf
|
||||
|
||||
# Toggle config flags dynamically (e.g. the lid-close "disable internal display"
|
||||
# flag written by omarchy-hyprland-monitor-internal). Without this the lid
|
||||
# handler's disable never applies and the laptop workspace stays stranded.
|
||||
source = ~/.local/state/omarchy/toggles/hypr/*.conf
|
||||
|
||||
# Add any other personal Hyprland configuration below
|
||||
# windowrule = workspace 5, match:class qemu
|
||||
@@ -0,0 +1,13 @@
|
||||
-- Learn how to configure Hyprland: https://wiki.hypr.land/Configuring/Start/
|
||||
|
||||
dofile((os.getenv("OMARCHY_PATH") or "/usr/share/omarchy") .. "/default/hypr/bootstrap.lua")
|
||||
|
||||
require("default.hypr.omarchy")
|
||||
|
||||
require("hypr.monitors")
|
||||
require("hypr.input")
|
||||
require("hypr.bindings")
|
||||
require("hypr.looknfeel")
|
||||
require("hypr.autostart")
|
||||
|
||||
require("default.hypr.toggles")
|
||||
@@ -1,55 +0,0 @@
|
||||
source = ~/.config/omarchy/current/theme/hyprlock.conf
|
||||
|
||||
general {
|
||||
ignore_empty_input = true
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
color = $color
|
||||
path = ~/.config/omarchy/current/background
|
||||
blur_passes = 3
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 650, 100
|
||||
position = 0, 0
|
||||
halign = center
|
||||
valign = center
|
||||
|
||||
inner_color = $inner_color
|
||||
outer_color = $outer_color
|
||||
outline_thickness = 4
|
||||
|
||||
font_family = JetBrainsMono Nerd Font
|
||||
font_color = $font_color
|
||||
|
||||
placeholder_text = Enter Password
|
||||
check_color = $check_color
|
||||
fail_text = <i>$FAIL ($ATTEMPTS)</i>
|
||||
|
||||
rounding = 0
|
||||
shadow_passes = 0
|
||||
fade_on_empty = false
|
||||
}
|
||||
|
||||
auth {
|
||||
fingerprint:enabled = false
|
||||
}
|
||||
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:0] cat ~/.config/omarchy/branding/screensaver.txt
|
||||
color = $font_color
|
||||
font_size = 12
|
||||
font_family = JetBrainsMono Nerd Font
|
||||
text_align = left
|
||||
position = 0, 200
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
@@ -5,8 +5,8 @@ profile {
|
||||
identity = true
|
||||
}
|
||||
|
||||
# To enable auto switch to nightlight, set in your .config/hypr/autostart:
|
||||
# exec-once = uwsm app -- hyprsunset
|
||||
# To enable auto switch to nightlight, add to your .config/hypr/autostart.lua:
|
||||
# o.launch_on_start("hyprsunset")
|
||||
# and use the following:
|
||||
# profile {
|
||||
# time = 20:00
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
# Control your input devices
|
||||
# See https://wiki.hypr.land/Configuring/Variables/#input
|
||||
input {
|
||||
# Use multiple keyboard layouts and switch between them with Left Alt + Right Alt
|
||||
# kb_layout = us,dk,eu
|
||||
|
||||
# Use a specific keyboard variant if needed (e.g. intl for international keyboards)
|
||||
# kb_variant = intl
|
||||
|
||||
kb_layout = us
|
||||
kb_options = compose:caps # ,grp:alts_toggle
|
||||
|
||||
# Change speed of keyboard repeat
|
||||
repeat_rate = 40
|
||||
repeat_delay = 600
|
||||
|
||||
# Start with numlock on by default
|
||||
numlock_by_default = true
|
||||
|
||||
# Increase sensitivity for mouse/trackpad (default: 0)
|
||||
# sensitivity = 0.35
|
||||
|
||||
# Turn off mouse acceleration (default: false)
|
||||
# force_no_accel = true
|
||||
|
||||
touchpad {
|
||||
# Use natural (inverse) scrolling
|
||||
# natural_scroll = true
|
||||
|
||||
# Use two-finger clicks for right-click instead of lower-right corner
|
||||
# clickfinger_behavior = true
|
||||
|
||||
# Control the speed of your scrolling
|
||||
scroll_factor = 0.4
|
||||
|
||||
# Enable the touchpad while typing
|
||||
# disable_while_typing = false
|
||||
|
||||
# Left-click-and-drag with three fingers
|
||||
# drag_3fg = 1
|
||||
}
|
||||
}
|
||||
|
||||
# Scroll nicely in the terminal
|
||||
windowrule = match:class (Alacritty|kitty), scroll_touchpad 1.5
|
||||
windowrule = match:class com.mitchellh.ghostty, scroll_touchpad 0.2
|
||||
|
||||
# Enable touchpad gestures for changing workspaces
|
||||
# See https://wiki.hyprland.org/Configuring/Gestures/
|
||||
# gesture = 3, horizontal, workspace
|
||||
|
||||
# Enable touchpad gestures for moving focus (helpful on scrolling layout)
|
||||
# gesture = 3, left, dispatcher, movefocus, l
|
||||
# gesture = 3, right, dispatcher, movefocus, r
|
||||
@@ -0,0 +1,20 @@
|
||||
-- See https://wiki.hypr.land/Configuring/Basics/Variables/#input
|
||||
hl.config({
|
||||
input = {
|
||||
kb_layout = "us",
|
||||
kb_options = "compose:caps",
|
||||
|
||||
repeat_rate = 40,
|
||||
repeat_delay = 600,
|
||||
|
||||
numlock_by_default = true,
|
||||
|
||||
touchpad = {
|
||||
scroll_factor = 0.4,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- Scroll nicely in the terminal.
|
||||
o.window("(Alacritty|kitty)", { scroll_touchpad = 1.5 })
|
||||
o.window("com.mitchellh.ghostty", { scroll_touchpad = 0.2 })
|
||||
+25
-6
@@ -1,8 +1,20 @@
|
||||
# Custom Keybinds
|
||||
# Keybinds
|
||||
|
||||
Custom bindings on top of Omarchy's defaults, defined in `bindings.conf`.
|
||||
Hyprland is configured in Lua on Omarchy 4. Personal bindings live in
|
||||
[`bindings.lua`](bindings.lua); everything else below comes from Omarchy's
|
||||
own defaults and is no longer redefined here.
|
||||
|
||||
## Apps
|
||||
Print the live list at any time with `omarchy menu keybindings --print`.
|
||||
|
||||
## Custom
|
||||
|
||||
| Keybind | Action |
|
||||
| --- | --- |
|
||||
| `Super+Alt+W` | Wallpaper picker (AGS widget) |
|
||||
|
||||
## Omarchy defaults worth remembering
|
||||
|
||||
### Apps
|
||||
|
||||
| Keybind | Action |
|
||||
| --- | --- |
|
||||
@@ -19,7 +31,7 @@ Custom bindings on top of Omarchy's defaults, defined in `bindings.conf`.
|
||||
| `Super+Shift+G` | Signal |
|
||||
| `Super+Shift+O` | Obsidian |
|
||||
|
||||
## Web Apps
|
||||
### Web Apps
|
||||
|
||||
| Keybind | Action |
|
||||
| --- | --- |
|
||||
@@ -30,8 +42,15 @@ Custom bindings on top of Omarchy's defaults, defined in `bindings.conf`.
|
||||
| `Super+Shift+Ctrl+G` | Google Messages |
|
||||
| `Super+Shift+P` | Google Photos |
|
||||
|
||||
## Extras
|
||||
### Shell and system
|
||||
|
||||
| Keybind | Action |
|
||||
| --- | --- |
|
||||
| `Super+Alt+W` | Wallpaper picker |
|
||||
| `Super+Space` | Omarchy menu |
|
||||
| `Super+Ctrl+Space` | Background switcher |
|
||||
| `Super+Shift+Ctrl+Space` | Theme menu |
|
||||
| `Super+Shift+Space` | Toggle the top bar |
|
||||
| `Super+Backspace` | Toggle transparency on the focused window |
|
||||
| `Super+Ctrl+L` | Lock |
|
||||
| `Super+Ctrl+I` | Toggle locking on idle |
|
||||
| `Super+Ctrl+N` | Toggle nightlight |
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
# Change the default Omarchy look'n'feel
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||
general {
|
||||
# No gaps between windows or borders
|
||||
gaps_in = 4
|
||||
gaps_out = 4
|
||||
# border_size = 0
|
||||
|
||||
# Change to niri-like side-scrolling layout
|
||||
# layout = scrolling
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||
decoration {
|
||||
# Use round window corners
|
||||
# rounding = 8
|
||||
|
||||
# Dim unfocused windows (0.0 = no dim, 1.0 = fully dimmed)
|
||||
# dim_inactive = true
|
||||
# dim_strength = 0.15
|
||||
}
|
||||
|
||||
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
||||
animations {
|
||||
# Disable all animations
|
||||
# enabled = no
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#layout
|
||||
layout {
|
||||
# Avoid overly wide single-window layouts on wide screens
|
||||
# single_window_aspect_ratio = 1 1
|
||||
}
|
||||
|
||||
# Remove default window transparency
|
||||
windowrule = opacity 1.0 override 1.0 override, match:tag default-opacity
|
||||
@@ -0,0 +1,12 @@
|
||||
-- https://wiki.hypr.land/Configuring/Basics/Variables/#general
|
||||
hl.config({
|
||||
general = {
|
||||
gaps_in = 4,
|
||||
gaps_out = 4,
|
||||
},
|
||||
})
|
||||
|
||||
-- Remove default window transparency. Turn it back on with `blob_glass on`,
|
||||
-- which drops a flag into ~/.local/state/omarchy/toggles/hypr/ that is loaded
|
||||
-- after this file.
|
||||
o.window({ tag = "default-opacity" }, { opacity = "1.0 override 1.0 override" })
|
||||
@@ -1,27 +0,0 @@
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# List current monitors and resolutions possible: hyprctl monitors
|
||||
# Format: monitor = [port], resolution, position, scale
|
||||
|
||||
# --- Dual external monitor setup (laptop lid closed) ---
|
||||
# Layout, left -> right: [ 1: C24 / DP-1 ] [ 2: F24 / HDMI-A-1 ]
|
||||
# eDP-1 sits to the right of the externals and Hyprland automatically
|
||||
# disables it when the lid is closed (since an external is connected).
|
||||
|
||||
# Monitor 1 - C24 curved, DisplayPort via DP->HDMI adapter.
|
||||
# NOTE: the DP2HDMI adapter caps this panel at 1920x1080@60 (no 75Hz mode).
|
||||
monitor = DP-1, 1920x1080@60, 0x0, 1
|
||||
|
||||
# Monitor 2 - Sceptre F24, HDMI, native 75Hz.
|
||||
monitor = HDMI-A-1, 1920x1080@75, 1920x0, 1
|
||||
|
||||
# Laptop panel - only mode is 1920x1200@60. Parked right of the externals;
|
||||
# auto-off on lid close so no windows get stranded on a closed screen.
|
||||
monitor = eDP-1, 1920x1200@60, 3840x0, 1.5
|
||||
|
||||
# Catch-all fallback for any other/unknown display.
|
||||
monitor = , preferred, auto, 1
|
||||
|
||||
# GDK_SCALE forced integer scaling is intentionally disabled: the external
|
||||
# monitors run at 1x, so a global 2x would blow up GTK apps on them. The
|
||||
# per-monitor scale factors above are enough.
|
||||
# env = GDK_SCALE,2
|
||||
@@ -0,0 +1,26 @@
|
||||
-- See https://wiki.hypr.land/Configuring/Basics/Monitors/
|
||||
-- List current monitors and supported resolutions with: hyprctl monitors all
|
||||
|
||||
-- Dual external monitor setup (laptop lid closed).
|
||||
-- Layout, left -> right: [ 1: C24 / DP-1 ] [ 2: F24 / HDMI-A-1 ] [ eDP-1 ]
|
||||
-- eDP-1 sits to the right of the externals and Hyprland automatically
|
||||
-- disables it when the lid is closed (since an external is connected).
|
||||
|
||||
-- Monitor 1 - C24 curved, DisplayPort via DP->HDMI adapter.
|
||||
-- NOTE: the DP2HDMI adapter caps this panel at 1920x1080@60 (no 75Hz mode).
|
||||
hl.monitor({ output = "DP-1", mode = "1920x1080@60", position = "0x0", scale = 1 })
|
||||
|
||||
-- Monitor 2 - Sceptre F24, HDMI, native 75Hz.
|
||||
hl.monitor({ output = "HDMI-A-1", mode = "1920x1080@75", position = "1920x0", scale = 1 })
|
||||
|
||||
-- Laptop panel - only mode is 1920x1200@60. Parked right of the externals;
|
||||
-- auto-off on lid close so no windows get stranded on a closed screen.
|
||||
hl.monitor({ output = "eDP-1", mode = "1920x1200@60", position = "3840x0", scale = 1.5 })
|
||||
|
||||
-- Catch-all fallback for any other/unknown display.
|
||||
hl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1 })
|
||||
|
||||
-- GDK_SCALE forced integer scaling is intentionally left unset: the external
|
||||
-- monitors run at 1x, so a global 2x would blow up GTK apps on them. The
|
||||
-- per-monitor scale factors above are enough.
|
||||
-- hl.env("GDK_SCALE", "2")
|
||||
Reference in New Issue
Block a user