Compare commits
22 Commits
be76b81d6e
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 273c4d090c | |||
| a88a419669 | |||
| b5471c5f25 | |||
| 422466e483 | |||
| ee49471228 | |||
| 802f0dd84e | |||
| 5570e58efc | |||
| 5d687eb837 | |||
| e46820b5f7 | |||
| ab9854d12f | |||
| 2e83db4b69 | |||
| b27f3fa744 | |||
| 1c845777e8 | |||
| e1eb5794c5 | |||
| b5f7738df3 | |||
| 6817507506 | |||
| 2a993c2ceb | |||
| e2069193fe | |||
| dc16123c82 | |||
| 641212f0e3 | |||
| 5e57111548 | |||
| 2e148cb31a |
110
.config/OpenTabletDriver/settings.json
Normal file
110
.config/OpenTabletDriver/settings.json
Normal file
@@ -0,0 +1,110 @@
|
||||
{
|
||||
"Revision": "0.6.6.2",
|
||||
"Profiles": [
|
||||
{
|
||||
"Tablet": "Wacom PTH-451",
|
||||
"OutputMode": {
|
||||
"Path": "OpenTabletDriver.Desktop.Output.LinuxArtistMode",
|
||||
"Settings": [],
|
||||
"Enable": true
|
||||
},
|
||||
"Filters": [],
|
||||
"AbsoluteModeSettings": {
|
||||
"Display": {
|
||||
"Width": 2560.0,
|
||||
"Height": 1440.0,
|
||||
"X": 1280.0001,
|
||||
"Y": 720.0,
|
||||
"Rotation": 0.0
|
||||
},
|
||||
"Tablet": {
|
||||
"Width": 157.48,
|
||||
"Height": 88.5825,
|
||||
"X": 78.74,
|
||||
"Y": 49.2125,
|
||||
"Rotation": 0.0
|
||||
},
|
||||
"EnableClipping": true,
|
||||
"EnableAreaLimiting": false,
|
||||
"LockAspectRatio": true
|
||||
},
|
||||
"RelativeModeSettings": {
|
||||
"XSensitivity": 10.0,
|
||||
"YSensitivity": 10.0,
|
||||
"RelativeRotation": 0.0,
|
||||
"RelativeResetDelay": "00:00:00.1000000"
|
||||
},
|
||||
"Bindings": {
|
||||
"TipActivationThreshold": 1.0,
|
||||
"TipButton": {
|
||||
"Path": "OpenTabletDriver.Desktop.Binding.AdaptiveBinding",
|
||||
"Settings": [
|
||||
{
|
||||
"Property": "Binding",
|
||||
"Value": "Tip"
|
||||
}
|
||||
],
|
||||
"Enable": true
|
||||
},
|
||||
"EraserActivationThreshold": 1.0,
|
||||
"EraserButton": {
|
||||
"Path": "OpenTabletDriver.Desktop.Binding.AdaptiveBinding",
|
||||
"Settings": [
|
||||
{
|
||||
"Property": "Binding",
|
||||
"Value": "Eraser"
|
||||
}
|
||||
],
|
||||
"Enable": true
|
||||
},
|
||||
"PenButtons": [
|
||||
{
|
||||
"Path": "OpenTabletDriver.Desktop.Binding.AdaptiveBinding",
|
||||
"Settings": [
|
||||
{
|
||||
"Property": "Binding",
|
||||
"Value": "Button 1"
|
||||
}
|
||||
],
|
||||
"Enable": true
|
||||
},
|
||||
{
|
||||
"Path": "OpenTabletDriver.Desktop.Binding.AdaptiveBinding",
|
||||
"Settings": [
|
||||
{
|
||||
"Property": "Binding",
|
||||
"Value": "Button 2"
|
||||
}
|
||||
],
|
||||
"Enable": true
|
||||
}
|
||||
],
|
||||
"AuxButtons": [
|
||||
{
|
||||
"Path": "OpenTabletDriver.Desktop.Binding.MultiKeyBinding",
|
||||
"Settings": [
|
||||
{
|
||||
"Property": "Keys",
|
||||
"Value": "Control+Z"
|
||||
}
|
||||
],
|
||||
"Enable": true
|
||||
},
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
],
|
||||
"MouseButtons": [],
|
||||
"MouseScrollUp": null,
|
||||
"MouseScrollDown": null,
|
||||
"DisablePressure": false,
|
||||
"DisableTilt": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"LockUsableAreaDisplay": true,
|
||||
"LockUsableAreaTablet": true,
|
||||
"Tools": []
|
||||
}
|
||||
@@ -102,11 +102,17 @@ windowrule = tag -default-opacity, match:class com.libretro.RetroArch
|
||||
windowrule = opacity 1 1, match:class com.libretro.RetroArch
|
||||
windowrule = idle_inhibit fullscreen, match:class com.libretro.RetroArch
|
||||
|
||||
# Scratchpad apps
|
||||
windowrule = workspace special:scratchpad, match:class Spotify
|
||||
windowrule = workspace special:scratchpad, match:class signal
|
||||
windowrule = workspace special:scratchpad, match:class ^(chrome-discord.com__channels_@me-Default)$
|
||||
windowrule = workspace special:scratchpad, match:class ^(chrome-web.whatsapp.com__-Default)$
|
||||
|
||||
# Float Nextcloud
|
||||
windowrule = float on, match:class com.nextcloud.desktopclient.nextcloud
|
||||
|
||||
# Position drawing
|
||||
windowrule = workspace 4, match:class (krita)
|
||||
windowrule = workspace 5, match:class (krita)
|
||||
windowrule = tag -default-opacity, match:class (krita)
|
||||
windowrule = opacity 1 1, match:class (krita)
|
||||
|
||||
@@ -116,7 +122,7 @@ windowrule = workspace 7, match:class ^(chrome-netflix.com__-Default)$
|
||||
|
||||
# Float Steam
|
||||
windowrule = float on, match:class steam
|
||||
windowrule = workspace 5, match:class steam
|
||||
windowrule = workspace 7, match:class steam
|
||||
windowrule = center on, match:class steam, match:title Steam
|
||||
windowrule = tag -default-opacity, match:class steam.*
|
||||
windowrule = opacity 1 1, match:class steam.*
|
||||
@@ -126,7 +132,7 @@ windowrule = idle_inhibit fullscreen, match:class steam
|
||||
|
||||
# Float Lunar Client
|
||||
windowrule = float on, match:class lunarclient
|
||||
windowrule = workspace 5, match:class lunarclient
|
||||
windowrule = workspace 7, match:class lunarclient
|
||||
windowrule = center on, match:class lunarclient
|
||||
windowrule = tag -default-opacity, match:class lunarclient
|
||||
windowrule = opacity 1 1, match:class lunarclient
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
exec-once = uwsm-app -- hypridle
|
||||
exec-once = uwsm-app -- mako
|
||||
# exec-once = Enpass
|
||||
# exec-once = uwsm-app -- waybar
|
||||
exec-once = uwsm-app -- fcitx5 --disable notificationitem
|
||||
exec-once = uwsm-app -- swaybg -i ~/.config/station/current/background -m fill
|
||||
exec-once = station-bg-random
|
||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||
|
||||
# Slow app launch fix -- set systemd vars
|
||||
|
||||
@@ -60,68 +60,15 @@ bindd = SUPER, L, Move window focus right, movefocus, r
|
||||
bindd = SUPER, K, Move window focus up, movefocus, u
|
||||
bindd = SUPER, J, Move window focus down, movefocus, d
|
||||
|
||||
# Switch workspaces with SUPER + [1-9; 0]
|
||||
bindd = SUPER, code:10, Switch to workspace 1, workspace, 1
|
||||
bindd = SUPER, code:11, Switch to workspace 2, workspace, 2
|
||||
bindd = SUPER, code:12, Switch to workspace 3, workspace, 3
|
||||
bindd = SUPER, code:13, Switch to workspace 4, workspace, 4
|
||||
bindd = SUPER, code:14, Switch to workspace 5, workspace, 5
|
||||
bindd = SUPER, code:15, Switch to workspace 6, workspace, 6
|
||||
bindd = SUPER, code:16, Switch to workspace 7, workspace, 7
|
||||
bindd = SUPER, code:17, Switch to workspace 8, workspace, 8
|
||||
bindd = SUPER, code:18, Switch to workspace 9, workspace, 9
|
||||
bindd = SUPER, code:19, Switch to workspace 10, workspace, 10
|
||||
|
||||
# Move active window to a workspace with SUPER + SHIFT + [1-9; 0]
|
||||
bindd = SUPER SHIFT, code:10, Move window to workspace 1, movetoworkspace, 1
|
||||
bindd = SUPER SHIFT, code:11, Move window to workspace 2, movetoworkspace, 2
|
||||
bindd = SUPER SHIFT, code:12, Move window to workspace 3, movetoworkspace, 3
|
||||
bindd = SUPER SHIFT, code:13, Move window to workspace 4, movetoworkspace, 4
|
||||
bindd = SUPER SHIFT, code:14, Move window to workspace 5, movetoworkspace, 5
|
||||
bindd = SUPER SHIFT, code:15, Move window to workspace 6, movetoworkspace, 6
|
||||
bindd = SUPER SHIFT, code:16, Move window to workspace 7, movetoworkspace, 7
|
||||
bindd = SUPER SHIFT, code:17, Move window to workspace 8, movetoworkspace, 8
|
||||
bindd = SUPER SHIFT, code:18, Move window to workspace 9, movetoworkspace, 9
|
||||
bindd = SUPER SHIFT, code:19, Move window to workspace 10, movetoworkspace, 10
|
||||
|
||||
# Move active window silently to a workspace with SUPER + SHIFT + ALT + [1-9; 0]
|
||||
bindd = SUPER SHIFT ALT, code:10, Move window silently to workspace 1, movetoworkspacesilent, 1
|
||||
bindd = SUPER SHIFT ALT, code:11, Move window silently to workspace 2, movetoworkspacesilent, 2
|
||||
bindd = SUPER SHIFT ALT, code:12, Move window silently to workspace 3, movetoworkspacesilent, 3
|
||||
bindd = SUPER SHIFT ALT, code:13, Move window silently to workspace 4, movetoworkspacesilent, 4
|
||||
bindd = SUPER SHIFT ALT, code:14, Move window silently to workspace 5, movetoworkspacesilent, 5
|
||||
bindd = SUPER SHIFT ALT, code:15, Move window silently to workspace 6, movetoworkspacesilent, 6
|
||||
bindd = SUPER SHIFT ALT, code:16, Move window silently to workspace 7, movetoworkspacesilent, 7
|
||||
bindd = SUPER SHIFT ALT, code:17, Move window silently to workspace 8, movetoworkspacesilent, 8
|
||||
bindd = SUPER SHIFT ALT, code:18, Move window silently to workspace 9, movetoworkspacesilent, 9
|
||||
bindd = SUPER SHIFT ALT, code:19, Move window silently to workspace 10, movetoworkspacesilent, 10
|
||||
|
||||
# Control scratchpad
|
||||
bindd = SUPER, S, Toggle scratchpad, togglespecialworkspace, scratchpad
|
||||
bindd = SUPER ALT, S, Move window to scratchpad, movetoworkspacesilent, special:scratchpad
|
||||
|
||||
# TAB between workspaces
|
||||
bindd = SUPER, TAB, Next workspace, workspace, e+1
|
||||
bindd = SUPER SHIFT, TAB, Previous workspace, workspace, e-1
|
||||
bindd = SUPER CTRL, TAB, Former workspace, workspace, previous
|
||||
|
||||
# Move workspaces to other monitors
|
||||
bindd = SUPER SHIFT ALT, LEFT, Move workspace to left monitor, movecurrentworkspacetomonitor, l
|
||||
bindd = SUPER SHIFT ALT, RIGHT, Move workspace to right monitor, movecurrentworkspacetomonitor, r
|
||||
bindd = SUPER SHIFT ALT, UP, Move workspace to up monitor, movecurrentworkspacetomonitor, u
|
||||
bindd = SUPER SHIFT ALT, DOWN, Move workspace to down monitor, movecurrentworkspacetomonitor, d
|
||||
|
||||
# Swap active window with the one next to it with SUPER + SHIFT + arrow keys
|
||||
bindd = SUPER SHIFT, LEFT, Swap window to the left, swapwindow, l
|
||||
bindd = SUPER SHIFT, RIGHT, Swap window to the right, swapwindow, r
|
||||
bindd = SUPER SHIFT, UP, Swap window up, swapwindow, u
|
||||
bindd = SUPER SHIFT, DOWN, Swap window down, swapwindow, d
|
||||
|
||||
# Cycle through applications on active workspace
|
||||
bindd = ALT, TAB, Cycle to next window, cyclenext
|
||||
bindd = ALT SHIFT, TAB, Cycle to prev window, cyclenext, prev
|
||||
bindd = ALT, TAB, Reveal active window on top, bringactivetotop
|
||||
bindd = ALT SHIFT, TAB, Reveal active window on top, bringactivetotop
|
||||
bindd = SUPER, TAB, Cycle to next window, cyclenext, visible
|
||||
bindd = SUPER SHIFT, TAB, Cycle to prev window, cyclenext, visible prev
|
||||
bindd = SUPER, TAB, Reveal active window on top, bringactivetotop
|
||||
bindd = SUPER SHIFT, TAB, Reveal active window on top, bringactivetotop
|
||||
|
||||
# Resize active window
|
||||
bindd = SUPER, code:20, Expand window left, resizeactive, -100 0 # - key
|
||||
@@ -233,7 +180,7 @@ bindd = SUPER CTRL, L, Lock system, exec, station-lock-screen
|
||||
# ==========================
|
||||
# Applications
|
||||
# ==========================
|
||||
bindd = SUPER, RETURN, Terminal, exec, uwsm-app -- xdg-terminal-exec --dir="$(station-cmd-terminal-cwd)"
|
||||
bindd = SUPER, RETURN, Terminal, exec, uwsm-app -- xdg-terminal-exec
|
||||
bindd = SUPER ALT, RETURN, Tmux, exec, uwsm-app -- xdg-terminal-exec --dir="$(station-cmd-terminal-cwd)" tmux new
|
||||
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 "$(station-cmd-terminal-cwd)"
|
||||
@@ -245,7 +192,7 @@ bindd = SUPER SHIFT, N, Editor, exec, station-launch-editor
|
||||
bindd = SUPER SHIFT, G, Signal, exec, station-launch-or-focus ^signal$ "uwsm-app -- signal-desktop"
|
||||
bindd = SUPER SHIFT, O, Obsidian, exec, station-launch-or-focus ^obsidian$ "uwsm-app -- obsidian -disable-gpu --enable-wayland-ime"
|
||||
# bindd = SUPER SHIFT, W, Typora, exec, uwsm-app -- typora --enable-wayland-ime
|
||||
bindd = SUPER SHIFT, SLASH, Passwords, exec, uwsm-app -- Enpass
|
||||
bindd = SUPER SHIFT, SLASH, Passwords, exec, Enpass showassistant
|
||||
bindd = SUPER SHIFT, E, Email, exec, station-launch-or-focus mailspring
|
||||
|
||||
# If your web app url contains #, type it as ## to prevent hyprland treating it as a comment
|
||||
|
||||
@@ -6,12 +6,12 @@ general {
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 150 # 2.5min
|
||||
timeout = 300 # 5min
|
||||
on-timeout = pidof hyprlock || station-launch-screensaver # start screensaver (if we haven't locked already)
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 151 # 5min
|
||||
timeout = 301 # 5min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
@@ -23,6 +23,6 @@ listener {
|
||||
|
||||
listener {
|
||||
timeout = 330 # 5.5min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-timeout = station-system-suspend # suspend when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected
|
||||
}
|
||||
|
||||
@@ -7,4 +7,4 @@ source = ~/.config/hypr/windows.conf
|
||||
source = ~/.config/hypr/monitors.conf
|
||||
source = ~/.config/hypr/looknfeel.conf
|
||||
source = ~/.config/hypr/autostart.conf
|
||||
# source = ~/.config/hypr/theme.conf
|
||||
source = ~/.config/hypr/workspaces.conf
|
||||
|
||||
@@ -134,6 +134,7 @@ misc {
|
||||
focus_on_activate = true
|
||||
anr_missed_pings = 3
|
||||
on_focus_under_fullscreen = 1
|
||||
disable_watchdog_warning = true
|
||||
}
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#cursor
|
||||
|
||||
@@ -3,10 +3,6 @@
|
||||
# Format: monitor = [port], resolution, position, scale
|
||||
|
||||
# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K.
|
||||
env=GDK_SCALE,1.5
|
||||
env=QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env=QT_ENABLE_HIGHDPI_SCALING,1
|
||||
env=QT_SCREEN_SCALE_FACTORS,2
|
||||
# monitor=eDP-1,3840x2160,0x0,2
|
||||
monitor=desc:Samsung Electric Company LU28R55 HNMN500475,3840x2160,auto-left,1.5
|
||||
monitor=desc:Samsung Electric Company LU28R55 HNMN500462,3840x2160,auto-right,1.5
|
||||
|
||||
33
.config/hypr/workspaces.conf
Normal file
33
.config/hypr/workspaces.conf
Normal file
@@ -0,0 +1,33 @@
|
||||
workspace = 1, monitor:DP-1
|
||||
workspace = 2, monitor:DP-2
|
||||
workspace = 3, monitor:DP-1
|
||||
workspace = 4, monitor:DP-2
|
||||
workspace = 5, monitor:DP-1
|
||||
workspace = 6, monitor:DP-2
|
||||
workspace = 7, monitor:DP-1
|
||||
workspace = 8, monitor:DP-2
|
||||
workspace = 9, monitor:DP-1
|
||||
workspace = 10, monitor:DP-2
|
||||
|
||||
bindd = SUPER, code:10, Switch to Home, workspace, 2
|
||||
bindd = SUPER, code:10, Switch to Home, workspace, 1
|
||||
bindd = SUPER, code:11, Switch to Dev, workspace, 4
|
||||
bindd = SUPER, code:11, Switch to Dev, workspace, 3
|
||||
bindd = SUPER, code:12, Switch to Art, workspace, 6
|
||||
bindd = SUPER, code:12, Switch to Art, workspace, 5
|
||||
bindd = SUPER, code:13, Switch to Gaming, workspace, 8
|
||||
bindd = SUPER, code:13, Switch to Gaming, workspace, 7
|
||||
bindd = SUPER, code:14, Switch to Writing, workspace, 10
|
||||
bindd = SUPER, code:14, Switch to Writing, workspace, 9
|
||||
|
||||
# Move active window to a workspace with SUPER + SHIFT + [1-9; 0]
|
||||
bindd = SUPER SHIFT, code:10, Move window to workspace 1, exec, station-move-to-workspace 1
|
||||
bindd = SUPER SHIFT, code:11, Move window to workspace 1, exec, station-move-to-workspace 2
|
||||
bindd = SUPER SHIFT, code:12, Move window to workspace 1, exec, station-move-to-workspace 3
|
||||
bindd = SUPER SHIFT, code:13, Move window to workspace 1, exec, station-move-to-workspace 4
|
||||
bindd = SUPER SHIFT, code:14, Move window to workspace 1, exec, station-move-to-workspace 5
|
||||
|
||||
bindd = SUPER SHIFT, L, Move window to right monitor, movewindow, r
|
||||
bindd = SUPER SHIFT, H, Move window to left monitor, movewindow, l
|
||||
bindd = SUPER SHIFT, J, Move window to right monitor, movewindow, d
|
||||
bindd = SUPER SHIFT, K, Move window to left monitor, movewindow, u
|
||||
Submodule .config/nvim updated: 8d1278b84a...bd2349c1ba
@@ -1,35 +0,0 @@
|
||||
OPENROUTER_API_KEY=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
|
||||
OPENROUTER_API_BASE=https://openrouter.ai/api
|
||||
|
||||
AIHUBMIX_API_KEY=sk-0ArIwI5NaUF1U1Z6F9D9CeF8C155436bA7E8A8107cFf7f7b
|
||||
AIHUBMIX_API_BASE=https://aihubmix.com/api
|
||||
|
||||
#COPILOT_API_KEY=ghu_XOB0IcwvOBthQxxZea0EBhZHjn0aBW17UHml
|
||||
#COPILOT_API_BASE=https://api.githubcopilot.com
|
||||
COPILOT_API_KEY=
|
||||
COPILOT_API_BASE=
|
||||
|
||||
DEFAULT_OPENAI_API_KEY=${OPENROUTER_API_KEY}
|
||||
DEFAULT_OPENAI_API_BASE=${OPENROUTER_API_BASE}
|
||||
# DEFAULT_AI_MODEL=openai/gpt-5.2-codex
|
||||
DEFAULT_AI_MODEL=auto
|
||||
|
||||
REASONING_OPENAI_API_KEY=${OPENROUTER_API_KEY}
|
||||
REASONING_OPENAI_API_BASE=${OPENROUTER_API_BASE}
|
||||
#REASONING_MODEL=openai/gpt-5.1-codex
|
||||
# REASONING_MODEL=moonshotai/kimi-k2-thinking
|
||||
REASONING_MODEL=anthropic/claude-opus-4.6
|
||||
|
||||
FAST_OPENAI_API_KEY=${OPENROUTER_API_KEY}
|
||||
FAST_OPENAI_API_BASE=${OPENROUTER_API_BASE}
|
||||
FAST_MODEL=qwen/qwen3-max
|
||||
|
||||
COMPLETION_OPENAI_API_KEY=${OPENROUTER_API_KEY}
|
||||
COMPLETION_OPENAI_API_BASE=${OPENROUTER_API_BASE}
|
||||
COMPLETION_MODEL=google/gemini-3-flash-preview
|
||||
# COMPLETION_MODEL=anthropic/claude-3-haiku
|
||||
|
||||
OPENAI_API_KEY=${DEFAULT_OPENAI_API_KEY}
|
||||
OPENAI_API_BASE=${DEFAULT_OPENAI_API_BASE}
|
||||
AIDER_OPENAI_API_KEY=${DEFAULT_OPENAI_API_KEY}
|
||||
AIDER_OPENAI_API_BASE=${DEFAULT_OPENAI_API_BASE}
|
||||
@@ -89,10 +89,6 @@ alias \
|
||||
notes="cd ~/Tower/Notes && nvim ." \
|
||||
aid="aider"
|
||||
|
||||
# Projects
|
||||
alias \
|
||||
src="tmuxinator start runcats"
|
||||
|
||||
# Dev
|
||||
alias \
|
||||
sail='[ -f sail ] && sh sail || sh vendor/bin/sail' \
|
||||
|
||||
@@ -47,6 +47,7 @@ export ANDROID_AVD_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/android/avd"
|
||||
export ANDROID_USER_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/android"
|
||||
export CODEX_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/codex"
|
||||
export XCOMPOSEFILE="${XDG_CONFIG_HOME:-$HOME/.config}/xcompose"
|
||||
export GEMINI_CLI_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
|
||||
|
||||
# Export OPENAI_API_KEY from GitHub Copilot config
|
||||
# if [ -f "$HOME/.config/github-copilot/apps.json" ]; then
|
||||
@@ -76,8 +77,9 @@ export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads.
|
||||
export _JAVA_AWT_WM_NONREPARENTING=1 # Fix for Java applications in dwm
|
||||
|
||||
# Development variables
|
||||
export ANDROID_SDK_ROOT="$HOME/Android/Sdk"
|
||||
export ANDROID_SDK_ROOT="$HOME/.local/share/android/Sdk"
|
||||
export ANDROID_HOME="$ANDROID_SDK_ROOT"
|
||||
export GRADLE_USER_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/gradle"
|
||||
|
||||
export PATH="$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/cmdline-tools/bin:$ANDROID_HOME/platform-tools:$ANDROID_AVD_HOME:$ANDROID_HOME/emulator:$XDG_DATA_HOME/cargo/bin"
|
||||
export PATH="$HOME/development/flutter/bin:$PATH"
|
||||
@@ -176,8 +178,6 @@ export NVM_DIR="$HOME/.config/nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||
|
||||
source "$HOME/.local/share/../bin/env"
|
||||
|
||||
env_file="$HOME/.config/shell/.env"
|
||||
if [ -f "$env_file" ]; then
|
||||
set -a
|
||||
|
||||
@@ -81,7 +81,6 @@ bind-key -n User0 send-keys C-S-o
|
||||
bind-key -n User0 send-keys C-S-y
|
||||
bind-key -n User0 send-keys C-S-a
|
||||
|
||||
|
||||
# Prefix
|
||||
set -g prefix C-Space
|
||||
set -g prefix2 C-b
|
||||
@@ -106,7 +105,6 @@ bind -n C-M-S-Right resize-pane -R 5
|
||||
# Window navigation
|
||||
bind r command-prompt -I "#W" "rename-window -- '%%'"
|
||||
bind c new-window -c "#{pane_current_path}"
|
||||
bind k kill-window
|
||||
|
||||
bind -n M-1 select-window -t 1
|
||||
bind -n M-2 select-window -t 2
|
||||
@@ -126,7 +124,7 @@ bind -n M-S-Right swap-window -t +1 \; select-window -t +1
|
||||
# Session controls
|
||||
bind R command-prompt -I "#S" "rename-session -- '%%'"
|
||||
bind C new-session -c "#{pane_current_path}"
|
||||
bind K kill-session
|
||||
bind X kill-session
|
||||
bind P switch-client -p
|
||||
bind N switch-client -n
|
||||
|
||||
|
||||
@@ -4,6 +4,11 @@
|
||||
export STATION_PATH=$HOME/.local/share/station
|
||||
export PATH=$STATION_PATH/bin:$PATH
|
||||
|
||||
export GDK_SCALE=2
|
||||
# export QT_AUTO_SCALE_FACTOR=1
|
||||
# export QT_ENABLE_HIGHDPI_SCALING=1
|
||||
export QT_SCALE_FACTOR=1.5
|
||||
|
||||
# Set default terminal and editor
|
||||
source ~/.config/uwsm/default
|
||||
|
||||
|
||||
@@ -20,24 +20,19 @@
|
||||
"format-icons": {
|
||||
"default": "",
|
||||
"1": "",
|
||||
"2": "",
|
||||
"3": "",
|
||||
"4": "",
|
||||
"5": "",
|
||||
"6": "",
|
||||
"7": "",
|
||||
"8": "8",
|
||||
"9": "9",
|
||||
"10": "0",
|
||||
"2": "",
|
||||
"3": "",
|
||||
"4": "",
|
||||
"5": "",
|
||||
"6": "",
|
||||
"7": "",
|
||||
"8": "",
|
||||
"9": "",
|
||||
"10": "",
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"1": [],
|
||||
"2": [],
|
||||
"3": [],
|
||||
"4": [],
|
||||
"5": [],
|
||||
"6": [],
|
||||
"7": []
|
||||
"DP-1": [1, 3, 5, 7, 9],
|
||||
"DP-2": [2, 4, 6, 8, 10]
|
||||
}
|
||||
},
|
||||
"custom/station": {
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
input_dir="$1" # Replace with your input directory path
|
||||
output_dir="$2" # Replace with your output directory path
|
||||
|
||||
# Ensure the output directory exists or create it
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
# Loop through all JPEG files in the input directory
|
||||
for file in "$input_dir"/*.jpg; do
|
||||
if [ -e "$file" ]; then
|
||||
filename=$(basename "$file")
|
||||
filename_without_extension="${filename%.*}"
|
||||
output_file1="$output_dir/${filename_without_extension}_left.jpg"
|
||||
output_file2="$output_dir/${filename_without_extension}_right.jpg"
|
||||
|
||||
# Get the width of the image
|
||||
width=$(identify -format "%w" "$file")
|
||||
|
||||
# Use ImageMagick to split the image in half
|
||||
convert "$file" -crop "50%x100%+0+0" "$output_file1"
|
||||
convert "$file" -crop "50%x100%+$((width / 2))+0" "$output_file2"
|
||||
|
||||
echo "Split $filename into $output_file1 and $output_file2"
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Splitting completed."
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
|
||||
# Picks and sets a random background
|
||||
|
||||
BACKGROUNDS_PATH="$HOME/Tower/Library/Pictures/Wallpapers/3840x2160/"
|
||||
CURRENT_BACKGROUND_LINK="$HOME/.local/state/station/background"
|
||||
width=$(hyprctl monitors -j | jq 'map(.width) | add')
|
||||
height=$(hyprctl monitors -j | jq '.[0].height')
|
||||
BACKGROUNDS_PATH="$HOME/Tower/Library/Pictures/Wallpapers/${width}x${height}/"
|
||||
|
||||
mapfile -d '' -t BACKGROUNDS < <(find -L "$BACKGROUNDS_PATH" -maxdepth 1 -type f -print0 2>/dev/null | sort -z)
|
||||
TOTAL=${#BACKGROUNDS[@]}
|
||||
|
||||
@@ -17,4 +17,13 @@ wal -i "$CURRENT_BACKGROUND_LINK"
|
||||
|
||||
# Kill existing swaybg and start new one
|
||||
pkill -x swaybg
|
||||
|
||||
if [[ $(hyprctl monitors -j | jq 'length') -eq 2 ]]; then
|
||||
station-bg-split "$CURRENT_BACKGROUND_LINK" "/tmp/bg"
|
||||
first_mon=$(hyprctl monitors -j | jq -r '.[0].name')
|
||||
second_mon=$(hyprctl monitors -j | jq -r '.[1].name')
|
||||
setsid uwsm-app -- swaybg -o "$first_mon" -i /tmp/bg/background_left -m fill >/dev/null 2>&1 &
|
||||
setsid uwsm-app -- swaybg -o "$second_mon" -i /tmp/bg/background_right -m fill >/dev/null 2>&1 &
|
||||
else
|
||||
setsid uwsm-app -- swaybg -i "$CURRENT_BACKGROUND_LINK" -m fill >/dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
40
.local/bin/station-bg-split
Executable file
40
.local/bin/station-bg-split
Executable file
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
|
||||
input="$1" # Replace with your input directory path
|
||||
output_dir="$2" # Replace with your output directory path
|
||||
|
||||
# Ensure the output directory exists or create it
|
||||
mkdir -p "$output_dir"
|
||||
|
||||
split_img() {
|
||||
file=$1
|
||||
filename=$(basename "$file")
|
||||
filename_without_extension="${filename%.*}"
|
||||
extension="${filename##$filename_without_extension}"
|
||||
output_file1="$output_dir/${filename_without_extension}_left${extension}"
|
||||
output_file2="$output_dir/${filename_without_extension}_right${extension}"
|
||||
|
||||
# Get the width of the image
|
||||
width=$(identify -format "%w" "$file")
|
||||
|
||||
# Use ImageMagick to split the image in half
|
||||
magick "$file" -crop "50%x100%+0+0" "$output_file1"
|
||||
magick "$file" -crop "50%x100%+$((width / 2))+0" "$output_file2"
|
||||
|
||||
echo "Split $filename into $output_file1 and $output_file2"
|
||||
}
|
||||
|
||||
# Loop through all JPEG files in the input directory
|
||||
if [[ -d $input ]]; then
|
||||
echo "Processing images in directory: $input"
|
||||
for file in "$input/*.(jpg|jpeg|png)"; do
|
||||
if [ -e "$file" ]; then
|
||||
split_img "$file"
|
||||
fi
|
||||
done
|
||||
else
|
||||
split_img $input
|
||||
fi
|
||||
|
||||
echo "Splitting completed."
|
||||
|
||||
@@ -4,12 +4,12 @@
|
||||
|
||||
# Ensure elephant is running before launching walker
|
||||
if ! pgrep -x elephant > /dev/null; then
|
||||
setsid uwsm-app -- elephant &
|
||||
setsid uwsm-app -- elephant > /dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
# Ensure walker service is running
|
||||
if ! pgrep -f "walker --gapplication-service" > /dev/null; then
|
||||
setsid uwsm-app -- walker --gapplication-service &
|
||||
setsid uwsm-app -- walker --gapplication-service > /dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
exec walker --width 644 --maxheight 300 --minheight 300 "$@"
|
||||
|
||||
@@ -236,6 +236,7 @@ show_system_menu() {
|
||||
local options=" Screensaver\n Lock\n Suspend"
|
||||
station-hibernation-available && options="$options\n Hibernate"
|
||||
options="$options\n Logout\n Restart\n Shutdown"
|
||||
echo $options
|
||||
|
||||
case $(menu "System" "$options") in
|
||||
*Screensaver*) station-launch-screensaver force ;;
|
||||
@@ -257,6 +258,7 @@ go_to_menu() {
|
||||
case "${1,,}" in
|
||||
*apps*) walker -p "Launch…" ;;
|
||||
*trigger*) show_trigger_menu ;;
|
||||
*share*) show_share_menu ;;
|
||||
*background*) show_background_menu ;;
|
||||
*setup*) show_setup_menu ;;
|
||||
*update*) show_update_menu ;;
|
||||
|
||||
12
.local/bin/station-move-to-workspace
Executable file
12
.local/bin/station-move-to-workspace
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Moves the active window to the relevant workspace
|
||||
|
||||
workspace=$1
|
||||
|
||||
active_window=$(hyprctl activewindow -j | jq -r ".address")
|
||||
active_workspace=$(hyprctl activeworkspace -j | jq -r ".id")
|
||||
|
||||
new_workspace=$((($workspace*2)-($active_workspace%2)))
|
||||
|
||||
hyprctl dispatch movetoworkspacesilent "$new_workspace,address:$active_window"
|
||||
Reference in New Issue
Block a user