Live data from Hacker News

The Joy of Linux Desktop Environments

medium.com

161–170 of 181 posts

Re: The Joy of Linux Desktop Environments

#161

Earlier quoted context omitted.

Configuration items like current theme or current default font are things, that all applications are interested in. If they want to have look and feel like the rest of the desktop, that is.

Yes, and read-only access requires no locking. Those settings should only be changed by the system control panel, not by random apps.

That opens another can of worms: What is system control panel: is that gnome control center? Or command line dconf tools? Or is that dconf-editor? Or one of the myriad tweak utilities?

Cut off one of these and brace for the whining, that gnome is dumbing everything down and locking up your settings.

Re: The Joy of Linux Desktop Environments

#162
post #111

Earlier quoted context omitted.

I'm stuck in GNOME -- any advice on breaking free is appreciated!

First, replace the core GNOME apps you use most frequently with lighter alternatives. Take it easy, do it one at a time. Try rxvt-unicode instead of gnome-terminal. Try Thunar or Dolphin or an mc clone instead of Nautilus. There's a lot of non-obvious configuration options in the X11 stack. An .Xresources file can select better fonts, tweak hinting so they look fantastic, and change settings and color themes for many…

All you need to do is install XFCE. It has a great terminal, a solid file manager, a compositing WM, and easy configuration. I don't bother setting things up piecemeal or fiddling with .Xresources any more.

Also, it would be great if we could stop using "rice" as an adjective. Even if you don't find it offensive, some people do.

Re: The Joy of Linux Desktop Environments

#163

Cargo cultism is alive and well! So many _feelings_ of variety! 2016 is the year of the linux desktop, just like 2015, 2014, 2013... So many options of ways to lay out windows but fewer than half the actual applications creative professionals need to do their job, so we're still stuck on Mac or Windows.

But, the reality is that "creative professionals" have very few reasons to change platforms as Mac/Windows satisfises [0] them. This means they don't contribute to making alternative platforms better for their use-case.

Second, professional Linux development is focused on the server. No-one is really paid on the desktop side to create applications for creative professionals [1]. Most of the applications are created by "hobbyist" developers whose target audience is themselves.

This means no-one is really contributing to what "creative professionals" want.

The Linux desktop works for me perfectly, it's been the year of the Linux desktop since 1996 - but then I'm not a 'creative professional' or an 'accounting professional' etc etc.

[0] https://en.wikipedia.org/wiki/Satisficing [1] Creative professionals are a more difficult segment than general users because they have high expectations of the platform and specific applications/use-cases.

Re: The Joy of Linux Desktop Environments

#164

I used to love the choice after being limited by Windows but it meant all the development and design efforts were split between different desktop environments so mixing apps from different desktop systems was an awkward user experience. I preferred KDE the most but I never understood the obsession with the number of customisation options. These surely slowed down development and it felt like you had to be the UX desi…

> Now I just want something with minimal customisation with decent defaults so I know it won't suddenly break when I have to get some work done.

The difficulty is that one persons "sensible default" is anothers "crazy terrible default". Particularly in the Linux world, fuelled by it being committed hobbyists who create much of the desktop software and the tradition of UNIX configurability.

Re: The Joy of Linux Desktop Environments

#165
post #111
post #63

Earlier quoted context omitted.

The Gnome stack is horrible. I long ago started questioning the sanity of the devs when they tried to build an entire office suite in C. Start any Gnome/GTK app and it will continously spew assertion failed log messages at you. Gnome has also forced certain standards, e.g. Network Manager when superior alternatives exist (the excellent Connman).

I'm stuck in GNOME -- any advice on breaking free is appreciated!

Contrary to some other advice here, I switched to a new window manager first (xmonad, FWIW), but kept running a bunch of GNOME stuff too. Gradually, I have phased out most of GNOME and my computing life is simpler and more stable as a result.

Re: The Joy of Linux Desktop Environments

#166
post #76

Earlier quoted context omitted.

Ubuntu are playing a (very long) game. If they manage it, IMHO they'll be in a better place than Fedora's UI which is built on a stack that increasingly only Redhat will continue to develop.

Just like systemd, Wayland and the kernel right ? Are you aware that Redhat actually employs most of the kernel devs ? Ubuntu does not have the "people's stack" ... It's just another company building a stack that is not as good.

Are you aware that the whole of the development resource (people) across the entire free software desktop would fit into a reasonable size conference room? Versus, say the size of the development teams on proprietary systems such as Windows?

So, what is the point of trying to divide the community of people all trying to work towards similar(ish) goals - the improvement of the alternative desktops - rather than focusing on how they are part of the same thing? It doesn't improve the likelihood of achieving the goal of a "better" desktop.

You are literally stood in a room with 10 people trying to demonstrate how 2 of them are better than the other 8. It's an exercise in pointlessness, makes the free software community unfriendly and sets up fake academic wars [0].

Note: I previously worked for Canonical so have bias, I know people at RedHat and other open source companies. I have had the opinion that this sort of stupid divisionism stuff is bad for FOSS for at least 10 years.

[0] https://en.wikipedia.org/wiki/Sayre's_law

Re: The Joy of Linux Desktop Environments

#167
post #47

