Google blocked my own browser from logging into my own Gmail, and the reason was not what I expected

A week ago Gmail just stopped letting me in. Every time, same message: "This browser or app may not be secure." No password box, nothing. Just stuck there.

My first guess was the usual thing with browsers built on Electron, so I changed the user agent to look like normal desktop Chrome. That made it worse, not better. Changing it pushed the login into Google's stricter sign in flow, which runs a check called Botguard. That check looks for native Chrome components a normal embedded browser does not have, so it saw mine was missing them and blocked it right away.

Here is the part that actually confused me. I put the user agent back to normal and it still did not work. Turned out once Google rejects you like that once, it writes two cookies into your session as a kind of mark. After that, every attempt gets checked against those cookies first and gets sent straight back to the same rejection page, before even trying to log in again.

So the real fix needed three things. Quietly switch the login to Google's lighter sign in flow instead of fighting the strict one. Leave the browser looking completely normal on Google's own pages, no changes at all there. And automatically clear those marker cookies if a rejection ever happens again, so it cannot get stuck rejecting itself.

Wrote up the full version with the actual code here if anyone wants it: Google Auth Botguard

This came up while working on Mise, a personal privacy focused browser I use daily. Curious if anyone else building something similar has run into Botguard like this.

reddit.com
u/ClassroomHaunting333 — 10 days ago

[Zorya] Arch + Hyprland: Fully keyboard-driven, modular desktop widget suite written in Python

Hey everyone,

I have tried many ways of ricing/setting up my Arch + Hyprland in the past 10 or so months. I did try AGS, Eww, Quickshell and ran a pure "no-bar, no-shell" workflow powered by Zsh and fzf wrappers AGS and Eww never felt quite right on my fanless, lower-spec laptop. Quickshell looks brilliant, but it leans heavily towards mouse interaction and was noticeably heavier on resources than I wanted. Minimal shell scripts are fine and lightweight, but relying solely on terminal popups eventually became monotonous.

I decided to settle on a fully keyboard-driven, modular desktop widget suite written in Python, using GTK3 for interactive modals and GTK4 Layer Shell for persistent desktop HUD elements.

I call it Zorya. No connection to Russia, originally from Czechia, currently based in the UK.

The whole codebase sits at roughly 280 KB of actual Python logic. It focuses strictly on native system IPC (PipeWire, mpv sockets, compositor rules) with zero background daemon overhead, so there is no thermal throttling, CPU spike, or memory bloat.

Thought that I will share it with you all and find out what do you think. It is not the most beautiful setup but gets the work done and what is most important, it does not bother my system to the extent of thermal throttling, CPU and RAM usage.

Took some screenshots for you to look at.

App Launcher

Bluetooth Manager

System/Power Menu

Calendar with events

Wallpapers

WIFI

Clipboard

Keybinds Manager

Notifications

Audio & Media Router

Windowrules Manager

Music Player

Theme Switcher

Kitty

Mise browser

Some of the widgets are:

- App Launcher

- Bluetooth Manager

- Power Menu

- Calendar with events

- Wallpaper Engine (using awww)

- WIFI Manager

- Clipboard

- Notifications (using dunst)

- Windowrules Manager

- Theme Settings for the conky style widgets on the right and bottom.

- Music Player (using mpv and cava)

- Keybinds Manager

- Aliases Manager

- Mise browser

- Terminal - Kitty + Zsh

- Right and bottom are conky style widgets on the Layer Shell (autostarted via autostart.lua)

All of the Zorya widgets have dark and light theme.

That's about it for now. I still have a few shell scripts I need to convert to python like (screen recorder, projects time tracker) and couple of others scattered across my system.

The work on Zorya is still ongoing but here is the repo link: Zorya

reddit.com
u/ClassroomHaunting333 — 1 month ago
▲ 0 r/CLI

The "Zsh vs. Rust" Workflow Angle

Spending a lot of time writing Zsh functions and Python scripts to automate local setups usually works fine, but distributing them cleanly or handling complex operations (like multi-threaded file analysis) always introduces runtime headaches or dependency bloat.

Currently porting a local environment auditing tool to Rust to get a single, distro-agnostic binary. The front-loaded complexity of the borrow checker is massive compared to Python, but the speed and lack of runtime dependencies make a huge difference for CLI workflows.

