Compare commits

..
24 Commits
Author SHA1 Message Date
Honney b3b3f9825b fix: changed some autostart apps 2026-09-08 23:28:11 +02:00
Hannes 48fb1e6a19 fixes to Notifications 2026-09-02 00:54:14 +02:00
Hannes d07e185ddf feat: update quickshell session to use qt6ct environment variable 2026-08-31 21:37:02 +02:00
Hannes 630634ca4e feat: add quickshell session to autostart sequence remove it from script and removed your Idle and back notifications 2026-08-27 16:08:02 +02:00
Hannes 22cf5c8b86 feat: add support for adjusting audio volume and mute on external audio sources 2026-08-25 14:07:40 +02:00
Hannes 6a1fec6c3d feat: add carla session to autostart script 2026-08-23 21:40:58 +02:00
Hannes 382762c60e perf: Improve hypridle configuration handling
- Use hyprctl dispatch for dpms actions
- Remove unnecessary bash scripts
- Update configuration consistency
2026-08-22 22:24:30 +02:00
Hannes 559d814b61 docs: Update autostart and hypridle configurations
- Updated commands to use tmux for hypridle and hyprpaper
- Removed unnecessary commands
- Updated host-specific commands
- Added ignore-inhibit configuration option to hypridle
- Improved configuration consistency
2026-08-22 22:02:42 +02:00
Hannes ae94b7c449 changes with hypridle 2026-08-22 21:53:57 +02:00
Honney f904ee817e changes in laptop monito setup 2026-08-22 15:46:34 +02:00
Hannes f8d3983603 added scripts for hyprlock 2026-08-22 15:42:30 +02:00
Hannes 50e7c7a9aa added colors.lua 2026-08-21 23:47:02 +02:00
Hannes 8deb311047 disabled hdr due to flickering in games 2026-08-21 19:47:08 +02:00
Honney c7db3bc09d added ocr screenshot 2026-08-16 22:39:33 +02:00
Honney 704df2f325 some small changes and updates 2026-08-15 23:48:11 +02:00
Your Name 0db513c848 move satty window 2026-08-14 12:56:07 +00:00
Your Name f3ae3073ee move satty window and default brush 2026-08-14 12:46:17 +00:00
Your Name f5fea497c9 floating satty 2026-08-14 12:44:01 +00:00
Your Name bac0151865 move from swappy to satty 2026-08-14 12:41:06 +00:00
Your Name 4e40d20092 updates to swappy in screenshots 2026-08-14 12:37:44 +00:00
Your Name da16f88ec3 updates to swappy in screenshots 2026-08-14 12:33:25 +00:00
Your Name 512e3285dd updated screenshot tools to add editor 2026-08-14 12:30:10 +00:00
Your Name 6a2a3ce6dd updated screenshot tools 2026-08-14 12:18:37 +00:00
Hannes b5ce934840 some updates 2026-08-14 13:52:56 +02:00
32 changed files with 469 additions and 824 deletions
+4 -1
View File
@@ -2,4 +2,7 @@
*.log *.log
hyprlock.conf hyprlock.conf
hyprpaper.conf hyprpaper.conf
scripts/autostart/workspace scripts/autostart/workspace
config/color.lua
scripts/hypridle/screen_off.sh
scripts/hypridle/screen_on.sh
+3
View File
@@ -0,0 +1,3 @@
# Readme of the repository
## If hypridle screen turning off breaks
Remove scripts/hypridle/screen_off.sh and scripts/hypridle/screen_on.sh
+4 -4
View File
@@ -6,13 +6,15 @@ hl.on("hyprland.start", function ()
hl.exec_cmd("systemctl --user start hyprpolkitagent") hl.exec_cmd("systemctl --user start hyprpolkitagent")
hl.exec_cmd("tmux new-session -d -s keyring '/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh,gpg'") hl.exec_cmd("tmux new-session -d -s keyring '/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh,gpg'")
hl.exec_cmd("hypridle") hl.exec_cmd("tmux new-session -d -s hypridle 'hypridle'")
hl.exec_cmd("hyprpaper") hl.exec_cmd("tmux new-session -d -s hyprpaper 'hyprpaper'")
hl.exec_cmd("tmux new-session -d -s qs 'env QT_QPA_PLATFORMTHEME=qt6ct quickshell'")
if HOSTNAME == "honney-main" then if HOSTNAME == "honney-main" then
hl.exec_cmd("tmux new-session -d -s ydotool 'ydotoold'") hl.exec_cmd("tmux new-session -d -s ydotool 'ydotoold'")
hl.exec_cmd("tmux new-session -d -s ollama '/usr/bin/ollama serve'") hl.exec_cmd("tmux new-session -d -s ollama '/usr/bin/ollama serve'")
hl.exec_cmd("tmux new-session -d -s fah 'cd ~/.local/share/fah && fah-client'") hl.exec_cmd("tmux new-session -d -s fah 'cd ~/.local/share/fah && fah-client'")
hl.exec_cmd("tmux new-session -d -s carla 'carla -n /home/honney/Music/1Player.carxp'") hl.exec_cmd("tmux new-session -d -s carla 'carla -n /home/honney/Music/1Player.carxp'")
hl.exec_cmd("bash -c '~/.config/hypr/scripts/audio/1player.sh'")
hl.exec_cmd("bash -c '~/.config/hypr/scripts/goxlr/goxlr-start.sh > ~/.config/hypr/scripts/goxlr/goxlr-start.log'") hl.exec_cmd("bash -c '~/.config/hypr/scripts/goxlr/goxlr-start.sh > ~/.config/hypr/scripts/goxlr/goxlr-start.log'")
hl.exec_cmd("bash -c 'sleep 2 && ~/.config/hypr/scripts/wallpapers/random_wallpaper.sh > ~/.config/hypr/scripts/wallpapers/random_wallpaper.log'") hl.exec_cmd("bash -c 'sleep 2 && ~/.config/hypr/scripts/wallpapers/random_wallpaper.sh > ~/.config/hypr/scripts/wallpapers/random_wallpaper.log'")
@@ -26,8 +28,6 @@ hl.on("hyprland.start", function ()
hl.exec_cmd("tmux new-session -d -s ollama '/usr/bin/ollama serve'") hl.exec_cmd("tmux new-session -d -s ollama '/usr/bin/ollama serve'")
hl.exec_cmd("nextcloud") hl.exec_cmd("nextcloud")
hl.exec_cmd("discord") hl.exec_cmd("discord")
elseif HOSTNAME == "honney-opencode" then
hl.exec_cmd("tmux new-session -d -s oc 'cd ~/Projects && opencode web --hostname 0.0.0.0 --port 4096'")
end end
hl.exec_cmd("bash -c '~/.config/hypr/scripts/autostart/autostart.sh > ~/.config/hypr/scripts/autostart/autostart.log'") hl.exec_cmd("bash -c '~/.config/hypr/scripts/autostart/autostart.sh > ~/.config/hypr/scripts/autostart/autostart.log'")
+7 -1
View File
@@ -70,11 +70,15 @@ hl.bind("SUPER+P", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot
hl.bind("SUPER+ALT+P", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_monitor.sh")) hl.bind("SUPER+ALT+P", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_monitor.sh"))
hl.bind("SUPER+SHIFT+P", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_area.sh")) hl.bind("SUPER+SHIFT+P", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_area.sh"))
hl.bind("SUPER+SHIFT+S", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_area_2.sh")) hl.bind("SUPER+SHIFT+S", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_area_2.sh"))
hl.bind("SUPER+CTRL+O", hl.dsp.exec_cmd("~/.config/hypr/scripts/screenshot/screenshot_ocr.sh"))
-- Audio Control -- Audio Control
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+")) hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+"))
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-")) hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ 0; wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"))
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle")) hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"))
hl.bind("ALT+XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0; wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%+"))
hl.bind("ALT+XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ 0; wpctl set-volume @DEFAULT_AUDIO_SOURCE@ 5%-"))
hl.bind("ALT+XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"))
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle")) hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"))
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause || playerctl play-pause")) hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause || playerctl play-pause"))
@@ -116,4 +120,6 @@ end
-- Quickshell -- Quickshell
hl.bind("SUPER + SHIFT + W", hl.dsp.global("quickshell:Wallpaper")) hl.bind("SUPER + SHIFT + W", hl.dsp.global("quickshell:Wallpaper"))
hl.bind("SUPER + SHIFT + J", hl.dsp.global("quickshell:JLearner")) hl.bind("SUPER + SHIFT + J", hl.dsp.global("quickshell:JLearner"))
hl.bind("SUPER + SHIFT + L", hl.dsp.global("quickshell:WLogout")) hl.bind("SUPER + SHIFT + L", hl.dsp.global("quickshell:WLogout"))
hl.bind("SUPER + SHIFT + R", hl.dsp.global("quickshell:QsReload"))
hl.bind("SUPER + SHIFT + N", hl.dsp.global("quickshell:NotificationHistory"))
+13
View File
@@ -31,4 +31,17 @@ if HOSTNAME == "honney-main" then
kb_layout = "us", kb_layout = "us",
} }
}) })
end
-- To find the device names: hyprctl devices -j
hl.device({
name = "evision-rgb-keyboard",
kb_layout = "us"
})
for i = 1, 9 do
hl.device({
name = "evision-rgb-keyboard-" .. tostring(i),
kb_layout = "us"
})
end end
+71 -37
View File
@@ -5,16 +5,16 @@ if HOSTNAME == "honney-main" then
position = "0x0", position = "0x0",
scale = 1, scale = 1,
transform = 0, transform = 0,
bitdepth = 10, -- bitdepth = 10,
cm = "srgb", -- cm = "srgb",
sdr_eotf = "default", -- sdr_eotf = "default",
sdrbrightness = 1.0, -- sdrbrightness = 1.0,
sdrsaturation = 1.0, -- sdrsaturation = 1.0,
vrr = 0, -- vrr = 0,
supports_wide_color = 1, -- supports_wide_color = 1,
supports_hdr = 1, -- supports_hdr = 1,
sdr_min_luminance = 0.2, -- sdr_min_luminance = 0.2,
sdr_max_luminance = 600, -- sdr_max_luminance = 600,
}) })
hl.monitor({ hl.monitor({
output = "desc:ASUSTek COMPUTER INC PA279CRV S5LMSB007609", output = "desc:ASUSTek COMPUTER INC PA279CRV S5LMSB007609",
@@ -22,16 +22,16 @@ if HOSTNAME == "honney-main" then
position = "-3840x0", position = "-3840x0",
scale = 1, scale = 1,
transform = 0, transform = 0,
bitdepth = 10, -- bitdepth = 10,
cm = "srgb", -- cm = "srgb",
sdr_eotf = "default", -- sdr_eotf = "default",
sdrbrightness = 1.0, -- sdrbrightness = 1.0,
sdrsaturation = 1.0, -- sdrsaturation = 1.0,
vrr = 0, -- vrr = 0,
supports_wide_color = 1, -- supports_wide_color = 1,
supports_hdr = 1, -- supports_hdr = 1,
sdr_min_luminance = 0.2, -- sdr_min_luminance = 0.2,
sdr_max_luminance = 400, -- sdr_max_luminance = 400,
}) })
hl.monitor({ hl.monitor({
output = "desc:LG Electronics LG ULTRAFINE 503NTKF3L437", output = "desc:LG Electronics LG ULTRAFINE 503NTKF3L437",
@@ -39,16 +39,16 @@ if HOSTNAME == "honney-main" then
position = "0x-2160", position = "0x-2160",
scale = 1, scale = 1,
transform = 2, transform = 2,
bitdepth = 10, -- bitdepth = 10,
cm = "srgb", -- cm = "srgb",
sdr_eotf = "default", -- sdr_eotf = "default",
sdrbrightness = 1.0, -- sdrbrightness = 1.0,
sdrsaturation = 1.0, -- sdrsaturation = 1.0,
vrr = 0, -- vrr = 0,
supports_wide_color = 1, -- supports_wide_color = 1,
supports_hdr = 1, -- supports_hdr = 1,
sdr_min_luminance = 0.2, -- sdr_min_luminance = 0.2,
sdr_max_luminance = 400, -- sdr_max_luminance = 400,
}) })
hl.monitor({ hl.monitor({
output = "desc:LG Electronics LG ULTRAGEAR 107MAKR2RE65", output = "desc:LG Electronics LG ULTRAGEAR 107MAKR2RE65",
@@ -66,6 +66,40 @@ if HOSTNAME == "honney-main" then
transform = 0, transform = 0,
}) })
elseif HOSTNAME == "hp-laptop" then elseif HOSTNAME == "hp-laptop" then
hl.monitor({
output = "desc:BNQ BenQ EX2710U 0000000000001",
mode = "3840x2160@120",
position = "960x-2160",
scale = 1,
transform = 0,
-- bitdepth = 10,
-- cm = "srgb",
-- sdr_eotf = "default",
-- sdrbrightness = 1.0,
-- sdrsaturation = 1.0,
-- vrr = 0,
-- supports_wide_color = 1,
-- supports_hdr = 1,
-- sdr_min_luminance = 0.2,
-- sdr_max_luminance = 600,
})
hl.monitor({
output = "desc:ASUSTek COMPUTER INC PA279CRV S5LMSB007609",
mode = "1920x1080@60",
position = "-960x-1080",
scale = 1,
transform = 0,
-- bitdepth = 10,
-- cm = "srgb",
-- sdr_eotf = "default",
-- sdrbrightness = 1.0,
-- sdrsaturation = 1.0,
-- vrr = 0,
-- supports_wide_color = 1,
-- supports_hdr = 1,
-- sdr_min_luminance = 0.2,
-- sdr_max_luminance = 400,
})
hl.monitor({ hl.monitor({
output = "desc:BOE 0x08A8", output = "desc:BOE 0x08A8",
mode = "1920x1080@60", mode = "1920x1080@60",
@@ -73,13 +107,13 @@ elseif HOSTNAME == "hp-laptop" then
scale = 1, scale = 1,
transform = 0, transform = 0,
}) })
hl.monitor({ -- hl.monitor({
output = "desc:AOC 24B3HA2 AVKS29A004767", -- output = "desc:AOC 24B3HA2 AVKS29A004767",
mode = "1920x1080@120", -- mode = "1920x1080@120",
position = "-1920x0", -- position = "-1920x0",
scale = 1, -- scale = 1,
transform = 0, -- transform = 0,
}) -- })
elseif HOSTNAME == "arch" then elseif HOSTNAME == "arch" then
hl.monitor({ hl.monitor({
output = "desc:AOC CU34G2XP 1Q1R4HA002436", output = "desc:AOC CU34G2XP 1Q1R4HA002436",
+7 -4
View File
@@ -6,8 +6,9 @@ hl.config({
float_gaps = 0, float_gaps = 0,
gaps_workspaces = 0, gaps_workspaces = 0,
col = { col = {
inactive_border = 0xff00B7EB, inactive_border = INACTIVE_COLOR,
active_border = { colors = { "rgba(ff0000ff)", "rgba(ffff00ff)", "rgba(00ff00ff)", "rgba(00ffffff)", "rgba(0000ffff)", "rgba(ff00ffff)" }, angle = 45 }, -- active_border = { colors = { "rgba(ff0000ff)", "rgba(ffff00ff)", "rgba(00ff00ff)", "rgba(00ffffff)", "rgba(0000ffff)", "rgba(ff00ffff)" }, angle = 45 },
active_border = ACTIVE_COLOR,
nogroup_border = 0xffffaaff, nogroup_border = 0xffffaaff,
nogroup_border_active = 0xffff00ff, nogroup_border_active = 0xffff00ff,
}, },
@@ -72,7 +73,7 @@ if USER == "honney" then
render = { render = {
direct_scanout = 2, direct_scanout = 2,
cm_enabled = true, cm_enabled = true,
cm_auto_hdr = 1, cm_auto_hdr = 0,
} }
}) })
elseif USER == "teo" then elseif USER == "teo" then
@@ -134,6 +135,8 @@ hl.config({
background_color = 0x000000, background_color = 0x000000,
on_focus_under_fullscreen = 0, on_focus_under_fullscreen = 0,
middle_click_paste = false, middle_click_paste = false,
key_press_enables_dpms = true,
mouse_move_enables_dpms = true
} }
}) })
@@ -154,7 +157,7 @@ end
if USER == "honney" then if USER == "honney" then
hl.config({ hl.config({
quirks ={ quirks ={
prefer_hdr = 1, prefer_hdr = 0,
} }
}) })
else else
+2
View File
@@ -0,0 +1,2 @@
ACTIVE_COLOR = 0xFFFF0000
INACTIVE_COLOR = 0xFF0000FF
+10 -12
View File
@@ -1,22 +1,20 @@
# listener {
# timeout = 200
# on-timeout = notify-send -u low "You are idle!"
# on-resume = notify-send -u low "Welcome back!"
# ignore_inhibit = true
# }
listener { listener {
timeout = 300 timeout = 300
on-timeout = hyprlock on-timeout = hyprlock
} }
# listener {
# timeout = 360
# on-timeout = bash -c 'for o in $(hyprctl monitors -j | jq -r ".[].name"); do wlopm --off "$o"; done'
# on-resume = bash -c 'for o in $(hyprctl monitors -j | jq -r ".[].name"); do wlopm --on "$o"; done'
# }
listener { listener {
timeout = 360 timeout = 360
on-timeout = hyprctl dispatch "hl.dsp.dpms({action = 'off'})" on-timeout = hyprctl dispatch "hl.dsp.dpms({action = 'off'})"
on-resume = hyprctl dispatch "hl.dsp.dpms({action = 'on'})" on-resume = hyprctl dispatch "hl.dsp.dpms({action = 'on'})"
} # alternative:
# on-timeout = wlopm --off '*'
listener { # on-resume = wlopm --on '*'
timeout = 250 # in seconds.
on-timeout = notify-send "You are idle!" # command to run when timeout has passed.
on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
} }
+1
View File
@@ -1,4 +1,5 @@
require("config/hostname") require("config/hostname")
require("config/color")
require("config/bind") require("config/bind")
require("config/env") require("config/env")
require("config/theme") require("config/theme")
+20 -1
View File
@@ -23,6 +23,9 @@ REQUIRED_PKGS=(
jq jq
inetutils inetutils
tmux tmux
grim
slurp
wl-clipboard
) )
OPTIONAL_PKGS=( OPTIONAL_PKGS=(
@@ -38,7 +41,8 @@ OPTIONAL_PKGS=(
imagemagick "Image tools" OFF imagemagick "Image tools" OFF
playerctl "Media control" OFF playerctl "Media control" OFF
wlopm "Monitor power" OFF wlopm "Monitor power" OFF
hyprshot "Screenshot tool" OFF satty "Screenshot editor" OFF
oxipng "PNG compressor" OFF
matugen "Theme generator" OFF matugen "Theme generator" OFF
) )
@@ -86,6 +90,21 @@ mkdir -p "$SCRIPT_DIR/scripts/autostart"
ok "hyprpaper config created" ok "hyprpaper config created"
} }
[[ ! -f "$SCRIPT_DIR/config/color.lua" ]] && {
cp "$SCRIPT_DIR/examples/color.lua.example" "$SCRIPT_DIR/config/color.lua"
ok "color config created"
}
[[ ! -f "$SCRIPT_DIR/config/color.lua" ]] && {
cp "$SCRIPT_DIR/examples/color.lua.example" "$SCRIPT_DIR/config/color.lua"
ok "color config created"
}
[[ ! -f "$SCRIPT_DIR/config/color.lua" ]] && {
cp "$SCRIPT_DIR/examples/color.lua.example" "$SCRIPT_DIR/config/color.lua"
ok "color config created"
}
# ---------------------------- # ----------------------------
# Install # Install
# ---------------------------- # ----------------------------
+99 -644
View File
@@ -14,518 +14,26 @@
<BeatsPerMinute>120</BeatsPerMinute> <BeatsPerMinute>120</BeatsPerMinute>
</Transport> </Transport>
<!-- LSP Mixer x8 Stereo --> <!-- Simple Low Pass Filter -->
<Plugin> <Plugin>
<Info> <Info>
<Type>LV2</Type> <Type>LADSPA</Type>
<Name>LSP Mixer x8 Stereo</Name> <Name>Simple Low Pass Filter</Name>
<URI>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo</URI> <Binary>/usr/lib/ladspa/filter.so</Binary>
<Label>lpf</Label>
<UniqueID>1041</UniqueID>
</Info> </Info>
<Data> <Data>
<Active>Yes</Active> <Active>Yes</Active>
<ControlChannel>1</ControlChannel> <ControlChannel>1</ControlChannel>
<Options>0x1</Options> <Options>0x0</Options>
<Parameter> <Parameter>
<Index>0</Index> <Index>0</Index>
<Name>Enabled</Name> <Name>Cutoff Frequency</Name>
<Symbol>enabled</Symbol> <Value>0.00916666630655527</Value>
<Value>1</Value>
</Parameter> </Parameter>
<Parameter>
<Index>1</Index>
<Name>Mono output</Name>
<Symbol>mono</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>2</Index>
<Name>Output balance</Name>
<Symbol>bal</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>3</Index>
<Name>Dry amount</Name>
<Symbol>dry</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>4</Index>
<Name>Wet amount</Name>
<Symbol>wet</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>5</Index>
<Name>Output gain</Name>
<Symbol>g_out</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>10</Index>
<Name>Channel solo 1</Name>
<Symbol>cs_1</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>11</Index>
<Name>Channel mute 1</Name>
<Symbol>cm_1</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>12</Index>
<Name>Channel phase invert 1</Name>
<Symbol>ci_1</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>13</Index>
<Name>Channel pan left 1</Name>
<Symbol>cp_1l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>14</Index>
<Name>Channel pan right 1</Name>
<Symbol>cp_1r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>15</Index>
<Name>Channel output balance 1</Name>
<Symbol>cb_1</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>16</Index>
<Name>Channel gain 1</Name>
<Symbol>cg_1</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>19</Index>
<Name>Channel solo 2</Name>
<Symbol>cs_2</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>20</Index>
<Name>Channel mute 2</Name>
<Symbol>cm_2</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>21</Index>
<Name>Channel phase invert 2</Name>
<Symbol>ci_2</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>22</Index>
<Name>Channel pan left 2</Name>
<Symbol>cp_2l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>23</Index>
<Name>Channel pan right 2</Name>
<Symbol>cp_2r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>24</Index>
<Name>Channel output balance 2</Name>
<Symbol>cb_2</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>25</Index>
<Name>Channel gain 2</Name>
<Symbol>cg_2</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>28</Index>
<Name>Channel solo 3</Name>
<Symbol>cs_3</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>29</Index>
<Name>Channel mute 3</Name>
<Symbol>cm_3</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>30</Index>
<Name>Channel phase invert 3</Name>
<Symbol>ci_3</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>31</Index>
<Name>Channel pan left 3</Name>
<Symbol>cp_3l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>32</Index>
<Name>Channel pan right 3</Name>
<Symbol>cp_3r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>33</Index>
<Name>Channel output balance 3</Name>
<Symbol>cb_3</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>34</Index>
<Name>Channel gain 3</Name>
<Symbol>cg_3</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>37</Index>
<Name>Channel solo 4</Name>
<Symbol>cs_4</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>38</Index>
<Name>Channel mute 4</Name>
<Symbol>cm_4</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>39</Index>
<Name>Channel phase invert 4</Name>
<Symbol>ci_4</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>40</Index>
<Name>Channel pan left 4</Name>
<Symbol>cp_4l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>41</Index>
<Name>Channel pan right 4</Name>
<Symbol>cp_4r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>42</Index>
<Name>Channel output balance 4</Name>
<Symbol>cb_4</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>43</Index>
<Name>Channel gain 4</Name>
<Symbol>cg_4</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>46</Index>
<Name>Channel solo 5</Name>
<Symbol>cs_5</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>47</Index>
<Name>Channel mute 5</Name>
<Symbol>cm_5</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>48</Index>
<Name>Channel phase invert 5</Name>
<Symbol>ci_5</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>49</Index>
<Name>Channel pan left 5</Name>
<Symbol>cp_5l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>50</Index>
<Name>Channel pan right 5</Name>
<Symbol>cp_5r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>51</Index>
<Name>Channel output balance 5</Name>
<Symbol>cb_5</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>52</Index>
<Name>Channel gain 5</Name>
<Symbol>cg_5</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>55</Index>
<Name>Channel solo 6</Name>
<Symbol>cs_6</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>56</Index>
<Name>Channel mute 6</Name>
<Symbol>cm_6</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>57</Index>
<Name>Channel phase invert 6</Name>
<Symbol>ci_6</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>58</Index>
<Name>Channel pan left 6</Name>
<Symbol>cp_6l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>59</Index>
<Name>Channel pan right 6</Name>
<Symbol>cp_6r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>60</Index>
<Name>Channel output balance 6</Name>
<Symbol>cb_6</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>61</Index>
<Name>Channel gain 6</Name>
<Symbol>cg_6</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>64</Index>
<Name>Channel solo 7</Name>
<Symbol>cs_7</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>65</Index>
<Name>Channel mute 7</Name>
<Symbol>cm_7</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>66</Index>
<Name>Channel phase invert 7</Name>
<Symbol>ci_7</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>67</Index>
<Name>Channel pan left 7</Name>
<Symbol>cp_7l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>68</Index>
<Name>Channel pan right 7</Name>
<Symbol>cp_7r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>69</Index>
<Name>Channel output balance 7</Name>
<Symbol>cb_7</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>70</Index>
<Name>Channel gain 7</Name>
<Symbol>cg_7</Symbol>
<Value>1</Value>
</Parameter>
<Parameter>
<Index>73</Index>
<Name>Channel solo 8</Name>
<Symbol>cs_8</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>74</Index>
<Name>Channel mute 8</Name>
<Symbol>cm_8</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>75</Index>
<Name>Channel phase invert 8</Name>
<Symbol>ci_8</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>76</Index>
<Name>Channel pan left 8</Name>
<Symbol>cp_8l</Symbol>
<Value>-100</Value>
</Parameter>
<Parameter>
<Index>77</Index>
<Name>Channel pan right 8</Name>
<Symbol>cp_8r</Symbol>
<Value>100</Value>
</Parameter>
<Parameter>
<Index>78</Index>
<Name>Channel output balance 8</Name>
<Symbol>cb_8</Symbol>
<Value>0</Value>
</Parameter>
<Parameter>
<Index>79</Index>
<Name>Channel gain 8</Name>
<Symbol>cg_8</Symbol>
<Value>1</Value>
</Parameter>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#send</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#return</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_1</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_2</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_3</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_4</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_5</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_6</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_7</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#String</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/ports#ret_8</Key>
<Value></Value>
</CustomData>
<CustomData>
<Type>http://lv2plug.in/ns/ext/atom#Object</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x8_stereo/preset_state</Key>
<Value>AAAAAFMAAABUAAAAAAAAAAEAAAARAAAAAAAAAAAAAABVAAAAAAAAAAQAAAAHAAAAAAAAAAAAAABWAAAAAAAAAAQAAAAHAAAAAAAAAAAAAAA=</Value>
</CustomData>
</Data> </Data>
</Plugin> </Plugin>
@@ -721,50 +229,43 @@
<CustomData> <CustomData>
<Type>http://lv2plug.in/ns/ext/atom#Object</Type> <Type>http://lv2plug.in/ns/ext/atom#Object</Type>
<Key>http://lsp-plug.in/plugins/lv2/mixer_x4_mono/preset_state</Key> <Key>http://lsp-plug.in/plugins/lv2/mixer_x4_mono/preset_state</Key>
<Value>AAAAAFMAAABUAAAAAAAAAAEAAAARAAAAAAAAAAAAAABVAAAAAAAAAAQAAAAHAAAAAAAAAAAAAABWAAAAAAAAAAQAAAAHAAAAAAAAAAAAAAA=</Value> <Value>AAAAAFUAAABWAAAAAAAAAAEAAAARAAAAAAAAAAAAAABXAAAAAAAAAAQAAAAHAAAAAAAAAAAAAABYAAAAAAAAAAQAAAAHAAAAAAAAAAAAAAA=</Value>
</CustomData> </CustomData>
</Data> </Data>
</Plugin> </Plugin>
<!-- Simple Low Pass Filter -->
<Plugin>
<Info>
<Type>LADSPA</Type>
<Name>Simple Low Pass Filter</Name>
<Binary>/usr/lib/ladspa/filter.so</Binary>
<Label>lpf</Label>
<UniqueID>1041</UniqueID>
</Info>
<Data>
<Active>Yes</Active>
<ControlChannel>1</ControlChannel>
<Options>0x0</Options>
<Parameter>
<Index>0</Index>
<Name>Cutoff Frequency</Name>
<Value>0.00916666630655527</Value>
</Parameter>
</Data>
</Plugin>
<ExternalPatchbay> <ExternalPatchbay>
<Connection> <Connection>
<Source>GoXLR Chat Mic:capture_FL</Source> <Source>GoXLR Stream Mix 1:capture_FL</Source>
<Target>WEBRTC VoiceEngine:input_FL</Target> <Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_FL</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR Chat Mic:capture_FR</Source> <Source>GoXLR Stream Mix 1:capture_FL</Source>
<Target>WEBRTC VoiceEngine:input_FR</Target> <Target>LSP Mixer x4 Mono:Input</Target>
</Connection>
<Connection>
<Source>GoXLR Stream Mix 1:capture_FL</Source>
<Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_RL</Target>
</Connection>
<Connection>
<Source>GoXLR Stream Mix 1:capture_FR</Source>
<Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_FR</Target>
</Connection>
<Connection>
<Source>GoXLR Stream Mix 1:capture_FR</Source>
<Target>LSP Mixer x4 Mono:Audio input 1</Target>
</Connection>
<Connection>
<Source>GoXLR Stream Mix 1:capture_FR</Source>
<Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_RR</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR 0:capture_AUX0</Source> <Source>GoXLR 0:capture_AUX0</Source>
<Target>Split GoXLR Broadcast Stream Mix:input_AUX0</Target> <Target>Split GoXLR Stream Mix 1:input_AUX0</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR 0:capture_AUX1</Source> <Source>GoXLR 0:capture_AUX1</Source>
<Target>Split GoXLR Broadcast Stream Mix:input_AUX1</Target> <Target>Split GoXLR Stream Mix 1:input_AUX1</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR 0:capture_AUX2</Source> <Source>GoXLR 0:capture_AUX2</Source>
@@ -791,20 +292,28 @@
<Target>GoXLR Utility:input_FR</Target> <Target>GoXLR Utility:input_FR</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR Broadcast Stream Mix:capture_FL</Source> <Source>Split GoXLR System:output_AUX0</Source>
<Target>Carla.226/LSP Mixer x8 Stereo:Audio input left 2</Target> <Target>GoXLR 0:playback_AUX0</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>GoXLR Broadcast Stream Mix:capture_FR</Source> <Source>Split GoXLR System:output_AUX1</Source>
<Target>Carla.226/LSP Mixer x8 Stereo:Audio input right 2</Target> <Target>GoXLR 0:playback_AUX1</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Family 17h/19h/1ah HD Audio Controller Analog Stereo:capture_FL</Source> <Source>Split GoXLR Game:output_AUX2</Source>
<Target>Carla.226/LSP Mixer x8 Stereo:Audio input left 1</Target> <Target>GoXLR 0:playback_AUX2</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Family 17h/19h/1ah HD Audio Controller Analog Stereo:capture_FR</Source> <Source>Split GoXLR Game:output_AUX3</Source>
<Target>Carla.226/LSP Mixer x8 Stereo:Audio input right 1</Target> <Target>GoXLR 0:playback_AUX3</Target>
</Connection>
<Connection>
<Source>Split GoXLR Music:output_AUX6</Source>
<Target>GoXLR 0:playback_AUX6</Target>
</Connection>
<Connection>
<Source>Split GoXLR Music:output_AUX7</Source>
<Target>GoXLR 0:playback_AUX7</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Split GoXLR Sample:output_AUX8</Source> <Source>Split GoXLR Sample:output_AUX8</Source>
@@ -823,52 +332,16 @@
<Target>GoXLR 0:playback_AUX5</Target> <Target>GoXLR 0:playback_AUX5</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Split GoXLR Music:output_AUX6</Source> <Source>Simple Low Pass Filter:Output</Source>
<Target>GoXLR 0:playback_AUX6</Target> <Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_LFE</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Split GoXLR Music:output_AUX7</Source> <Source>LSP Mixer x4 Mono:Output</Source>
<Target>GoXLR 0:playback_AUX7</Target> <Target>Simple Low Pass Filter:Input</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Split GoXLR Game:output_AUX2</Source> <Source>LSP Mixer x4 Mono:Output</Source>
<Target>GoXLR 0:playback_AUX2</Target> <Target>Ryzen HD Audio Controller Analog Surround 5.1:playback_FC</Target>
</Connection>
<Connection>
<Source>Split GoXLR Game:output_AUX3</Source>
<Target>GoXLR 0:playback_AUX3</Target>
</Connection>
<Connection>
<Source>Split GoXLR System:output_AUX0</Source>
<Target>GoXLR 0:playback_AUX0</Target>
</Connection>
<Connection>
<Source>Split GoXLR System:output_AUX1</Source>
<Target>GoXLR 0:playback_AUX1</Target>
</Connection>
<Connection>
<Source>Carla.226/LSP Mixer x8 Stereo:Output L</Source>
<Target>Family 17h/19h/1ah HD Audio Controller Analog Surround 5.1:playback_FL</Target>
</Connection>
<Connection>
<Source>Carla.226/LSP Mixer x8 Stereo:Output L</Source>
<Target>Carla.226/LSP Mixer x4 Mono:Audio input 1</Target>
</Connection>
<Connection>
<Source>Carla.226/LSP Mixer x8 Stereo:Output R</Source>
<Target>Family 17h/19h/1ah HD Audio Controller Analog Surround 5.1:playback_FR</Target>
</Connection>
<Connection>
<Source>Carla.226/LSP Mixer x8 Stereo:Output R</Source>
<Target>Carla.226/LSP Mixer x4 Mono:Audio input 2</Target>
</Connection>
<Connection>
<Source>WEBRTC VoiceEngine:output_FL</Source>
<Target>GoXLR Chat:playback_FL</Target>
</Connection>
<Connection>
<Source>WEBRTC VoiceEngine:output_FR</Source>
<Target>GoXLR Chat:playback_FR</Target>
</Connection> </Connection>
<Connection> <Connection>
<Source>Floorp:output_FL</Source> <Source>Floorp:output_FL</Source>
@@ -878,96 +351,78 @@
<Source>Floorp:output_FR</Source> <Source>Floorp:output_FR</Source>
<Target>GoXLR System:playback_FR</Target> <Target>GoXLR System:playback_FR</Target>
</Connection> </Connection>
<Connection>
<Source>Carla.226/LSP Mixer x4 Mono:Output</Source>
<Target>Family 17h/19h/1ah HD Audio Controller Analog Surround 5.1:playback_FC</Target>
</Connection>
<Connection>
<Source>Carla.226/LSP Mixer x4 Mono:Output</Source>
<Target>Carla.226/Simple Low Pass Filter:Input</Target>
</Connection>
<Connection>
<Source>Carla.226/Simple Low Pass Filter:Output</Source>
<Target>Family 17h/19h/1ah HD Audio Controller Analog Surround 5.1:playback_LFE</Target>
</Connection>
<Positions> <Positions>
<Position x1="1105" y1="1578"> <Position x1="1119" y1="629">
<Name>GoXLR Chat Mic</Name> <Name>GoXLR Chat Mic</Name>
</Position> </Position>
<Position x1="1034" y1="538" x2="1909" y2="1027"> <Position x1="1447" y1="1476">
<Name>GoXLR Stream Mix 1</Name>
</Position>
<Position x1="198" y1="1207" x2="1501" y2="777">
<Name>GoXLR 0</Name> <Name>GoXLR 0</Name>
</Position> </Position>
<Position x1="1155" y1="1705"> <Position x1="575" y1="828">
<Name>GoXLR Sampler</Name> <Name>GoXLR Sampler</Name>
</Position> </Position>
<Position x1="1463" y1="881"> <Position x1="1119" y1="925" x2="2136" y2="1570">
<Name>GoXLR Broadcast Stream Mix</Name> <Name>Ryzen HD Audio Controller Analog Stereo</Name>
</Position> </Position>
<Position x1="1446" y1="1290" x2="2257" y2="1128"> <Position x1="1119" y1="999">
<Name>Family 17h/19h/1ah HD Audio Controller Analog Stereo</Name>
</Position>
<Position x1="1301" y1="1233">
<Name>Split GoXLR Sample</Name>
</Position>
<Position x1="1300" y1="1081">
<Name>Split GoXLR Chat</Name>
</Position>
<Position x1="1299" y1="1151">
<Name>Split GoXLR Music</Name>
</Position>
<Position x1="1300" y1="1012">
<Name>Split GoXLR Game</Name>
</Position>
<Position x1="1308" y1="946">
<Name>Split GoXLR System</Name> <Name>Split GoXLR System</Name>
</Position> </Position>
<Position x1="1241" y1="1586"> <Position x1="1119" y1="1073">
<Name>WEBRTC VoiceEngine</Name> <Name>Split GoXLR Game</Name>
</Position> </Position>
<Position x1="1277" y1="1360"> <Position x1="1119" y1="1147">
<Name>Floorp</Name> <Name>Split GoXLR Music</Name>
</Position> </Position>
<Position x1="1447" y1="1333"> <Position x1="1119" y1="1221">
<Name>Split GoXLR Sample</Name>
</Position>
<Position x1="1119" y1="1295">
<Name>Split GoXLR Chat</Name>
</Position>
<Position x1="1119" y1="1369">
<Name>GoXLR System</Name> <Name>GoXLR System</Name>
</Position> </Position>
<Position x1="1447" y1="1407"> <Position x1="1119" y1="1443">
<Name>GoXLR Sample</Name>
</Position>
<Position x1="1447" y1="1629">
<Name>GoXLR Chat</Name>
</Position>
<Position x1="1447" y1="1481">
<Name>GoXLR Music</Name>
</Position>
<Position x1="1447" y1="1555">
<Name>GoXLR Game</Name> <Name>GoXLR Game</Name>
</Position> </Position>
<Position x1="1870" y1="1977" x2="2544" y2="1278"> <Position x1="1119" y1="1517">
<Name>Family 17h/19h/1ah HD Audio Controller Analog Surround 5.1</Name> <Name>GoXLR Music</Name>
</Position> </Position>
<Position x1="1426" y1="401"> <Position x1="1119" y1="1591">
<Name>Split GoXLR Sampler</Name> <Name>GoXLR Sample</Name>
</Position> </Position>
<Position x1="1413" y1="489"> <Position x1="1119" y1="1665">
<Name>GoXLR Chat</Name>
</Position>
<Position x1="835" y1="1844" x2="2058" y2="1445">
<Name>Ryzen HD Audio Controller Analog Surround 5.1</Name>
</Position>
<Position x1="1119" y1="1731">
<Name>Split GoXLR Chat Mic</Name> <Name>Split GoXLR Chat Mic</Name>
</Position> </Position>
<Position x1="1424" y1="307"> <Position x1="1119" y1="1731">
<Name>Split GoXLR Broadcast Stream Mix</Name> <Name>Split GoXLR Stream Mix 1</Name>
</Position> </Position>
<Position x1="1447" y1="1769" x2="1952" y2="2357"> <Position x1="1119" y1="1731">
<Name>Split GoXLR Sampler</Name>
</Position>
<Position x1="528" y1="1184" x2="2132" y2="1931">
<Name>Midi-Bridge</Name> <Name>Midi-Bridge</Name>
</Position> </Position>
<Position x1="1447" y1="1769" x2="1843" y2="1769"> <Position x1="1119" y1="1731" x2="1840" y2="2042">
<Name>BLE MIDI 1</Name> <Name>BLE MIDI 1</Name>
</Position> </Position>
<Position x1="1874" y1="1252" pluginId="0"> <Position x1="1825" y1="1600" pluginId="0">
<Name>Carla.226/LSP Mixer x8 Stereo</Name> <Name>Simple Low Pass Filter</Name>
</Position> </Position>
<Position x1="2211" y1="1377" pluginId="1"> <Position x1="1621" y1="1544" pluginId="1">
<Name>Carla.226/LSP Mixer x4 Mono</Name> <Name>LSP Mixer x4 Mono</Name>
</Position> </Position>
<Position x1="2476" y1="1444" pluginId="2"> <Position x1="783" y1="825">
<Name>Carla.226/Simple Low Pass Filter</Name> <Name>GoXLR Utility</Name>
</Position> </Position>
</Positions> </Positions>
</ExternalPatchbay> </ExternalPatchbay>
+1 -1
View File
@@ -8,4 +8,4 @@
killall carla killall carla
# start new session # start new session
nohup carla -n ~/.config/hypr/scripts/audio/1Player.carxp & tmux new-session -d -s carla '~/.config/hypr/scripts/audio/1Player.carxp'
+1 -1
View File
@@ -9,4 +9,4 @@
killall carla killall carla
# start new session # start new session
nohup carla -n ~/.config/hypr/scripts/audio/2Player.carxp & tmux new-session -d -s carla '~/.config/hypr/scripts/audio/2Player.carxp'
+1 -1
View File
@@ -116,4 +116,4 @@ for i in 4 3 2 1; do
fi fi
done done
tmux new-session -d -s qs 'sleep 4 && quickshell' # tmux new-session -d -s qs 'sleep 4 && quickshell'
+2 -3
View File
@@ -1,9 +1,8 @@
#!/bin/bash #!/bin/bash
# Source the functions file # Source the functions file
notify-send "GoXLR inteface is starting" notify-send --app-name "GOXLR client" --icon "goxlr-utility" -u normal "Starting" "GoXLR inteface is starting"
# nohup goxlr-daemon &
sleep 10 sleep 10
goxlr-client profiles device load 'Default' goxlr-client profiles device load 'Default'
notify-send "GoXLR start complete" notify-send --app-name "GOXLR client" --icon "goxlr-utility" -u normal "Started" "GoXLR start complete"
+3 -6
View File
@@ -1,11 +1,8 @@
#!/bin/bash #!/bin/bash
# Source the functions file
source "$HOME/.config/function_helper.sh"
SCRIPT="goxlr-daemon" SCRIPT="goxlr-daemon"
SCRIPT2="$HOME/.config/hypr/scripts/goxlr/goxlr-settings-start.sh" SCRIPT2="$HOME/.config/hypr/scripts/goxlr/goxlr-settings-start.sh"
nohup "$SCRIPT" & tmux new-session -d -s goxlr "$SCRIPT" &
send_notification "normal" "GOXLR daemon Started" "Launched the GOXLR Daemon to control the Audio" "$HOME/.icons/BeautyLine-Garuda/apps/scalable/goxlr-utility.svg" notify-send --app-name "GOXLR daemon" --icon "goxlr-utility" -u normal "Started" "Launched the GOXLR Daemon to control the Audio"
nohup "$SCRIPT2" & "$SCRIPT2"
+17
View File
@@ -0,0 +1,17 @@
#!/bin/bash
[ -f /sys/class/power_supply/BAT0/type ] || exit 1
type=$(</sys/class/power_supply/BAT0/type)
[ "$type" != "Battery" ] && exit 1
cap=$(</sys/class/power_supply/BAT0/capacity)
stat=$(</sys/class/power_supply/BAT0/status)
if [ "$stat" = "Discharging" ]; then
printf "󰁹 %s%%" "$cap"
elif [ "$stat" = "Charging" ]; then
printf "󰂄 %s%%" "$cap"
elif [ "$stat" = "Full" ]; then
printf "󰁹 %s%%" "Full"
else
printf ""
fi
+5
View File
@@ -0,0 +1,5 @@
#!/bin/bash
s=$(cut -d. -f1 /proc/uptime)
h=$((s / 3600))
m=$(((s % 3600) / 60))
printf "󱦟 %02d:%02dh" "$h" "$m"
+1 -1
View File
@@ -7,4 +7,4 @@ source "$HOME/.config/function_helper.sh"
send_notification "low" "Pressed Makropad Button" "Row 1, Colums 4" "$HOME/.icons/BeautyLine-Garuda/apps/scalable/keyboard.svg" send_notification "low" "Pressed Makropad Button" "Row 1, Colums 4" "$HOME/.icons/BeautyLine-Garuda/apps/scalable/keyboard.svg"
~/.config/hypr/scripts/writing/todo.sh ~/.config/hypr/scripts/makropad/writing/todo.sh
+1 -1
View File
@@ -5,4 +5,4 @@ source "$HOME/.config/function_helper.sh"
send_notification "low" "Pressed Makropad Button" "Row 2, Colums 4 (08)" "$HOME/.icons/BeautyLine-Garuda/apps/scalable/keyboard.svg" send_notification "low" "Pressed Makropad Button" "Row 2, Colums 4 (08)" "$HOME/.icons/BeautyLine-Garuda/apps/scalable/keyboard.svg"
~/.config/hypr/scripts/writing/tmdb.sh ~/.config/hypr/scripts/makropad/writing/tmdb.sh
+43 -9
View File
@@ -3,17 +3,51 @@
### ~/.config/hypr/scripts/screenshot/screenshot_area.sh ### ~/.config/hypr/scripts/screenshot/screenshot_area.sh
### ###
time=$(date +%Y-%m-%d-%I-%M-%S) time=$(date +%Y-%m-%d-%H%M%S)
geometry=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | "\(.width)x\(.height)"')
dir="$(xdg-user-dir PICTURES)/Screenshots" dir="$(xdg-user-dir PICTURES)/Screenshots"
file="Screenshot_${time}_${geometry}.png" file="Screenshot_${time}.png"
mkdir -p "$dir" mkdir -p "$dir"
# Take screenshot of selected region using hyprshot # Select a region with slurp; exit silently if cancelled (ESC/right-click)
hyprshot -m region -o "$dir" -f "$file" geometry=$(slurp) || exit 1
# Optional: open in swappy for annotation (since hyprshot doesn't pipe to swappy directly) # Capture region, save it and copy to clipboard
# if command -v swappy >/dev/null 2>&1; then grim -g "$geometry" "$dir/$file" || exit 1
# swappy -f "$dir/$file" wl-copy -t image/png < "$dir/$file"
# fi
if command -v notify-send >/dev/null 2>&1; then
notify-send --app-name "Screenshot" --icon "camera-photo" -u normal "Area" "Screenshot saved $file"
fi
# Open the editor if satty is available (blocks until it is closed).
# satty writes the annotated image to --output-filename on Ctrl+s (and on
# Esc/Enter here) and exits immediately. It is launched floating, without
# decorations, with the pen preselected and moved over the captured area.
if command -v satty >/dev/null 2>&1; then
x=$(cut -d, -f1 <<< "$geometry")
y=$(cut -d, -f2 <<< "$geometry" | cut -d' ' -f1)
satty --filename "$dir/$file" --output-filename "$dir/$file" \
--copy-command wl-copy --actions-on-escape save-to-file --early-exit \
--floating-hack --no-window-decoration --initial-tool brush &
pid=$!
for _ in $(seq 1 20); do
addr=$(hyprctl clients -j 2>/dev/null | jq -r --argjson p "$pid" '.[] | select(.pid == $p) | .address' | head -1)
[ -n "$addr" ] && break
sleep 0.1
done
if [ -n "$addr" ]; then
# Lua config (Hyprland 0.55+) dispatches through hl.dsp.*, so try
# hyprctl eval first, then the raw lua dispatch, then classic syntax.
hyprctl eval "hl.dispatch(hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' }))" >/dev/null 2>&1 ||
hyprctl dispatch "hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' })" >/dev/null 2>&1 ||
hyprctl dispatch movewindowpixel "exact $x $y,address:$addr" >/dev/null 2>&1
fi
wait "$pid"
wl-copy -t image/png < "$dir/$file"
fi
# Compress the resulting image in the background if oxipng is available
if command -v oxipng >/dev/null 2>&1; then
oxipng --strip safe -o 4 "$dir/$file" &
fi
+8 -8
View File
@@ -1,14 +1,14 @@
#!/bin/bash #!/bin/bash
### ###
### ~/.config/hypr/scripts/screenshot/screenshot_area.sh ### ~/.config/hypr/scripts/screenshot/screenshot_area_2.sh
### ###
time=$(date +%Y-%m-%d-%I-%M-%S) # Select a region with slurp; exit silently if cancelled (ESC/right-click)
geometry=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | "\(.width)x\(.height)"') geometry=$(slurp) || exit 1
dir="$(xdg-user-dir PICTURES)/Screenshots"
file="Screenshot_${time}_${geometry}.png"
mkdir -p "$dir" # Capture region and copy to clipboard only
grim -g "$geometry" - | wl-copy -t image/png
# Take screenshot of selected region using hyprshot if command -v notify-send >/dev/null 2>&1; then
hyprshot -m region -o "$dir" -f "$file" --clipboard-only notify-send --app-name "Screenshot" --icon "camera-photo" -u normal "Area" "Screenshot copied to clipboard"
fi
+44 -9
View File
@@ -3,17 +3,52 @@
### ~/.config/hypr/scripts/screenshot/screenshot_monitor.sh ### ~/.config/hypr/scripts/screenshot/screenshot_monitor.sh
### ###
time=$(date +%Y-%m-%d-%I-%M-%S) time=$(date +%Y-%m-%d-%H%M%S)
geometry=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | "\(.width)x\(.height)"')
dir="$(xdg-user-dir PICTURES)/Screenshots" dir="$(xdg-user-dir PICTURES)/Screenshots"
file="Screenshot_${time}_${geometry}.png"
monitor=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | .name')
[ -n "$monitor" ] || exit 1
file="Screenshot_${time}_${monitor}.png"
mkdir -p "$dir" mkdir -p "$dir"
# Take screenshot of selected region using hyprshot # Capture the focused monitor, save it and copy to clipboard
hyprshot -m output -o "$dir" -f "$file" grim -o "$monitor" "$dir/$file" || exit 1
wl-copy -t image/png < "$dir/$file"
# Optional: open in swappy for annotation (since hyprshot doesn't pipe to swappy directly) if command -v notify-send >/dev/null 2>&1; then
# if command -v swappy >/dev/null 2>&1; then notify-send --app-name "Screenshot" --icon "camera-photo" -u normal "Monitor" "Screenshot saved $file"
# swappy -f "$dir/$file" fi
# fi
# Open the editor if satty is available (blocks until it is closed).
# satty writes the annotated image to --output-filename on Ctrl+s (and on
# Esc/Enter here) and exits immediately. It is launched floating, without
# decorations, with the pen preselected and moved over the captured area.
if command -v satty >/dev/null 2>&1; then
x=$(hyprctl monitors -j | jq -r --arg m "$monitor" '.[] | select(.name == $m) | .x')
y=$(hyprctl monitors -j | jq -r --arg m "$monitor" '.[] | select(.name == $m) | .y')
satty --filename "$dir/$file" --output-filename "$dir/$file" \
--copy-command wl-copy --actions-on-escape save-to-file --early-exit \
--floating-hack --no-window-decoration --initial-tool brush &
pid=$!
for _ in $(seq 1 20); do
addr=$(hyprctl clients -j 2>/dev/null | jq -r --argjson p "$pid" '.[] | select(.pid == $p) | .address' | head -1)
[ -n "$addr" ] && break
sleep 0.1
done
if [ -n "$addr" ]; then
# Lua config (Hyprland 0.55+) dispatches through hl.dsp.*, so try
# hyprctl eval first, then the raw lua dispatch, then classic syntax.
hyprctl eval "hl.dispatch(hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' }))" >/dev/null 2>&1 ||
hyprctl dispatch "hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' })" >/dev/null 2>&1 ||
hyprctl dispatch movewindowpixel "exact $x $y,address:$addr" >/dev/null 2>&1
fi
wait "$pid"
wl-copy -t image/png < "$dir/$file"
fi
# Compress the resulting image in the background if oxipng is available
if command -v oxipng >/dev/null 2>&1; then
oxipng --strip safe -o 4 "$dir/$file" &
fi
+38
View File
@@ -0,0 +1,38 @@
#!/bin/bash
###
### ~/.config/hypr/scripts/screenshot/ocr_area.sh
###
# Ensure dependencies exist
for cmd in slurp grim tesseract wl-copy; do
if ! command -v "$cmd" >/dev/null 2>&1; then
notify-send -a "OCR" -u critical "OCR Error" "Missing required command: $cmd"
exit 1
fi
done
# Select a region with slurp; exit silently if cancelled (ESC/right-click)
geometry=$(slurp) || exit 0
# Capture region directly from grim, pipe into tesseract, and save stdout to clipboard
text=$(grim -g "$geometry" - | tesseract - stdout --psm 6 2>/dev/null)
# Exit if no text was detected
if [ -z "$text" ]; then
if command -v notify-send >/dev/null 2>&1; then
notify-send -a "OCR" -i edit-select-all "OCR Failed" "No text recognized in selected area."
fi
exit 0
fi
# Copy detected text to Wayland clipboard
printf "%s" "$text" | wl-copy
# Notify user of successful extraction
if command -v notify-send >/dev/null 2>&1; then
# Truncate text preview for notification brevity
preview=$(echo "$text" | head -n 3)
notify-send --app-name "Screenshot" --icon "edit-find" -u normal "OCR" "Text Copied to Clipboard:\n$preview"
fi
# Install: sudo pacman -S grim slurp tesseract tesseract-data-eng wl-clipboard libnotify
+63 -9
View File
@@ -3,17 +3,71 @@
### ~/.config/hypr/scripts/screenshot/screenshot_window.sh ### ~/.config/hypr/scripts/screenshot/screenshot_window.sh
### ###
time=$(date +%Y-%m-%d-%I-%M-%S) time=$(date +%Y-%m-%d-%H%M%S)
geometry=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | "\(.width)x\(.height)"')
dir="$(xdg-user-dir PICTURES)/Screenshots" dir="$(xdg-user-dir PICTURES)/Screenshots"
file="Screenshot_${time}_${geometry}.png" file="Screenshot_${time}.png"
mkdir -p "$dir" mkdir -p "$dir"
# Take screenshot of selected region using hyprshot # Build selection boxes for windows on visible workspaces
hyprshot -m window -o "$dir" -f "$file" ids=$(hyprctl monitors -j | jq -c '[.[].activeWorkspace.id]')
boxes=$(hyprctl clients -j | jq -r --argjson ids "$ids" '
[.[] | select(.workspace.id | IN($ids[]))] | .[] |
"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1]) \(.title)"
' | cut -d' ' -f1,2)
# Optional: open in swappy for annotation (since hyprshot doesn't pipe to swappy directly) # Let the user pick a window (click the box); exit silently if cancelled
# if command -v swappy >/dev/null 2>&1; then geometry=$(slurp -r <<< "$boxes") || exit 1
# swappy -f "$dir/$file"
# fi # Expand the selection by border + gap so the capture includes the border
border=$(hyprctl getoption general:border_size -j | jq -r '(.int // 0)')
gap=$(hyprctl getoption general:gaps_out -j | jq -r '(.int // 0)')
pad=$(( border + gap ))
geometry=$(awk -v p="$pad" '
{
split($1, pos, ",");
split($2, size, "x");
printf "%d,%d %dx%d\n",
pos[1] - p, pos[2] - p, size[1] + p * 2, size[2] + p * 2
}' <<< "$geometry")
# Capture the window, save it and copy to clipboard
grim -g "$geometry" "$dir/$file" || exit 1
wl-copy -t image/png < "$dir/$file"
if command -v notify-send >/dev/null 2>&1; then
notify-send --app-name "Screenshot" --icon "camera-photo" -u normal "Window" "Screenshot saved $file"
fi
# Open the editor if satty is available (blocks until it is closed).
# satty writes the annotated image to --output-filename on Ctrl+s (and on
# Esc/Enter here) and exits immediately. It is launched floating, without
# decorations, with the pen preselected and moved over the captured area.
if command -v satty >/dev/null 2>&1; then
x=$(cut -d, -f1 <<< "$geometry")
y=$(cut -d, -f2 <<< "$geometry" | cut -d' ' -f1)
satty --filename "$dir/$file" --output-filename "$dir/$file" \
--copy-command wl-copy --actions-on-escape save-to-file --early-exit \
--floating-hack --no-window-decoration --initial-tool brush &
pid=$!
for _ in $(seq 1 20); do
addr=$(hyprctl clients -j 2>/dev/null | jq -r --argjson p "$pid" '.[] | select(.pid == $p) | .address' | head -1)
[ -n "$addr" ] && break
sleep 0.1
done
if [ -n "$addr" ]; then
# Lua config (Hyprland 0.55+) dispatches through hl.dsp.*, so try
# hyprctl eval first, then the raw lua dispatch, then classic syntax.
hyprctl eval "hl.dispatch(hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' }))" >/dev/null 2>&1 ||
hyprctl dispatch "hl.dsp.window.move({ x = $x, y = $y, window = 'address:$addr' })" >/dev/null 2>&1 ||
hyprctl dispatch movewindowpixel "exact $x $y,address:$addr" >/dev/null 2>&1
fi
wait "$pid"
wl-copy -t image/png < "$dir/$file"
fi
# Compress the resulting image in the background if oxipng is available
if command -v oxipng >/dev/null 2>&1; then
oxipng --strip safe -o 4 "$dir/$file" &
fi
-1
View File
@@ -1 +0,0 @@
-31
View File
@@ -1,31 +0,0 @@
#!/bin/bash
timeout=50 # 10 seconds max (50 * 0.2s)
count=0
while (( count < timeout )); do
# Grab both address and floating status
read -r win_addr floating <<< $(hyprctl -j clients | jq -r '.[] | select(.title == "Grayjay") | "\(.address) \(.floating)"')
if [[ -n "$win_addr" ]]; then
# Add 0x prefix if missing
if [[ "$win_addr" != 0x* ]]; then
win_addr="0x$win_addr"
fi
# If the window is floating, toggle to make it tiled
if [[ "$floating" == "true" ]]; then
hyprctl dispatch togglefloating address:$win_addr
fi
# Move to workspace 2 silently
hyprctl dispatch movetoworkspacesilent 2,address:$win_addr
exit 0
fi
sleep 0.2
((count++))
done
echo "Grayjay window not found within timeout." >&2
exit 1
@@ -1,39 +0,0 @@
#!/bin/bash
timeout=50 # 10 seconds max (50 * 0.2s)
count=0
while (( count < timeout )); do
win_addr=$(hyprctl clients | awk '
/^Window/ { addr=$2 }
/title: GoXLR Utility/ { print addr }
')
if [[ -n "$win_addr" ]]; then
# Add 0x prefix if missing
if [[ "$win_addr" != 0x* ]]; then
win_addr="0x$win_addr"
fi
# Get fullscreen state (1 or 0)
fullscreen_state=$(hyprctl clients | awk -v addr="${win_addr#0x}" '
$1 == "Window" && $2 == addr { found=1 }
found && /^fullscreen:/ { print $2; exit }
')
if [[ "$fullscreen_state" == "1" ]]; then
hyprctl dispatch fullscreen address:$win_addr
echo "Fullscreen disabled for GoXLR Utility."
else
echo "GoXLR Utility is not fullscreen."
fi
exit 0
fi
sleep 0.2
((count++))
done
echo "GoXLR Utility window not found within timeout." >&2
exit 1