I have been following the following firebreath tutorial:
http://www.firebreath.org/display/documentation/Mac+Video+Tutorial
And in the second video, After i have built my plugin and i am including the ScreenTutorialPlugin.plugin file in the /Library/Internet/Plug-ins section, it doesn't show in firefox, when i go check it in about:plugins, it just doesnt show. But in the terminal when i go check /Library/Internet/Plug-ins, it does show.
when i open a plugin file and it opens in the browser, it says that the plugin doesnt work.
i think this has to do with the file linking part ln -s in the /plug-ins section.
or could the reason be that i use 3 different browsers? safari,firefox and chrome.
Thank you
With the information provided it is difficult to be certain what your issue is, but here are a few things to consider / understand:
FireBreath plugins are NPAPI plugins and thus should work on all three of the browsers you mentioned
The path where it should be installed is "/Library/Internet Plugins", not "/Library/Internet/Plugins" and if you have actually placed it in the latter directory as you indicated and that isn't a typo then this is definitely part of your issue
using ln -s should work if you create a symlink to the actual .plugin directory, but if it doesn't you can always try copying the file itself
If everything built correctly you should have a binary called (plugin name).plugin/Contents/MacOS/(plugin name) where (plugin name) is the name of your plugin
Hopefully some of this helps; if it doesn't, please provide more information about what you have tried and we'll try to help some more. What you are doing definitely should work -- I use plugins created by FireBreath on Mac every day.
Related
I have followed a couple different links that show how to package Firefox extensions. In cfx, my extension runs exactly how I want it. I made my install.rdf and zipped my files, changing the file type to xpi. When I install it in live Firefox, it shows up in my installed extensions, but nothing happens. I have also tried just using the base install.rdf that they post as a sample, but no luck. What am I missing here?
Here's one guide I've been working off of.
You should be using cfx xpi to package your addons, not the docs you pointed to. As #Noitidart pointed out, there are reasons to unpackage that xpi file and repackage it, and that is mentioned in the above link.
There are three ways to make extensions for Firefox. When you're using the add-on SDK (one of the ways), make sure all the docs you're reading are under the developer.mozilla.org/en-US/Add-ons/SDK/ path.
Note that Firefox is making the move from cfx to jpm, so unless you need your extensions to be available on AMO very soon, you should use jpm.
Maybe this tutorial is out of date( it was written in 2009),but I cannot find a better one. While following it step by step, I was stuck at Loading a Plugin section. Apple mail failed to load the plugin.
here is a screenshot of Console's information.
Has anybody else tried to follow this tutorial on OS X 10.9 recently?
////////////////////update/////////////////////////
It seems "~/Library/Mail/Bundles/MyPlugin.mailbundle/Contents/Frameworks/Python.framework/Versions/2.7/python" needs code signing.
Yes, this is a sandbox problem: Python Mail plug-ins (and I think all plug-ins) cannot read files outside of their container (the Plugin.mailbundle directory).
If you followed the instructions on the tutorial page you mention, you are probably building an alias build of the plug-in (using python setup.py py2app -A), which means that the plug-in will try and access files from the original source location, which is almost always outside of the sandbox (in your case, it's /Users/greedyint/Desktop).
Try running without -A to make a full build.
In anticipation of making some modifications to ckeditor, I'm trying to build it from source, as described in the documentation here. I want to build a version that is, as nearly as possible, identical to the version I already have installed on my production web server, so there won't be any surprises when I deploy my modified version later. Here are the steps I've followed:
Clone the git repository
git checkout 4.3.3 (this is the version on the production server)
copy the build-config.js from the production server to ckeditor-dev/dev/builder/ (my production version came from the online builder; the config is at http://ckeditor.com/builder/059ce76c63ea2ff01636265c46f713c5)
cd dev/builder ; ./build.sh
there were complaints about missing plugins (scayt and wsc) so I downloaded them as zip files (scayt_4.3.3.zip and wsc_4.3.3.zip) and unzipped them in ckeditor-dev/plugins
tried ./build.sh again
It apparently completed successfully, but the result in release/ckeditor is not a match for the production version as I had hoped. It contains a lot of plugins that I didn't ask for, and I know they're not dependencies of plugins I did ask for because the production version works fine without them. For example, I have release/ckeditor/plugins/adobeair which is not mentioned in my build-config.js.
The main ckeditor.js file is not a match for the production version either. i can see that part of the reason is that there is a different timestamp and version string ("4.3.3 DEV"), but there are lots of other changes too, which I can't easily examine because it's minified. And I can't really trust that this file was built correctly, since the plugin list wasn't built correctly. Also I can't break the build process down into smaller steps find out what it's doing because there's no source.
In a desperate move to try to understand what's going on, I reduced the plugin list in build-config.js to just the about plugin and ran ./build.sh again. This caused release/ckeditor/plugins to get even bigger!
Can anyone explain why the build.sh can't give me anything close to the version I downloaded from the online builder?
(By the way, this question is here instead of on the CKEditor support forum because they wouldn't let me post it there. Called me a spammer!)
CKBuilder which is used by the build script in https://github.com/ckeditor/ckeditor-dev is exactly the one which is used by http://ckeditor.com/builder. The difference is caused by different arguments passed to it.
By default CKBuilder adds all plugins, even those omitted in build-config.js, to the package, although it doesn't merge them into the ckeditor.js. They are available to be enabled on demand. So ckeditor.js is not bigger than that downloaded from http://ckeditor.com/builder.
To build a package with only those plugins which you specified in build-config.js pass -s option to the build script:
> ./dev/builder/build.sh -s
You can also check other options:
> ./dev/builder/build.sh --help
As you'll find there it is possible to change the version, leave JS and CSS unminified etc.
PS. Sorry for the spam filter on forum.
I used prep script to generate my first plugin project, build the plugin and create a symlink in ~/Library/Internet Plugins/(exactly as the mac tutorial videos show). Every time I start a browser(Firefox, Chrome or Safari) and then close it, Xcode always alerted me that "the project file "~.xcodeproj" is modified but was changed externally. Keep this version or read from disk?"
I just can't figure out why?
So first of all, just for clarity, this is either a cmake issue or an xcode issue, not a FireBreath issue. I have never seen it happen before. The main thing I would try is to delete the build/ directory entirely and then re-run the prep script (which just runs cmake) and see if the problem persists.
If it does, most likely it's something odd with your computer configuration, and specifically your xcode configuration. :-/ I wish I could give you a better suggestion. You're also welcome to drop into the #firebreath IRC room at http://npapi.com/chat and we'll try to help you there.
i flow firebreath doc, create a symlink of plugin to ~/Library/Internet Plugins, but safari and firefox all not load the plugin.
but i cp the plugin package to ~/Library/Internet Plugins, and all browsers work.
I have a very old (1992) browser plugin for a mac that works in several different browsers. However, since Firefox restricted its plugins to XPI files in Firefox 3.6, the plugin no longer works.
I haven't been able to find a useful document describing what I need to do to my plugin to make it an XPI, or at least loadable by firefox, can anyone point me at such a document? or just explain to me what I need to do? I'm using Xcode.
Brain; the problem is most likely that in Firefox 3.6 they removed support for XPCOM interfaces on npapi plugins. you need to use npruntime instead.
http://colonelpanic.net/2010/01/firefox-3-6-has-removed-support-for-xpcom-plugins/
You could also consider using FireBreath to rewrite it with, as that abstracts a lot of the details.
So if this is an NPAPI plugin, you can just create a simple XPI (it's a ZIP file):
your-plugin.xpi/
install.rdf
plugins/
your-plugin.dylib
This follows from the https://developer.mozilla.org/en/Bundles page I linked earlier.
You can create the install.rdf by reading and following the install.rdf reference page on MDC or just generate a stub extension using something like
Extension Wizard (here's a "more official" version on addons.mozilla.org, but I haven't used that) and take the install.rdf from it.
You should probably limit the extension to Mac in your install.rdf (for that you'll have to read the install.rdf reference).
[original answer was:] What technology does the plugin use? XPI is a packaging mechanism; the answer to your question depends on whether the technology you use is still supported in Firefox 3.6.
I didn't think there were cross-browser plugin technologies, that worked in 1992 and are still in use now, so it's hard to guess what kind of plugin you're talking about.