0
Files
src/docs/linux/plugins.md
Owen Min 991b14a543 Update dead link of plugin doc
The link to "Gecko Plugin API reference" page is no longer working. The latest one seems to be 
https://developer.mozilla.org/en-US/docs/Plugins/Guide

Update the documentation to use the new URL

Change-Id: Ic75f927e3c607696d752bb365f33dc9531897238
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3212946
Auto-Submit: Owen Min <zmin@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/main@{#929310}
2021-10-07 18:32:15 +00:00

52 lines
2.1 KiB
Markdown

# Linux Plugins
## Background reading materials
### Plugins in general
* [Gecko Plugin API reference](https://developer.mozilla.org/en-US/docs/Plugins/Guide)
-- most important to read
* [Mozilla plugins site](http://www.mozilla.org/projects/plugins/)
* [XEmbed extension](https://developer.mozilla.org/en/XEmbed_Extension_for_Mozilla_Plugins)
-- newer X11-specific plugin API
* [NPAPI plugin guide](http://gplflash.sourceforge.net/gplflash2_blog/npapi.html)
from GPLFlash project
### Chromium-specific
* [Chromium's plugin architecture](https://dev.chromium.org/developers/design-documents/plugin-architecture)
-- may be out of date but will be worth reading
## Code to reference
* [Mozilla plugin code](http://mxr.mozilla.org/firefox/source/modules/plugin/base/src/)
-- useful reference
* [nspluginwrapper](http://gwenole.beauchesne.info//en/projects/nspluginwrapper)
-- does out-of-process plugins itself
## Terminology
* _Internal plugin_: "a plugin that's implemented in the chrome dll, i.e.
there's no external dll that services that mime type. For Linux you'll just
have to worry about the default plugin, which is what shows a puzzle icon
for content that you don't have a plugin for. We use that to allow the user
to download and install the missing plugin."
## Flash
* [Adobe Flash player dev center](http://www.adobe.com/devnet/flashplayer/)
* [penguin.swf](http://blogs.adobe.com/penguin.swf/) -- blog about Flash on
Linux
* [tips and tricks](http://macromedia.mplug.org/) -- user-created page, with
some documentation of special flags in `/etc/adobe/mms.cfg`
* [official Adobe bug tracker](https://bugs.adobe.com/flashplayer/)
## Useful Tools
* `xwininfo -tree` -- lets you inspect the window hierarchy of a window and
get the layout of child windows.
* "[DiamondX](http://multimedia.cx/diamondx/) is a simple NPAPI plugin built
to run on Unix platforms and exercise the XEmbed browser extension."
* To build a 32-bit binary:
`./configure CFLAGS='-m32' LDFLAGS='-L/usr/lib32 -m32'`