First Beta of CCK2 2.1 Available

The first beta of the next CCK2 is available here.

This upgrade has three main areas of focus:

  1. Support for the new in content preferences
  2. Remove the need for the distribution directory (except in the case of disabling safe mode)
  3. Support for new Firefox 38 features (not done yet).

Removing support for the distribution directory was a major internal change, so I would appreciate any testing you can do.

My plan is to finish support for a few Firefox 38 specific features and then release next week.

Please note: I reserve the right to delete comments that are offensive or off-topic.

Leave a Reply

Your email address will not be published. Required fields are marked *

38 thoughts on “First Beta of CCK2 2.1 Available

  1. Maybe this is a stupid question: But if the distribution-folder is not supported, where am I supposed to copy the addon to, after I created it?

    • Same question here. We roll out the FF via 3rd party software distribution and we’re using the “distribution” way of implementing our customizations.

    • The distribution directory still works and you can use the same method you’ve been using until Firefox 40.

      After that, using the AutoConfig method is going to be the primary way to deploy your customizations, so you would select “AutoConfig” at the end of the wizard and unzip the autoconfig.zip into the location of the EXE on Windows or into the Contents/Resources directory on Mac.

      I’ll do a detailed post about this on Tuesday.

  2. Hello Michael,

    i get the following Error when starting Firefox and importing Certificates:

    Unable to install resource://My-Configuration/certs/cert.crt

    errorCritical@resource://cck2/CCK2.jsm:885:13
    observe@resource://cck2/CCK2.jsm:571:21
    DIST_checkCustomizationComplete@resource:///modules/distribution.js:352:7
    DIST_applyBookmarks@resource:///modules/distribution.js:214:1
    onComplete@jar:file:///Program%20Files%20(x86)/Mozilla%20Firefox/browser/omni.ja!
    /components/nsBrowserGlue.js:1329:17
    Handlerprototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules
    /Promise-backend.js:867:23
    this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules
    /Promise-backend.js:746:7
    this.PromiseWalker.scheduleWalkerLoop/ resource://gre
    /modules/Promise-backend.js:688:37

    Thanks for your great work!

    Alex

      • setting up test now. I did notice that after clearing the 6 errors for the 6 certs that it did not show the errors again the next time that I launched the browser. Will post shortly the findingw with the new cck2

        • Below are the errors on 3 of the 6, all appear the same. These all worked with ESR 31.x with no issues. I am assuming the path is somehow read differently as when it gets setup in autoconfig it places the certs in C:\Program Files (x86)\Mozilla Firefox\38.0.1PE\resources\certs where the resource is calling from just 38.0.1PE/certs.

          Unable to install resource://38.0.1PE/certs/dcsops1.monmouth.army.mil.crt – [Exception… “Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIIOService2.newChannelFromURI]” nsresult: “0x80040111 (NS_ERROR_NOT_AVAILABLE)” location: “JS frame :: resource://cck2/CCK2.jsm :: download :: line 947” data: no]

          errorCritical@resource://cck2/CCK2.jsm:885:13
          observe@resource://cck2/CCK2.jsm:571:21
          DIST__checkCustomizationComplete@resource:///modules/distribution.js:352:7
          DIST_applyBookmarks@resource:///modules/distribution.js:214:1
          onComplete@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/omni.ja!/components/nsBrowserGlue.js:1329:17
          Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:867:23
          this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
          this.PromiseWalker.scheduleWalkerLoop/ resource://gre/modules/Promise-backend.js:688:37

          Unable to install resource://38.0.1PE/certs/DoDCLASS3RootCA.crt – [Exception… “Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIIOService2.newChannelFromURI]” nsresult: “0x80040111 (NS_ERROR_NOT_AVAILABLE)” location: “JS frame :: resource://cck2/CCK2.jsm :: download :: line 947” data: no]

          errorCritical@resource://cck2/CCK2.jsm:885:13
          observe@resource://cck2/CCK2.jsm:571:21
          DIST__checkCustomizationComplete@resource:///modules/distribution.js:352:7
          DIST_applyBookmarks@resource:///modules/distribution.js:214:1
          onComplete@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/omni.ja!/components/nsBrowserGlue.js:1329:17
          Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:867:23
          this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
          this.PromiseWalker.scheduleWalkerLoop/ resource://gre/modules/Promise-backend.js:688:37

          Unable to install resource://38.0.1PE/certs/DoDRootCA2.crt – [Exception… “Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIIOService2.newChannelFromURI]” nsresult: “0x80040111 (NS_ERROR_NOT_AVAILABLE)” location: “JS frame :: resource://cck2/CCK2.jsm :: download :: line 947” data: no]

          errorCritical@resource://cck2/CCK2.jsm:885:13
          observe@resource://cck2/CCK2.jsm:571:21
          DIST__checkCustomizationComplete@resource:///modules/distribution.js:352:7
          DIST_applyBookmarks@resource:///modules/distribution.js:214:1
          onComplete@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/omni.ja!/components/nsBrowserGlue.js:1329:17
          Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:867:23
          this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
          this.PromiseWalker.scheduleWalkerLoop/ resource://gre/modules/Promise-backend.js:688:37

            • It is 38.0.1PE
              I utilize FF Version and the version of FF I am creating for Internal use (Proxy Exception) If changing the . to _ in the title would fix the issue, I would have no problems with that, just should get documented somewhere.

              Thanks

              • No, dots should work (and they worked for me).

                Can you try navigating to resource://38.0.1PE/certs/dcsops1.monmouth.army.mil.crt in the URL bar and telling me what it does?

                • After pasting it in the URL bar and selecting paste and go it does nothing.. just sits there, no spinning, no waiting, no nothing. I created a config without the . and get the same result. Does the resource:// tell it to go to the version/resources/certs folder or is it just trying to look in a version/certs folder(that does not exist).

                  Unable to install resource://3801PE/certs/dcsops1.monmouth.army.mil.crt – [Exception… “Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIIOService2.newChannelFromURI]” nsresult: “0x80040111 (NS_ERROR_NOT_AVAILABLE)” location: “JS frame :: resource://cck2/CCK2.jsm :: download :: line 947” data: no]

                  errorCritical@resource://cck2/CCK2.jsm:885:13
                  observe@resource://cck2/CCK2.jsm:571:21
                  DIST__checkCustomizationComplete@resource:///modules/distribution.js:352:7
                  DIST_applyBookmarks@resource:///modules/distribution.js:214:1
                  onComplete@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/omni.ja!/components/nsBrowserGlue.js:1329:17
                  Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:867:23
                  this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
                  this.PromiseWalker.scheduleWalkerLoop/ resource://gre/modules/Promise-backend.js:688:37

                  • Just FYI.. I can go to file open and hit the cert at ..
                    file:///C:/Program%20Files%20%28×86%29/Mozilla%20Firefox/3801PE/resources/certs/dcsops1.monmouth.army.mil.crt

                  • So the way things are supposed to work is that I’m registering a new resource protocol that points to the directory where the certs are.

                    So resource://3801PE/certs/dcsops1.monmouth.army.mil.crt is pointing to the CERT file in 3801PE\resources\certs in your Firefox directory.

                    The fact that you are getting nothing when you enter that URL means the resource URL isn’t registering.

                    Can you check the Firefox browser console (Ctrl+Shift+J) and see if there is an error at startup? Also the error when you enter the resource URL? Also, can you verify that path exists in your Firefox directory?

                    Sorry for the hassle here.

                    • Could not read chrome manifest ‘file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/chrome.manifest’.
                      mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create Preferences.jsm:556:0
                      Could not read chrome manifest ‘file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/extensions/%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D/chrome.manifest’.
                      “[CustomizableUI]” “Custom widget with id loop-button does not return a valid node” CustomizableUI.jsm:167
                      “carouFredSel: No element found for “#foo2″.” jquery.carouFredSel-6.1.0-packed.js line 15 > eval:1:59184
                      Key event not available on some keyboard layouts: key=”r” modifiers=”accel,alt” browser.xul
                      Key event not available on some keyboard layouts: key=”c” modifiers=”accel,alt” browser.xul
                      A promise chain failed to handle a rejection. Did you forget to ‘.catch’, or did you forget to ‘return’?
                      See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise

                      Date: Wed May 20 2015 07:14:33 GMT-0500 (Central Standard Time)
                      Full Message: Error: loop is not enabled
                      Full Stack: this.MozLoopService.initialize<@resource:///modules/loop/MozLoopService.jsm:1110:29
                      TaskImpl_run@resource://gre/modules/Task.jsm:314:40
                      TaskImpl@resource://gre/modules/Task.jsm:275:3
                      createAsyncFunction/asyncFunction@resource://gre/modules/Task.jsm:249:14
                      LoopUI.init@chrome://browser/content/browser.js:4442:7
                      gBrowserInit._delayedStartup@chrome://browser/content/browser.js:12083:5

                    • None of those are related to us. Argh. This is going to be frustrating. Is the 3801pe directory in the same place as the Firefox executable?

                      What version of Firefox?

    • sorry about the bad URL.

      Yes, I got rid of the folder that had the specific name and put everything in the cck2/resources folder.

      Great suggestion from someone and it seemed like a better way to organize things.

  3. Hi,

    there seems to be a problem with the handling of certificates. When I import the ca-cert in the cck and configure it to “…identify websites” it is later in Firefox not checked that it can identify websites.
    I used the latest beta5 πŸ™‚

    Otherwise really great extension πŸ™‚