Monitor arrangement application very buggy - same with firewall manaagement gui #21

Closed
opened 2026-08-21 21:10:49 +01:00 by joshquinlan · 3 comments
Owner

The monitor management application is incredibly glitchy, slow and not very easy to use. We need to remove this and find a new option.
The same is the case with the filewall management gui

The monitor management application is incredibly glitchy, slow and not very easy to use. We need to remove this and find a new option. The same is the case with the filewall management gui
Author
Owner

wdisplays is out of the manifest. nwg-displays 0.4.3 replaces it, from the yselkowitz/nwg-shell COPR since Fedora does not package it. It turns out to emit hl.monitor Lua directly, the same API this configuration is written in, so it is a far better fit than expected.

"donbox monitor arrange [profile]" opens it against a scratch outputs file under state, holds a flag while it runs so that detect stands down, and saves the layout it leaves behind as a profile. Without that flag the hyprctl reload nwg-displays fires on Apply would put the old profile straight back over the arrangement. Reachable from the menu under Settings, Displays.

For the firewall: no maintained firewalld TUI exists beyond manafirewall, which Fedora packages and which its own description says runs "using Qt, GTK, or ncurses interfaces", with libyui-ncurses as a hard dependency. The menu entry runs it in the ncurses backend inside a donbox term, the same way nmtui and wiremix already are. firewall-config was never in the manifest, so it wants removing from the machine by hand.

Landed in 7c9292c. Neither package could be installed from the session that wrote this, since sudo wants a password and there is no askpass, so the arrange flow and the manafirewall entry are both written but not yet exercised. They need:

sudo dnf copr enable yselkowitz/nwg-shell
sudo dnf install nwg-displays manafirewall
sudo dnf remove wdisplays firewall-config
wdisplays is out of the manifest. nwg-displays 0.4.3 replaces it, from the yselkowitz/nwg-shell COPR since Fedora does not package it. It turns out to emit hl.monitor Lua directly, the same API this configuration is written in, so it is a far better fit than expected. "donbox monitor arrange [profile]" opens it against a scratch outputs file under state, holds a flag while it runs so that detect stands down, and saves the layout it leaves behind as a profile. Without that flag the hyprctl reload nwg-displays fires on Apply would put the old profile straight back over the arrangement. Reachable from the menu under Settings, Displays. For the firewall: no maintained firewalld TUI exists beyond manafirewall, which Fedora packages and which its own description says runs "using Qt, GTK, or ncurses interfaces", with libyui-ncurses as a hard dependency. The menu entry runs it in the ncurses backend inside a donbox term, the same way nmtui and wiremix already are. firewall-config was never in the manifest, so it wants removing from the machine by hand. Landed in 7c9292c. Neither package could be installed from the session that wrote this, since sudo wants a password and there is no askpass, so the arrange flow and the manafirewall entry are both written but not yet exercised. They need: sudo dnf copr enable yselkowitz/nwg-shell sudo dnf install nwg-displays manafirewall sudo dnf remove wdisplays firewall-config
Author
Owner

Correction on manafirewall: it does not work here, and my earlier note was wrong in two ways.

It is not that firewalld is down. firewalld is enabled, active and answering: firewall-cmd reads it fine, and both the plain and the polkit-gated D-Bus interfaces answer as an unprivileged user. Turning manafirewall own debug log on shows it too, one second in:

manafirewall started
Firewalld connected

It connects and then never draws what it read. No zone appears in either backend, and the status line stays on its initial "Failed to connect to firewalld" text, which is the label default rather than a result. Reproduced under ncurses in a 140x45 terminal and under GTK. Its UI never drains the event queue the connection writes to.

I also had the invocation wrong: it takes --ncurses as a flag, not YUI_PREFERED_BACKEND, which is why a GTK window opened. And the menu entry I described was never actually written to menu.json, so nothing shipped pointing at it.

So the fallback applies: firewalld stays, firewall-cmd is the interface, and nothing is built on top. manafirewall is out of the manifest in 6f1d245 and wants removing from the machine:

sudo dnf remove manafirewall

Separately, 5a0d95a fixes a real bug in the arrange wrapper. nwg-displays defaults its workspaces file to ~/.config/hypr/workspaces.conf, and stow folded that directory into a link to the repository, so it would have written straight into the working tree. Both paths are given explicitly now.

nwg-displays is installed and takes the flags expected of it. What is left is one interactive run of "donbox monitor arrange " to confirm the layout survives the reload.

Correction on manafirewall: it does not work here, and my earlier note was wrong in two ways. It is not that firewalld is down. firewalld is enabled, active and answering: firewall-cmd reads it fine, and both the plain and the polkit-gated D-Bus interfaces answer as an unprivileged user. Turning manafirewall own debug log on shows it too, one second in: manafirewall started Firewalld connected It connects and then never draws what it read. No zone appears in either backend, and the status line stays on its initial "Failed to connect to firewalld" text, which is the label default rather than a result. Reproduced under ncurses in a 140x45 terminal and under GTK. Its UI never drains the event queue the connection writes to. I also had the invocation wrong: it takes --ncurses as a flag, not YUI_PREFERED_BACKEND, which is why a GTK window opened. And the menu entry I described was never actually written to menu.json, so nothing shipped pointing at it. So the fallback applies: firewalld stays, firewall-cmd is the interface, and nothing is built on top. manafirewall is out of the manifest in 6f1d245 and wants removing from the machine: sudo dnf remove manafirewall Separately, 5a0d95a fixes a real bug in the arrange wrapper. nwg-displays defaults its workspaces file to ~/.config/hypr/workspaces.conf, and stow folded that directory into a link to the repository, so it would have written straight into the working tree. Both paths are given explicitly now. nwg-displays is installed and takes the flags expected of it. What is left is one interactive run of "donbox monitor arrange <profile>" to confirm the layout survives the reload.
Author
Owner

Closing. wdisplays is replaced by nwg-displays behind "donbox monitor arrange", and the firewall is firewall-cmd with nothing on top.

The one thing never exercised is an interactive arrange run, since it needs a hand on the keyboard. If the layout does not survive the reload nwg-displays fires on Apply, the arranging flag in donbox-monitor-profile is where to look.

Closing. wdisplays is replaced by nwg-displays behind "donbox monitor arrange", and the firewall is firewall-cmd with nothing on top. The one thing never exercised is an interactive arrange run, since it needs a hand on the keyboard. If the layout does not survive the reload nwg-displays fires on Apply, the arranging flag in donbox-monitor-profile is where to look.
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
joshquinlan/dotfiles#21
No description provided.