Curious to hear how others balance the speed of prototyping in a shell versus writing full compiled tools for daily workflows. Sharing deep-dives and modular scripts over at r/TerminalWorkflows if anyone wants to talk technical setups or share their own scripts.

reddit.com
u/ClassroomHaunting333 — 4 months ago
▲ 0 r/CLI

Oversight v0.5.6 | Local and remote script auditing: Handling script isolation and AUR updates safely.

>*Note: Used an LLM to help format the wording for this project summary and speed up the writing of the Rust code.*

With the recent security issues around orphaned AUR packages, there has been a massive wave of new tools popping up to scan code. It feels like every single day a new script is released and quickly forgotten, making it hard to find anything with actual substance.

Oversight is not a reactionary tool built overnight to jump on the security hype, nor does it rely on hidden blacklists or try to make automated blocking decisions for you. It originally launched as a general-purpose terminal viewer to review local files and raw web scripts, which has now been extended to handle AUR package updates. It was briefly mentioned on the aur-general mailing list, and with version 0.5.6 dropping today, it is time to share it with a wider audience.

It acts strictly as an interactive terminal pager that intercepts commands or batch updates, parsing the incoming streams into a clean, multi-tab layout so you can easily review code, install scripts, and patches side by side before anything touches your system. It flags potential security anomalies for you, but leaves the final verdict completely in your hands.

Rather than listing out technical specs or trying to sell you on features, the code and documentation are available for you to look at directly. Please read the README in the repo and study the actual implementation before writing it off as another quick project.

