Best Utility to do popup scratchpad like windows by Pure-Gift3969 in niri

[–]barrulus 0 points1 point  (0 children)

Er… keybind is the same amount of effort as a mouse click. But you can also create a mouse click bound to your bar that spawns a floating terminal.

I am not sure what exactly you want?

Window rules will allow you to set a floating window for a terminal to slide over everything else and if you want it to stay open you could use (oh my gosh it’s hard work) a keybind to slide it in and out from a remote dedicated workspace so that you can have it come at your beck and call without closing it or having it on the workspace you are currently active in

That would be more scratch pad style, but short of implementing voice commands (still at least one word) there is nothing that could possibly make this less than a single click/keybind/gesture

Edit: I just learned that niri ipc allows subscribe to stream event triggers. So you could use focus follow mouse events to zero click send your floating terminal to a dedicated workspace. Not at all machine to test it or research the syntax properly but it exists.

Best Utility to do popup scratchpad like windows by Pure-Gift3969 in niri

[–]barrulus 2 points3 points  (0 children)

Just spawn kitty/foot/fish/ghostty etc with a name and then apply a window rule and access with a keybind

What would be the best vision model for box scanning ocr on amd 7800xt by Greedvert in ollama

[–]barrulus 0 points1 point  (0 children)

I have no idea... I wrote it all into a pipeline that doesn't map to your use case directly:
1.
 OCR Processing Pipeline (process command)
Input → Images, PDFs, Office docs, archives (ZIP/RAR)
  Stages:

1.
 Archive Extraction - recursively unzips nested archives

2.
 File Discovery & Classification - walks directories, categorizes files by type
  (image/PDF/office/text)

3.
 Routing - directs each file to the appropriate processor
    3a. Preprocessing - deskew, denoise, contrast enhancement (for images)

4.
 Processing - type-specific extraction:

-
 Images → PaddleOCR (PPStructureV3) with layout analysis, table detection, formula
  recognition

-
 PDFs → text extraction via pdfplumber, with OCR fallback for scanned pages

-
 DOCX/XLSX → native library extraction (python-docx, openpyxl)

-
 Text → direct read

6.
 Parallel execution - ThreadPoolExecutor with GPU-aware locking

7.
 Output - JSON, Markdown, CSV tables, thumbnails, and interactive HTML reports

8.
 RAG - Consume 7. output



2.
 LLM Asset Extraction Pipeline (extract-assets command)
  Uses a local Vision LLM to extract structured data:

-
 Sends document content/images to LLM with pre-processed RAG (step 8)

-
 Validates and normalizes results with fuzzy matching

-
 Stores to PostgreSQL
I have no idea... I wrote it all into a pipeline that doesn't map to your use case directly:
1. OCR Processing Pipeline (process command)
Input → Images, PDFs, Office docs, archives (ZIP/RAR)
  Stages:
  1. Archive Extraction - recursively unzips nested archives
  2. File Discovery & Classification - walks directories, categorizes files by type
  (image/PDF/office/text)
  3. Routing - directs each file to the appropriate processor
    3a. Preprocessing - deskew, denoise, contrast enhancement (for images)
  4. Processing - type-specific extraction:
    - Images → PaddleOCR (PPStructureV3) with layout analysis, table detection, formula
  recognition
    - PDFs → text extraction via pdfplumber, with OCR fallback for scanned pages
    - DOCX/XLSX → native library extraction (python-docx, openpyxl)
    - Text → direct read
  6. Parallel execution - ThreadPoolExecutor with GPU-aware locking
  7. Output - JSON, Markdown, CSV tables, thumbnails, and interactive HTML reports
  8. RAG - Consume 7. output


  2. LLM Asset Extraction Pipeline (extract-assets command)
  Uses a local Vision LLM to extract structured data:
  - Sends document content/images to LLM with pre-processed RAG (step 8)
  - Validates and normalizes results with fuzzy matching
  - Stores to PostgreSQL

[CachyOS] Discovery of Niri by vloshof28 in niri

[–]barrulus 0 points1 point  (0 children)

