mpv drops GNOME support

From LinuxReviews
Jump to navigationJump to search
Playvideo.png

Most of the developers of the GNOME desktop environment have the strange idea that GNOME is somehow a "platform" that is separate from, and not a part of, the overall GNU/Linux ecosystem. One direct result of this self-isolation has been the regular breakage of non-GNOME software when it is running in GNOME. This has affected free software project like mpv, SuperTuxKart, SDL and many more. One mpv developer who has had enough of GNOME nonsense made mpv print a "no support" message and exit if it was running under GNOME earlier today.

written by 윤채경 (Yoon Chae-kyung). published 2020-07-07last edited 2020-08-06

Mpv-0.29.1.jpg
mpv playing a WJSN performance of their hit "Star" on the South Korean television show "Music Bank".

mpv developer wm4 removed GNOME support from mpv earlier today with a commit titled "Stop supporting GNOME" which explained that:

"On GNOME, you're supposed to use native GNOME software anyway."

mpv developer wm4

Mpv-drops-GNOME-support.jpg

The code in the commit added these lines to mpv:

    const char *xdg_current_desktop = getenv("XDG_CURRENT_DESKTOP");
    if (xdg_current_desktop && strstr(xdg_current_desktop, "GNOME")) {
        struct mp_log *log = mp_log_new(NULL, global->log, "vo");
        mp_fatal(log, "This player does not support GNOME.\n");
        talloc_free(log);
        return NULL;
    }

Those paying attention will notice the return NULL; at the end - which made mpv abort and exit after printing a "This player does not support GNOME" message if mpv was launched in the GNOME desktop environment.

wm4 later, in a moment of weakness, reverted the commit and replaced the code with a far less based version that only warns GNOME users that they are using a platform developed by egomaniac developers who have no regard for their users or developers of non-GNOME free software:

    const char *xdg_current_desktop = getenv("XDG_CURRENT_DESKTOP");
    if (xdg_current_desktop && strstr(xdg_current_desktop, "GNOME")) {
        struct mp_log *log = mp_log_new(NULL, global->log, "vo");
        mp_fatal(log, "GNOME detected. Things will be broken.\n");
        talloc_free(log);
    }

Notice that the revised code does not have a return NULL; line after talloc_free(log);. mpv will, with this commit, still run as poorly as non-GNOME software runs on GNOME these days.

Dropping support for GNOME may seem like a drastic move but it is not at all shocking to those of us who have paid attention to how to the GNOME developers have been treating the rest of the GNU/Linux ecosystem like dirt the last few years. That, combined with a silly view that GNOME is a special software platform that is apart from, and not part of, the GNU/Linux ecosystem, has made it increasingly difficult to ensure that free software works as it should when it is running on the GNOME desktop environment. This problem is unique to GNOME; developers of games like The Secret Chronicles of Dr. M. can write with multi-platform support in mind and easily make the software run on Windows, macOS and all sane GNU/Linux desktop environments like KDE Plasma, LXQt, Xfce, IceWM and so on. GNOME is the only desktop environment that requires developers to write lines upon lines of code with GNOME-specific tweaks in order to satisfy unique special snowflake GNOME requirements.

Some free software projects have a very hard time making their software function properly under GNOME due to its intentional lack of basic building blocks like server-side window decorations which all other desktop environments have. The GNOME projects latest refusal to add a simple standardized Wayland method of inhibiting screensavers using idle-inhibit, something mpv needs, is what promoted wm4 to add the line of code that made mpv refuse to run under GNOME. It is yet another sad example of how the GNOME developers act towards the overall GNU/Linux ecosystem:

"I'd contend that an unstable protocol (..) not implemented by a project like GNOME isn't "widely accepted"."

As developer Drew DeVault pointed out in a response,

"GNOME is the only compositor which doesn't support it, which makes it qualify for widely supported in my book."

Drew DeVault
on GNOME issue #2202

The GNOME projects unique blindness to the world outside of that toxic cesspool means that free software developers, and commercial developers, are forced to choose between two bad choices: They can either do a lot of extra work to make the software work under GNOME, even though it already works fine with all the other desktop environments, or drop GNOME support. mpv has finally had enough of their nonsense and gone with the "drop GNOME support" option.

mpv has had a FAQ entry titled "I use GNOME Wayland and I have x/y/z problem!" outlining some of the GNOME-specific programs that software project have to deal with for quite some time. The GNOME projects latest refusal to "write a few lines of code to support a very simple standard protocol" is simply the latest example of how difficult it is to work with the individuals in control of that particular project.