The source code and setup instructions are over on GitHub: [Oversight](https://github.com/Rakosn1cek/oversight)

reddit.com
u/ClassroomHaunting333 — 4 months ago
▲ 6 r/archlinux+2 crossposts

Oversight v0.5.6 | Local and remote script auditing: Handling script isolation and AUR updates safely.

Hi all,

With the recent security issues around orphaned AUR packages, there has been a massive wave of new tools popping up to scan code. It feels like every single day a new script is released and quickly forgotten, making it hard to find anything with actual substance.

Oversight is not a reactionary tool built overnight to jump on the security hype, nor does it rely on hidden blacklists or try to make automated blocking decisions for you. It originally launched as a general-purpose terminal viewer to review local files and raw web scripts, which has now been extended to handle AUR package updates. It was briefly mentioned on the aur-general mailing list, and with version 0.5.6 dropping today, it is time to share it with a wider audience.

It acts strictly as an interactive terminal pager that intercepts commands or batch updates, parsing the incoming streams into a clean, multi-tab layout so you can easily review code, install scripts, and patches side by side before anything touches your system. It flags potential security anomalies for you, but leaves the final verdict completely in your hands.

Rather than listing out technical specs or trying to sell you on features, the code and documentation are available for you to look at directly. Please read the README in the repo and study the actual implementation before writing it off as another quick project.

The source code and setup instructions are over on GitHub: Oversight

u/ClassroomHaunting333 — 4 months ago
▲ 46 r/hyprland+1 crossposts

[HyprRings] Orbital dashboard for Hyprland Wayland compositor

Hey all,

You may remember me from before showcasing my no-bar, no-shell Hyprland setup with Control Panel. The Control Panel has been kind of a middle step to a quite diffrent approach to handle the no-bar, no-shell setup utilasing Hyprland layers.

Here is a quick look at HyprRings, a custom hardware-accelerated orbital dashboard created for the Hyprland Wayland compositor.

The widget(not sure if I can call it a widget really) provides a frame-rate independent overlay to monitor system telemetry, manage workspaces, and handle hardware state toggles. Active windows and special workspaces are mapped onto a 3D concentric ring system, which can be rotated and tilted to view the current desktop environment. Note: some inspiration was taken from Reddit.

HyprRings is also connected to a Theme Configuration widget and its colours and background are changing with the rest of my widgets to match any/most wallpper colours.

I have also added workspace layout toggles directly into the ring system. Doing so allows for quicker layout switching without needing to rely on standard top bars or keybinds.

Please note this is purely a personal project being shared as a showcase, not a promotional release. HyprRings includes custom tools/widgets in the Custom Launcher and without modifying the script itself it would not be useable to anyone. Having said that, it is not really that hard to change the custom tools/widgets for something else.

I am happy to share the repo if anyone is interested and happy to temper with the code.

I am not sure if anything else could/should be added to complete the HyprRings or leave it as is. Maybe the Hyprland community will have some good ideas and I will approciate any input and consider adding it, if it fits my diffrent approach to a lightweight Hyprland setup.

The video might be the best quality, so i am sorry for that.

u/ClassroomHaunting333 — 4 months ago
▲ 8 r/hyprland+1 crossposts

Pure Lua Markdown previewer for Yazi (No external dependencies). Almost finished headache project

Honestly, I got completely tired of the constant context-switching. Pushing a quick change to GitHub just to check if a raw markdown file formatted correctly felt ridiculous, and opening up a full text editor every single time was breaking my flow.

I live in the terminal and absolutely love Yazi, so it felt a bit sad that a proper markdown preview wasn't available right out of the box without pulling in heavy external tools. I tried Glow, and while it mostly did the job, it drove me crazy on lighter terminal backgrounds because some of the text became completely invisible due to muted grey contrast choices.

I wanted something lightweight, blazing fast, and entirely self-contained that wouldn't stutter on fanless setups. Since nobody seemed to have built a native, pure Lua solution for this yet, or I am completely blind and could not find it, I decided to write my own custom rendering layer using Yazi's asynchronous plugin API (ui.Line, ui.Span, ui.Text).

It took a long and painful time to get it where it is now. I have to admit that it is not perfect but usable.

What it does right now:

Properly aligned table grids: It parses markdown table lines dynamically, calculates column width boundaries, handles viewport limits, and draws continuous cell borders using crisp Unicode box characters (┌, ┬, ─, ┼).

Word-wrapping: Instead of letting long description cells overflow into empty terminal space or clip behind the next column, it implements an adaptive wrapper that splits the text across clean, padded multi-line rows.

Inline formatting highlights: It uses a direct character-by-character scanner to parse bold text blocks, apply terminal backgrounds to backtick code segments (bg("234")), and isolate strict https:// URLs while cleanly peeling away trailing layout noise like commas or brackets.

The catch! (and why I need an extra pair of eyes):

To keep everything lightweight, it avoids spawning any background processes and does all the work in raw Lua string manipulation. This works beautifully for 95% of standard files, but I hit a major wall when encountering compound nested brackets, specifically image badges like [![Label](badge_url)](target_url).

Because Lua's pattern matching doesn't support complex lookaheads, or I missed something, the loop naturally catches the very first closing bracket it encounters, breaking the rendering state and exposing the raw formatting noise downstream.

To prevent it from eating URLs or breaking standard paragraphs, I've left regular brackets untouched for now, but I'd love to clean it up properly. If any of you spend your time writing custom token streams, state machines, or recursive descent parsers in pure Lua and want to take a look at the logic, the input would be amazing!

u/ClassroomHaunting333 — 4 months ago
▲ 8 r/arch

Sitting on this tool since January. A quick check of Arch News and packages to stop blindly running full upgrade.

Hey everyone,

Thought it was finally time to share a small utility I’ve been quietly sitting on and using since January.

I keep seeing posts on here from people who blindly run full upgrade, skip the Arch News entirely, and then end up spending their evening troubleshooting a broken system or fixing manual interventions after the fact. Arch expects us to read the news, but let’s be honest, it’s easy to forget or get distracted when you're in the middle of a workflow.

To fix this for myself, I wrote a lightweight Zsh script called arch-update-check. It acts as a quick pre-flight safety loop before I pull the trigger on an upgrade.

What it does:

Fetches the official Arch News RSS feed to grab the latest headlines, so I instantly see if there’s a manual intervention warning or package rename.

Scans for system hazards like failed systemd services or pacman database locks.

Safely tallies my pending official and AUR updates (using checkupdates and yay).

Gives me a clean terminal readout with a strict exit code status (0 for safe, 1 if you need to review news or fix services first).

It saved me from a few messy updates already, so hopefully, someone else here finds it useful.

Check it out here if you want to take a look: Arch Update Check

Also in AUR: yay -S arch-update-check

Example output:

Checking official repositories...
Fetching Arch News (RSS)...

 ⚠ Arch Update Readiness Report
CRITICAL: Recent News affecting your updates:
 - Breaking changes for all users of `varnish`, which is renamed to `vinyl-cache`
 - kea >= 1:3.0.3-6 update requires manual intervention
 - iptables now defaults to the nft backend

System Status:
- Official Updates: 27
- AUR Updates:      1
- Failed Services:  0
- Partial Upgrade:  false

Recommendation: Review news above before updating.
u/ClassroomHaunting333 — 5 months ago
▲ 89 r/zsh

Replacing heavy desktop GUIs on a fanless laptop with Zsh + FZF wrappers

Hi everyone,

Running on a fanless laptop means every unnecessary CPU spike or background daemon directly affects thermal throttling and battery longevity. To keep my laptop running completely cool, I moved to a bar-free setup and completely stripped out heavy desktop control panels and system GUIs.

Instead, I built a collection of highly optimised, lightweight zsh and fzf wrapper widgets that handle core system management directly in the terminal with next to no overhead. They act as fast, interactive interfaces over standard command-line tools.

The current setup:

- Wi-Fi Connection: Live network scanning, connecting, and toggling states wrapping nmcli.

- Bluetooth Pairing: Device discovery, trusting, and connecting wrapping bluetoothctl. Replaced Overskride which was hit and miss.

- Mirec-Screen Recorder: Quick area/output recording triggers without opening heavy capture software like OBS that was literally melting my laptop insides.

- Audio In/Out.

- Kitty theme switcher.

- System Info - A Fastfetch replacement.

- Hyprland Keybinds.

- Aliases.

By removing bulkier system trays and background automation suites, the laptop stays cool, and the workflows trigger instantly via quick terminal widgets with keybindings.

I wanted to share this approach with the community to see if anyone else is optimising for ultra-low resource usage or fanless hardware. I would love to hear about any specific Zsh configurations, terminal optimisation tricks, or interactive custom fzf scripts you are running to keep your setups lightweight.

u/ClassroomHaunting333 — 5 months ago

Going barless and minimal: My journey to a zero-shell, keyboard-driven Hyprland setup

Hi all Hyprland lovers,

As you may know, I have been aiming for a no-bar, no-shell (Quickshell etc.) and no-heavy GUI setup for a while.

For a week now, I have not used Waybar, Rofi, Thunar, Overskride, nm-tui or Swaync, along with a few other apps that did not suit my lightweight, fanless laptop setup. In fact, I have completely removed all of them from my system.

Some may ask if I miss any of them? Not at all. Everything I need is just a keybind away, and load times are almost instant. System connections are solid, even Bluetooth, which was hit-and-miss with Overskride, has not dropped once.

It is not perfect yet, and on the theme side it probably never will be, but it suits my needs perfectly right now as I am trying to avoid using the mouse and touchpad as much as possible.

This approach might not be for everyone, but if you are interested, my dotfiles are public and open for contributions should you have anything that fits well into this setup.

I do not like spamming links in my posts, but I can drop them in the comments if anyone is interested.

Have a great, productive day!

>

u/ClassroomHaunting333 — 5 months ago
▲ 122 r/hyprland

Going barless and minimal: My journey to a zero-shell, keyboard-driven Hyprland setup

Hi all Hyprland lovers,

As you may know, I have been aiming for a no-bar, no-shell (Quickshell etc.) and no-heavy GUI setup for a while.

For a week now, I have not used Waybar, Rofi, Thunar, Overskride, nm-tui or Swaync, along with a few other apps that did not suit my lightweight, fanless laptop setup. In fact, I have completely removed all of them from my system.

Some may ask if I miss any of them? Not at all. Everything I need is just a keybind away, and load times are almost instant. System connections are solid, even Bluetooth, which was hit-and-miss with Overskride, has not dropped once.

It is not perfect yet, and on the theme side it probably never will be, but it suits my needs perfectly right now as I am trying to avoid using the mouse and touchpad as much as possible.

This approach might not be for everyone, but if you are interested, my dotfiles are public and open for contributions should you have anything that fits well into this setup.

I do not like spamming links in my posts, but I can drop them in the comments if anyone is interested.

Have a great, productive day!

>Note: Hyprland configs are in Lua now.

u/ClassroomHaunting333 — 5 months ago

[Discussion] Optimising history matching pool architecture (Trade-offs in prefix filtering)

Hi everyone

Not sure if this is the right sub, but I already tried other subs like r/zsh , r/commandline and others, but no luck.

I am working on a personal project and while refining the functions/history matching logic to address early mutation typos like ccd instead of cd, the project faces a classic architectural trade-off between output cleanliness and edge-case coverage.

Currently, the single-character prefix filter provides reliable and clean output pool for 99% of user typos, including mutations inside trailing directory arguments:

local -a narrowed_entries=()
if [[ ${#last_typo} -ge 1 ]]; then
    local prefix="${last_typo[0,1]}"
    narrowed_entries=(${(M)hist_entries:#${prefix}*})
else
    narrowed_entries=("${hist_entries[@]}")
fi

The Dilemma I am facing

This approach goes blind if a user makes a typo on the absolute first character of a command (for example typing vcd functions instead of cd functions).

To resolve this 1% edge case, experimenting with multi-character character sets or dual-prefix lookups (matching vc*) successfully injects the intended target cd back into the array pool.
However, it introduces a significant downside. It drastically widens the filter pool, pulling in hundreds of irrelevant historical commands (like vim, vlc), or anything that happen to share those initial letters. This pollutes the fzf layout and introduces messy, unrelated suggestions that degrade the user experience.

Personal Choice of Direction

I personally lean towards sacrificing the 1% first-character typo to guarantee a completely stable, clean, and highly relevant list of suggestions for the other 99% of daily interactions. A predictable interface that behaves reliably is more valuable than an over-engineered matching layout that makes messy guesses.

Opening this up to the community: Should I stick to the strict, clean single-character baseline, or is there a performant, dependency-agnostic way to handle first-character mutations without introducing buffer noise into the interactive menu?

reddit.com
u/ClassroomHaunting333 — 5 months ago

[Help] Optimising history matching pool architecture (Trade-offs in prefix filtering)

Hi everyone

I am working on a personal project and while refining the functions/history matching logic to address early mutation typos like ccd instead of cd, the project faces a classic architectural trade-off between output cleanliness and edge-case coverage.

Currently, the single-character prefix filter provides an exceptionally reliable and clean output pool for 99% of user typos, including mutations inside trailing directory arguments:

local -a narrowed_entries=()
if [[ ${#last_typo} -ge 1 ]]; then
    local prefix="${last_typo[0,1]}"
    narrowed_entries=(${(M)hist_entries:#${prefix}*})
else
    narrowed_entries=("${hist_entries[@]}")
fi

The Dilemma I am facing

This approach goes blind if a user makes a typo on the absolute first character of a command (for example typing vcd functions instead of cd functions).

To resolve this 1% edge case, experimenting with multi-character character sets or dual-prefix lookups (matching [vc]*) successfully injects the intended target cd back into the array pool.
However, it introduces a significant downside. it drastically widens the filter pool, pulling in hundreds of irrelevant historical commands (like vim, vlc), or anything that happen to share those initial letters. This pollutes the fzf layout and introduces messy, unrelated suggestions that degrade the daily user experience.

Personal Choice of Direction

I personally lean towards sacrificing the 1% first-character typo to guarantee a completely stable, clean, and highly relevant list of suggestions for the other 99% of daily interactions. A predictable interface that behaves reliably is arguably more valuable than an over-engineered matching layout that makes messy guesses.

Opening this up to the community: Should I stick to the strict, clean single-character baseline, or is there a performant, dependency-agnostic way to handle first-character mutations without introducing buffer noise into the interactive menu?

Thank you for your time reading this post. All suggestions and advice welcome.

reddit.com
u/ClassroomHaunting333 — 5 months ago

Best approach to handle early string mutations in a large history array without losing prefix performance?

Hi everyone,

I am currently working on a lightweight Zsh plugin that fixes shell typos (in one of the functions) by pulling the closest match from history and passing a filtered pool into fzf for the final selection.

The plugin calculates the matching background array by stripping unique entries out of the $history associative array and applying a standard parameter expansion filter:

local -a narrowed_entries
narrowed_entries=()
if [[ ${#last_typo} -ge 2 ]]; then
    local prefix="${last_typo[1,2]}"
    narrowed_entries=(${(M)hist_entries:#${prefix}*})
else
    narrowed_entries=("${hist_entries[@]}")
fi

This works beautifully for 99% of commands because limiting the pool via a two-character prefix constraint keeps performance rapid and slashes terminal lag.

However, I have run into an edge case when a typo happens right on the second index. For example, a user typos cd apps as ccd apps.

Because of the prefix constraint cc*, it misses the clean history candidate cd apps.

If I drop the constraint down to a single character ${last_typo[1,1]}, it catches second-character stutters perfectly but expands the pool size massively.

If a user typos the absolute first character (like vcd apps instead of cd), even a single-character prefix constraint goes blind unless I drop filtering entirely and dump the raw history file straight into fzf, which introduces bloat.

Are there any native Zsh array manipulation tricks or expansion flags that can handle approximate matches or character proximity offsets cleanly inside the script logic before hitting the UI pipe, without destroying arrays or causing visible lag on massive histories?

Thank you in advance for any suggestions or help.

reddit.com
u/ClassroomHaunting333 — 5 months ago
▲ 0 r/zsh

Best approach to handle early string mutations in a large history array without losing prefix performance?

Hi everyone,

I am currently working on a lightweight Zsh plugin that fixes shell typos (in one of the functions) by pulling the closest match from history and passing a filtered pool into fzf for the final selection.

The plugin calculates the matching background array by stripping unique entries out of the $history associative array and applying a standard parameter expansion filter:

local -a narrowed_entries
narrowed_entries=()
if [[ ${#last_typo} -ge 2 ]]; then
    local prefix="${last_typo[1,2]}"
    narrowed_entries=(${(M)hist_entries:#${prefix}*})
else
    narrowed_entries=("${hist_entries[@]}")
fi

This works beautifully for 99% of commands because limiting the pool via a two-character prefix constraint keeps performance rapid and slashes terminal lag.

However, I have run into an edge case when a typo happens right on the second index. For example, a user typos cd apps as ccd apps.

Because of the prefix constraint cc*, it misses the clean history candidate cd apps.

If I drop the constraint down to a single character ${last_typo[1,1]}, it catches second-character stutters perfectly but expands the pool size massively.

If a user typos the absolute first character (like vcd apps instead of cd), even a single-character prefix constraint goes blind unless I drop filtering entirely and dump the raw history file straight into fzf, which introduces bloat.

Are there any native Zsh array manipulation tricks or expansion flags that can handle approximate matches or character proximity offsets cleanly inside the script logic before hitting the UI pipe, without destroying arrays or causing visible lag on massive histories?

Thank you in advance for any suggestions or help.

reddit.com
u/ClassroomHaunting333 — 5 months ago

My humble No-Bar and No-Shell Arch/Hyprland setup

For a while I was on a mission to go with no-bar setup and today for a fist time I did not load waybar at all and I don't miss it at all. Quite the opposite. No distraction whatsoever and full screen view of my opened apps.

Everything I need is managed via Control Panel(Python script) and keybinds.
Control Panel is still work in progress and a couple of things will still be added but it's pretty usable as is already.
It has workspaces, taskbar(currently opened apps), App launcher, custom tools launcher, performance switcher, live system monitoring, volume and brightness sliders, notifications and power management including day/night switch.

I'm still not satisfied with the colours and the background as I want them to be close to the Gruvbox settings of kitty but not the same, if you know what I mean.

I have also got rid of pywal as there is no need for it anymore. Wallpaper switcher managed with Python script and awww.

All widgets on the pictures are just simple custom shell scripts. No heavy GUIs except a very few like Thunar(still getting use to Yazi) and Geany.

Don't know what else to add. If you have any questions, just ask.

Worth mentioning that I did not upgraded to v0.55 yet, but my Lua configs are mostly ready for the switch. I am just going through all my custom scripts and making them ready for the switch as well.

If anyone ask for dotfiles I don't have a problem to share them, but I have to warn you that they are kinda mess. If you take anything from there you are on your own as I keep changing things quite often.

You can connect with me on GitHub or Discord as we know that posts on Reddit goes to dead-mans land within a couple of days.

Well, have a good day all.

u/ClassroomHaunting333 — 5 months ago
▲ 26 r/arch

My humble No-Bar and No-Shell Arch/Hyprland setup

For a while I was on a mission to go with no-bar setup and today for a fist time I did not load waybar at all and I don't miss it at all. Quite the opposite. No distraction whatsoever and full screen view of my opened apps.

Everything I need is managed via Control Panel(Python script) and keybinds.
Control Panel is still work in progress and a couple of things will still be added but it's pretty usable as is already.
It has workspaces, taskbar(currently opened apps), App launcher, custom tools launcher, performance switcher, live system monitoring, volume and brightness sliders, notifications and power management including day/night switch.

I'm still not satisfied with the colours and the background as I want them to be close to the Gruvbox settings of kitty but not the same, if you know what I mean.

I have also got rid of pywal as there is no need for it anymore. Wallpaper switcher managed with Python script and awww.

All widgets on the pictures are just simple custom shell scripts. No heavy GUIs except a very few like Thunar(still getting use to Yazi) and Geany.

Don't know what else to add. If you have any questions, just ask.

Worth mentioning that I did not upgraded to v0.55 yet, but my Lua configs are mostly ready for the switch. I am just going through all my custom scripts and making them ready for the switch as well.

If anyone ask for dotfiles I don't have a problem to share them, but I have to warn you that they are kinda mess. If you take anything from there you are on your own as I keep changing things quite often.

You can connect with me on GitHub or Discord as we know that posts on Reddit goes to dead-mans land within a couple of days.

Well, have a good day all.

u/ClassroomHaunting333 — 5 months ago
▲ 21 r/archlinux+3 crossposts

Quick update on Mend: Hardware scanner added and database expanded

Hi all,

Just a quick heads-up on the progress with Mend. I’ve just pushed an update that includes hardware scanner for missing packages/drivers.

What’s new:

Expanded Scan: The utility now picks up Audio, Ethernet, and USB/Bluetooth controllers.

Distro Support: Added package mapping for pacman, apt, dnf, and zypper.

Updated DB**:** Included the hardware IDs shared in the previous threads (Intel Cannon Lake, Renoir, etc.).

If you want to test it out, the scan command is mend -s. It’ll cross-reference your kit and suggest the right packages via fzf.

If anyone has a spare second to run lspci -nn | grep -E 'VGA|3D|Network|Ethernet|Audio|USB' and drop their output below, I’ll get those IDs added to the database as well.

Thanks for the help so far.

GitHub: https://github.com/Rakosn1cek/mend

u/ClassroomHaunting333 — 5 months ago

YouFibre 2000 and New Sagemcom router

Yesterday had an engineer to swap my routers as I upgraded to YouFibre 2000. All went well, he showed me everything, even the speeds on the company devices and I was OK with that.

As soon as he left I went on to the GUI and changed SSID's and passwords for wifi. Then I connected my laptop and phone and run speedtest's. To my surprise I could not get anything higher than 90MB.

Is there anything I could try on my end before I get any response from the support chat(24 hours without response).

I will be happy for any pointers as I am loosing my mind.

Thanks in advance.

[Solved] Faulty cable supplied by YouFibre. Not a first time.

reddit.com
u/ClassroomHaunting333 — 5 months ago
▲ 27 r/arch

My mission to a No-Waybar Hyprland setup

We all start somewhere when first trying Hyprland(in my case) and most of us using some kind of a bar. Be it waybar, ironbar, any bar or created in quickshell or whatever shell. I wasn't an exception, tried most of them and always returned to waybar for its simplicity.

A lot of time passed since then and the more I am thinking of the purpose of any bar, the more I am leaning to a solution of no bar whatsoever to utilise the whole screen of my laptop.
I am putting together a Control Panel written in Python(work in progress). While I have most of the things I needed there, some still remains in the waybar.
I still use a very simple two islands waybar. On the left I have clock and date, personal project time tracker and screen recorder toggle.
On the right I have taskbar, workspaces, and system Temp(important on fanless laptop).

I now how to move the left side of the waybar to the Control Panel and the Temperature, but I am not sure how to deal with the workspaces and taskbar(opened apps).
In theory, if all is removed, including the waybar itself, and everything keybinded, switching workspaces still should work as intended. Please correct me on this one if not true.

So, if I manage to move the opened apps to the Control Panel section, everything should be working without the waybar visuals. Correct?

Just for clarification of the move to no waybar at all. I use keyboard whenever I can(it's faster). I am not using mouse, just on rare occasions. Just a trackpad as I have it setup for gestures. So, i am in no need to click an icon in waybar to open an app. While most people might find it convenient, i find it as time and resources wasting.

Sorry if the post doesn't make sense that much, these are basically my thoughts in a post.

Thank you all for your time reading this and for any input on this approach.

u/ClassroomHaunting333 — 5 months ago