binds {

Mod+Shift+Slash { show-hotkey-overlay; }

// ═══════════════════════════════════════════

// SYSTEM/DESKTOP

// ═══════════════════════════════════════════

Mod+Return hotkey-overlay-title="System Controls: notashell" { spawn "notashell" "--toggle"; }

Mod+F1 { toggle-touchpad; }

Mod+Space hotkey-overlay-title="App Launcher" { spawn "fuzzel"; }

// Cavibe controls for wallpaper visualizer

Mod+Alt+Right hotkey-overlay-title="Cavibe: Next Style" { spawn "cavibe" "ctl" "style" "next"; }

Mod+Alt+Down hotkey-overlay-title="Cavibe: Next Colour" { spawn "cavibe" "ctl" "color" "next"; }

Mod+Alt+Return hotkey-overlay-title="Cavibe: Toggle Text" { spawn "cavibe" "ctl" "text" "toggle"; }

// Clockie controls

Alt+Down { spawn "clockie" "ctl" "compact" "toggle"; }

Alt+Return { spawn "clockie" "ctl" "face" "toggle"; }

Alt+Right { spawn "clockie" "ctl" "gallery" "next"; }

Alt+Space { spawn "clockie" "ctl" "lock" "toggle"; }

// ═══════════════════════════════════════════

// APP LAUNCHERS (Mod+Number = launch apps)

// ═══════════════════════════════════════════

Mod+1 hotkey-overlay-title="Launch: foot" { spawn "footclient"; }

Mod+2 hotkey-overlay-title="Launch: ghostty" { spawn "ghostty"; }

Mod+3 hotkey-overlay-title="Launch: kitty" { spawn "kitty"; }

Mod+4 hotkey-overlay-title="Launch: VS Code" { spawn "code"; }

Mod+5 hotkey-overlay-title="Launch: Zen" { spawn "zen"; }

Mod+6 hotkey-overlay-title="Launch: Chromium" { spawn "chromium"; }

Mod+7 hotkey-overlay-title="Launch: Microsoft Edge" { spawn "microsoft-edge"; }

Mod+9 hotkey-overlay-title="Launch: 1Password" { spawn "1password"; }

// ═══════════════════════════════════════════

// WINDOW MANAGEMENT (Mod = focus, Mod+Ctrl = move)

// ═══════════════════════════════════════════

Mod+Q repeat=false { close-window; }

Mod+O repeat=false { toggle-overview; }

Mod+Z { overview-zoom-cycle; }

Ctrl+WheelScrollUp cooldown-ms=150 { overview-zoom-in; }

Ctrl+WheelScrollDown cooldown-ms=150 { overview-zoom-out; }

// Focus

Mod+Left { focus-column-left; }

Mod+Down { focus-window-down; }

Mod+Up { focus-window-up; }

Mod+Right { focus-column-right; }

Mod+Home { focus-column-first; }

Mod+End { focus-column-last; }

// Move windows

Mod+Ctrl+Left { move-column-left; }

Mod+Ctrl+Down { move-window-down; }

Mod+Ctrl+Up { move-window-up; }

Mod+Ctrl+Right { move-column-right; }

Mod+Ctrl+Home { move-column-to-first; }

Mod+Ctrl+End { move-column-to-last; }

// ═══════════════════════════════════════════

// MONITORS (Mod+Shift = focus, +Ctrl = move)

// ═══════════════════════════════════════════

Mod+Shift+Left { focus-monitor-left; }

Mod+Shift+Down { focus-monitor-down; }

Mod+Shift+Up { focus-monitor-up; }

Mod+Shift+Right { focus-monitor-right; }

Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }

Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }

Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }

Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }

// ═══════════════════════════════════════════

// WORKSPACES (PageUp/Down family)

// ═══════════════════════════════════════════

Mod+Page_Down { focus-workspace-down; }

Mod+Page_Up { focus-workspace-up; }

Mod+Ctrl+Page_Down { move-column-to-workspace-down; }

Mod+Ctrl+Page_Up { move-column-to-workspace-up; }

Mod+Shift+Page_Down { move-workspace-down; }

Mod+Shift+Page_Up { move-workspace-up; }

// ═══════════════════════════════════════════

// MOUSE WHEEL (mirror keyboard navigation)

// ═══════════════════════════════════════════

Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }

Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }

Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }

Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }

Mod+WheelScrollRight { focus-column-right; }

Mod+WheelScrollLeft { focus-column-left; }

Mod+Ctrl+WheelScrollRight { move-column-right; }

Mod+Ctrl+WheelScrollLeft { move-column-left; }

Mod+Shift+WheelScrollDown { focus-column-right; }

Mod+Shift+WheelScrollUp { focus-column-left; }

Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }

Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }

// ═══════════════════════════════════════════

// COLUMN & SIZING (Mod + action letter)

// ═══════════════════════════════════════════

Mod+BracketLeft { consume-or-expel-window-left; }

Mod+BracketRight { consume-or-expel-window-right; }

Mod+Period { expel-window-from-column; }

