Firefox disable recommended extensions

Firefox apparently is trying to jump the shark with even more pocket-esque behavior. This is why I install Pale Moon (and its Linux page) on my new builds instead of Firefox.

I normally schedule my posts, in case you couldn’t tell, for the morning of every fourth day. But this post is going out immediately.

Disable Firefox’s “Contextual Feature Recommender” with this entry in prefs.js:

user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr", false);

You can extrapolate the about:config option.

Other places on the Internet show you how to do it through the gui if you prefer.

References

My own research (diff prefs.js prefs.js.old)

Advertisements

Firefox trust system trusted certificates

Mozilla maintains its own certificate store mechanism (nss), and eschews the system trust store.

Somehow, my Fedora systems that are joined to freeipa work correctly with my ipa certs. I suspect Fedora compiles firefox with the directive to read the /etc/ipa/nss directory. On Devuan I have not had success with that location, nor /etc/pki/nss. All of this is still a bit voodoo to me, and it’s sad that Firefox trusts [techrepublic.com] the Windows system trusted root cert store but not the GNU/Linux one.

To programmatically add your root ca certs to the existing firefox profiles, use a shell scriptlet lifted from firefox – Programmatically Install Certificate Into Mozilla [stackoverflow.com]:

certificateFile="MyCa.cert.pem"
certificateName="MyCA Name" 
for certDB in $(find  ~/.mozilla* ~/.thunderbird -name "cert8.db")
do
  certDir=$(dirname ${certDB});
  #log "mozilla certificate" "install '${certificateName}' in ${certDir}"
  certutil -A -n "${certificateName}" -t "TCu,Cuw,Tuw" -i ${certificateFile} -d ${certDir}
done

For new users, you probably need to do this to /etc/skel/.mozilla/firefox/*.default.

Getting Firefox and Java to work with jnlp files

If you are having trouble opening a jnlp file (e.g., for IPMI console access) you can try some of these steps.

Tell Firefox to allow pop-up windows for this site

Tell Firefox how to handle the filetype .jnlp

Tell it to open it with /usr/bin/javaws

Tell Java to allow the site to run applications

If you get “Application Blocked by Java Security” you can fix that by editing an exceptions list.

Modify file ~/.java/deployment/security/exception.sites

Each line in this file should be a protocol and domain name or IP address for the exception, e.g.:

http://172.20.0.19
http://172.20.0.20

References

  1. https://java.com/en/download/faq/java_webstart.xml
  2. https://stackoverflow.com/questions/25949651/openjdk-how-to-add-site-to-exception-list#25950032

Firefox disable don’t load tabs until selected

tl;dr

about:config
browser.sessionstore.restore_on_demand = False

Explanation

When I tell my browser to run, I want it to load all of my previous tabs, as well as actually load the tabs. When I switch to it, it should be fast, because it as already loaded the content. I don’t want it to flash and load upon my selecting the tab; it should already do that!

There used to be an option in Firefox’s preferences for changing this, but it was removed from the gui. But it’s still there in about:config.

References

Weblinks

https://bugzilla.mozilla.org/show_bug.cgi?id=711193#c63

Cannot create items in Google Calendar

If you use Google Calendar in Firefox, you might be unable to add calendar items. It displays this error: “Oops, we couldn’t create this event, please try again in a few minutes.”

A workaround was discovered by a user on the Google Calendar Help Forum.

harpseal said:

I think I found an answer. Delete the google calendar specific cookies and reload. After I did this it lets me create events. YAY! Hope this works for others.

References

Weblinks

  1. https://productforums.google.com/d/msg/calendar/8513S6SqGBY/KiubCBSKBwAJ

Disabling firefox detect captive portal

Story

While working on a dns server on my virtual network, I was tailing the named logs in journald, and I saw a request go through:

detectportal.firefox.com

I thought to myself, “What is that?” I ddged it and found that was a function in firefox that tries to detect if it’s in a captive portal, like at a hotel or other public wifi where you must agree to something before you can access the World Wide Web.
I realize that it is probably fine for firefox to do this, but it’s not necessary. I don’t want my browser doing anything of the sort. I will tell what and when to visit web URLs.

Disabling firefox detect captive portal

In firefox, visit about:config and search for captive.
You can change the values. The easiest one to change is the network.captive-portal-service.enabled. You can change this boolean value to false by double-clicking it.

References

Weblinks

  1. https://bugzilla.mozilla.org/show_bug.cgi?id=1307867

Add extension to firefox as default

Overview

I am building a rpm containing my custom config files for myself. In the course of doing so, I wanted to add an extension to firefox because I want to use it all the time. I wanted an extension to be automatically installed in Firefox for a new user profile.

I had to go learn how to do it. This document shows how to do just that.

Add extension to firefox as default in GNU/Linux

You need to get the extension ID of the extension. You can get the extension id by opening the xpi file in an archive opener (on xfce I used the default Xarchiver) and examining install.rdf. The tag is <em:id>.

Name the file “tag.xpi,” e.g., “{52c2877e-44e1-11e5-8874-a62d1d5d46B0}.xpi.”

Place this file in /usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ directory. Chmod to 0644 and chown root:root.

How not to do it

I started this task for Firefox actually as a way to have all my settings made available, similar to what this person does: https://github.com/jamielinux/securemymozilla. I eventually made my way to what extensions I want to have present (because the Korora guys can do it). So I started looking at ~/.config. Well, I learned Firefox uses ~/.mozilla/firefox/.
I eventually learned that Korora installs its default firefox extensions (xclear and uBlock origin) to /usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ directory. There was a weird hashed extension (extension being a .xpi file I remember from a decade ago, in my Windows days, so I know what they are), as well as two named xpi files: xclear and uBlock. I eventually figured out (by using Firefox to try to open) the hashed file: It was the default firefox theme.
I downloaded the xpi file of my choice (Remove It Permanently) but I couldn’t get it to actually load in a new firefox profile. You can force a new firefox profile by deleting ~/.mozilla/firefox/profiles.ini and ~/.mozilla/firefox/987654321.default/.

References

Weblinks

  1. Useful for other customization of firefox https://developer.mozilla.org/en-US/Firefox/Enterprise_deployment
  2. Most helpful, from search “Linux add default extension to firefox” https://developer.mozilla.org/en-US/Add-ons/Installing_extensions
  3. Interesting but didn’t use https://mike.kaply.com/2010/08/05/creating-a-customized-firefox-distribution/
  4. Also interesting but not helpful here https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Customizing_Firefox
  5. Pointed me in the right direction https://github.com/kororaproject/kp-mozilla-xclear/blob/master/build/mozilla-xclear.spec
  6. Cool project that inspired me https://github.com/jamielinux/securemymozilla

People

Korora developers in #korora irc channel on freenode