Hacker News new | ask | show | jobs
by qwerty456127 799 days ago
Why does every window manager have panels? I don't want any. I only want tiling and have every thing traditionally handled with panels to be a separate app I can launch the common way and place as an ordinary window wherever I see fit.
3 comments

For me it's the opposite: why do we have a gazillion of window managers (that just manage windows), and so few desktop environments that provide a complete and coherent setup?

It's especially annoying in the world of tiling window managers. There are few options for a desktop environment with a solid tiling WM. Regolith is one (based on i3 / Sway), and I thank those who develop it, but it's patching together a bunch of independently developed tools and you can tell when you try to change some things and have to deal with disparate config files.

Totally agree. I tinkered around with an openbox+tint2 setup several years ago and was able to get it to a usable state, but getting all the little things working is so fussy and flaky, with e.g. the need to hunt down suitable daemons to get a typical tray item loadout.
Imagine a perfect world where all the separate apps just were coherent, forming a complete ecosystem and their config files were not disparate? So you would just pick a window manager you somehow like better, a panel app of your choice, launcher, sound volume, WiFi management, calculator applets you prefer... Then switch to another window manager someday... keeping everything else intact. This is the way it's meant to be, every thing you dislike is just a quirk.
Yes that sounds awesome, though I'd prefer having a single config file for the window manager, status bar, notifications, application launcher, lock screen and whatever else I forgot that are in the end part of the same experience.

One particular problem is theming: I'd like to set a theme in a single place for all the elements of my desktop environment. Not sure if it's fair to expect a bunch of independent opinionated developers who like to use weird graphics toolkits (when not drawing everything by themselves) to come up with a unified solution.

Another problem is the shortcuts. It's the same problem in (neo)vim when you build your awesome IDE-like setup based on 53 unrelated packages: you end up with an illogical, overlapping soup of keybindings. I think you need someone to take charge of unifying things to provide a coherent experience.

Nobody actually has time for all that
Yeah this, there really isn't a strong coherent option for tiling window managers just yet. We'll probably see one soon with cosmic.

I think its the vim effect where the userbase just has a high demand for customization and don't mind a lot more set up and configuration to get there.

This is a desktop environment, not a window-manager, so here it’s pretty expected. I’ve gotta say, though, virtually every window manager that does have a panel makes it toggleable. FVWM, Fluxbox, xmonad, i3, etc.
Sure, nevertheless having panels as a distinct class of entities seems a rude violation of the Occam's razor principle everyone apparently rushes to do as soon as they write their own. People love panels somehow. The more bells&whistless on them - usually the better. This is just a curious psychological phenomenon.
well, most users generally have a small set of operations they want readily accessible with a pointing device at all times, or status information they want to be available at a glance, without obscuring or interfering with window layout.

a persistent window, aka panel, is the conventional way to provide that.

it's simply a conceptual extension of the 'prompt' into a gui environment. nothing has surpassed the panel concept in the past forty years that it has been dominant.

i expect the 'panel' is the primary feature vehicle of any desktop environment - they are nearly synonymous. nearly every window manager also contains support for panels, even if they are not part of a desktop environment that specifically provides them. what do you use?

Okay, but why should not a panel be just an ordinary window without the "decorations" (close/minimize buttons etc) of a separate ordinary app? You know, the first time the idea of the panel disturbed me in a negative way was in Windows 98 where the panel (the taskbar) would often remain visible in some quirky way during (some rare times even after) the moment the display switches to a full-screen graphics mode when I launch the game.
The Windows taskbar literally was just another window but without any decorations. There was even a bug in Windows 95 where you could close the taskbar.

As for the full screen bug you experienced, I don’t recall ever seeing that but Windows 9x had a plethora of weird bugs so it wouldn’t surprise me if you had issues.

well, everything in a typical linux desktop environment runs inside a window manager, including the panel. some of them are integrated to an extent, but you're essentially describing the status quo.

