add waybar config, scripts, mic tweaks
This commit is contained in:
@@ -28,6 +28,9 @@ bindd = SUPER SHIFT, X, X Post, exec, omarchy-launch-webapp "https://x.com/compo
|
|||||||
# unbind = SUPER, Space
|
# unbind = SUPER, Space
|
||||||
# bindd = SUPER, SPACE, Omarchy menu, exec, omarchy-menu
|
# bindd = SUPER, SPACE, Omarchy menu, exec, omarchy-menu
|
||||||
|
|
||||||
|
# create a new workspace
|
||||||
|
bindd = SUPER, grave, Create a mew workspace, exec, ~/.local/bin/new-workspace
|
||||||
|
|
||||||
# keybinds for special workspaces
|
# keybinds for special workspaces
|
||||||
bindd = SUPER, S, Show/hide Slack, togglespecialworkspace, slack
|
bindd = SUPER, S, Show/hide Slack, togglespecialworkspace, slack
|
||||||
bindd = SUPER, period, Show/hide 1Password, togglespecialworkspace, 1password
|
bindd = SUPER, period, Show/hide 1Password, togglespecialworkspace, 1password
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
# You must relaunch Hyprland after changing any envs (use Super+Esc, then Relaunch)
|
# You must relaunch Hyprland after changing any envs (use Super+Esc, then Relaunch)
|
||||||
|
|
||||||
# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K.
|
# Optimized for retina-class 2x displays, like 13" 2.8K, 27" 5K, 32" 6K.
|
||||||
env = GDK_SCALE,2
|
env = GDK_SCALE,1.5
|
||||||
monitor = , preferred, auto, auto
|
monitor = , preferred, auto, auto
|
||||||
|
|
||||||
# Good compromise for 27" or 32" 4K monitors (but fractional!)
|
# Good compromise for 27" or 32" 4K monitors (but fractional!)
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
[settings]
|
[settings]
|
||||||
idiomatic_version_file_enable_tools = ["ruby"]
|
idiomatic_version_file_enable_tools = ["ruby"]
|
||||||
|
experimental = true
|
||||||
|
|
||||||
[settings.ruby]
|
[settings.ruby]
|
||||||
ruby_build_opts = "CC=gcc-14 CXX=g++-14"
|
ruby_build_opts = "CC=gcc-14 CXX=g++-14"
|
||||||
@@ -17,3 +18,6 @@ yay = "latest"
|
|||||||
version = "latest"
|
version = "latest"
|
||||||
extras = "postgres,odbc"
|
extras = "postgres,odbc"
|
||||||
|
|
||||||
|
[settings.python]
|
||||||
|
uv_venv_auto = true
|
||||||
|
|
||||||
|
111
dot_config/waybar/config.jsonc
Normal file
111
dot_config/waybar/config.jsonc
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
{
|
||||||
|
"reload_style_on_change": true,
|
||||||
|
"layer": "top",
|
||||||
|
"position": "top",
|
||||||
|
"spacing": 0,
|
||||||
|
"height": 26,
|
||||||
|
"modules-left": ["custom/omarchy", "hyprland/workspaces"],
|
||||||
|
"modules-center": ["clock", "custom/update"],
|
||||||
|
"modules-right": [
|
||||||
|
"group/tray-expander",
|
||||||
|
"bluetooth",
|
||||||
|
"network",
|
||||||
|
"pulseaudio",
|
||||||
|
"cpu",
|
||||||
|
"battery"
|
||||||
|
],
|
||||||
|
"hyprland/workspaces": {
|
||||||
|
"on-click": "activate",
|
||||||
|
"format": "{id}",
|
||||||
|
},
|
||||||
|
"custom/omarchy": {
|
||||||
|
"format": "<span font='omarchy'>\ue900</span>",
|
||||||
|
"on-click": "omarchy-menu",
|
||||||
|
"tooltip-format": "Omarchy Menu\n\nSuper + Alt + Space"
|
||||||
|
},
|
||||||
|
"custom/update": {
|
||||||
|
"format": "",
|
||||||
|
"exec": "omarchy-update-available",
|
||||||
|
"on-click": "omarchy-launch-floating-terminal-with-presentation omarchy-update",
|
||||||
|
"tooltip-format": "Omarchy update available",
|
||||||
|
"interval": 3600
|
||||||
|
},
|
||||||
|
|
||||||
|
"cpu": {
|
||||||
|
"interval": 5,
|
||||||
|
"format": "",
|
||||||
|
"on-click": "alacritty -e btop"
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"format": "{:%A %H:%M}",
|
||||||
|
"format-alt": "{:%d %B W%V %Y}",
|
||||||
|
"tooltip": false,
|
||||||
|
"on-click-right": "omarchy-cmd-tzupdate"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"format-icons": ["", "", "", "", ""],
|
||||||
|
"format": "{icon}",
|
||||||
|
"format-wifi": "{icon}",
|
||||||
|
"format-ethernet": "",
|
||||||
|
"format-disconnected": "",
|
||||||
|
"tooltip-format-wifi": "{essid} ({frequency} GHz)\n⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
|
||||||
|
"tooltip-format-ethernet": "⇣{bandwidthDownBytes} ⇡{bandwidthUpBytes}",
|
||||||
|
"tooltip-format-disconnected": "Disconnected",
|
||||||
|
"interval": 3,
|
||||||
|
"spacing": 1,
|
||||||
|
"on-click": "alacritty --class=Impala -e impala"
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"format": "{capacity}% {icon}",
|
||||||
|
"format-discharging": "{icon}",
|
||||||
|
"format-charging": "{icon}",
|
||||||
|
"format-plugged": "",
|
||||||
|
"format-icons": {
|
||||||
|
"charging": ["", "", "", "", "", "", "", "", "", ""],
|
||||||
|
"default": ["", "", "", "", "", "", "", "", "", ""]
|
||||||
|
},
|
||||||
|
"format-full": "",
|
||||||
|
"tooltip-format-discharging": "{power:>1.0f}W↓ {capacity}%",
|
||||||
|
"tooltip-format-charging": "{power:>1.0f}W↑ {capacity}%",
|
||||||
|
"interval": 5,
|
||||||
|
"on-click": "omarchy-menu power",
|
||||||
|
"states": {
|
||||||
|
"warning": 20,
|
||||||
|
"critical": 10
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"bluetooth": {
|
||||||
|
"format": "",
|
||||||
|
"format-disabled": "",
|
||||||
|
"format-connected": "",
|
||||||
|
"tooltip-format": "Devices connected: {num_connections}",
|
||||||
|
"on-click": "blueberry"
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
"format": "{icon}",
|
||||||
|
"on-click": "alacritty --class=Wiremix -e wiremix",
|
||||||
|
"on-click-right": "pamixer -t",
|
||||||
|
"tooltip-format": "Playing at {volume}%",
|
||||||
|
"scroll-step": 5,
|
||||||
|
"format-muted": "",
|
||||||
|
"format-icons": {
|
||||||
|
"default": ["", "", ""]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"group/tray-expander": {
|
||||||
|
"orientation": "inherit",
|
||||||
|
"drawer": {
|
||||||
|
"transition-duration": 600,
|
||||||
|
"children-class": "tray-group-item"
|
||||||
|
},
|
||||||
|
"modules": ["custom/expand-icon", "tray"]
|
||||||
|
},
|
||||||
|
"custom/expand-icon": {
|
||||||
|
"format": " ",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 12,
|
||||||
|
"spacing": 12
|
||||||
|
}
|
||||||
|
}
|
67
dot_config/waybar/style.css
Normal file
67
dot_config/waybar/style.css
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
@import "../omarchy/current/theme/waybar.css";
|
||||||
|
|
||||||
|
* {
|
||||||
|
background-color: @background;
|
||||||
|
/* color: @foreground; */
|
||||||
|
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
min-height: 0;
|
||||||
|
font-family: CaskaydiaMono Nerd Font;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-left {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modules-right {
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
all: initial;
|
||||||
|
padding: 0 6px;
|
||||||
|
margin: 0 1.5px;
|
||||||
|
min-width: 9px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.empty {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active {
|
||||||
|
color: #bfe28c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray,
|
||||||
|
#cpu,
|
||||||
|
#battery,
|
||||||
|
#network,
|
||||||
|
#bluetooth,
|
||||||
|
#pulseaudio,
|
||||||
|
#custom-omarchy,
|
||||||
|
#custom-update {
|
||||||
|
min-width: 12px;
|
||||||
|
margin: 0 7.5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-expand-icon {
|
||||||
|
margin-right: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
tooltip {
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-update {
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
margin-left: 8.75px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hidden {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
51
dot_config/zed/settings.json
Normal file
51
dot_config/zed/settings.json
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
// Zed settings
|
||||||
|
//
|
||||||
|
// For information on how to configure Zed, see the Zed
|
||||||
|
// documentation: https://zed.dev/docs/configuring-zed
|
||||||
|
//
|
||||||
|
// To see all of Zed's default settings without changing your
|
||||||
|
// custom settings, run `zed: open default settings` from the
|
||||||
|
// command palette (cmd-shift-p / ctrl-shift-p)
|
||||||
|
{
|
||||||
|
"agent": {
|
||||||
|
"model_parameters": [],
|
||||||
|
"default_profile": "write"
|
||||||
|
},
|
||||||
|
// "features": {
|
||||||
|
// "edit_prediction_provider": "none"
|
||||||
|
// },
|
||||||
|
"always_treat_brackets_as_autoclosed": true,
|
||||||
|
"tab_size": 4,
|
||||||
|
"base_keymap": "SublimeText",
|
||||||
|
"format_on_save": "off",
|
||||||
|
"ui_font_size": 16,
|
||||||
|
"buffer_font_size": 15,
|
||||||
|
"theme": {
|
||||||
|
"mode": "system",
|
||||||
|
"light": "One Light",
|
||||||
|
"dark": "One Dark"
|
||||||
|
},
|
||||||
|
"languages": {
|
||||||
|
"JSON": {
|
||||||
|
"tab_size": 2
|
||||||
|
},
|
||||||
|
"JSONC": {
|
||||||
|
"tab_size": 2
|
||||||
|
},
|
||||||
|
"Elixir": {
|
||||||
|
"tab_size": 2
|
||||||
|
},
|
||||||
|
"Markdown": {
|
||||||
|
"soft_wrap": "editor_width"
|
||||||
|
},
|
||||||
|
"Jinja2": {
|
||||||
|
"remove_trailing_whitespace_on_save": false
|
||||||
|
},
|
||||||
|
"YAML": {
|
||||||
|
"tab_size": 2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"file_types": {
|
||||||
|
"Markdown": ["svx"]
|
||||||
|
}
|
||||||
|
}
|
35
dot_local/bin/executable_assign-workspace-monitors
Normal file
35
dot_local/bin/executable_assign-workspace-monitors
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
#!/usr/bin/python
|
||||||
|
|
||||||
|
import json
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
CONFIG = {
|
||||||
|
'Samsung Electric Company LS27A800U HCJW301093': 1,
|
||||||
|
'Seanix Technology Inc NX-EDG27X C6F0K3CN07UL': 2,
|
||||||
|
'BOE 0x0BCA': 3
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
p = subprocess.run(
|
||||||
|
['hyprctl', 'monitors', '-j'],
|
||||||
|
capture_output=True,
|
||||||
|
check=True,
|
||||||
|
encoding='utf-8'
|
||||||
|
)
|
||||||
|
monitors = json.loads(p.stdout)
|
||||||
|
print('monitors:', monitors)
|
||||||
|
|
||||||
|
if set(m['description'] for m in monitors) == CONFIG.keys():
|
||||||
|
print('config matched, assigning:')
|
||||||
|
dispatches = []
|
||||||
|
for m in monitors:
|
||||||
|
workspace = CONFIG[m['description']]
|
||||||
|
# move workspace to desired monitor
|
||||||
|
dispatches.append(f"dispatch moveworkspacetomonitor {workspace} {m['name']}")
|
||||||
|
# focus the workspace so that it's visible after moving
|
||||||
|
dispatches.append(f"workspace {workspace}")
|
||||||
|
cmd = ['hyprctl', '--batch', ' ; '.join(dispatches)]
|
||||||
|
print('\n'.join(cmd))
|
||||||
|
subprocess.run(cmd, check=True)
|
||||||
|
else:
|
||||||
|
print('config not matched')
|
4
dot_local/bin/executable_clear-downloads
Normal file
4
dot_local/bin/executable_clear-downloads
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/usr/bin/bash
|
||||||
|
|
||||||
|
# clear all files in ~/Downloads older than 24h
|
||||||
|
fd --changed-before 1d --full-path ~/Downloads --exec-batch rm -rf
|
7
dot_local/bin/executable_new-workspace
Normal file
7
dot_local/bin/executable_new-workspace
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/bash
|
||||||
|
|
||||||
|
# current highest-numbered workspace
|
||||||
|
MAX_WORKSPACE=$(hyprctl workspaces -j | jq 'sort_by(.id) | reverse | .[0].id')
|
||||||
|
|
||||||
|
hyprctl dispatch workspace $(($MAX_WORKSPACE + 1))
|
||||||
|
|
Reference in New Issue
Block a user