mpv may still run on GNOME but it will no longer be supported in the sense that those who use GNOME and run mpv and experience problems won't get help with their GNOME-specific problems. We expect that more free software projects will choose that route in the future as the GNOME developer team becomes increasingly difficult to work with.

The sad part is that this goes both ways. Some GNOME "apps", like Cheese, can simply not be used outside of GNOME. wm4 was right when he implied that the GNOME attitude is that "On GNOME, you're supposed to use native GNOME software anyway.". We can add: "You are only supposed to run GNOME apps on GNOME".

It would be a lot better if all parts of the GNU/Linux ecosystem could work together and ensure compatibility between all free software programs and all free software desktop environments. It is very unfortunate that a sub-set of the free software community is hell-bent on going in the opposite direction.

The Russian news website opennet.ru has an article covering this titled Медиаплеер MPV прекращает поддержку GNOME.

Lovelyz Kei ProTip.jpg
TIP: You can use mpv to search YouTube and play the search results by running mpv ytdl://ytsearch[n]:keywords (replace [n] with the number of search results you want added to the playlist - without brackets) if you have youtube-dl installed. Try mpv ytdl://ytsearch5:rockit\ little\ cat to enjoy a wonderful song by the South Korean duo Rockit Girl!


5.00
(2 votes)

avatar

Tumeo

4 months ago
Score 2++
Hey, thanks for the ytdl tip!
avatar

Anonymous user #1

4 months ago
Score 2++

I'm former Gnome user, I made some bug fixes for it and kept it alive for a few years after the EOL in June 2002, then I switched to KDE as it was the only good option back then, sure there are issues with KDE/Plasma, mainly kwin and it's poor support for nVidia graphics, but at least it's not been as destroyed as Gnome2/3 by RedHat (nowadays IBM).

I don't have much for systemd/Linux and it's good to see that you will stay true to GNU/Linux.
avatar

Anonymous user #2

4 months ago
Score 2++

Living this right now. I'm trying to use Linux as a desktop but Gnome has pretty much destroyed any hope of running the applications we use in our daily lives to do the things that actually make us money.

Its a shame cause it harms projects like KDE when those projects are working hard to make software people are actually able to use.
avatar

Anonymous user #2

4 months ago
Score 0++

Fuck GNOME devs coming straight from tha underground
A young hacker got it bad cos he's out
of other FOSS choices so devs think
They have the authority to break their reverse dependencies
Fuck that shit, cause I ain't the one
For a brainwashed developer to be lecturing on
"If you don't like it, just don't upgrade"
what and use unsupported software with no security updates?
Fucking with me cos I'm not an average user
So I gotta put up with the preferences of pretentious designers
Rearranging my workflow, oversimplifying their product
Thinking every user is a fucking dumb idiot
You'd rather see, me wasting time
Than take responsibility for your poisonous party line.
Pwn a GNOME dev with an 0-day
and when I'm finished, fuck with GTK
to pad a hundred pixels inside every border
yeah enjoy your own fucking bread and water!
I don't know if they NSA
Slowing hackers down, and wasting screen space
And on the other hand, without FOSS they can't get jobs
Cause they just failed at trying to be Steve Jobs.
Dumbing down the ecosystem, training user ignorance,
Spitting on those who built our community in the first place!
Anonymous will rewrite
Every application with a GNOME design
Just cause I think more mathematically
Punk designers are afraid of me!
HUH, a young hacker on the warpath
And when I'm finished, they'll wish they'd merged my patch
when they had a chance, but now it's too late
Yo J, GNOME's been replaced.

Example of scene one

[GNOME Dev] Pull up your goddamn debugger right now!
[Hacker] Aww shit, now what the fuck they changing their API for?
[GNOME Dev] Cause I feel like it! Now sit the fuck down for 16 hours and patch yo fucking software
[Hacker] Man, fuck this shit

[GNOME Dev] Aight smartass, I'm breaking yo entire desktop!
avatar

Anonymous user #2

4 months ago
Score 2++
I didn't know you could search youtube directly from mpv, that's so cool
avatar

Anonymous user #1

4 months ago
Score 2++
The ytdl tip is superb.
avatar

Anonymous user #2

4 months ago
Score 0++
This is a deliberate strategy from RedHat to dominate Linux: systemd and GNOME.
avatar

AdinanCenci

4 months ago
Score 0++
Really sad to read that. Gnome is absolute beautiful and I like it a lot. They should follow universal standards like everyone else
avatar

Anonymous user #2

4 months ago
Score 0++
That's why I do not have any GTK cruft let alone the gnome abomination.
Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.