mirror of
https://github.com/danielepintore/dotfiles.git
synced 2026-06-15 20:25:13 +02:00
noctalia: switch to v5 shell
This commit is contained in:
@@ -6,3 +6,6 @@ require("lua/theme")
|
||||
require("lua/input")
|
||||
require("lua/binds")
|
||||
require("lua/window_rules")
|
||||
|
||||
-- For Noctalia Color templates
|
||||
require("noctalia")
|
||||
|
||||
@@ -11,7 +11,7 @@ local utils = require("lua/utils")
|
||||
|
||||
hl.on("hyprland.start", function ()
|
||||
hl.exec_cmd(utils.uwsm("nm-applet"))
|
||||
hl.exec_cmd(utils.uwsm("qs -c noctalia-shell"))
|
||||
hl.exec_cmd(utils.uwsm("noctalia"))
|
||||
hl.exec_cmd(utils.uwsm("batsignal -b -e -w 30 -c 20 -d 10 -f 100"))
|
||||
hl.exec_cmd(utils.uwsm("blueman-applet"))
|
||||
hl.exec_cmd(utils.uwsm("udiskie --tray"))
|
||||
|
||||
@@ -13,15 +13,15 @@ hl.bind(mainMod .. " + M", hl.dsp.exec_cmd(utils.uwsm(defaults.apps.messenger)))
|
||||
--hl.bind(mainMod .. " + M", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch 'hl.dsp.exit()'"))
|
||||
hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(utils.uwsm(defaults.apps.fileManager)))
|
||||
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd(utils.uwsm(defaults.apps.browser)))
|
||||
hl.bind(mainMod .. "+ SHIFT + W", hl.dsp.exec_cmd(utils.noctalia_ipc("wallpaper toggle")))
|
||||
hl.bind(mainMod .. "+ SHIFT + W", hl.dsp.exec_cmd("noctalia msg panel-toggle wallpaper"))
|
||||
hl.bind(mainMod .. " + S", hl.dsp.exec_cmd(utils.uwsm("sh -c 'IMG=$(xdg-user-dir PICTURES)/Screenshots/$(date +'%s_grim.png') && grim $IMG && wl-copy < $IMG'")))
|
||||
hl.bind(mainMod .. "+ SHIFT + S", hl.dsp.exec_cmd(utils.uwsm("sh -c 'IMG=$(xdg-user-dir PICTURES)/Screenshots/$(date +'%s_grim.png') && grim -g \"$(slurp)\" $IMG && wl-copy < $IMG'")))
|
||||
hl.bind("PRINT", hl.dsp.exec_cmd(utils.uwsm("pkill slurp; sh -c 'IMG=$(xdg-user-dir PICTURES)/Screenshots/$(date +'%s_grim.png') && grim -g \"$(slurp)\" $IMG && wl-copy < $IMG'")))
|
||||
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd(utils.noctalia_ipc("launcher toggle")))
|
||||
hl.bind(mainMod .. " + R", hl.dsp.exec_cmd("noctalia msg panel-toggle launcher"))
|
||||
hl.bind(mainMod .. " + T", hl.dsp.window.float({ action = "toggle" }))
|
||||
hl.bind(mainMod .. " + P", hl.dsp.window.pseudo())
|
||||
hl.bind(mainMod .. " + F", hl.dsp.window.fullscreen({ action = "toggle" }))
|
||||
hl.bind(mainMod .. " + B", hl.dsp.exec_cmd(utils.noctalia_ipc("bar toggle")))
|
||||
hl.bind(mainMod .. " + B", hl.dsp.exec_cmd("noctalia msg bar-toggle"))
|
||||
|
||||
-- Move focus with mainMod + arrow keys
|
||||
hl.bind(mainMod .. " + left", hl.dsp.focus({ direction = "left" }))
|
||||
@@ -63,27 +63,26 @@ hl.bind(mainMod .. "+ SHIFT + j", hl.dsp.window.resize({x=0, y=10, relative = tr
|
||||
|
||||
--
|
||||
-- Laptop multimedia keys for volume and LCD brightness
|
||||
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd(utils.noctalia_ipc("volume increase")), { locked = true, repeating = true })
|
||||
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd(utils.noctalia_ipc("volume decrease")), { locked = true, repeating = true })
|
||||
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("noctalia msg volume-up"), { locked = true, repeating = true })
|
||||
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("noctalia msg volume-down"), { locked = true, repeating = true })
|
||||
|
||||
-- Mic volume
|
||||
hl.bind(mainMod .. " + XF86AudioRaiseVolume", hl.dsp.exec_cmd("amixer -q set Dmic0 3%+"), { locked = true, repeating = true })
|
||||
hl.bind(mainMod .. " + XF86AudioLowerVolume", hl.dsp.exec_cmd("amixer -q set Dmic0 3%-"), { locked = true, repeating = true })
|
||||
|
||||
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd(utils.noctalia_ipc("volume decrease")), { locked = true, repeating = true })
|
||||
hl.bind("XF86AudioMute", hl.dsp.exec_cmd(utils.noctalia_ipc("volume muteOutput")), { locked = true, repeating = true })
|
||||
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd(utils.noctalia_ipc("brightness increase")), { locked = true, repeating = true })
|
||||
hl.bind("XF86MonBrightnessDown",hl.dsp.exec_cmd(utils.noctalia_ipc("brightness decrease")), { locked = true, repeating = true })
|
||||
hl.bind("XF86MonBrightnessDown",hl.dsp.exec_cmd(utils.noctalia_ipc("brightness decrease")),{ locked = true, repeating = true })
|
||||
hl.bind("XF86AudioMicMute", hl.dsp.exec_cmd("noctalia msg volume-down"), { locked = true, repeating = true })
|
||||
hl.bind("XF86AudioMute", hl.dsp.exec_cmd("noctalia msg volume-mute"), { locked = true, repeating = true })
|
||||
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd("noctalia msg brightness-up"), { locked = true, repeating = true })
|
||||
hl.bind("XF86MonBrightnessDown",hl.dsp.exec_cmd("noctalia msg brightness-down"), { locked = true, repeating = true })
|
||||
|
||||
-- Noctalia shutdown menu
|
||||
hl.bind(mainMod .. " + Delete",hl.dsp.exec_cmd(utils.noctalia_ipc("sessionMenu toggle")),{ release = true, locked = false, repeating = false })
|
||||
hl.bind(mainMod .. " + Delete",hl.dsp.exec_cmd("noctalia msg panel-toggle session"),{ release = true, locked = false, repeating = false })
|
||||
-- Long press for lock screen (prevents accidental presses)
|
||||
hl.bind(mainMod .. " + Delete",hl.dsp.exec_cmd(utils.noctalia_ipc("lockScreen lock")),{ long_press = true, locked = false, repeating = false })
|
||||
hl.bind(mainMod .. " + Delete",hl.dsp.exec_cmd("noctalia msg session lock"),{ long_press = true, locked = false, repeating = false })
|
||||
-- Noctalia settings menu
|
||||
hl.bind(mainMod .. " + HOME",hl.dsp.exec_cmd(utils.noctalia_ipc("settings toggle")),{ locked = false, repeating = false })
|
||||
hl.bind(mainMod .. " + HOME",hl.dsp.exec_cmd("noctalia msg settings-toggle"),{ locked = false, repeating = false })
|
||||
-- Do not disturb
|
||||
hl.bind("XF86NotificationCenter",hl.dsp.exec_cmd(utils.noctalia_ipc("notifications toggleDND")),{ locked = false, repeating = false })
|
||||
hl.bind("XF86NotificationCenter",hl.dsp.exec_cmd("noctalia msg notification-dnd-toggle"),{ locked = false, repeating = false })
|
||||
|
||||
-- Media controls (requires playerctl)
|
||||
hl.bind("XF86Favorites", hl.dsp.exec_cmd("playerctl next"), { locked = true })
|
||||
|
||||
@@ -3,8 +3,4 @@ return {
|
||||
assert(cmd, "uwsm() -> cmd is required")
|
||||
return "uwsm-app -- " .. cmd
|
||||
end,
|
||||
noctalia_ipc = function(cmd)
|
||||
assert(cmd, "noctalia_ipc() -> cmd is required")
|
||||
return "qs -c noctalia-shell ipc call " .. cmd
|
||||
end
|
||||
}
|
||||
|
||||
15
.local/state/noctalia/desktop_widgets.toml
Normal file
15
.local/state/noctalia/desktop_widgets.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
schema_version = 1
|
||||
|
||||
[grid]
|
||||
cell_size = 16
|
||||
major_interval = 4
|
||||
visible = true
|
||||
|
||||
[[widget]]
|
||||
cx = 816.0
|
||||
cy = 128.0
|
||||
id = "desktop-widget-0000000000000001"
|
||||
output = "eDP-1"
|
||||
rotation = 0.0
|
||||
scale = 2.3113992214202881
|
||||
type = "clock"
|
||||
124
.local/state/noctalia/settings.toml
Normal file
124
.local/state/noctalia/settings.toml
Normal file
@@ -0,0 +1,124 @@
|
||||
[bar]
|
||||
order = [ "default" ]
|
||||
|
||||
[bar.default]
|
||||
background_opacity = 0.0
|
||||
capsule = true
|
||||
capsule_border = "outline"
|
||||
capsule_fill = "surface"
|
||||
capsule_opacity = 0.5
|
||||
capsule_padding = 9.0
|
||||
end = [ "volume", "brightness", "clipboard", "notifications", "network", "bluetooth", "battery", "control-center" ]
|
||||
margin_edge = 5
|
||||
margin_ends = 0
|
||||
padding = 5
|
||||
shadow = false
|
||||
start = [ "tray", "caffeine", "group:g1" ]
|
||||
thickness = 30
|
||||
widget_spacing = 2
|
||||
|
||||
[[bar.default.capsule_group]]
|
||||
border = "outline"
|
||||
fill = "surface"
|
||||
id = "g1"
|
||||
members = [ "cpu", "temp", "ram", "sysmon" ]
|
||||
opacity = 0.55000001192092896
|
||||
padding = 6.0
|
||||
|
||||
[desktop_widgets]
|
||||
schema_version = 1
|
||||
widget_order = [ "desktop-widget-0000000000000001" ]
|
||||
|
||||
[desktop_widgets.grid]
|
||||
cell_size = 16
|
||||
major_interval = 4
|
||||
visible = true
|
||||
|
||||
[desktop_widgets.widget.desktop-widget-0000000000000001]
|
||||
cx = 1461.5
|
||||
cy = 919.3074951171875
|
||||
output = "eDP-1"
|
||||
rotation = 0.0
|
||||
scale = 1.2566845417022705
|
||||
type = "clock"
|
||||
|
||||
[desktop_widgets.widget.desktop-widget-0000000000000001.settings]
|
||||
background = true
|
||||
background_opacity = 0.54000000000000004
|
||||
|
||||
[notification]
|
||||
background_opacity = 0.97999995946884155
|
||||
|
||||
[shell]
|
||||
font_family = "JetBrainsMono NF"
|
||||
screen_time_enabled = true
|
||||
settings_show_advanced = true
|
||||
|
||||
[shell.panel]
|
||||
background_opacity = 0.99999997764825821
|
||||
clipboard_placement = "floating"
|
||||
control_center_placement = "floating"
|
||||
launcher_categories = false
|
||||
open_near_click_control_center = true
|
||||
session_placement = "centered"
|
||||
wallpaper_placement = "floating"
|
||||
|
||||
[theme]
|
||||
builtin = "m3-content"
|
||||
community_palette = "Doomed"
|
||||
mode = "dark"
|
||||
source = "wallpaper"
|
||||
wallpaper_scheme = "Doomed"
|
||||
|
||||
[theme.templates]
|
||||
builtin_ids = [ "gtk3", "gtk4", "hyprland", "qt" ]
|
||||
|
||||
[wallpaper]
|
||||
directory = "/home/daniele/.config/hypr/wallpapers"
|
||||
transition = [ "fade" ]
|
||||
transition_duration = 300
|
||||
|
||||
[wallpaper.default]
|
||||
path = "/home/daniele/.config/hypr/wallpapers/wwdc-2023-8k-swirls-3840x2160-12596.jpg"
|
||||
|
||||
[wallpaper.last]
|
||||
path = "/home/daniele/.config/hypr/wallpapers/wwdc-2023-8k-swirls-3840x2160-12596.jpg"
|
||||
|
||||
[wallpaper.monitors.eDP-1]
|
||||
path = "/home/daniele/.config/hypr/wallpapers/wwdc-2023-8k-swirls-3840x2160-12596.jpg"
|
||||
|
||||
[widget.battery]
|
||||
capsule = true
|
||||
|
||||
[widget.bongocat]
|
||||
script = "scripts/bongocat.lua"
|
||||
type = "scripted"
|
||||
|
||||
[widget.clock]
|
||||
format = "{:%H:%M %a, %b %d}"
|
||||
|
||||
[widget.control-center]
|
||||
glyph = "baseline-density-medium"
|
||||
|
||||
[widget.cpu]
|
||||
display = "text"
|
||||
|
||||
[widget.ram]
|
||||
display = "text"
|
||||
|
||||
[widget.screen_recorder]
|
||||
script = "scripts/screen_recorder.lua"
|
||||
type = "scripted"
|
||||
|
||||
[widget.sysmon]
|
||||
display = "text"
|
||||
stat = "disk_pct"
|
||||
|
||||
[widget.temp]
|
||||
display = "text"
|
||||
|
||||
[widget.tray]
|
||||
anchor = true
|
||||
drawer = true
|
||||
drawer_columns = 5
|
||||
hidden = [ "Xwayland Video Bridge_pipewireToXProxy" ]
|
||||
Reference in New Issue
Block a user