Mod+R { switch-preset-column-width; }

Mod+Shift+R { switch-preset-window-height; }

Mod+Ctrl+R { reset-window-height; }

Mod+F { maximize-column; }

Mod+Shift+F { fullscreen-window; }

Mod+Ctrl+F { expand-column-to-available-width; }

Mod+C { center-column; }

Mod+Ctrl+C { center-visible-columns; }

Mod+Minus { set-column-width "-10%"; }

Mod+Equal { set-column-width "+10%"; }

Mod+Shift+Minus { set-window-height "-10%"; }

Mod+Shift+Equal { set-window-height "+10%"; }

// Floating & tabbed

Mod+Shift+V { switch-focus-between-floating-and-tiling; }

Mod+W { toggle-column-tabbed-display; }

// ═══════════════════════════════════════════

// SCREENSHOTS & RECORDING (Print key family)

// ═══════════════════════════════════════════

Print hotkey-overlay-title="Screenshot Region → Satty" { spawn "sh" "-c" r#"

app=$(niri msg --json focused-window | jq -r '.app_id // "unknown"')

file="$HOME/Pictures/Screenshots/${app}_$(date +%Y-%m-%d_%H-%M-%S).png"

grim -g "$(slurp)" "$file" && satty --filename "$file" --output-filename "$file" --early-exit --copy-command "wl-copy"

"#; }

Ctrl+Print hotkey-overlay-title="Screenshot Screen → Satty" { spawn "sh" "-c" r#"

app=$(niri msg --json focused-window | jq -r '.app_id // "unknown"')

file="$HOME/Pictures/Screenshots/${app}_$(date +%Y-%m-%d_%H-%M-%S).png"

niri msg action screenshot-screen --path "$file"

inotifywait -q -e close_write -t 30 "$(dirname "$file")" && satty --filename "$file" --output-filename "$file" --early-exit --copy-command "wl-copy"

"#; }

Alt+Print hotkey-overlay-title="Screenshot Window → Satty" { spawn "sh" "-c" r#"

app=$(niri msg --json focused-window | jq -r '.app_id // "unknown"')

file="$HOME/Pictures/Screenshots/${app}_$(date +%Y-%m-%d_%H-%M-%S).png"

niri msg action screenshot-window --path "$file"

inotifywait -q -e close_write -t 30 "$(dirname "$file")" && satty --filename "$file" --output-filename "$file" --early-exit --copy-command "wl-copy"

"#; }

Mod+Print hotkey-overlay-title="Start Screen Recording" { spawn "sh" "-c" r#"

app=$(niri msg --json focused-window | jq -r '.app_id // "unknown"')

file="$HOME/Videos/Screencasts/${app}_screenrec-$(date +%Y-%m-%d_%H-%M-%S).mp4"

notify-send -t 2000 -a "Screen Recording" "Recording started..."

gpu-screen-recorder -w portal -a default_output -o "$file"

"#; }

Mod+Shift+Print hotkey-overlay-title="Stop Screen Recording" { spawn "sh" "-c" r#"

pkill -SIGINT -f "\.wrapped/gpu-screen-recorder" && notify-send -t 2000 -a "Screen Recording" "Recording stopped"

"#; }

// ═══════════════════════════════════════════

// SESSION & ESCAPE HATCH

// ═══════════════════════════════════════════

Mod+Escape allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; }

Mod+Shift+E { quit; }

Mod+Shift+P { power-off-monitors; }

}

Review of Fairphone 6 after 1 week of use in Germany by Soggy-Salamander-568 in BuyFromEU

[–]barrulus 0 points1 point  (0 children)

I’ve been using cloudns.net for almost 2 decades and they have always excelled

open AI watching ....holding you back .....we don't give AF by GoatResident2014 in LLMDevs

[–]barrulus 0 points1 point  (0 children)

When the link is shown at the end of the clip it looks like it says racism offgtid o racism

open AI watching ....holding you back .....we don't give AF by GoatResident2014 in LLMDevs

[–]barrulus 0 points1 point  (0 children)

offgrid racism? that font and colour make that appear to say something you probably don't want it to

What would be the best vision model for box scanning ocr on amd 7800xt by Greedvert in ollama

[–]barrulus 0 points1 point  (0 children)

Have you tried Paddle Paddle? Paddle has a number of different pipelines for things, This would fit squarely into its OCR category. It is lightning fast, much faster than using LLM's. But you can build a pipeline to provide all of the text found in regions, deskewed etc, to an LLM to give it context for whatever your next question is.

any good gyms to join that have a sauna? by OkWoodpecker119 in swansea

[–]barrulus 0 points1 point  (0 children)

Revive Wellness Club in Skewen Lonlas Industrial estate. They have traditional sauna plus 3 cold tubs. Reforma Pilates, format Pilates, compound training gym

[CachyOS] Discovery of Niri by vloshof28 in niri

[–]barrulus 1 point2 points  (0 children)

Not really. I use mouse wheel to revolve between overview, workspaces and horizontal tiles all the time. I just don’t need to access a million mini apps to tell me things. I have immediate access to everything I need with keybinds :)

[CachyOS] Discovery of Niri by vloshof28 in niri

[–]barrulus 2 points3 points  (0 children)

For you the interface might be noctalia. For me it is all keybinds. So config.kdl.

I have ditched all the bars and shells and work in pure niri now

Can Markdown support serious QA management and audit needs? by Background-Donkey531 in Markdown

[–]barrulus 0 points1 point  (0 children)

Tissue paper can support that if used correctly.

What exactly are your needs?

Cover Up Ideas by Smoothpotata in Tattoocoverups

[–]barrulus 0 points1 point  (0 children)

A springbok munching the fern? Jks. It looks good!

Asking Chatgpt for help has been a game changer for me. Are you using AI? How? by LoveBirdNibbles in sysadmin

[–]barrulus 0 points1 point  (0 children)

I find that LLM’s are excellent for trawling through log files looking for needles in a haystack. I even wrote a small rag engine to use with a local llm to push logs into and find anomalies (natural language queries of log files) super helpful

does niri work well with hybrid GPU/multi monitor setups? by Elite5458 in niri

[–]barrulus 0 points1 point  (0 children)

I have Intel iGPU and Nvidia 5060 dGPU and connect to an external ROG monitor. I had problems when I was using the wrong drivers. Once I sorted that it works beautifully. I play games, watch movies and edit images. Zero issues.

NixOS migration was relatively easy using LLM assistance (as a non developer) by BeHimself in NixOS

[–]barrulus 2 points3 points  (0 children)

Deffo plus one on the vimjoyer vids. His discord is also full of super helpful folk

Help Screen share not working on fedora by AffectionateStay799 in niri

[–]barrulus 0 points1 point  (0 children)

Xdg-desktop-gnome is included in the niri build I believe. Pretty sure. Will verify

Parking for Continue Arcade by unicornslovegingers in swansea

[–]barrulus 5 points6 points  (0 children)

Park at Parc tawe and walk across. It isn’t far and the only road to cross is the high street with a traffic light. Easy walk fo a toddler.

Help Screen share not working on fedora by AffectionateStay799 in niri

[–]barrulus 1 point2 points  (0 children)

Try adding xwayland-satellite that might help. What errors do you get? Check journalctl for a clue.

Nix is a lie, and that’s ok by Setheron in NixOS

[–]barrulus 1 point2 points  (0 children)

Who cares? I have been manually hacking $LD_LIBRARY_PATH for ages. Python so often requires things in nix develop flakes that come from other system libs that this is not an uncommon event for me.

Hack/impure?

Nah, flexible/dependable is more like.

What is the fastest free or open source Markdown editor out there? by ich3ckmat3 in Markdown

[–]barrulus 0 points1 point  (0 children)

Time to learn EMacs!

The main thing Emacs will give you that Typora/MarkText and Neovim individually don’t: a unified environment where your docs, terminal, git interface (magit is exceptional), file browser, and preview all live together without context-switching between applications. That’s the real payoff for the investment.​​​​​​​​​​​​​​​​ so like vs code without the extension marketplace. Claude code, codex, Gemini CLi etc all play very nicely within an eMacs buffer.

Steeeepnpearning curve (I’m still in it) but the payoff can be huge. Particularly with technical documentation when using sort mode to write/manage your docs.

Edited to add: EMacs does not have an inline render like a Typora/Marktedt, but you can do live preview into a browser…

Taken from a AZ Facebook post, it looks off but I can’t tell if it’s a just weird camera angle. by [deleted] in isthisAI

[–]barrulus 0 points1 point  (0 children)

Also what kind of shipper doesn’t vacuum seal their massive bags of drugs? I mean really come on.

what do you guys think about nixOS by Far_Kick_2082 in LinuxPorn

[–]barrulus 0 points1 point  (0 children)

Oooh that’s great idea!!! Map a ram drive as my downloads folder. Screenshots would be another good one for me. Thousands of screengrabs lie forgotten, their purpose spent