qs: add pinned tray entries

zsh: fix
yazi: update
hypridle: decided not switching to swayidle :)
This commit is contained in:
2026-05-12 19:31:42 +02:00
parent c30e4ae680
commit 50561e877a
14 changed files with 65 additions and 32 deletions
+2 -2
View File
@@ -1,5 +1,5 @@
$lock_cmd = pidof hyprlock || hyprlock $lock_cmd = pidof hyprlock || hyprlock
$suspend_cmd = pidof steam || systemctl suspend || loginctl suspend # fuck nvidia $suspend_cmd = systemctl suspend || loginctl suspend
general { general {
lock_cmd = $lock_cmd lock_cmd = $lock_cmd
@@ -14,7 +14,7 @@ listener {
listener { listener {
timeout = 300 # 5mins timeout = 300 # 5mins
on-timeout = hyprctl dispatch dpms off || niri msg action power-off-monitors on-timeout = hyprctl dispatch dpms off || niri msg action power-off-monitors
on-resume = hyprctl dispatch dpms on || true on-resume = hyprctl dispatch dpms on || niri msg action power-on-monitors
} }
#listener { #listener {
+1 -1
View File
@@ -1,7 +1,7 @@
screenshot-path "~/Pictures/Screenshots/niri_screenshot_%Y-%m-%d_%H-%M-%S.png" screenshot-path "~/Pictures/Screenshots/niri_screenshot_%Y-%m-%d_%H-%M-%S.png"
debug { debug {
render-drm-device "/dev/dri/renderD128" render-drm-device "/dev/dri/renderD129"
honor-xdg-activation-with-invalid-serial honor-xdg-activation-with-invalid-serial
} }
@@ -11,8 +11,11 @@ import qs.Modules.Bar.Modules
import qs.Services import qs.Services
Variants { Variants {
id: root
model: Quickshell.screens model: Quickshell.screens
property var pinnedTrayIds
Item { Item {
property var modelData property var modelData
@@ -133,7 +136,7 @@ Variants {
id: rightLayout id: rightLayout
height: parent.height - Style.marginXS * 2 height: parent.height - Style.marginXS * 2
spacing: Style.marginM spacing: Style.marginS
anchors { anchors {
right: parent.right right: parent.right
@@ -186,8 +189,8 @@ Variants {
RecordIndicator { RecordIndicator {
} }
Ip { // Ip {
} // }
CpuTemp { CpuTemp {
} }
@@ -265,6 +268,21 @@ Variants {
Separator { Separator {
} }
Loader {
Layout.fillHeight: true
active: NukeKded6.done
sourceComponent: SystemTray {
screen: modelData
pinnedIds: root.pinnedTrayIds
height: parent.height
}
}
Separator {
}
RowLayout { RowLayout {
Layout.fillHeight: true Layout.fillHeight: true
spacing: Style.marginS spacing: Style.marginS
@@ -275,6 +293,7 @@ Variants {
sourceComponent: TrayExpander { sourceComponent: TrayExpander {
screen: modelData screen: modelData
baseSize: rightLayout.height - Style.marginXS * 2 baseSize: rightLayout.height - Style.marginXS * 2
excludeIds: root.pinnedTrayIds
} }
} }
@@ -15,8 +15,10 @@ Rectangle {
property ShellScreen screen property ShellScreen screen
property var activeTrayItem: null property var activeTrayItem: null
property var pinnedIds: []
property var excludeIds: []
implicitWidth: trayFlow.implicitWidth + 20 implicitWidth: trayFlow.implicitWidth > 0 ? trayFlow.implicitWidth + 20 : 0
implicitHeight: parent.height implicitHeight: parent.height
radius: 0 radius: 0
color: Colors.transparent color: Colors.transparent
@@ -36,7 +38,12 @@ Rectangle {
delegate: Item { delegate: Item {
width: 18 width: 18
height: 18 height: 18
visible: modelData visible: {
if (!modelData) return false
if (pinnedIds.length > 0) return pinnedIds.includes(modelData.id)
if (excludeIds.length > 0) return !excludeIds.includes(modelData.id)
return true
}
IconImage { IconImage {
id: trayIcon id: trayIcon
@@ -11,6 +11,7 @@ Item {
property ShellScreen screen property ShellScreen screen
property int baseSize: Style.baseWidgetSize property int baseSize: Style.baseWidgetSize
property var excludeIds: []
implicitWidth: baseSize + trayContainer.implicitWidth implicitWidth: baseSize + trayContainer.implicitWidth
implicitHeight: layout.implicitHeight implicitHeight: layout.implicitHeight
@@ -40,6 +41,7 @@ Item {
id: expandedTray id: expandedTray
screen: root.screen screen: root.screen
excludeIds: root.excludeIds
} }
Behavior on implicitWidth { Behavior on implicitWidth {
@@ -16,13 +16,13 @@ Singleton {
property bool isReplayStarted: false property bool isReplayStarted: false
property bool isStopping: false property bool isStopping: false
property bool isReplayStopping: false property bool isReplayStopping: false
readonly property string codec: "libx264" readonly property string codec: "av1_nvenc"
readonly property string container: "mkv" readonly property string container: "mp4"
readonly property string pixelFormat: "yuv420p" readonly property string pixelFormat: "p010le"
property string recordingDisplay: "" property string recordingDisplay: ""
readonly property int replayDuration: 15 readonly property int replayDuration: 15
readonly property int framerate: 60 readonly property int framerate: 60
readonly property var codecParams: Object.freeze(["preset=ultrafast", "crf=15", "tune=zerolatency", "color_range=tv"]) readonly property var codecParams: Object.freeze(["preset=p4", "rc=constqp", "qp=18", "color_range=tv"])
readonly property var filterArgs: "" readonly property var filterArgs: ""
function getFilename(prefix = "recording") { function getFilename(prefix = "recording") {
@@ -29,6 +29,8 @@ ShellRoot {
Bar { Bar {
id: bar id: bar
pinnedTrayIds: ["Fcitx", "nm-applet", "blueman"]
} }
Corners { Corners {
+1 -1
View File
@@ -9,7 +9,7 @@
# Constants # Constants
niri_config_file="$HOME/.config/niri/config/misc.kdl" niri_config_file="$HOME/.config/niri/config/misc.kdl"
prefer_order=(intel nvidia) prefer_order=(nvidia intel)
# Get vendor and path of each GPU # Get vendor and path of each GPU
default_card_path="$(find /dev/dri/card* 2>/dev/null | head -n 1)" default_card_path="$(find /dev/dri/card* 2>/dev/null | head -n 1)"
+1 -1
View File
@@ -59,7 +59,7 @@ uy_done_precmd() {
--urgency="$urgency" \ --urgency="$urgency" \
--icon=utilities-terminal \ --icon=utilities-terminal \
--app-name=zsh \ --app-name=zsh \
"$title" "$wd/ $uy_done_cmd" "$title" "$wd/ $uy_done_cmd" &
} }
autoload -Uz add-zsh-hook autoload -Uz add-zsh-hook
+9 -3
View File
@@ -156,7 +156,7 @@ if (( $+commands[git] )); then
gcp() { gcp() {
git add -A || return 1 git add -A || return 1
if [[ $# -eq 0 ]]; then if [[ $# -eq 0 ]]; then
git commit -m "👐 foo: too lazy to come up with a helpful commit message :)" || return 1 git commit -m "👐 foo:)" || return 1
else else
git commit -m "$*" || return 1 git commit -m "$*" || return 1
fi fi
@@ -201,8 +201,14 @@ if (( $+commands[git] )); then
local app="$1" local app="$1"
if [[ -n "$app" ]] && (( $+commands[$app] )); then if [[ -n "$app" ]] && (( $+commands[$app] )); then
echo "Opening project with $app" echo "Opening project with $app"
nohup "$app" . >/dev/null 2>&1 & # nohup "$app" . >/dev/null 2>&1 &
disown # disown
if [[ ${XDG_CURRENT_DESKTOP:-} = "niri" ]]; then
niri msg action spawn -- "$app" "$HOME/Repositories/Uni/$course/$dir_name"
else
nohup "$app" . >/dev/null 2>&1 &
disown
fi
fi fi
} }
fi fi
+5 -5
View File
@@ -1,11 +1,11 @@
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:git" use = "yazi-rs/plugins:git"
rev = "1db18bb" rev = "5d5c480"
hash = "c8d30a70659f1b880407e61c564ab4e8" hash = "88e56a64b7ce7c4314427452343fef17"
[[plugin.deps]] [[plugin.deps]]
use = "yazi-rs/plugins:smart-enter" use = "yazi-rs/plugins:smart-enter"
rev = "1db18bb" rev = "5d5c480"
hash = "187cc58ba7ac3befd49c342129e6f1b6" hash = "187cc58ba7ac3befd49c342129e6f1b6"
[[plugin.deps]] [[plugin.deps]]
@@ -15,8 +15,8 @@ hash = "699fe07e0d2d1b4af8dafb84168eeb04"
[[plugin.deps]] [[plugin.deps]]
use = "KKV9/compress" use = "KKV9/compress"
rev = "46a6b9f" rev = "e60e122"
hash = "771af2becc575a3f43d0542de823969d" hash = "fbaf0adc8efc59555b748d36aab62d40"
[[plugin.deps]] [[plugin.deps]]
use = "llanosrocas/yaziline" use = "llanosrocas/yaziline"
@@ -1,4 +1,4 @@
--- @since 25.12.29 --- @since 26.5.6
-- Check for windows -- Check for windows
local is_windows = ya.target_family() == "windows" local is_windows = ya.target_family() == "windows"
@@ -460,7 +460,7 @@ return {
-- Create a temporary directory for intermediate files -- Create a temporary directory for intermediate files
local temp_dir_name = ".tmp_compress" local temp_dir_name = ".tmp_compress"
local temp_dir = combine_url(output_dir, temp_dir_name) local temp_dir = combine_url(output_dir, temp_dir_name)
temp_dir = tostring(fs.unique_name(Url(temp_dir))) temp_dir = tostring(fs.unique("dir", Url(temp_dir)))
-- Attempt to create the temporary directory -- Attempt to create the temporary directory
local temp_dir_status, temp_dir_err = fs.create("dir_all", Url(temp_dir)) local temp_dir_status, temp_dir_err = fs.create("dir_all", Url(temp_dir))
@@ -532,7 +532,7 @@ return {
-- Move the final file from the temporary directory to the output directory -- Move the final file from the temporary directory to the output directory
local final_output_url = combine_url(output_dir, original_name) local final_output_url = combine_url(output_dir, original_name)
local temp_url_processed = combine_url(temp_dir, original_name) local temp_url_processed = combine_url(temp_dir, original_name)
final_output_url = tostring(fs.unique_name(Url(final_output_url))) final_output_url = tostring(fs.unique("file", Url(final_output_url)))
local from, to = Url(temp_url_processed), Url(final_output_url) local from, to = Url(temp_url_processed), Url(final_output_url)
local move_status, move_err = fs.rename(from, to) local move_status, move_err = fs.rename(from, to)
if not move_status then if not move_status then
@@ -39,10 +39,7 @@ group = "git"
## Advanced ## Advanced
> [!NOTE] You can customize the [Style](https://yazi-rs.github.io/docs/configuration/theme#types.style) of the status sign with:
> The following configuration must be put before `require("git"):setup()`
You can customize the [Style](https://yazi-rs.github.io/docs/plugins/layout#style) of the status sign with:
- `[git].unknown` - status cannot/not yet determined - `[git].unknown` - status cannot/not yet determined
- `[git].modified` - modified file - `[git].modified` - modified file
+3 -3
View File
@@ -233,7 +233,6 @@ gucharmap
gvfs-smb gvfs-smb
gwenview gwenview
handbrake handbrake
hashclash-cuda-git
helix helix
hmcl hmcl
htop htop
@@ -454,7 +453,7 @@ sunshine
sushi sushi
svt-av1-hdr-git svt-av1-hdr-git
sysbench sysbench
systemc systemc2.3.4
tailscale tailscale
tcpdump tcpdump
telegram-desktop telegram-desktop
@@ -532,7 +531,7 @@ waydroid-helper
waypaper waypaper
wev wev
wezterm wezterm
wf-recorder wf-recorder-git
wget wget
whisper.cpp-model-large-v3-turbo whisper.cpp-model-large-v3-turbo
wine wine
@@ -542,6 +541,7 @@ wl-clipboard
wl-mirror wl-mirror
wlogout wlogout
wlsunset wlsunset
words
wqy-bitmapfont wqy-bitmapfont
wqy-microhei wqy-microhei
wqy-zenhei wqy-zenhei