I get to experience the joy of not having a desktop environment; of using a bare WM, the shell, and 30-year-old Unix skills to work with my system. It's a good feeling.

I've been going through a similar experience over the last few years, mostly driven by my hardware getting older and not handling the requirements of modern DE's (when I'd prefer the resource to be used for applications).

It's nice stripping back to the original structures, though it does feel like computer archaeology sometimes. There's a lot of services in the upper layers that have to be switched off to get back to plain .xinitrc and Xresources!

On the upside, I know my configuration and it's all in a repository now!

Re: The Joy of Linux Desktop Environments

#168

Earlier quoted context omitted.

Just like systemd, Wayland and the kernel right ? Are you aware that Redhat actually employs most of the kernel devs ? Ubuntu does not have the "people's stack" ... It's just another company building a stack that is not as good.

Are you aware that the whole of the development resource (people) across the entire free software desktop would fit into a reasonable size conference room? Versus, say the size of the development teams on proprietary systems such as Windows? So, what is the point of trying to divide the community of people all trying to work towards similar(ish) goals - the improvement of the alternative desktops - rather than focusi…

I apologize if I came off as an ass. I was ticked off by Redhat being painted as the BigBadCo and Canonical being painted as the little-guy-who-could.

I have the greatest of respect for anyone who has ever contributed a single line to Linux - more than anywhere else, your works really impacts countries like India.

I am not sure why there is this impression. I would be lying if I didn't think so myself.

Re: The Joy of Linux Desktop Environments

#169
post #127

Earlier quoted context omitted.

> Network Manager What's wrong with Network Manager? Show me any other network manager which handles split DNS, WWAN modems and automatically connecting VPNs out of the box with zero configuration.

It's slow to connect, uses a lot of resources and cannot be installed without bringing in hundreds of megabytes of dependencies (e.g. X11, Gnome libs).

> It's slow to connect

It connects to my home wifi in > uses a lot of resources

10 MiB and 9 minutes of CPU time after an uptime of 4 days with many reconnects, which is totally reasonable.

> cannot be installed without bringing in hundreds of megabytes of dependencies

Not true. Even on Ubuntu, it only pulls in 17.4 MB of dependencies:

   apt-get install --no-install-recommends network-manager

   The following additional packages will be installed:
     dconf-gsettings-backend dconf-service glib-networking glib-networking-common glib-networking-services gsettings-desktop-schemas libbluetooth3 libdconf1
     libgudev-1.0-0 libmm-glib0 libndp0 libnl-3-200 libnl-genl-3-200 libnm0 libproxy1v5 libsoup2.4-1 wpasupplicant
   [...]
   After this operation, 17.4 MB of additional disk space will be used.
   Do you want to continue? [Y/n] 
On RPM based distros, it's even less. They made it the default network manager on RHEL 7, even for the minimal cloud images.

Re: The Joy of Linux Desktop Environments

#170
post #115

Earlier quoted context omitted.

> automize addition of some configuration to the dconf system You mean like "dconf dump" and "dconf load"? I use it for exactly that (importing my hotkeys config). What you describe (compiled files in /etc) are system-global default values. You only need those for multi-user environments. > I doubt anybody can measure the parsing advantage of a binary format, but the drawbacks are The performance advantages are massi…

> What you describe (compiled files in /etc) are system-global default values. You only need those for multi-user environments. Well, I work as a systems administrator... >> I doubt anybody can measure the parsing advantage of a binary format, but the drawbacks are > The performance advantages are massive. The advantages over reading a big unsorted chunk of text, maybe measurable in an isolated benchmark - depending…

> Well, I work as a systems administrator...

So do I. You only need that feature if you want to, say, set a default wallpaper for new users or prevent them from changing, and I don't see any issues with they way it's implemented. It's a plain text config which can be deployed using your favorite config management system. You'd just put in a change hook like you'd restart a service after changing its config file.

> With the conventional one-file-per program approach the existing file system (instead of custom binary datastructures) is used to speed up the access.

The way it works is that dconf client mmap the database file, so it's the same. dbus does no caching by itself, it uses the same mechanism.

> A hash table just leads to the information. You still have to interpret it. And I assume dconf can only be queried over dbus?

No, dbus is only used for writing. Reading is directly from the filesystem without anything in-between. The serialization format used by dconf matches the in-memory structure, so the application can literally take the value from (mmap) memory and use it as-is. So, no parsing.

I agree with you that it would be less efficient if dbus were used in the read path, this is probably why it's implemented that way.

> Not convinced. If most keys were read many times, something was very wrong.

> No. Most things are read by exactly one program.

> Loading the program code itself is a hell of a lot more expensive than loading a tiny text configuration file

The primary use case for dconf are desktop settings and yes, those are read hundreds of time. Not only at startup, but also at runtime. The current GTK theme or scaling factor is read all the time during rendering.

I'm not advocating that all application config should end up in dconf - as I noted, I like my i3, GPG or SSH config the way they are.

For me, it has lots of practical advantages. For example, I have a script which sets all desktop settings the way I like them (font, scaling factor, focus follows mouse,...) and I can just set them using "gsettings set org.gnome.desktop.interface.scaling-factor 2" instead of figuring out which configs are in which files, how to parse them and merge existing and new configs.

Post reply on HN