Merge Mozilla Addon to Build - firefox

I am working on a few addons on Mozilla since this easier than manually editing the source code.
The bigger picture is to have a customized browser that I can share with my fellow geeks and friends.
Question:Is there a simple way to add an addon to a Mozilla build so that my users don't have to manually install the addons on their computer.Something like a pre-packaged Setup.exe. The Setup.exe needs to be fully independent and not requiring to have Mozilla pre-installed.
More info(Edited):
Another reason is I do not want them to have access to the addons ,
the addons shouuld be in the core of the browser.Hence, a user should
not be able to turn off or even know it is an addon but barely the
functionality of their browser X.

You may want to use Portable Firefox, make your customizations and share the folder with your friends.
http://portableapps.com/apps/internet/firefox_portable

Related

Desktop application using Firefox WebExtensions

I am working on a XUL desktop application, where I use the browser tag and load a URL in that tag within the desktop application.
However, some websites display as old format and according to Mozilla, XUL is deprecated and will not be useable at the end of 2017. I want to build the application with the latest technology: WebExtensions.
I have searched many examples on the usage of WebExtensions, but all are working within the browser. Can I make a standalone desktop application just like XUL, but using WebExtensions?
If yes, then please give me some hints on how to get started.
If no, is any alternative for the same requirement available?
Webextensions are fairly limited in their scope. Even if there was an application runtime utilising them, you probably wouldn't get much use out of them due to the restrictive isolation from the host system.
Strictly speaking not webextensions, albeit very similar:
The Electron framework/runtime*
Someone at Mozilla is also working on an alternative dubbed "Positron"** though that software's future is uncertain and there is a chance he might abandon it for an entirely new, highly simplified project (at least that's what I gathered from my conversation with him on Github).
*http://electron.atom.io/
**https://github.com/mozilla/positron

Chrome Portable on read only device: Suppress read only warning

I'm making a windows app for a client using Chrome in kiosk mode. They'd like to burn the project to CD. While this works fine with chrome portable on a read access device it doesn't with a read only device. A warning pops up asking to temporarily copy it to the local drive to run from there. Clicking yes allows the program to work but i'd like to suppress this as they won't want to see it every time. Is there a way for me suppress the warning or cache to the cd before it's burned?
I need to use chrome, not another portable browser. I could be being naive and they're may be a better option than using Portable apps chrome download.
I asked the same question on the Portable apps website and got this response. It worked great although take note of the distribution license.
Add a text file called GoogleChromePortable.ini in your GoogleChromePortable folder that says
[GoogleChromePortable]
RunLocally=true
this will make it copy the profile to the temp folder on the computer and run from there whether it's in read only place or not.
also notice Johns reminder in Pyromaniac's thread (http://portableapps.com/node/37168#comment-207403) - giving someone, especially a "customer" a copy of Google Chrome, Portable or otherwise, is illegal, don't do it.
Link to forum
http://portableapps.com/node/37164#comment-207482
I've investigated the license agreement and found this
21.2 Subject to the Terms, and in addition to the license grant in Section 9, Google grants you a non-exclusive, non-transferable license to reproduce, distribute, install, and use Google Chrome solely on machines intended for use by your employees, officers, representatives, and agents in connection with your business entity, and provided that their use of Google Chrome will be subject to the Terms.
So legal as long as it's kept internal. Works great if anyone ever stumbles on this question. Chrome makes an awesome portabl app.
To get around user policies you can try a pretty software does what you want.
http://codecanyon.net/item/html5-2-desktop-app-converter/4527199
This uses chrome engine and creates kiosk like portable engine for your given URL or local files. It makes pages looking like windows application. Hope helps.
Note: I'm not the author :)
Here's a link to where I got something that worked for me.
In the Support section, there is a performance note that advices copying GoogleChromePortable.ini from the GoogleChromePortable\Other\Source directory to the GoogleChromePortable directory and editing it to set RunLocally=true in order to increase performance, well this sorts out the warning that pops up.
However take note of the privacy implications of doing this as also stated in the same section.
Hope this helps someone.
You could try Chromium (portable) which also includes chromedriver from chromium snapshots page. Pick one with the biggest number (scroll down):
https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Win_x64/

Browser cleanup like CCleaner using VB.NET

I'm working on a VB.NET application and I need to delete all cookies, Internet caches and auto-complete keywords from all browsers found in the system. What are the folders I should be deleting content from?
Thank you.
Install any browser you want to support in your app and then check where it stores the data you want to delete. Also check the documentation of the browser (path might depend on OS, whatever).
Since it's easy to write your "own" browser (using 3rd party rendering engine), you will never be able to support all browsers found in the system.

Password protect uninstallation of Firefox Addon using SDK

Background to this problem: Within out company we are working on an add-on to help us do some nifty things. To make it easier to administer we would like to have a password required to at minimum remove the add-on, but probably also to disable it.
I've seen this achieved in for example Public Fox but this is non-sdk style add-on. So my question is if there's an easy way to do this using the SDK? I've looked through the docs but I haven't found anything, probably because I don't know what I'm looking for.
To anticipate the question "why not use that add-on as well?" I think it's enough of a hassle to make sure everyone has one add-on installed, let alone two.
If you want to lock users down, what you're really looking for is a deployment technique where your Firefox deployment installs your extension by default, and to an area of the hard drive that the user does not have write/delete access to. See the Mozilla Wiki for more details on ESR builds and enterprise deployments:
https://wiki.mozilla.org/Deployment:Deploying_Firefox#Firefox_Customization_.28CCK_and_Repackaging_Tools.29

Are there any standard one-click install/lauch mechanisms for the web?

The reason I ask is mostly due to how Google Chrome installation works once you click the "Accept and install" button from Firefox. After you click the installation is started directly and when it's completed Chrome itself starts up.
Firefox does not show any "Save" or "Confirm" dialogs after you click the Install button (on Chrome install web page).
Now, is this standard behaviour? Or might it be due to having an old version of Chrome already on the computer (Note: The new version was still installed from Firefox).
Seems a bit risky to me, all you have to do is fool the user to click something and then you can do whatever you want on his machine, or? Personally I thought things like this only worked with IE/ActiveX.
Looking at the code of the chrome download page, they seem to be using three mechanisms:
Standard download
OneClick (using the google updater plugin)
ClickOnce (using the .NET Framework assistant plugin)
ClickOnce is widely available due to the pervasiveness of .NET 3.5 SP 1 (in which it is bundled).
This is absolutely not standard behaviour. It looks like it is some kind of extension in Firefox. This will not work in Opera, IE or Safari. For those they might use different methods. For IE maybe ActiveX. The rest just downloads a small setup file.
Microsoft has a propritary solution which is always included in their development programs, called ClickOnce. It needs .NET Framework. .NET Framework installs a Firefox extension for ClickOnce, and for everything else you can just run the setup.exe.
Google's updater is standard and open source, (called Omaha) but there are no open source server implementations as yet. It can be found here.
The way I understand it working is that when you download a file you trigger the updater with an ID and it takes care of the installation and maintenance of the program.
(speculative) I suspect the old installation or rather its updater took over at that point. As for the risk: If the Chrome guys did their homework (and I suspect they have), then Chrome will check for signatures on the file, etc. before running anything. That's standard behavior for updaters (sane ones, at least) and prevents abuse at that point.

Resources