Compare commits

...
10 Commits
14 changed files with 872 additions and 35 deletions
View File
View File
+12
View File
@@ -0,0 +1,12 @@
-- Generated by HyprMod
-- Settings
hl.config({
general = {
border_size = 5,
col = {
active_border = "0xcbe0e89b",
inactive_border = "0xff0e0543",
},
},
})
Executable → Regular
+5 -6
View File
@@ -177,7 +177,7 @@ decoration {
# https://wiki.hypr.land/Configuring/Variables/#animations # https://wiki.hypr.land/Configuring/Variables/#animations
animations { animations {
enabled = yes, please :) enabled = true
# Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves # Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
# NAME, X0, Y0, X1, Y1 # NAME, X0, Y0, X1, Y1
@@ -301,15 +301,11 @@ bind = $mainMod, V, togglefloating,
bind = $mainMod, SPACE, exec, $menu bind = $mainMod, SPACE, exec, $menu
bind = $mainMod SHIFT, SPACE, exec, nwg-drawer bind = $mainMod SHIFT, SPACE, exec, nwg-drawer
bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, layoutmsg, togglesplit # dwindle bind = $mainMod SHIFT, J, layoutmsg, togglesplit # dwindle
bind = $mainMod, I, exec, firefox & bind = $mainMod, I, exec, firefox &
bind = $mainMod, n, exec, ~/.local/bin/hyprltm-net bind = $mainMod, n, exec, ~/.local/bin/hyprltm-net
# Move focus with mainMod + WASD or Vim-style # Move focus with mainMod + WASD or Vim-style
bind = $mainMod, a, movefocus, l
bind = $mainMod, d, movefocus, r
bind = $mainMod, w, movefocus, u
bind = $mainMod, s, movefocus, d
bind = $mainMod, h, movefocus, l bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u bind = $mainMod, k, movefocus, u
@@ -469,3 +465,6 @@ windowrule {
# rounding = 0 # rounding = 0
# border_size = 0 # border_size = 0
# } # }
# HyprMod managed settings
source = /home/mathias/.config/hypr/hyprland-gui.conf
+718
View File
@@ -0,0 +1,718 @@
local var_color_active_border = "rgba(74c7ecee)"
local var_color_inactive_border = "rgba(45475aee)"
local var_color_decoration_shadow = "rgba(74c7ecee)"
local var_mainMod = "SUPER"
local var_terminal = "kitty"
local var_fileManager = "dolphin"
local var_menu = "wofi --show drun"
local var_screenshot_folder = "~/Bilder/Screenshots/"
-- #######################################################################################
-- AUTOGENERATED HYPRLAND CONFIG.
-- EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
-- #######################################################################################
-- This is an example Hyprland config file.
-- Refer to the wiki for more information.
-- https://wiki.hypr.land/Configuring/
-- Please note not all available settings / options are set here.
-- For a full list, see the wiki
-- You can split this configuration into multiple files
-- Create your files separately and then link them to this file like this:
-- source = ~/.config/hypr/myColors.conf
require("env")
hl.exec_cmd("bash ~/.config/hypr/env.sh")
-- ###############
-- ## MONITORS ###
-- ###############
-- See https://wiki.hypr.land/Configuring/Monitors/
-- monitor=,preferred,auto,auto
require("modules.monitor_setup_buntes_monster")
-- source = ~/.config/hypr/modules/monitor_setup_buntes_monster.conf
-- unscale XWayland
hl.config({
xwayland = {
force_zero_scaling = true,
},
})
-- ##################
-- ## MY PROGRAMS ###
-- ##################
-- See https://wiki.hypr.land/Configuring/Keywords/
-- Set programs that you use
-- $menu = hyprlauncher
-- ################
-- ## AUTOSTART ###
-- ################
-- Autostart necessary processes (like notifications daemons, status bars, etc.)
-- Or execute your favorite apps at launch like this:
-- exec = bash ~/.config/wpaperd/link_wallpapers.sh
hl.on("hyprland.start", function()
hl.exec_cmd("waybar &")
end)
-- exec-one = hyprpaper &
hl.on("hyprland.start", function()
hl.exec_cmd("wpaperd &")
hl.exec_cmd("swaync &")
hl.exec_cmd("hypridle &")
hl.exec_cmd("nextcloud &")
hl.exec_cmd("sh ~/.config/hypr/scripts/portal-host-override.sh")
hl.exec_cmd("sh ~/.config/hypr/scripts/ensure-mime-defaults.sh")
end)
-- exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
-- exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP XDG_SESSION_DESKTOP XDG_SESSION_TYPE XDG_MENU_PREFIX
-- exec = gsettings set org.gnome.desktop.interface gtk-theme "Breeze-Dark" # for GTK3 apps
-- exec = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" # for GTK4 apps
-- env = QT_QPA_PLATFORMTHEME,qt6ct # for Qt apps
-- ############################
-- ## ENVIRONMENT VARIABLES ###
-- ############################
-- See https://wiki.hypr.land/Configuring/Environment-variables/
hl.env("XCURSOR_SIZE", "24")
hl.env("HYPRCURSOR_SIZE", "24")
hl.env("XDG_CURRENT_DESKTOP", "Hyprland")
hl.env("XDG_SESSION_DESKTOP", "Hyprland")
hl.env("XDG_SESSION_TYPE", "wayland")
hl.env("XDG_MENU_PREFIX", "plasma-")
hl.env("GTK_USE_PORTAL", "1")
hl.env("GTK_THEME", "Adwaita:dark")
hl.env("QT_WAYLAND_DISABLE_WINDOWDECORATION", "1")
hl.env("QT_QPA_PLATFORMTHEME", "kde")
-- env = QT_AUTO_SCREEN_SCALE_FACTOR,0.75
-- env = QT_SCALE_FACTOR,0.75
-- env = GDK_SCALE,1.5
-- env = GDK_DPI_SCALE,0.75
-- ##################
-- ## PERMISSIONS ###
-- ##################
-- See https://wiki.hypr.land/Configuring/Permissions/
-- Please note permission changes here require a Hyprland restart and are not applied on-the-fly
-- for security reasons
-- ecosystem {
-- enforce_permissions = 1
-- }
-- permission = /usr/(bin|local/bin)/grim, screencopy, allow
-- permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
-- permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
-- ####################
-- ## COLOR SCHEMES ###
-- ####################
require("themes.mocha")
-- ####################
-- ## LOOK AND FEEL ###
-- ####################
-- Refer to https://wiki.hypr.land/Configuring/Variables/
-- https://wiki.hypr.land/Configuring/Variables/#general
hl.config({
general = {
gaps_in = 3,
gaps_out = 4,
border_size = 3,
},
})
-- https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
hl.config({
general = {
col = {
active_border = var_color_active_border,
inactive_border = var_color_inactive_border,
},
},
})
-- Set to true enable resizing windows by clicking and dragging on borders and gaps
hl.config({
general = {
resize_on_border = true,
},
})
-- Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
hl.config({
general = {
allow_tearing = false,
layout = "dwindle",
},
})
-- https://wiki.hypr.land/Configuring/Variables/#decoration
hl.config({
decoration = {
rounding = 5,
rounding_power = 2,
},
})
-- Change transparency of focused and unfocused windows
hl.config({
decoration = {
active_opacity = 1.0,
inactive_opacity = 1.0,
shadow = {
enabled = true,
range = 10,
render_power = 3,
color = var_color_decoration_shadow,
},
},
})
-- https://wiki.hypr.land/Configuring/Variables/#blur
hl.config({
decoration = {
blur = {
enabled = true,
size = 10,
passes = 2,
vibrancy = 0.1696,
},
},
})
-- https://wiki.hypr.land/Configuring/Variables/#animations
hl.config({
animations = {
enabled = true,
},
})
-- Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
-- NAME, X0, Y0, X1, Y1
hl.curve("easeOutQuint", { type = "bezier", points = { {0.23, 1}, {0.32, 1} } })
hl.curve("easeInOutCubic", { type = "bezier", points = { {0.65, 0.05}, {0.36, 1} } })
hl.curve("linear", { type = "bezier", points = { {0, 0}, {1, 1} } })
hl.curve("almostLinear", { type = "bezier", points = { {0.5, 0.5}, {0.75, 1} } })
hl.curve("quick", { type = "bezier", points = { {0.15, 0}, {0.1, 1} } })
-- Default animations, see https://wiki.hypr.land/Configuring/Animations/
-- NAME, ONOFF, SPEED, CURVE, [STYLE]
hl.animation({
leaf = "global",
enabled = true,
speed = 10,
bezier = "default",
})
hl.animation({
leaf = "border",
enabled = true,
speed = 5.39,
bezier = "easeOutQuint",
})
hl.animation({
leaf = "windows",
enabled = true,
speed = 4.79,
bezier = "easeOutQuint",
})
hl.animation({
leaf = "windowsIn",
enabled = true,
speed = 4.1,
bezier = "easeOutQuint",
style = "popin 87%",
})
hl.animation({
leaf = "windowsOut",
enabled = true,
speed = 1.49,
bezier = "linear",
style = "popin 87%",
})
hl.animation({
leaf = "fadeIn",
enabled = true,
speed = 1.73,
bezier = "almostLinear",
})
hl.animation({
leaf = "fadeOut",
enabled = true,
speed = 1.46,
bezier = "almostLinear",
})
hl.animation({
leaf = "fade",
enabled = true,
speed = 3.03,
bezier = "quick",
})
hl.animation({
leaf = "layers",
enabled = true,
speed = 3.81,
bezier = "easeOutQuint",
})
hl.animation({
leaf = "layersIn",
enabled = true,
speed = 4,
bezier = "easeOutQuint",
style = "fade",
})
hl.animation({
leaf = "layersOut",
enabled = true,
speed = 1.5,
bezier = "linear",
style = "fade",
})
hl.animation({
leaf = "fadeLayersIn",
enabled = true,
speed = 1.79,
bezier = "almostLinear",
})
hl.animation({
leaf = "fadeLayersOut",
enabled = true,
speed = 1.39,
bezier = "almostLinear",
})
hl.animation({
leaf = "workspaces",
enabled = true,
speed = 1.94,
bezier = "almostLinear",
style = "fade",
})
hl.animation({
leaf = "workspacesIn",
enabled = true,
speed = 1.21,
bezier = "almostLinear",
style = "fade",
})
hl.animation({
leaf = "workspacesOut",
enabled = true,
speed = 1.94,
bezier = "almostLinear",
style = "fade",
})
hl.animation({
leaf = "zoomFactor",
enabled = true,
speed = 7,
bezier = "quick",
})
-- Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
-- "Smart gaps" / "No gaps when only"
-- uncomment all if you wish to use that.
hl.workspace_rule({
workspace = "w[tv1]",
gaps_out = 0,
gaps_in = 0,
})
hl.workspace_rule({
workspace = "f[1]",
gaps_out = 0,
gaps_in = 0,
})
hl.window_rule({
name = "no-gaps-wtv1",
match = {
float = false,
workspace = "w[tv1]",
},
border_size = 0,
rounding = 0,
})
hl.window_rule({
name = "no-gaps-f1",
match = {
float = false,
workspace = "f[1]",
},
border_size = 0,
rounding = 0,
})
-- See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
hl.config({
dwindle = {
preserve_split = true,
},
})
-- See https://wiki.hypr.land/Configuring/Master-Layout/ for more
hl.config({
master = {
new_status = "master",
},
})
-- https://wiki.hypr.land/Configuring/Variables/#misc
hl.config({
misc = {
force_default_wallpaper = -1,
disable_hyprland_logo = false,
},
})
-- ############
-- ## INPUT ###
-- ############
-- https://wiki.hypr.land/Configuring/Variables/#input
hl.config({
input = {
kb_layout = "de",
kb_variant = "",
kb_model = "",
kb_options = "grp:alt_shift_toggle",
kb_rules = "",
follow_mouse = 1,
numlock_by_default = true,
sensitivity = 0,
touchpad = {
natural_scroll = true,
},
},
})
-- See https://wiki.hypr.land/Configuring/Gestures
hl.gesture({
fingers = 3,
direction = "horizontal",
action = "workspace",
})
-- Example per-device config
-- See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
hl.device({
name = "epic-mouse-v1",
sensitivity = -0.5,
})
-- ##################
-- ## KEYBINDINGS ###
-- ##################
-- See https://wiki.hypr.land/Configuring/Keywords/
-- Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
hl.bind(var_mainMod .. " + RETURN", hl.dsp.exec_cmd(var_terminal))
hl.bind(var_mainMod .. " + Q", hl.dsp.window.close())
hl.bind(var_mainMod .. " + ESCAPE", hl.dsp.exec_cmd("hyprshutdown"))
hl.bind(var_mainMod .. " + SHIFT + ESCAPE", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit"))
hl.bind(var_mainMod .. " + CTRL + ESCAPE", hl.dsp.exec_cmd("hyprshutdown -t 'Shutting down...' --post-cmd 'shutdown -P 0'"))
hl.bind(var_mainMod .. " + ALT + ESCAPE", hl.dsp.exec_cmd("hyprshutdown -t 'Restarting...' --post-cmd 'reboot'"))
hl.bind(var_mainMod .. " + E", hl.dsp.exec_cmd(var_fileManager))
hl.bind(var_mainMod .. " + V", hl.dsp.window.float({ action = "toggle" }))
hl.bind(var_mainMod .. " + SPACE", hl.dsp.exec_cmd(var_menu))
hl.bind(var_mainMod .. " + SHIFT + SPACE", hl.dsp.exec_cmd("nwg-drawer"))
hl.bind(var_mainMod .. " + P", hl.dsp.window.pseudo())
hl.bind(var_mainMod .. " + SHIFT + J", hl.dsp.layout("togglesplit"))
hl.bind(var_mainMod .. " + I", hl.dsp.exec_cmd("firefox &"))
hl.bind(var_mainMod .. " + n", hl.dsp.exec_cmd("~/.local/bin/hyprltm-net"))
-- Move focus with mainMod + WASD or Vim-style
hl.bind(var_mainMod .. " + a", hl.dsp.focus({ direction = "left" }))
hl.bind(var_mainMod .. " + d", hl.dsp.focus({ direction = "right" }))
hl.bind(var_mainMod .. " + w", hl.dsp.focus({ direction = "up" }))
hl.bind(var_mainMod .. " + s", hl.dsp.focus({ direction = "down" }))
hl.bind(var_mainMod .. " + h", hl.dsp.focus({ direction = "left" }))
hl.bind(var_mainMod .. " + l", hl.dsp.focus({ direction = "right" }))
hl.bind(var_mainMod .. " + k", hl.dsp.focus({ direction = "up" }))
hl.bind(var_mainMod .. " + j", hl.dsp.focus({ direction = "down" }))
-- Move windows with mainMod + WASD or Vim-style
hl.bind(var_mainMod .. " + SHIFT + a", hl.dsp.window.move({ direction = "left" }))
hl.bind(var_mainMod .. " + SHIFT + d", hl.dsp.window.move({ direction = "right" }))
hl.bind(var_mainMod .. " + SHIFT + w", hl.dsp.window.move({ direction = "up" }))
hl.bind(var_mainMod .. " + SHIFT + s", hl.dsp.window.move({ direction = "down" }))
hl.bind(var_mainMod .. " + SHIFT + h", hl.dsp.window.move({ direction = "left" }))
hl.bind(var_mainMod .. " + SHIFT + l", hl.dsp.window.move({ direction = "right" }))
hl.bind(var_mainMod .. " + SHIFT + k", hl.dsp.window.move({ direction = "up" }))
hl.bind(var_mainMod .. " + SHIFT + j", hl.dsp.window.move({ direction = "down" }))
-- Resize focused window with mainMod + Arrows
hl.bind(var_mainMod .. " + left", hl.dsp.window.resize({ x = -10, y = 0, relative = true }))
hl.bind(var_mainMod .. " + right", hl.dsp.window.resize({ x = 10, y = 0, relative = true }))
hl.bind(var_mainMod .. " + up", hl.dsp.window.resize({ x = 0, y = -10, relative = true }))
hl.bind(var_mainMod .. " + down", hl.dsp.window.resize({ x = 0, y = 10, relative = true }))
-- Switch workspaces with mainMod + [0-9]
hl.bind(var_mainMod .. " + 1", hl.dsp.focus({ workspace = 1 }))
hl.bind(var_mainMod .. " + 2", hl.dsp.focus({ workspace = 2 }))
hl.bind(var_mainMod .. " + 3", hl.dsp.focus({ workspace = 3 }))
hl.bind(var_mainMod .. " + 4", hl.dsp.focus({ workspace = 4 }))
hl.bind(var_mainMod .. " + 5", hl.dsp.focus({ workspace = 5 }))
hl.bind(var_mainMod .. " + 6", hl.dsp.focus({ workspace = 6 }))
hl.bind(var_mainMod .. " + 7", hl.dsp.focus({ workspace = 7 }))
hl.bind(var_mainMod .. " + 8", hl.dsp.focus({ workspace = 8 }))
hl.bind(var_mainMod .. " + 9", hl.dsp.focus({ workspace = 9 }))
hl.bind(var_mainMod .. " + 0", hl.dsp.focus({ workspace = 10 }))
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+"), {
repeating = true,
})
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), {
locked = true,
})
-- Move active window to a workspace with mainMod + SHIFT + [0-9]
hl.bind(var_mainMod .. " + SHIFT + 1", hl.dsp.window.move({ workspace = 1 }))
hl.bind(var_mainMod .. " + SHIFT + 2", hl.dsp.window.move({ workspace = 2 }))
hl.bind(var_mainMod .. " + SHIFT + 3", hl.dsp.window.move({ workspace = 3 }))
hl.bind(var_mainMod .. " + SHIFT + 4", hl.dsp.window.move({ workspace = 4 }))
hl.bind(var_mainMod .. " + SHIFT + 5", hl.dsp.window.move({ workspace = 5 }))
hl.bind(var_mainMod .. " + SHIFT + 6", hl.dsp.window.move({ workspace = 6 }))
hl.bind(var_mainMod .. " + SHIFT + 7", hl.dsp.window.move({ workspace = 7 }))
hl.bind(var_mainMod .. " + SHIFT + 8", hl.dsp.window.move({ workspace = 8 }))
hl.bind(var_mainMod .. " + SHIFT + 9", hl.dsp.window.move({ workspace = 9 }))
hl.bind(var_mainMod .. " + SHIFT + 0", hl.dsp.window.move({ workspace = 10 }))
-- # Example special workspace (scratchpad)
-- bind = $mainMod, S, togglespecialworkspace, magic
-- bind = $mainMod SHIFT, S, movetoworkspace, special:magic
-- Scroll through existing workspaces with mainMod + scroll
hl.bind(var_mainMod .. " + mouse_down", hl.dsp.focus({ workspace = "e+1" }))
hl.bind(var_mainMod .. " + mouse_up", hl.dsp.focus({ workspace = "e-1" }))
-- Move/resize windows with mainMod + LMB/RMB and dragging
hl.bind(var_mainMod .. " + mouse:272", hl.dsp.window.drag(), {
mouse = true,
})
hl.bind(var_mainMod .. " + mouse:273", hl.dsp.window.resize(), {
mouse = true,
})
-- Laptop multimedia keys for volume and LCD brightness
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"), {
repeating = true,
locked = true,
})
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), {
repeating = true,
locked = true,
})
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"), {
repeating = true,
locked = true,
})
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"), {
repeating = true,
locked = true,
})
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%+"), {
repeating = true,
locked = true,
})
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd("brightnessctl -e4 -n2 set 5%-"), {
repeating = true,
locked = true,
})
-- Requires playerctl
hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl next"), {
locked = true,
})
hl.bind("XF86AudioPause", hl.dsp.exec_cmd("playerctl play-pause"), {
locked = true,
})
hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl play-pause"), {
locked = true,
})
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl previous"), {
locked = true,
})
-- Screenshots
hl.bind("PRINT", hl.dsp.exec_cmd("hyprshot -m region --output-folder " .. var_screenshot_folder), {
locked = true,
})
hl.bind("CTRL + PRINT", hl.dsp.exec_cmd("hyprshot -m window --output-folder " .. var_screenshot_folder), {
locked = true,
})
hl.bind("SHIFT + PRINT", hl.dsp.exec_cmd("hyprshot -m active --output-folder " .. var_screenshot_folder), {
locked = true,
})
-- Screenlock
hl.bind("CTRL + ALT + L", hl.dsp.exec_cmd("hyprlock"), {
locked = true,
})
-- #############################
-- ## WINDOWS AND WORKSPACES ###
-- #############################
-- See https://wiki.hypr.land/Configuring/Window-Rules/ for more
-- See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
-- Example windowrules that are useful
-- Ignore maximize requests from all apps. You'll probably like this.
hl.window_rule({
name = "suppress-maximize-events",
match = {
class = ".*",
},
suppress_event = "maximize",
})
-- Fix some dragging issues with XWayland
hl.window_rule({
name = "fix-xwayland-drags",
match = {
class = "^$",
title = "^$",
xwayland = true,
float = true,
fullscreen = false,
pin = false,
},
no_focus = true,
})
-- Hyprland-run windowrule
hl.config({
decoration = {
blur = {
size = 8,
passes = 2,
},
},
})
hl.window_rule({
name = "move-hyprland-run",
match = {
class = "hyprland-run",
},
move = "20 monitor_h-120",
float = true,
})
hl.window_rule({
name = "opacity-kitty-dolphin",
match = {
class = ".*(kitty|dolphin).*",
},
opacity = "0.90 0.80",
})
hl.layer_rule({
match = {
namespace = "waybar",
},
blur = true,
})
hl.layer_rule({
match = {
namespace = "waybar",
},
blur_popups = true,
})
hl.window_rule({
name = "no-rounding-fullscreen",
match = {
fullscreen = 1,
},
rounding = 0,
border_size = 0,
})
-- windowrule {
-- name = no-rounding-steam-games
-- match:class = ^steam_app_.*$
-- rounding = 0
-- border_size = 0
-- }
-- windowrule {
-- name = no-rounding-gamescope
-- match:class = ^gamescope$
-- rounding = 0
-- border_size = 0
-- }
-- HyprMod managed settings
require("hyprland-gui")
@@ -0,0 +1,43 @@
-- monitorv2 {
-- output = DP-2
-- mode = highres highrr
-- position = 0x0
-- scale = 1.2
-- bitdepth = 10
-- cm = hdr
-- supports_wide_color = 1
-- supports_hdr = 1
-- sdr_min_luminance = 0.005
-- sdr_max_luminance = 200
-- min_luminance = 0.002
-- max_luminance = 200
-- max_avg_luminance = 150
-- }
hl.monitor({
output = "DP-2",
disabled = false,
mode = "preferred",
position = "auto-left",
scale = 1.5,
})
hl.monitor({
output = "DP-3",
disabled = false,
mode = "preferred",
position = "auto-right",
scale = 1.0,
})
View File
@@ -52,6 +52,7 @@ return {
"cssls", -- CSS "cssls", -- CSS
"bashls", -- Bash "bashls", -- Bash
"lua_ls", -- Lua "lua_ls", -- Lua
"rust_analyzer", -- Rust
--"stylua", --"stylua",
}, },
}) })
@@ -147,6 +148,15 @@ return {
-- filetypes and tsserver/request forwarding to ts_ls (hybrid mode) -- filetypes and tsserver/request forwarding to ts_ls (hybrid mode)
vim.lsp.config("vue_ls", {}) vim.lsp.config("vue_ls", {})
-- Rust
vim.lsp.config("rust_analyzer", {
setting = {
["rust-analyzer"] = {
checkOnSave = { command = "clippy" },
},
},
})
-- Other languages -- Other languages
vim.lsp.config("jsonls", {}) vim.lsp.config("jsonls", {})
vim.lsp.config("yamlls", {}) vim.lsp.config("yamlls", {})
@@ -164,6 +174,7 @@ return {
vim.lsp.enable("html") vim.lsp.enable("html")
vim.lsp.enable("cssls") vim.lsp.enable("cssls")
vim.lsp.enable("bashls") vim.lsp.enable("bashls")
vim.lsp.enable("rust_analyzer")
end, end,
}, },
} }
@@ -20,6 +20,7 @@ return {
markdown = { "prettier" }, markdown = { "prettier" },
sh = { "shfmt" }, sh = { "shfmt" },
bash = { "shfmt" }, bash = { "shfmt" },
rust = { "rustfmt" },
}, },
}) })
@@ -14,6 +14,7 @@ return {
json = { "jsonlint" }, json = { "jsonlint" },
yaml = { "yamllint" }, yaml = { "yamllint" },
markdown = { "markdownlint" }, markdown = { "markdownlint" },
rust = { "clippy" },
} }
vim.api.nvim_create_autocmd({ "BufWritePost" }, { vim.api.nvim_create_autocmd({ "BufWritePost" }, {
@@ -52,6 +52,7 @@ return {
"bash", "bash",
"markdown", "markdown",
"markdown_inline", "markdown_inline",
"rust",
} }
-- Install parsers -- Install parsers
+17 -7
View File
@@ -3,25 +3,35 @@
"default_agent": "plan", "default_agent": "plan",
"lsp": {
"pyright": {
"command": ["pyright-langserver", "--stdio"],
"extensions": [".py"]
}
},
"provider": { "provider": {
"lmstudio": { "lmstudio": {
"npm": "@ai-sdk/openai-compatible", "npm": "@ai-sdk/openai-compatible",
"name": "LM Studio (local)", "name": "LM Studio (local)",
"options": { "options": {
"baseURL": "http://127.0.0.1:1234/v1" "baseURL": "http://192.168.0.4:1234/v1"
}, },
"models": { "models": {
"google/gemma-3-4b": { "qwen3.5-35b-a3b": {
"name": "google/gemma-3-4b" "name": "qwen3.5-35b-a3b"
},
"qwen/qwen3.8-27b": {
"name": "qwen/qwen3.8-27b"
}, },
"google/gemma-4-26b-a4b": { "google/gemma-4-26b-a4b": {
"name": "google/gemma-4-26b-a4b" "name": "google/gemma-4-26b-a4b"
}, },
"mistralai/ministral-3-14b-reasoning": { "qwen/qwen3-4b-thinking-2507": {
"name": "mistralai/ministral-3-14b-reasoning" "name": "qwen/qwen3-4b-thinking-2507"
}, },
"openai/gpt-oss-20b": { "qwen2.5-coder-1.5b-instruct": {
"name": "openai/gpt-oss-20b" "name": "qwen2.5-coder-1.5b-instruct"
} }
} }
} }
+27
View File
@@ -1,3 +1,30 @@
# Tmux Configuration
This directory contains the tmux configuration, reusable tmuxifier layouts, and
session persistence settings.
## Session Persistence
The configuration uses tmux-resurrect and tmux-continuum to save sessions every
15 minutes and restore the latest saved session when tmux starts. Sessions save
window and pane layouts, working directories, and pane contents. Running
programs are restored only when supported by tmux-resurrect; their live process
state cannot survive a shutdown.
After starting tmux, install the configured plugins with:
```text
Ctrl-Space I
```
`Ctrl-Space` is the configured tmux prefix. You can also save or restore
manually with:
```text
Ctrl-Space Ctrl-S Save the current tmux state
Ctrl-Space Ctrl-R Restore the last saved state
```
# Tmuxifier Session Templates # Tmuxifier Session Templates
This directory contains reusable tmux session and window layouts managed by [tmuxifier](https://github.com/jimeh/tmuxifier). This directory contains reusable tmux session and window layouts managed by [tmuxifier](https://github.com/jimeh/tmuxifier).
+14
View File
@@ -29,6 +29,13 @@ bind j select-pane -D
bind k select-pane -U bind k select-pane -U
bind l select-pane -R bind l select-pane -R
# Create panes with the same working directory
bind % split-window -h -c "#{pane_current_path}"
bind '"' split-window -v -c "#{pane_current_path}"
# Kill panes without prompt
bind x kill-pane
# ── Plugins ──────────────────────────────────────────────────────────────────── # ── Plugins ────────────────────────────────────────────────────────────────────
@@ -38,9 +45,16 @@ if "test ! -d ~/.config/tmux/plugins/tpm" \
set -g @plugin 'tmux-plugins/tpm' set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible' set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
# set -g @plugin 'sindrip/tmux-nvim-navigator' # set -g @plugin 'sindrip/tmux-nvim-navigator'
set -g @plugin 'jimeh/tmuxifier' set -g @plugin 'jimeh/tmuxifier'
# Persist sessions across reboots and restore them when tmux starts.
set -g @continuum-save-interval '5'
set -g @continuum-restore 'on'
set -g @resurrect-capture-pane-contents 'on'
# Catppuccin theme # Catppuccin theme
set -g @plugin 'catppuccin/tmux' set -g @plugin 'catppuccin/tmux'
set -g @catppuccin_flavor "mocha" set -g @catppuccin_flavor "mocha"