
The Problem with the Linux Desktop - sysrpl
https://www.getlazarus.org/linux-vs-windows/
======
simonblack
If even _I_ can write a Desktop application for Linux, it can't be all that
hard.

Windows programmers are _still_ wanting Linux/UNIX to be the same as Windows.
It isn't and isn't meant to be.

What I can't understand though, if Windows is so great, why does it need WSL?

------
Multicomp
This stuff is the double edged sword behind why the year of the Linux desktop
will either never arrive, or be WSL, depending on your definition.

For all the commendable work in the kernel on not breaking user space, Linux
does not have a viable unified stable userland api like win32 or cocoa.

I say the above thinking my statement is rather blunt, but not too
controversial, and hoping someone will refute it effectively with some desktop
app sdk that will work on 90% of the distributions.

~~~
sysrpl
I hope so as well, but in my linked article I bring up a some task examples
which I believe would all fall into areas said SDK wouldn't accommodate.

------
afarviral
While I'm sure all of that is true, it may be that the interoperabiloty and
flexibility/customizability of linux would be hampered by such a unified
approach/toolset. So much excellent desktop software out there, and it runs
great on most distros and set ups... how could that be if basic problems are
insurmountable.

~~~
sysrpl
Oh they are not insurmountable, but I am not sure these are either basic
problems, or as you might suggest easy to solve.

For example mouse hit testing a window for transparent areas. That's not very
common and I don't see very many (none) projects that handle it.

Tray icons are a HUGE mess. People have fixed the issue for popular
applications by taking the time to make it work on a variety of distros. This
means adding in code to support libappindicator in you want the Ubuntu users
to use your program from the tray. Sure the main apps distributed with Ubuntu
support them, because Canonical is paying his devs to remake everything. Sure
Steam works with it because, well it's Steam. But now, me the small guy, has
to figure out how to add a code path to check for Ubuntu and use their API if
I want a tray icon, and then I have to revisit it when they moved from
version1 to version3. What next?

[https://www.markshuttleworth.com/archives/333](https://www.markshuttleworth.com/archives/333)

Point is, nothing is insurmountable, but it sure is a pain for individual
developers like me.

~~~
Multicomp
I agree with your final point, if the Royal they that are making these
distributions could settle on a common standard or some least common
denominator, then the small software shops of the world could Target Linux
without having to do 12 hours of research on how many flavors of desktop
environments there are and how many flavors of compositors on top of them
there are, and how many flavors of distributions have what desktop
environments.

The current state has the effect of so much fragmenting what you can deploy to
where that most people throw their hands up in frustration and say they are
not deploying to Linux at all, Linux can deal with a web interface.

only the biggest software companies can afford to write a gtk / QT UI and ship
as a RPM / Deb / apt package / tar.gz

The wild part is no one seems to care that this great app fragmentation
occurs. There is no equivalent of an EXE on Lenox, as the elf file is treated
differently depending on the distribution.

The flat pack vs snap war indicates that app distribution also hasn't been
solved. Windows has wix installer or install shield, Mac has .DMG, but Linux
does not have a unified strategy for the common user tasks of installing
software, running software, or managing your installed software.

------
ncmncm
You look at source code of a program that does it.

Source to almost all such programs is readily available, unlike Windows
programs.

------
hirako2000
System tray, for what?

To lunch an app, I find a shortcut command the fastest way to get something
up.

Background running processes, that's the only use case for a system tray icon
I can think of. Here again a command does the trick.

To me the reasons kde and gnome are what they are is because users understand
how an an OS works and can use the command line.

I like my OSX desktop experience, but I still feel more productive on Gnome.

~~~
m-p-3
> Background running processes, that's the only use case for a system tray
> icon I can think of.

I guess it's not a necessity, but having a visual indicator that my
backup/sync software is alive and well from a glance is reassuring.

------
EricRiese
Isn't this all the sort of stuff that freedesktop.org is supposed to fix?

~~~
weare138
I'm wondering if this is an older article. I definitely ran into that problem
in the past but now things are fairly standardized across different desktop
environments. But I do agree it would be nice to have a centralized repository
for documentation similar to MSDN.

------
upofadown
What Linux Desktop? When was this written?

~~~
verify_sirrah
1\. This is written from the point of people developing desktop applications
for Linux. It doesn't apply to a specific desktop envirnment.

2\. The article isn't dated so I can't say for sure. Wayback machine doesn't
have any copies prior to today[1].

[1]
[https://web.archive.org/web/*/https://www.getlazarus.org/lin...](https://web.archive.org/web/*/https://www.getlazarus.org/linux-
vs-windows/)

~~~
upofadown
>It doesn't apply to a specific desktop envirnment.

How could it not? They are all different.

