[Lazarus] The Problem with the Linux Desktop

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

[Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
On Linux ...

I was looking at the Unity tray icon code I submitted a while back and it had stopped working on my desktop environment. I was also looking for a way to track user log off events, monitor clipboard history, and how to register a global hot key. 

The sheer scattering of different systems, libraries, and what not that I needed to search through to find solutions which are typically as simple as a single function on a single document site with Windows prompted me to write this brief diatribe:


I also posted that page to the r/linux, and am likely to get down voted there, but if anyone wants to chime in, feel free. It might make use both feel better.

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list


On Fri, 27 Mar 2020, Anthony Walter via lazarus wrote:

> On Linux ...
>
> I was looking at the Unity tray icon code I submitted a while back and it
> had stopped working on my desktop environment. I was also looking for a way
> to track user log off events, monitor clipboard history, and how to
> register a global hot key.

Haha :-)

This is an age-old discussion. Echo of the late 90-ies last century.

You're reasoning windows centric, where everything is centrally controlled.
(same for Mac) This gives a certain amount of stability, but you are at the
mercy of the controlling instance.

You will therefor always be disappointed when using linux desktop, which is about
liberty, choice and variety, and which lacks this stability or unity.

The latter implies that when developing, you are also forced to make a choice;
what platforms to support and what not. Gnome, KDE, XFDE etc.

If you don't like that, stay away from Linux desktop.

Michael.
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list

Op 2020-03-27 om 09:27 schreef Michael Van Canneyt via lazarus:

>
>
> This is an age-old discussion. Echo of the late 90-ies last century.
>
> You're reasoning windows centric, where everything is centrally
> controlled.
> (same for Mac) This gives a certain amount of stability, but you are
> at the
> mercy of the controlling instance.
>
> You will therefor always be disappointed when using linux desktop,
> which is about
> liberty, choice and variety, and which lacks this stability or unity.
>
If you have rose coloured glasses, maybe.  Linux desktop is a proving
and experimentation ground for those same big companies that mainly care
for linux as a server. They also govern a lot of the direction, by
simply shifting manpower.

Their touch is less prominent, but so is their commitment, as you've
noticed.  Moreover they don't really cultivate an eco system for other
programmers as much as e.g. Microsoft does.

> The latter implies that when developing, you are also forced to make a
> choice;
> what platforms to support and what not. Gnome, KDE, XFDE etc.

And preferably deliver the platform of your choice with your
application.  The model to download applications and install on a random
distro+version simply doesn't exist on Linux.

>
> If you don't like that, stay away from Linux desktop.
>
While I largely agree, this reply simply assumes that the culture of
laisez faire and low backwards compatibility is an universal open source
trait. While that is a common link, I'm not so far as to say it is
mandatory thing.
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
Michael,

I've been using the Linux desktop as my primary OS since 2006. I had dabbled in in before, but typically went back to windows when my networking had troubles.

That said, I want Linux to be better. Yes I understand your points, but please understand even when you choose an environment like Gnome vs KDE, even they break things or don't provide all the tools you need. that is the frustrating part, when an environment either breaks something like tray icons or provides little to no assistance in completing some requirement, such as hit testing a window for transparent pixels, or registering a global hotkey.

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list


On Fri, 27 Mar 2020, Marco van de Voort via lazarus wrote:

>>
>> If you don't like that, stay away from Linux desktop.
>>
> While I largely agree, this reply simply assumes that the culture of
> laisez faire and low backwards compatibility is an universal open source
> trait. While that is a common link, I'm not so far as to say it is
> mandatory thing.

I didn't mean to imply such a conclusion.

I just observe it and think it is simply a fact.
If it hasn't changed in 20+ years, I doubt it ever will.

Whether this fact is good or bad is a personal appreciation.

I can only repeat: if you don't like it, stay away. No sense in getting
frustrated.

Michael.
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list


On Fri, 27 Mar 2020, Anthony Walter wrote:

> Michael,
>
> I've been using the Linux desktop as my primary OS since 2006. I had
> dabbled in in before, but typically went back to windows when my networking
> had troubles.
>
> That said, I want Linux to be better. Yes I understand your points, but
> please understand even when you choose an environment like Gnome vs KDE,
> even they break things or don't provide all the tools you need. that is
> the frustrating part, when an environment either breaks something like tray
> icons or provides little to no assistance in completing some requirement,
> such as hit testing a window for transparent pixels, or registering a
> global hotkey.

I understand it is frustrating, and I'm not trying to minimize this.

But I see it as an inescapable consequence of not having central "management".

If you want Linux to be better:
In order for the linux desktop to become better, I think the only approach is to have a
strictly centralized "management".

As I see it, the linux kernel has such strict management (or at least stricter), and it thrives.

The first thing this strict management should enforce is:
backwards compatibility must be high in the list of standards to adhere to.

