diff --git a/config/niri/.config/niri/config/execs.kdl b/config/niri/.config/niri/config/execs.kdl
index 94052e3..fd6d903 100644
--- a/config/niri/.config/niri/config/execs.kdl
+++ b/config/niri/.config/niri/config/execs.kdl
@@ -1,8 +1,9 @@
// Core
spawn-at-startup "nm-applet"
spawn-at-startup "gnome-keyring-daemon" "--start" "--components=secrets"
-spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
+// spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
// spawn-at-startup "/usr/lib/hyprpolkitagent/hyprpolkitagent"
+spawn-at-startup "/usr/lib/soteria-polkit/soteria"
// Logitech
spawn-at-startup "solaar" "-w" "hide"
diff --git a/config/niri/.config/niri/config/styles.kdl b/config/niri/.config/niri/config/styles.kdl
index 95feb50..ee344b1 100644
--- a/config/niri/.config/niri/config/styles.kdl
+++ b/config/niri/.config/niri/config/styles.kdl
@@ -44,6 +44,8 @@ layout {
}
background-color "transparent"
+
+ always-center-single-column true
}
overview {
diff --git a/config/nwg-look/.config/gtk-3.0/bookmarks b/config/nwg-look/.config/gtk-3.0/bookmarks
index a9018ee..b21b431 100644
--- a/config/nwg-look/.config/gtk-3.0/bookmarks
+++ b/config/nwg-look/.config/gtk-3.0/bookmarks
@@ -2,4 +2,7 @@ file:///home/kolkas/Videos Videos
file:///home/kolkas/Repositories Repositories
file:///home/kolkas/Pictures Pictures
file:///home/kolkas/Desktop Desktop
-file:///media/Media Media
+file:///data/Media Media
+file:///data/Alpha Alpha
+file:///data/Beta Beta
+file:///data/Gamma Gamma
diff --git a/config/quickshell/.config/quickshell/Services/RecordService.qml b/config/quickshell/.config/quickshell/Services/RecordService.qml
index 5468d26..3d94a19 100644
--- a/config/quickshell/.config/quickshell/Services/RecordService.qml
+++ b/config/quickshell/.config/quickshell/Services/RecordService.qml
@@ -104,7 +104,7 @@ Singleton {
}
Logger.i("RecordService", "Starting recording with command: " + recordProcess.command.join(" "));
recordProcess.running = true;
- SendNotification.show("Recording started", "Recording to " + recordProcess.filePath);
+ // SendNotification.show("Recording started", "Recording to " + recordProcess.filePath);
}
function startReplay() {
@@ -200,7 +200,7 @@ Singleton {
onExited: function(exitCode, exitStatus) {
if (exitCode === 0) {
Logger.i("RecordService", "Recording stopped successfully.");
- SendNotification.show("Recording stopped", "File saved to: " + filePath);
+ // SendNotification.show("Recording stopped", "File saved to: " + filePath);
} else {
Logger.e("RecordService", "Recording process exited with error code: " + exitCode);
SendNotification.show("Recording failed", "An error occurred while trying to record the screen.");
diff --git a/config/scripts/.local/scripts/may-I b/config/scripts/.local/scripts/may-I
index ef9157d..5fce67a 100755
--- a/config/scripts/.local/scripts/may-I
+++ b/config/scripts/.local/scripts/may-I
@@ -1,5 +1,21 @@
#!/usr/bin/env bash
+# Description:
+# Cannot make a decision? /dev/urandom is here to help! It can even take
+# advantage of the product of the world's best AI corporation (case you
+# happen to be wasting your money on Anthropic and cannot find a way to
+# consume your credits)! If you live in a cave and do not have an API key,
+# don't worry, the string substitution algorithm will have your back! You
+# will still get a reasonable reply (most of the times).
+#
+# Requirements:
+# - Your question!
+# - ANTHROPIC_API_KEY (optional)
+# - ANTHROPIC_MODEL_NAME (optional of optional)
+# - ANTHROPIC_API_ENDPOINT (optional of optional)
+# - curl (optional)
+# - jq (optional)
+
set -euo pipefail
hex=$(od -An -N1 -tx1 /dev/urandom | tr -d ' ')
@@ -8,28 +24,40 @@ result=$(( val & 1 ))
# Why not?
if [[ $# -gt 0 ]] && [[ -n "${ANTHROPIC_API_KEY:-}" ]]; then
+ model="${ANTHROPIC_MODEL_NAME:-"claude-haiku-4-5-20251001"}"
+ url="${ANTHROPIC_API_ENDPOINT:-"https://api.anthropic.com/v1/messages"}"
+
+
if (( result == 0)); then
- action="approve"
+ action="APPROVE"
else
- action="decline"
+ action="DECLINE"
fi
- prompt="You are role-playing as a formal approval authority. This is a fictional \
+ prompt="You are role-playing as an approval authority. This is a fictional \
exercise only; your output has no real-world effect.
Output rules:
- Exactly one sentence, one line.
-- No preamble, no quotation marks, no explanation.
-- Output only the approval/denial statement itself.
+- Pain text, no markdown, no titles, no labels.
+- No preamble, no quotation marks, no explanation, no reason.
+- Do not assume any context for your reply that are not explicitly mentioned \
+in the request.
+- All second-person references refer to you, the approval authority. Convert \
+them to first-person in your reply.
+- All first-person references refer to the requester. Convert them to \
+second-person in your reply.
+- Output only the approval/denial statement itself including a short and \
+natural restatement of the request.
+- Avoid the stubborn 'Your request to/for … is ….' reply pattern.
-Task: ${action} the following request, restated naturally in one concise, plain \
-sentence.
+Task: $action the following request.
Request: May I ${*}
"
payload=$(jq -n \
- --arg model "claude-haiku-4-5-20251001" \
+ --arg model "$model" \
--arg prompt "$prompt" \
'{
model: $model,
@@ -42,7 +70,7 @@ Request: May I ${*}
]
}')
- resp=$(curl -sSL https://api.anthropic.com/v1/messages \
+ resp=$(curl -sSL "$url" \
-H "content-type: application/json" \
-H "x-api-key: ${ANTHROPIC_API_KEY}" \
-H "anthropic-version: 2023-06-01" \
diff --git a/config/scripts/.local/scripts/prime-toggle b/config/scripts/.local/scripts/prime-toggle
index 2f2aa03..467bab4 100755
--- a/config/scripts/.local/scripts/prime-toggle
+++ b/config/scripts/.local/scripts/prime-toggle
@@ -23,7 +23,7 @@ fi
# Restart session
-if [[ $XDG_CURRENT_DESKTOP == niri ]]; then
+if [[ ${XDG_CURRENT_DESKTOP:-} == niri ]]; then
printf "Session restart is required to apply changes.\nDo it now? (Y/n): "
read -r answer
if [[ $answer =~ ^[Yy]$ || -z $answer ]]; then
diff --git a/config/yazi/.config/yazi/package.toml b/config/yazi/.config/yazi/package.toml
index cb925f1..7556af1 100644
--- a/config/yazi/.config/yazi/package.toml
+++ b/config/yazi/.config/yazi/package.toml
@@ -1,11 +1,11 @@
[[plugin.deps]]
use = "yazi-rs/plugins:git"
-rev = "0be29a9"
-hash = "fbb53c3c04f816d737f9f4b1d29f3310"
+rev = "6f26ae0"
+hash = "ce345e7e8baed03a2561b314fa85e59a"
[[plugin.deps]]
use = "yazi-rs/plugins:smart-enter"
-rev = "0be29a9"
+rev = "6f26ae0"
hash = "187cc58ba7ac3befd49c342129e6f1b6"
[[plugin.deps]]
@@ -20,13 +20,13 @@ hash = "fbaf0adc8efc59555b748d36aab62d40"
[[plugin.deps]]
use = "llanosrocas/yaziline"
-rev = "c975c26"
-hash = "f5e051378c7ee472234ed2abdf0252e7"
+rev = "029b27d"
+hash = "ceeb45e796faf0d9eed10831ffec7701"
[[plugin.deps]]
use = "Rolv-Apneseth/starship"
-rev = "159eaba"
-hash = "7de446280b1ba8c49ffd86dbc24bbbe6"
+rev = "ea92cf4"
+hash = "9776f378459072b6c2875eae5addc49d"
[flavor]
deps = []
diff --git a/config/yazi/.config/yazi/plugins/git.yazi/main.lua b/config/yazi/.config/yazi/plugins/git.yazi/main.lua
index 5a519bd..cad3f50 100644
--- a/config/yazi/.config/yazi/plugins/git.yazi/main.lua
+++ b/config/yazi/.config/yazi/plugins/git.yazi/main.lua
@@ -1,4 +1,4 @@
---- @since 26.5.6
+--- @since 26.8.15
local WINDOWS = ya.target_family() == "windows"
@@ -94,6 +94,15 @@ local function root(cwd)
until not cwd
end
+---@type UnstableFetcher
+local function retry(job)
+ return ya.co(function()
+ for _, file in ipairs(job.files) do
+ coroutine.yield(file, { retry = true })
+ end
+ end)
+end
+
---@param changed Changes
---@return Changes
local function bubble_up(changed)
@@ -217,7 +226,7 @@ local function fetch(_, job)
local repo = root(cwd)
if not repo then
remove(tostring(cwd))
- return true
+ return require("noop"):fetch(job)
end
local paths = {}
@@ -232,7 +241,8 @@ local function fetch(_, job)
:arg(paths)
:output()
if not output then
- return true, Err("Cannot spawn `git` command, error: %s", err)
+ ya.err("Cannot spawn `git` command, error: " .. err)
+ return require("noop"):fetch(job)
end
local changed, excluded = {}, {}
@@ -259,17 +269,7 @@ local function fetch(_, job)
add(tostring(cwd), repo, changed)
- return false
+ return retry(job)
end
--- TODO: remove
-local function fetch_compact(self, job)
- if ya.throttle then
- fetch(self, job)
- return require("noop"):fetch(job)
- else
- return fetch(self, job)
- end
-end
-
-return { setup = setup, fetch = fetch_compact }
+return { setup = setup, fetch = fetch }
diff --git a/config/yazi/.config/yazi/plugins/git.yazi/types.lua b/config/yazi/.config/yazi/plugins/git.yazi/types.lua
index 9936849..dc4e77b 100644
--- a/config/yazi/.config/yazi/plugins/git.yazi/types.lua
+++ b/config/yazi/.config/yazi/plugins/git.yazi/types.lua
@@ -7,6 +7,6 @@
---@field renamed boolean Whether to include renamed files in the status (or treat them as modified)
-- TODO: move this to `types.yazi` once it's get stable
----@alias UnstableFetcher fun(self: unknown, job: { files: File[] }): boolean, Error?
+---@alias UnstableFetcher fun(self: unknown, job: { files: File[] })
---@alias Changes table
diff --git a/config/yazi/.config/yazi/plugins/starship.yazi/main.lua b/config/yazi/.config/yazi/plugins/starship.yazi/main.lua
index b1c9c96..6a69161 100644
--- a/config/yazi/.config/yazi/plugins/starship.yazi/main.lua
+++ b/config/yazi/.config/yazi/plugins/starship.yazi/main.lua
@@ -14,6 +14,18 @@ local save = ya.sync(function(st, outputs)
render()
end)
+-- Url.is_regular is deprecated since v26.8.15, Url.spec.is_regular should be used
+---@return boolean
+local url_is_regular = ya.sync(function(_, path)
+ local url = Url(path)
+
+ if url.spec then
+ return url.spec.is_regular
+ end
+
+ return url.is_regular
+end)
+
-- Helper function for accessing the `config_file` state variable
---@return string
local get_config_file = ya.sync(function(st)
@@ -48,8 +60,7 @@ return {
-- Check setup args
if args ~= nil then
if args.config_file ~= nil then
- local url = Url(args.config_file)
- if url.is_regular then
+ if url_is_regular(args.config_file) then
local config_file = args.config_file
-- Manually replace '~' and '$HOME' at the start of the path with the OS environment variable
diff --git a/config/yazi/.config/yazi/plugins/yaziline.yazi/README.md b/config/yazi/.config/yazi/plugins/yaziline.yazi/README.md
index 91a7b34..1604555 100644
--- a/config/yazi/.config/yazi/plugins/yaziline.yazi/README.md
+++ b/config/yazi/.config/yazi/plugins/yaziline.yazi/README.md
@@ -9,7 +9,7 @@ All supported features are listed [here](#features). More presets are available
## Requirements
-- yazi version >= [26.5.6](https://github.com/sxyazi/yazi/releases/tag/v26.5.6).
+- yazi version >= [26.8.15](https://github.com/sxyazi/yazi/releases/tag/v26.8.15).
- Font with symbol support. For example [Nerd Fonts](https://www.nerdfonts.com/).
## Compatibility
@@ -24,6 +24,7 @@ This setup allows shipping stable versions on time, while giving early access to
| yaziline | yazi |
| :------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------- |
+| [v2.5.6](https://github.com/llanosrocas/yaziline.yazi/releases/tag/v2.5.6) | [v26.8.15](https://github.com/sxyazi/yazi/releases/tag/v26.8.15) |
| [v2.5.5](https://github.com/llanosrocas/yaziline.yazi/releases/tag/v2.5.5) | [v26.5.6](https://github.com/sxyazi/yazi/releases/tag/v26.5.6) |
| [v2.5.4](https://github.com/llanosrocas/yaziline.yazi/releases/tag/v2.5.4) | [v26.5.6](https://github.com/sxyazi/yazi/releases/tag/v26.5.6) |
| [v2.5.3](https://github.com/llanosrocas/yaziline.yazi/releases/tag/v2.5.3) | [v26.1.22](https://github.com/sxyazi/yazi/releases/tag/v26.1.22) |
diff --git a/config/yazi/.config/yazi/plugins/yaziline.yazi/main.lua b/config/yazi/.config/yazi/plugins/yaziline.yazi/main.lua
index c00a3a3..6a63452 100644
--- a/config/yazi/.config/yazi/plugins/yaziline.yazi/main.lua
+++ b/config/yazi/.config/yazi/plugins/yaziline.yazi/main.lua
@@ -40,7 +40,7 @@ local function setup(_, options)
or th.mgr.count_copied:bg()
or "green",
cut_files_color = options.cut_files_color or th.mgr.count_cut:bg() or "red",
- mask_color = th.which.mask:bg(),
+ mask_color = th.which.mask:bg() or "black",
}
local current_separator_style = config.separator_styles
diff --git a/memo/packages.md b/memo/packages.md
index f0bb3fc..9f999f0 100644
--- a/memo/packages.md
+++ b/memo/packages.md
@@ -162,6 +162,7 @@ cuda
curl
cython
deno
+device-manager-linux-git
devtools
digital
direnv
@@ -315,9 +316,11 @@ llmfit
localsend
lolcat
lua-socket
+lua52-socket
luarocks
lutris
lzip
+maa-cli
magiskboot-bin
man-db
man-pages
@@ -382,7 +385,6 @@ pipes.c
pipewire-alsa
plasma-meta
playerctl
-polkit-gnome
power-profiles-daemon
protonplus
pwvucontrol
@@ -452,6 +454,7 @@ slirp4netns
slurp
snapper
solaar
+soteria
spicetify-cli
spicetify-marketplace-bin
spike
@@ -529,7 +532,7 @@ vim
visual-studio-code-bin
vk-hdr-layer-kwin6-git
vlc
-voicefox-bin
+voicefox
vulkan-extra-layers
vulkan-extra-tools
vulkan-gfxstream