mirror of
https://github.com/fscotto/infra.git
synced 2026-05-30 15:39:58 +00:00
Add Hyprland support for nymph: packages, repo, dotfiles, and emptty session
This commit is contained in:
193
dotfiles/nymph/.config/hypr/hyprland.conf
Normal file
193
dotfiles/nymph/.config/hypr/hyprland.conf
Normal file
@@ -0,0 +1,193 @@
|
||||
#############################################
|
||||
# HYPRLAND CONFIG
|
||||
# ThinkPad T480 (Intel + NVIDIA)
|
||||
# Intel primary GPU + NVIDIA offload
|
||||
#############################################
|
||||
|
||||
################
|
||||
# Variables
|
||||
################
|
||||
|
||||
$mod = SUPER
|
||||
|
||||
#$terminal = WINIT_UNIX_BACKEND=x11 ~/.local/bin/nvidia-run alacritty
|
||||
$terminal = alacritty
|
||||
$menu = rofi -show drun -config ~/.config/rofi/config.rasi
|
||||
$powermenu = ~/.local/bin/powermenu
|
||||
|
||||
################
|
||||
# Autostart
|
||||
################
|
||||
|
||||
exec-once = hyprpaper
|
||||
exec-once = waybar
|
||||
exec-once = dunst
|
||||
|
||||
################
|
||||
# Environment
|
||||
################
|
||||
|
||||
env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = LIBVA_DRIVER_NAME,iHD
|
||||
env = WLR_NO_HARDWARE_CURSORS,1
|
||||
|
||||
################
|
||||
# Monitor
|
||||
################
|
||||
|
||||
monitor = ,preferred,auto,1
|
||||
|
||||
################
|
||||
# Input
|
||||
################
|
||||
|
||||
input {
|
||||
|
||||
kb_layout = us
|
||||
kb_variant = alt-intl
|
||||
|
||||
follow_mouse = 1
|
||||
sensitivity = 0
|
||||
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
################
|
||||
# General
|
||||
################
|
||||
|
||||
general {
|
||||
|
||||
layout = master
|
||||
|
||||
gaps_in = 6
|
||||
gaps_out = 10
|
||||
|
||||
border_size = 1
|
||||
|
||||
col.active_border = rgb(ffffff)
|
||||
col.inactive_border = rgb(1a1a1a)
|
||||
|
||||
allow_tearing = false
|
||||
}
|
||||
|
||||
################
|
||||
# Master layout
|
||||
################
|
||||
|
||||
master {
|
||||
|
||||
new_status = master
|
||||
mfact = 0.55
|
||||
inherit_fullscreen = true
|
||||
|
||||
}
|
||||
|
||||
################
|
||||
# Decoration
|
||||
################
|
||||
|
||||
decoration {
|
||||
|
||||
rounding = 0
|
||||
|
||||
blur {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
################
|
||||
# Animations
|
||||
################
|
||||
|
||||
animations {
|
||||
|
||||
enabled = yes
|
||||
|
||||
bezier = easeOut, 0.16, 1, 0.3, 1
|
||||
|
||||
animation = windows,1,4,easeOut
|
||||
animation = fade,1,4,easeOut
|
||||
animation = workspaces,1,4,easeOut
|
||||
}
|
||||
|
||||
################
|
||||
# Misc
|
||||
################
|
||||
|
||||
misc {
|
||||
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
|
||||
}
|
||||
|
||||
################
|
||||
# Window rules
|
||||
################
|
||||
|
||||
windowrulev2 = opacity 0.96 0.96,class:^(Alacritty)$
|
||||
windowrulev2 = float,class:^(Rofi)$
|
||||
|
||||
################
|
||||
# Keybinds
|
||||
################
|
||||
|
||||
# Terminal
|
||||
bind = $mod, Return, exec, $terminal
|
||||
|
||||
# Launcher
|
||||
bind = $mod, D, exec, $menu
|
||||
|
||||
# Powermenu
|
||||
bind = $mod, Escape, exec, $powermenu
|
||||
|
||||
# Exit Hyprland (default)
|
||||
bind = $mod SHIFT, E, exit
|
||||
|
||||
# Close window
|
||||
bind = $mod, Q, killactive
|
||||
|
||||
# Fullscreen
|
||||
bind = $mod, F, fullscreen, 1
|
||||
|
||||
# Floating
|
||||
bind = $mod, Space, togglefloating
|
||||
|
||||
################
|
||||
# Focus movement
|
||||
################
|
||||
|
||||
bind = $mod, H, movefocus, l
|
||||
bind = $mod, L, movefocus, r
|
||||
bind = $mod, K, movefocus, u
|
||||
bind = $mod, J, movefocus, d
|
||||
|
||||
################
|
||||
# Master navigation
|
||||
################
|
||||
|
||||
bind = $mod, J, layoutmsg, cyclenext
|
||||
bind = $mod, K, layoutmsg, cycleprev
|
||||
|
||||
################
|
||||
# Workspaces
|
||||
################
|
||||
|
||||
bind = $mod, 1, workspace, 1
|
||||
bind = $mod, 2, workspace, 2
|
||||
bind = $mod, 3, workspace, 3
|
||||
bind = $mod, 4, workspace, 4
|
||||
bind = $mod, 5, workspace, 5
|
||||
|
||||
bind = $mod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mod SHIFT, 5, movetoworkspace, 5
|
||||
4
dotfiles/nymph/.config/hypr/hyprpaper.conf
Normal file
4
dotfiles/nymph/.config/hypr/hyprpaper.conf
Normal file
@@ -0,0 +1,4 @@
|
||||
preload = ~/Pictures/wallpapers/gargantua-black-hyprland.png
|
||||
wallpaper = ,~/Pictures/wallpapers/gargantua-black-hyprland.png
|
||||
splash = false
|
||||
ipc = on
|
||||
146
dotfiles/nymph/.config/waybar/config.jsonc
Normal file
146
dotfiles/nymph/.config/waybar/config.jsonc
Normal file
@@ -0,0 +1,146 @@
|
||||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"height": 28,
|
||||
"spacing": 4,
|
||||
|
||||
"modules-left": [
|
||||
"hyprland/workspaces"
|
||||
],
|
||||
|
||||
"modules-center": [
|
||||
"custom/music"
|
||||
],
|
||||
|
||||
"modules-right": [
|
||||
"temperature",
|
||||
"memory",
|
||||
"cpu",
|
||||
//"pulseaudio",
|
||||
"backlight",
|
||||
"network",
|
||||
"bluetooth",
|
||||
"battery",
|
||||
"clock",
|
||||
"custom/powermenu",
|
||||
"tray"
|
||||
],
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"format": "{name}",
|
||||
"on-click": "activate",
|
||||
"persistent-workspaces": {
|
||||
"*": [1, 2, 3, 4, 5]
|
||||
}
|
||||
},
|
||||
|
||||
"backlight": {
|
||||
"device": "intel_backlight",
|
||||
"on-scroll-up": "light -A 5",
|
||||
"on-scroll-down": "light -U 5",
|
||||
"format": "{percent}% {icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
||||
},
|
||||
|
||||
"pulseaudio": {
|
||||
"scroll-step": 1,
|
||||
"format": "{volume}% {icon}",
|
||||
"format-muted": "mute ",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "pavucontrol",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"battery": {
|
||||
"interval": 10,
|
||||
"states": {
|
||||
"warning": 20,
|
||||
"critical": 10
|
||||
},
|
||||
"format": "{capacity}% {icon}",
|
||||
"format-charging": "{capacity}% ",
|
||||
"format-plugged": "{capacity}% ",
|
||||
"format-alt": "{time} {icon}",
|
||||
"format-icons": ["", "", "", "", "", "", "", "", ""]
|
||||
},
|
||||
|
||||
"clock": {
|
||||
"interval": 1,
|
||||
"timezone": "Europe/Rome",
|
||||
"format": "{:%H:%M}",
|
||||
"tooltip-format": "{:%Y %B}\n{calendar}",
|
||||
"format-alt": "{:%A %d/%m/%Y}"
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 1,
|
||||
"format": "{percentage}% ",
|
||||
"states": {
|
||||
"warning": 85
|
||||
}
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"interval": 1,
|
||||
"format": "{usage}% ",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"network": {
|
||||
"interval": 1,
|
||||
"tooltip": true,
|
||||
"format-wifi": "{icon}",
|
||||
"format-ethernet": "{icon}",
|
||||
"format-linked": "",
|
||||
"format-icons": ["", "", "", ""],
|
||||
"format-disconnected": "",
|
||||
"tooltip-format": "{ifname}",
|
||||
"tooltip-format-wifi": "{essid} ({signalStrength}%) ",
|
||||
"tooltip-format-ethernet": "{ifname} ",
|
||||
"tooltip-format-disconnected": "Disconnected",
|
||||
"on-click": "nm-connection-editor"
|
||||
},
|
||||
|
||||
"temperature": {
|
||||
"critical-threshold": 80,
|
||||
"format": "{temperatureC}°C ",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"custom/powermenu": {
|
||||
"format": "",
|
||||
"on-click": "~/.local/bin/powermenu",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"tray": {
|
||||
"icon-size": 15,
|
||||
"spacing": 6
|
||||
},
|
||||
|
||||
"bluetooth": {
|
||||
"format": "",
|
||||
"format-connected": "{device_alias} ",
|
||||
"format-connected-battery": "{device_alias} {device_battery_percentage}% ",
|
||||
"format-off": "",
|
||||
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
|
||||
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
|
||||
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
|
||||
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
|
||||
"on-click": "blueman-manager"
|
||||
},
|
||||
|
||||
"custom/music": {
|
||||
"format": "{}",
|
||||
"return-type": "json",
|
||||
"exec": "waybar-module-music"
|
||||
}
|
||||
}
|
||||
107
dotfiles/nymph/.config/waybar/style.css
Normal file
107
dotfiles/nymph/.config/waybar/style.css
Normal file
@@ -0,0 +1,107 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
min-height: 0;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-family: "Liberation Mono", "Font Awesome 6 Free", "Font Awesome 6 Brands", monospace;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background: #000000;
|
||||
color: #dcdcdc;
|
||||
border-bottom: 1px solid #101010;
|
||||
}
|
||||
|
||||
/* blocchi principali */
|
||||
#workspaces,
|
||||
#custom-music,
|
||||
#temperature,
|
||||
#memory,
|
||||
#cpu,
|
||||
#pulseaudio,
|
||||
#backlight,
|
||||
#network,
|
||||
#bluetooth,
|
||||
#battery,
|
||||
#clock,
|
||||
#custom-powermenu,
|
||||
#tray {
|
||||
font-size: 16px;
|
||||
padding: 0 8px;
|
||||
margin: 3px 0;
|
||||
}
|
||||
|
||||
/* workspaces */
|
||||
#workspaces {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
background: transparent;
|
||||
color: #6f6f6f;
|
||||
padding: 0 7px;
|
||||
margin: 0 2px;
|
||||
border-bottom: 1px solid transparent;
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
color: #dcdcdc;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: #ffffff;
|
||||
border-bottom: 1px solid #ffffff;
|
||||
}
|
||||
|
||||
#workspaces button.urgent {
|
||||
color: #ffffff;
|
||||
background: #0f0f0f;
|
||||
}
|
||||
|
||||
/* centro */
|
||||
#custom-music {
|
||||
color: #bfbfbf;
|
||||
}
|
||||
|
||||
/* moduli destra */
|
||||
#temperature,
|
||||
#memory,
|
||||
#cpu,
|
||||
#pulseaudio,
|
||||
#backlight,
|
||||
#network,
|
||||
#bluetooth,
|
||||
#battery {
|
||||
color: #d0d0d0;
|
||||
}
|
||||
|
||||
/* clock e power leggermente più evidenti */
|
||||
#clock,
|
||||
#custom-powermenu {
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#clock {
|
||||
letter-spacing: 0.5px;
|
||||
padding: 0 12px;
|
||||
}
|
||||
|
||||
#custom-powermenu {
|
||||
padding-left: 12px;
|
||||
padding-right: 12px;
|
||||
}
|
||||
|
||||
#tray {
|
||||
padding-right: 12px;
|
||||
}
|
||||
|
||||
/* tooltip */
|
||||
tooltip {
|
||||
background: #000000;
|
||||
border: 1px solid #ffffff;
|
||||
color: #e6e6e6;
|
||||
padding: 10px;
|
||||
}
|
||||
Reference in New Issue
Block a user