A reasonably vanilla application built on Windows 95 will still run today.
I doubt many linux applications built in - say - 1997 will pass that test.

The whole delphi VCL counts on this backwards compatibility.
In an Apple world, embarcadero would have bancrupted quickly, I suppose :(

In this sense, Lazarus does a good job: it provides this backwards
compatibility across platforms, if you stick to the LCL.

I open a lot of projects from 10 years ago for the upcoming Lazarus book:
they still compile and work :-)

Michael.
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list

Op 2020-03-27 om 10:52 schreef Michael Van Canneyt via lazarus:
>
> I didn't mean to imply such a conclusion.
>
> I just observe it and think it is simply a fact.
> If it hasn't changed in 20+ years, I doubt it ever will.

Good, then we agree, and I wouldn't hold my breath while waiting this to
change either :-)

With the only remark that delivering some old stable with KDE/QT for 5
year intervals and then workaround as many know issues in your app is
maybe a doable workaround (it was 10 years ago, not sure about now). But
even then the result is subpar compared to Windows.
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
On Fri, Mar 27, 2020 at 10:09 AM Anthony Walter via lazarus <[hidden email]> wrote:
I was looking at the Unity tray icon code I submitted a while back and it had stopped working on my desktop environment.

David Bannon, forum name dbannon, made a version for GTK3 based on your work. You may know that already but anyway...
Maybe you can join forces for a solution that works on many desktops. It requires maintenance yes, but Linux desktops have some standards. The situation is not completely hopeless.

Juha


--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
Juha,

I saw someone had had modifications and unfortunately it caused the appindicator to stop working on my desktop. I rolled back the version to my last check in and it worked again. I also found that on the Cinnamon desktop you can add a systray applet and the old Gtk2 style tray icons work, albeit in a separate applet contain in your panel.

I have a few projects I am working on in addition to my tutoring of kids. I want to work on the Lazarus Gtk3 widgset and get it working enough to compile and run Lazarus with it. I have soem changes to it already that made some stuff work a lot better, but I haven't worked on the Gtk3 widgetset for about 8 months. When I do I try to coordinate with David.

Thanks, Anthony.



--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
The Linux Kernel is a model of how to develop an OS. Change the kernel in a way that breaks something - even something done stupidly - in user-space and Linus will scream.
 
But outside of the kernel space, open-source developers suffer from four problems:
 
- Not invented here syndrome. Prefering to implemet things "my right way" rather than somone elses way that works.
 
 -prefering to innovate rather than maintain. Oh XXX has issues. Let's not fix them, but start again.
 
- a love of complexity. systemD rather than sysV is the classic example: to save 7 seconds at my boot time (yes, I checked it) required hundreds of thousands of lines of systemd code, and many hours of learning on my part. Currently I have massive pronlems caused between the various ways processes communicate with each other, often unnecessarily.
 
I started in LInux 15 years ago.  The desktops were a joy - stable, simple, sufficient. Now they have become unstable, complex, and over-kill. Unfortunately, last week as I began converting everything to Windows 10,  I found exactly the same problems, with Visual Studio. Lazarus still my mainstay, thank the godess.
 
Sent: Friday, March 27, 2020 at 9:08 PM
From: "Anthony Walter via lazarus" <[hidden email]>
To: "Lazarus mailing list" <[hidden email]>
Cc: "Anthony Walter" <[hidden email]>
Subject: [Lazarus] The Problem with the Linux Desktop
On Linux ...
 
I was looking at the Unity tray icon code I submitted a while back and it had stopped working on my desktop environment. I was also looking for a way to track user log off events, monitor clipboard history, and how to register a global hot key. 
 
The sheer scattering of different systems, libraries, and what not that I needed to search through to find solutions which are typically as simple as a single function on a single document site with Windows prompted me to write this brief diatribe:
 
 
I also posted that page to the r/linux, and am likely to get down voted there, but if anyone wants to chime in, feel free. It might make use both feel better.
-- _______________________________________________ lazarus mailing list [hidden email] https://lists.lazarus-ide.org/listinfo/lazarus

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
> The model to download applications and install on a random distro+version
simply doesn't exist on Linux.

Snap, AppImage, Flatpak are purposely targeting this. It's partially
successful, but as with many things in Linux, they're competing instead of
working together.



--
Sent from: http://free-pascal-lazarus.989080.n3.nabble.com/
--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
leledumbo via lazarus <[hidden email]> schrieb am So., 29. März 2020, 05:48:
> The model to download applications and install on a random distro+version
simply doesn't exist on Linux.

Snap, AppImage, Flatpak are purposely targeting this. It's partially
successful, but as with many things in Linux, they're competing instead of
working together.

And if there's a security problem in one of the used libraries you need to update all these containers instead of just updating the library - if the provider of the container even provides an updated container. Yay. Not. -.-