and microsoft does all kinds of weird shit nobody has an explanation for.

In X and X intrinsincs everything was a window including every widget.
Same was true in Microsoft Windows, but -- say it with me -- Modern Apps Don't Work That Way Anymore. You can't keep the redraws of all the widgets in sync, so you can't guarantee pixel-perfect window refresh. The Wayland way of only having top-level windows and client handling of all widgets within is, objectively, better for modern development.
To me this seems a particularly beautiful concept. I feel sad it is abandoned (I am one of the people who always used, if not ab-used, X over SSH).
It’s pretty much the same with Wayland, everything is just a “surface”.
In kde 3.5 one could detach panels and place them side by side(if I recall correctly).
oOh kde 3.5 was my favorite
BTW why are you saying that it was? Can't you still be using it? I am not a desktop Linux user myself but it sure should be possible?
If you could get it to still compile on a modern Linux system, you'd still be running an obsolete DE without security patches, and you'd be on your own as far as support is concerned.
Yup, for me the broader question for just about every window manager is "why not EASY modularity?"

Would love to see something where this was the principle? Very little philosophy or opinion on how individuals do their own desktop, emphasis on "you should be able to add and take things off easily as you want." The metaphor being, you know, an actual physical desktop. It's an EMPTY table. Put what you want on it and nothing you don't.

(Like openbox perhaps, just with a little more friendliness towards well integrated panels etc. Which might be construed as "opinion" -- but seems like most WMs FORCE a lot of the things on you)

I quite like how HaikuOS (and maybe BeOS before it, I can't claim familiarity there) handles this. There's one positionable window with a launcher and a barebones customizable set of control widgets. Everything else from system monitors to workspace switching are just normal application windows that you place in a convenient spot and pin so they show up on all workspaces. That combined with the powerful way they handle window management, allowing for creating custom tiled window sets and treating every window as tabbable, highlight just how samey and limiting most desktop environments are. I daily drive sway, which works completely differently, but Haiku's solution is so interesting that I find myself enjoying it despite the mismatch with my usual habits.

Really though, Windows, Gnome, Plasma, MacOS, they're all basically the same and all feel so cumbersome and limiting. Desktop metaphors have been stalled for so long, and when Apple took a shot at something new with Stage Manager they managed to downgrade the experience even further. I'm so disappointed by the state of things.

If only Haiku had up-to-date Firefox, I'd be using it as a daily driver even if I had to run it in a VM.
They do have an up-to-date browser in Falcon. What gets to me is the lack of multi-display support.
Bspwm just uses bash for configuration which is about as straight forward as you can get with modularity. Easy though? I dont think modularity is ever easy is it? I think the lack of it is one of the things that makes a thing easy.
Bash is anything but straightforward
Yeah, there are just two languages more weird than BrainFuck: TeX and Bash :-)
To some people that's what StumpWM offers, and easy molding is what attracted me to IceWM back in the day.

I'm more of a 'install i3wm, change a few things in the config, done' kind of person these days.

I guess there are a couple of issues with that:

1. Panels are fixed in place and don't have title bars etc. They're the only window type like that so you'd have to go to extra effort to make a UI to "lock" windows and unlock them or whatever.

2. If you delete the launcher then how do users start apps? Some old DEs let you right click the desktop but that's not very discoverable.

Much easier just to have settings somewhere do let you say which side (if any) you want panels on.

You can delete the launcher on most DEs. I do not have a launcher button on my work KDE desktop - I start apps using the keyboard to start a launcher.
I believe the main issue is that it’s difficult to have any kind of consistent/coherent design in a desktop where everything is optional. Building good UI for managing panels can also be challenging.
Great; I don't care about "design" as you're using it.

That entire field is somewhat unserious because it conflates engineering and actual usability with fashion, and often can't distinguish between the two.

That's exactly why I'm saying focus more on the modularity.