1
0
mirror of https://github.com/XNM1/linux-nixos-hyprland-config-dotfiles.git synced 2025-09-15 09:45:58 +03:00

feat: update hyprland, helix, bootloader and other configs

Changelog:
- autostart: remove hypridle from autostart script
- helix: add copilot LSP for Rust, JS/TS variants
- hyprland:
  - Refactor window rules with regex patterns
  - Update brightness controls for intel_backlight
  - Adjust pyprland scratchpad configurations
- bootloader:
  - Add i915 kernel modules
  - Disable initrd verbose logging
- greetd: update tuigreet command to use uwsm
- hyprland: enable hyprlock, hypridle services
- linux-kernel: add security hardening params
- ollama: add new LLM models (gemma3, deepcoder)
- utils: add sqlx-cli and kitty
- kitty: add config
- virtualisation:
  - Add lima, nerdctl
- vpn:
  - Enable mullvad VPN
  - Add mullvad and tor browsers
- stylus-themes: update to latest
This commit is contained in:
xnm
2025-04-21 18:52:02 +03:00
parent 1a4f6d28c8
commit 78d6258bfe
15 changed files with 2840 additions and 104 deletions

View File

@@ -1,3 +1,3 @@
function autostart
pypr & hyprpaper & waybar & poweralertd & wl-paste --type text --watch cliphist store & wl-paste --type image --watch cliphist store & wl-clip-persist --clipboard regular & avizo-service & systemctl --user start psi-notify & hypridle
pypr & hyprpaper & waybar & poweralertd -s & wl-paste --type text --watch cliphist store & wl-paste --type image --watch cliphist store & wl-clip-persist --clipboard regular & avizo-service & systemctl --user start psi-notify
end

View File

@@ -22,7 +22,7 @@ args = ["--stdio"]
[[language]]
name = "rust"
language-servers = [ "rust-analyzer" ]
language-servers = [ "rust-analyzer", "copilot" ]
[language-server.rust-analyzer.config]
checkOnSave = { command = "clippy" }
@@ -35,21 +35,25 @@ language-servers = [ "emmet-lsp", "vscode-html-language-server" ]
name = "javascript"
auto-format = true
indent = { tab-width = 4, unit = " " }
language-servers = [ "typescript-language-server", "copilot" ]
[[language]]
name = "jsx"
auto-format = true
indent = { tab-width = 4, unit = " " }
language-servers = [ "typescript-language-server", "copilot" ]
[[language]]
name = "typescript"
auto-format = true
indent = { tab-width = 4, unit = " " }
language-servers = [ "typescript-language-server", "copilot" ]
[[language]]
name = "tsx"
auto-format = true
indent = { tab-width = 4, unit = " " }
language-servers = [ "typescript-language-server", "copilot" ]
[[language]]
name = "config"

View File

@@ -164,24 +164,31 @@ device {
# Example windowrule v1
# windowrule = float, ^(kitty)$
windowrule = opaque, brave
windowrule = float, imv
windowrule = opaque, imv
windowrule = float, title:(Media viewer)
windowrule = opaque, title:(Media viewer)
windowrule = opaque, title:(YouTube Music)
windowrule = opaque, title:(qutebrowser)
windowrule = opaque, title:(Slack)
windowrule = opaque, telegram
windowrule = float, mpv
windowrule = opaque, mpv
windowrule = opaque, swappy
windowrule = center 1, swappy
windowrule = stayfocused, swappy
# windowrule = size 50% 50%, mpv
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrule = float, title:.*mpv$
windowrule = opaque, title:.*mpv$
windowrule = size 50% 50%, title:.*mpv$
windowrule = float, content:video
windowrule = opaque, content:video
windowrule = size 50% 50%, content:video
windowrule = float, title:.*imv.*
windowrule = opaque, title:.*imv.*
windowrule = size 70% 70%, title:.*imv.*
windowrule = float, content:photo
windowrule = opaque, content:photo
windowrule = size 70% 70%, content:photo
windowrule = float, title:.*\.pdf$
windowrule = opaque, title:.*\.pdf$
windowrule = maximize, title:.*\.pdf$
windowrule = opaque, title:.*YouTube - Brave$
windowrule = opaque, title:swappy
windowrule = center 1, title:swappy
windowrule = stayfocused, title:swappy
windowrule = opaque, title:^TelegramDesktop$
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER
@@ -236,11 +243,11 @@ submap=reset
# Scrachpads
bind = $mainMod CTRL, T, exec, pypr toggle term
$dropterm = ^(wezterm_dropdown)$
$dropterm = title:^wezterm_dropdown$
windowrule = float, $dropterm
bind = $mainMod CTRL, V, exec, pypr toggle volume
$volume_sidemenu = ^(pavucontrol)$
$volume_sidemenu = title:^Volume Control$
windowrule = float, $volume_sidemenu
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
@@ -294,8 +301,8 @@ bind = , XF86AudioLowerVolume, exec, volumectl -u down
bind = , XF86AudioMute, exec, volumectl toggle-mute
bind = , XF86AudioMicMute, exec, volumectl -m toggle-mute
bind = , XF86MonBrightnessUp, exec, lightctl up
bind = , XF86MonBrightnessDown, exec, lightctl down
bind = , XF86MonBrightnessUp, exec, lightctl -D intel_backlight up
bind = , XF86MonBrightnessDown, exec, lightctl -D intel_backlight down
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l

View File

@@ -8,7 +8,8 @@ plugins = [
]
[scratchpads.term]
command = "wezterm start --always-new-process --class wezterm_dropdown"
command = "wezterm start --always-new-process"
class = "wezterm_dropdown"
animation = "fromTop"
unfocus = "hide"
excludes = "*"
@@ -16,7 +17,7 @@ lazy = true
multi = false
[scratchpads.volume]
command = "pavucontrol --class volume_sidemenu"
command = "pavucontrol"
animation = "fromLeft"
class = "volume_sidemenu"
size = "40% 70%"

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long