Regards, 
Sven 

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
Teresa, thank you for your considered opinion.

I agree with most of what you said, but with regards to the option of moving back to Windows, for me that is a non starter. I don't use Linux rather than Window because of some technical benefit. The primary reason I use Linux because I don't want to worry around my privacy being compromised, either from malware or viruses which are a big problem with Windows or from software vendors themselves be it Microsoft telemetry or other spying features that now a days so commonly bundled with 1st, 2nd, and 3rd part software on Windows. These problems are pretty much non existent on Linux.

I also value the efficiency of Linux. I have all processing speed and file system the room I need on a 2008 Core2Duo, 4GB or RAM, and a 60GB SSD using Linux, even with the newest distros. On the latest Windows 10, not so much. Just getting the OS installed is about 30GB. And yes this is a big deal for me because I always have 10 or more of these laptops on hand and use them to teach my students basic computers usage, online safety, and programming. Even if I wasn't using these machine for teaching, they still make for great everyday computers when running Linux. Using them with the most recent Windows, not so much.

My complaints, as you expanded upon, center mostly around the fractured nature of the Linux desktop ecosystem. Even popular distros such as Ubuntu break things from release to release. Windows seems to always try to protect that backward compatibility, at least since they made the move to a true 32 bit OS. Of course with Windows upgrades some hardware is no longer supported (I can't use the Canon photo capture system on other than XP), but most of the time everything still works.

Thanks again for your considerate thoughts. 
Anthony



--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] The Problem with the Linux Desktop

Free Pascal - Lazarus mailing list
IMO the problem of Linux desktop (or at least "a" problem) is the lack of backwards compatibility for pretty much anything above the X server (and now with Wayland some people want to compromise that too). If you stick with the X libraries, the C library (glibc is generally very good when it comes to backwards compatibility and one of the very few userland projects that do so) and kernel interfaces, you can have many years of stability. As an example check this screenshot:


This shows binaries from a GUI toolkit i wrote some time ago in C that only uses the Xlib (it can also optionally use Xft but it isn't required). The binaries were compiled in a (32bit, of course) RedHat Linux distribution from 1997 and worked just fine in a 64bit Debian distribution from 2018 showing more than two decades of binary backwards compatibility. Note that those binaries were *not* statically linked (which is what some suggest as a "solution") - they linked against the system provided C and X libraries.

But that is by only relying on X and C. Anything above that has the long term stability prospect of a sandcastle during a thunderstorm.

You can see that clearly with Lazarus' backends: the Gtk2 backend became stable long after the Gtk1 library was obsolete and the Gtk3 backend is still not capable to use the IDE itself when most Gtk development is already on Gtk4. Back in late 2000s, the Gtk1 backend used to be very stable and the Win32 backend used to be quite buggy but nowadays the Win32 backend is by far the most stable because over the years there wasn't any need to throw away all the work that was done since the Windows API is always backwards compatible whereas the Gtk library drops compatibility every major version.

The only big toolkit i can think of that remained stable over the years is Motif, but i think this is largely due to it not receiving any major updates. Well, Tk is probably also ABI stable, but i'm not sure if it is possible to use it without Tcl (Python bundles both just to access Tk).

It might be interesting to see if a backend for any of those can be made since they are likely to exist and be updated for the foreseeable future.

On Sun, Mar 29, 2020 at 11:41 AM Anthony Walter via lazarus <[hidden email]> wrote:
Teresa, thank you for your considered opinion.

I agree with most of what you said, but with regards to the option of moving back to Windows, for me that is a non starter. I don't use Linux rather than Window because of some technical benefit. The primary reason I use Linux because I don't want to worry around my privacy being compromised, either from malware or viruses which are a big problem with Windows or from software vendors themselves be it Microsoft telemetry or other spying features that now a days so commonly bundled with 1st, 2nd, and 3rd part software on Windows. These problems are pretty much non existent on Linux.

I also value the efficiency of Linux. I have all processing speed and file system the room I need on a 2008 Core2Duo, 4GB or RAM, and a 60GB SSD using Linux, even with the newest distros. On the latest Windows 10, not so much. Just getting the OS installed is about 30GB. And yes this is a big deal for me because I always have 10 or more of these laptops on hand and use them to teach my students basic computers usage, online safety, and programming. Even if I wasn't using these machine for teaching, they still make for great everyday computers when running Linux. Using them with the most recent Windows, not so much.

My complaints, as you expanded upon, center mostly around the fractured nature of the Linux desktop ecosystem. Even popular distros such as Ubuntu break things from release to release. Windows seems to always try to protect that backward compatibility, at least since they made the move to a true 32 bit OS. Of course with Windows upgrades some hardware is no longer supported (I can't use the Canon photo capture system on other than XP), but most of the time everything still works.

Thanks again for your considerate thoughts. 
Anthony


--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus