Were there ever non-x86 NPAPI plugins?

General project discussion.
Use this as a last resort if your topic does not fit in any of the other boards but it still on-topic.
Forum rules
This General Discussion board is meant for topics that are still relevant to Pale Moon, web browsers, browser tech, UXP applications, and related, but don't have a more fitting board available.

Please stick to the relevance of this forum here, which focuses on everything around the Pale Moon project and its user community. "Random" subjects don't belong here, and should be posted in the Off-Topic board.
User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 492
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Were there ever non-x86 NPAPI plugins?

Unread post by Basilisk-Dev » 2024-02-03, 20:08

Were there ever any non-x86 NPAPI plugins on Linux systems? If so, what were they?

I suppose in theory you could compile GNU GNASH or Lightspark NPAPI plugins for non-x86 systems, but I am moreso asking about official/popular plugins such as Adobe Flash.

If there were not NPAPI plugins for non-x86 architectures, is it even worth compiling UXP applications on non-x86 with the NPAPI support enabled?
Basilisk Project Owner

viewtopic.php?f=61&p=230756

User avatar
Pentium4User
Board Warrior
Board Warrior
Posts: 1327
Joined: 2019-04-24, 09:38

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Pentium4User » 2024-02-03, 20:14

Adobe Flash existed for amd64 (x86_64).
The profile picture shows my Maico EC30 E ceiling fan.

User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 492
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Basilisk-Dev » 2024-02-03, 20:22

Pentium4User wrote:
2024-02-03, 20:14
Adobe Flash existed for amd64 (x86_64).
Sorry if it wasn't implied that x86 included 64-bit x86 as well. I had assumed that the implication was obvious. I was referring to anything that is not x86 compatible in any way (for example, ARM or SPARC).
Basilisk Project Owner

viewtopic.php?f=61&p=230756

User avatar
Pentium4User
Board Warrior
Board Warrior
Posts: 1327
Joined: 2019-04-24, 09:38

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Pentium4User » 2024-02-03, 20:32

IIRC ARM was not used in desktops when NPAPI was widely used.
A version for Solaris on SPARC existed: https://community.adobe.com/t5/flash-pl ... -p/3156210
The profile picture shows my Maico EC30 E ceiling fan.

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1612
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Were there ever non-x86 NPAPI plugins?

Unread post by athenian200 » 2024-02-03, 21:23

I think there was an ARM version of Flash for Chromebooks and Android at one point... don't know how well it would work on modern Linux, though. However, I'm pretty sure there was an ARM version of the old Java NPAPI plugin that might work.

And yeah, Solaris had plenty of NPAPI plugins for SPARC like the guy above me said, but aside from that I don't think many other architectures ever had it. It's mostly an IA-32/AMD64 thing. Maybe there was an Itanium version, but Itanium is pretty dead. On Mac, I do believe PPC had some NPAPI plugins. So really it's mostly older, more established architectures that were once used on desktop. SPARC was used at one point by some Sun workstations, and Mac used to be PPC, and that's why those architectures have NPAPI plugins.

However, right now it's a bad idea to disable NPAPI support because there are a few issues that have been found with my build flag for doing so. For one thing, WebRTC currently depends on NPAPI, and Travis just found that mouse wheel scrolling doesn't work without NPAPI right now either. I'm trying to tracking that latter issue down, and hoping to find a way of fixing that that won't involve adding half the NPAPI back in despite the build option saying it disables it... seems kind of pointless to have a build flag that partially disables NPAPI if there's supposed to be a way to disable it.

But yeah, if you want the "full" experience, the Windows on IA-32/AMD64 version is always likely to be the "flagship" version of the browser because it's the platform on which NPAPI works best. Everything else is kinda compromised and broken in that regard. Linux already has issues with NPAPI due to GTK3 and later, plus Wayland and newer glibc, and the increasing adoption of ARM on Mac is making things more difficult on that platform as well. If AMD64 ever gets fully replaced by ARM or RISC-V, then NPAPI is as good as dead on all platforms.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 37686
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Moonchild » 2024-02-03, 21:53

I did build an x86_64 version of a PDF reader, and there's really nothing stopping anyone from building for ARM, M1SoC, SPARC, Risc or similar. The NPAPI is an API that doesn't care about the actual binary code as long as the API's messaging is followed, it will work.
"A dead end street is a place to turn around and go into a new direction" - Anonymous
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1612
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Were there ever non-x86 NPAPI plugins?

Unread post by athenian200 » 2024-02-03, 22:37

