Platform Development • Re: Future of GTK2 and Pale Moon
It's going to be a pity if NPAPI on linux will be dropped because of decisions by distro maintainers to remove GTK2 and making it hard to obtain; but the reality is that the plugins people want to be running are old and don't have GTK3 versions. It simply goes out of scope for us.
I agree for the most part, but one thing I am interested in trying to facilitate (and if it fails, we may well have to drop NPAPI on Linux some day) is possibly finding a solution to using NPAPI on Linux that doesn't involve GTK2. Another awkward thing is that if I'm not mistaken, we do currently still depend on NPAPI and GTK2 to build WebRTC, which is a problem for Basilisk (I had almost forgotten but just remembered). So really I am leaning towards keeping the code in (I don't think it really gets in the way because it's all in the widget/gtk directory), but telling people they are on their own with it at some point and that it's not an officially supported configuration. Like andyprough said in his OP, there are some people that think it may be possible get our NPAPI subsystem to work around the incompatibilities between GTK2 and GTK3 easily enough that we can keep it without GTK2, and that Mozilla just didn't go down that rabbit hole to find out because they were planning to deprecate it anyway. But yeah, I pretty much agree continuing to rely on GTK2 is a no-go.
Essentially, the compromise I've been considering with people who still want GTK2 is leaving the code around as an option for self-builders. That's... kind of what I did with Epyrus, and what I've been trying to foreshadow with that decision for a while. I kind of wanted people who like GTK2 to understand that if they want it and think they are adult enough to make their own choices, they have to be tech-savvy enough to build Epyrus themselves, and either pick out a distro that has it, find an RPM packaged by someone else for their preferred distro, or maybe even one day build GTK2 themselves. Basically sort of a nudge towards "If you are on Linux and you want someone to hold your hand, you need to use something better supported. If you want it your way, you will have to build yourself and prove you understand exactly what you're choosing and how to sustain it." That way, we don't have to deal with GTK2 protest forks like a full-on removal would trigger, but also aren't under as much pressure to support GTK2 properly ourselves in the face of an increasingly hostile ecosystem. People who would otherwise make protest forks might submit occasional patches if we're lucky, and if they submit patches for that, they might submit them for other things eventually. I see it as the easiest middle-ground option.
I'm not necessarily against power users who want to use old enterprise distros, custom RPMs, or a self-built GTK2 to get exactly what they want. Those are the kind of GTK2 users that, in my view, are not a problem. I'm mostly uneasy about confused users who aren't that tech-savvy and don't like to see a pixel out of place expecting things to be easy and polished, and having expectations because of how easy GTK2 was to handle in the past and how it "solved" various display issues on Linux. I'm willing to bet more people are using GTK2 for the aesthetics than for NPAPI, honestly.
Discussion in the ATmosphere