That's a good point. I guess if we want NPAPI to have a future, there need to be more open source NPAPI plugins that can be compiled on newer platforms. The API itself isn't the problem, the problem is that most of the stuff people want to use on it is commercial binaries that are no longer produced.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
Pentium4User
Board Warrior
Board Warrior
Posts: 1327
Joined: 2019-04-24, 09:38

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Pentium4User » 2024-02-04, 07:36

athenian200 wrote:
2024-02-03, 22:37
That's a good point. I guess if we want NPAPI to have a future, there need to be more open source NPAPI plugins that can be compiled on newer platforms. The API itself isn't the problem, the problem is that most of the stuff people want to use on it is commercial binaries that are no longer produced.
Because FF and Chrome don't support it anymore, almost all vendors discontinued it.
I don't think there will be something new here.
The profile picture shows my Maico EC30 E ceiling fan.

mrnhmath
Fanatic
Fanatic
Posts: 128
Joined: 2017-06-21, 02:37

Re: Were there ever non-x86 NPAPI plugins?

Unread post by mrnhmath » 2024-02-04, 16:53

Pentium4User wrote:
2024-02-04, 07:36
I don't think there will be something new here.
People are also generally unaware of the existence of a truly independent web engine and platform. yet here we are. We just need to get interested parties aware of the potential of the NPAPI technology.

User avatar
Pentium4User
Board Warrior
Board Warrior
Posts: 1327
Joined: 2019-04-24, 09:38

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Pentium4User » 2024-02-04, 18:57

mrnhmath wrote:
2024-02-04, 16:53
Pentium4User wrote:
2024-02-04, 07:36
I don't think there will be something new here.
People are also generally unaware of the existence of a truly independent web engine and platform. yet here we are. We just need to get interested parties aware of the potential of the NPAPI technology.
Te question is just: Which benefit does it provide?
Adobe Flash prospered at a time when browsers weren't able to play videos.
Now HTML 5 exists.
Most browsers also support PDF viewing inside them - other people can still use their favorite PDF reader.

Which use-cases you think about?
The profile picture shows my Maico EC30 E ceiling fan.

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1612
Joined: 2018-10-28, 19:56
Location: Georgia

Re: Were there ever non-x86 NPAPI plugins?

Unread post by athenian200 » 2024-02-04, 20:12

Pentium4User wrote:
2024-02-04, 18:57
Te question is just: Which benefit does it provide?
Adobe Flash prospered at a time when browsers weren't able to play videos.
Now HTML 5 exists.
Most browsers also support PDF viewing inside them - other people can still use their favorite PDF reader.

Which use-cases you think about?
When it comes to Flash, I don't really think HTML5 is a good replacement for everything Flash can do, but Ruffle's ability to simulate it using WebAssembly comes a lot closer, so the argument has merit even if we disagree on the specifics of what counts as a replacement for Flash player.

There's also stuff like Silverlight, Shockwave, Java applets, the Unity web player, plus more obscure uses.

Having to rely on a PDF reader as functionality baked into the browser rather than having a selection of optional extensions is antithetical to our philosophy, but it does raise another point... couldn't a PDF reader just be implemented as a XUL extension rather than an NPAPI plugin? It's an interesting thought.

One use case I am considering, is using an NPAPI plugin to recreate a modern IE Tab using WebView2. Though honestly I'd rather put that effort into improving UXP itself, it is something that is on my agenda to try some day. The point is, it does offer ways of adding functionality to the browser without having to bake things into the codebase. So far the benefits are only theoretical, because it's just being used to load legacy plugins, but in theory there might even be ways of adding newer technologies we can't license as open source into the browser as optional NPAPI plugins with different licensing.

All that said, it is becoming a huge maintenance burden, particularly on Linux, and it doesn't seem to have a bright future for the reasons you stated.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
kjpod
Newbie
Newbie
Posts: 5
Joined: 2024-05-18, 01:06

Re: Were there ever non-x86 NPAPI plugins?

Unread post by kjpod » 2024-05-18, 03:19

Basilisk-Dev wrote:
2024-02-03, 20:08
Were there ever any non-x86 NPAPI plugins on Linux systems? If so, what were they?

I suppose in theory you could compile GNU GNASH or Lightspark NPAPI plugins for non-x86 systems, but I am moreso asking about official/popular plugins such as Adobe Flash.

If there were not NPAPI plugins for non-x86 architectures, is it even worth compiling UXP applications on non-x86 with the NPAPI support enabled?
I have no Idea how possible to cross port NPAPI code (I am not a "real" programmer)
so why am I interrupting is because PDF plug-ins of that era included SumatraPDF which has windows x86/64 plug-in ability that still works with daily updates in Basilisk and Pale Moon and Kameleon
It now has an ARM variant HOWEVER I have no idea if the source code for Windows.dll is portable to ARM
apparently SumatraPDF is reasonable in Linux Wine but never heard if that worked with Linux Browsers with or without Wine interface

jb_wisemo
Moonbather
Moonbather
Posts: 67
Joined: 2016-01-27, 02:09

Re: Were there ever non-x86 NPAPI plugins?

Unread post by jb_wisemo » 2024-10-23, 12:12

Just 2 more data points:

1. There is (or was) a generic Linux NPAPI plugin that could wrap every external program / protocol handler listed in the Linux MIME configuration. This covered PDF and any other file format that had an installed viewer, and could probably be told to also wrap protocol handlers such as telnet and ssh . This was open source and available for most/all architectures that had an XFree86 port .

2. I happen to co-maintain an NPAPI plugin (still only 32 bit x86 for Windows) that provides the client/viewer for a remote screen/desktop protocol. The plugin is currently Win32 only because it was originally created in the early 2000s as the Firefox/Netscape port of an IE plugin that doubled as a "custom control" for higher level languages . This task is the reason I started using Pale Moon at all .

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 5592
Joined: 2015-12-09, 15:45

Re: Were there ever non-x86 NPAPI plugins?

Unread post by moonbat » 2024-10-23, 12:46

kjpod wrote:
2024-05-18, 03:19
I have no Idea how possible to cross port NPAPI code
It needs to be built separately for each platform and architecture that it's meant to support. So these days it's Windows/Mac/Linux and 32 or 64 bit, so it would need 6 separate binaries to cover all platforms in current use (Assuming there is or was a 32bit version of Mac OS in use today)
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
KDE Neon on a Slimbook Excalibur (Ryzen 7 8845HS, 64 GB RAM)
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX
Jabber: moonbat@hot-chili.net

User avatar
UCyborg
Lunatic
Lunatic
Posts: 362
Joined: 2019-01-10, 09:37
Location: Slovenia

Re: Were there ever non-x86 NPAPI plugins?

Unread post by UCyborg » 2024-10-23, 16:45

athenian200 wrote:
2024-02-04, 20:12
Having to rely on a PDF reader as functionality baked into the browser rather than having a selection of optional extensions is antithetical to our philosophy, but it does raise another point... couldn't a PDF reader just be implemented as a XUL extension rather than an NPAPI plugin? It's an interesting thought.
But then you get the same old PDF.js or you reinvent your own in JavaScript (yikes!). Some ancient version of it already exists as extension that works in UXP browsers and SeaMonkey. But with NPAPI you can get something like PDF-XChange Editor in the browser.

User avatar
Basilisk-Dev
Lunatic
Lunatic
Posts: 492
Joined: 2022-03-23, 16:41
Location: Chamber of Secrets

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Basilisk-Dev » 2024-10-23, 23:49

jb_wisemo wrote:
2024-10-23, 12:12
There is (or was) a generic Linux NPAPI plugin that could wrap every external program / protocol handler listed in the Linux MIME configuration. This covered PDF and any other file format that had an installed viewer, and could probably be told to also wrap protocol handlers such as telnet and ssh . This was open source and available for most/all architectures that had an XFree86 port .
Can you provide a link or more info?
moonbat wrote:
2024-10-23, 12:46
So these days it's Windows/Mac/Linux and 32 or 64 bit, so it would need 6 separate binaries to cover all platforms in current use (Assuming there is or was a 32bit version of Mac OS in use today)
For MacOS you'd want 64-bit x86 and 64-bit ARM.
Basilisk Project Owner

viewtopic.php?f=61&p=230756

User avatar
Kruppt
Moonbather
Moonbather
Posts: 59
Joined: 2018-07-23, 22:32

Re: Were there ever non-x86 NPAPI plugins?

Unread post by Kruppt » 2024-10-25, 01:42

Basilisk-Dev wrote:
2024-10-23, 23:49
Can you provide a link or more info?
I think he is referring to mozplugger:
https://github.com/unix-junkie/mozplugger

jb_wisemo
Moonbather
Moonbather
Posts: 67
Joined: 2016-01-27, 02:09

Re: Were there ever non-x86 NPAPI plugins?

Unread post by jb_wisemo » 2025-03-14, 16:10

Kruppt wrote:
2024-10-25, 01:42
Basilisk-Dev wrote:
2024-10-23, 23:49
Can you provide a link or more info?
I think he is referring to mozplugger:
https://github.com/unix-junkie/mozplugger
Bingo!