<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mike&#039;s Musings &#187; enterprise</title>
	<atom:link href="http://kaply.com/weblog/tag/enterprise/feed/" rel="self" type="application/rss+xml" />
	<link>http://kaply.com/weblog</link>
	<description>My musings about mozilla, microformats, me and my motivations.</description>
	<lastBuildDate>Fri, 16 Jul 2010 20:20:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Customizing the Firefox Installer on Windows</title>
		<link>http://kaply.com/weblog/2010/06/18/customizing-the-firefox-installer-on-windows/</link>
		<comments>http://kaply.com/weblog/2010/06/18/customizing-the-firefox-installer-on-windows/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 16:23:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>
		<category><![CDATA[installer]]></category>
		<category><![CDATA[rebrand]]></category>

		<guid isPermaLink="false">http://kaply.com/weblog/?p=505</guid>
		<description><![CDATA[One of the questions I get asked a lot is how to customize the Firefox installer on Windows and how to bundle extensions with it. I&#8217;ve spent the past few days learning a great deal about this subject, so I &#8230; <a href="http://kaply.com/weblog/2010/06/18/customizing-the-firefox-installer-on-windows/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
One of the questions I get asked a lot is how to customize the Firefox installer on Windows and how to bundle extensions with it. I&#8217;ve spent the past few days learning a great deal about this subject, so I thought I would take this opportunity to provide a refresher on working with the Firefox installer on Windows. I&#8217;m going to do it as a Q&#038;A so hopefully folks will get answers to the common questions they have.
</p>
<p>
Standard disclaimer: Under no circumstances should you use this information to create a custom Firefox install and redistribute it to anyone outside your organization. If you want more information, you can consult the <a href="http://www.mozilla.org/foundation/trademarks/">Mozilla Foundation Trademark Policy</a>.
</p>
<h3>What tools do I need to work with the Firefox installer?</h3>
<p>
The primary tool you need is <a href="http://www.7-zip.org/">7-Zip</a>. I install the <a href="https://developer.mozilla.org/en/windows_build_prerequisites#MozillaBuild">MozillaBuild package</a> which gives me all the tools I need. Even though the Firefox Installer is NSIS based, we will not need to use NSIS for most customizations. I&#8217;ll talk a little bit about the end about what kinds of things you would need NSIS to do.
</p>
<h3>How do I unpack the Firefox installer?</h3>
<p>
The Firefox installer is created using 7-Zip. So you can grab any of the Windows installers that end in EXE and unpack them. Any of the Windows installers on the <a href="http://www.mozilla.com/en-US/firefox/all.html">Firefox download page</a> will work. Once you&#8217;ve downloaded the EXE, create a temporary directory and type:<br />
<code>
<pre>7z x "Firefox Setup 3.6.3.exe"</pre>
<p></code><br />
This will unpack the contents of the installer so we can modify it.
</p>
<h3>How do I bundle my extension with the Firefox installer?</h3>
<p>
Bundling your extension with the Firefox installer is just a matter of putting it in the right place. Then when we package up the installer at the end, it will get installed along with Firefox. For most extensions, the right place is <code>nonlocalized/extensions</code>. Inside that directory, create a subdirectory that corresponds to the ID of the extension you want to preinstall with Firefox. Then unzip the XPI into that directory. You can find the ID by looking at the install.rdf file inside the XPI. You can add as many extensions as you want into the installer.
</p>
<h3>What are some useful extensions I can bundle with Firefox</h3>
<p>
I&#8217;ve created two extensions that create interesting things to bundle with Firefox. The first is the <a href="https://addons.mozilla.org/firefox/addon/2553">CCK Wizard</a>. The CCK Wizard can be used to change various defaults in Firefox so that you can customize it for deployment in your organization. The second is <a href="https://addons.mozilla.org/firefox/addon/2776">Rebrand</a>. Rebrand allows you to change the internal branding used in Firefox.
</p>
<h3>Can I change the names used in the installer?</h3>
<p>
Yes, you can change the names used in the installer. To do this, you need to create a directory called <code>distribution</code> inside the <code>localized</code> directory that was created when you unpacked the installer. Create a file called <code>setup.ini</code> in this directory. Here&#8217;s what it looks like:<br />
<code></p>
<pre>
[Branding]
BrandFullName=Mike's Browser
BrandShortName=Browser
</pre>
<p></code><br />
BrandFullName will be used to replace &#8220;Mozilla Firefox&#8221; and BrandShortName will be used to replace &#8220;Firefox&#8221;.</p>
<h3>Can I change the images used in the installer?</h3>
<p>
Yes, you can change the images used in the installer. In that same directory where you put the setup.ini, you can put two files, <code>modern-wizard.bmp</code> and <code>modern-header.bmp</code>.  The first images corresponds to <a href="http://mxr.mozilla.org/mozilla1.9.2/source/other-licenses/branding/firefox/wizWatermark.bmp">the large image on the first page of the installer</a>. The second image corresponds to <a href="http://mxr.mozilla.org/mozilla1.9.2/source/other-licenses/branding/firefox/wizHeader.bmp">the small image that is used on later pages of the installer</a>. You can use the linked images as a reference to know what size to make these images.</p>
<h3>How do I repackage the installer?</h3>
<p>
To repackage the installer, first you need to zip up the changes that you made. Type:<br />
<code></p>
<pre>
7z a -r -t7z app.7z -mx -m0=BCJ2 -m1=LZMA:d24 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3
</pre>
<p></code><br />
This will create a file called app.7z that has all the changes we made. Now we need to package that file with some other files to create the final EXE. We&#8217;ll need the file <a href="http://mxr.mozilla.org/mozilla1.9.2/source/other-licenses/7zstub/firefox/7zSD.sfx">7zSD.sfx which you can download from Mozilla</a>. And we&#8217;ll need a file called app.tag which you can create. It looks like this:<br />
<code></p>
<pre>
;!@Install@!UTF-8!
Title="Mozilla Firefox"
RunProgram="setup.exe"
;!@InstallEnd@!
</pre>
<p></code><br />
Once we have these files, we can run the command:<br />
<code></p>
<pre>
copy /B 7zSD.sfx+app.tag+app.7z our_new_installer.exe
</pre>
<p></code><br />
to package them all as an EXE. Don&#8217;t forget the /B. It indicates that the files are binary so Windows won&#8217;t put an EOF marker on them.
</p>
<h3>Can I change the defaults that are set in the installer like the install directory or the checkboxes?</h3>
<p>
At this time, there is no way to change the defaults in the installer without rebuilding the installer. There&#8217;s a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=572405">bug open on this with a patch</a>, so hopefully this will be fixed for Firefox 4.
</p>
<h3>Can I make my totally rebranded Firefox coexist nicely with an existing Firefox?</h3>
<p>
There are a couple ways to do this. The easiest way is to use the <code>-no-remote</code> parameter when you start Firefox. This causes the Firefox you are starting to not connect to the Firefox that is currently running. When you do this, you have to specify a different profile using the <code>-P</code> parameter. Alternatively, you can change the internal identifiers that Firefox uses. Then it will be considered to be a completely different browser. If you choose to do this, you should be aware that you will not receive updates and there will be other side effects. This is not a decision that should be taken lightly. Also, your profiles will be stored in different locations as well. If you want to do this, check out the file <code>application.ini</code> in the nonlocalized directory. The variables you want to change are Vendor and Name. Again, you do this at your own risk.
</p>
<h3>What can I do if I&#8217;m willing to rebuild the installer with NSIS?</h3>
<p>
If you are willing to rebuild the installer, you can change things like the name of the entry in the Add/Remove programs list, as well as the install directory and other defaults. This is a nontrivial exercise because some of the required files are built as part of the Mozilla build proces and are not available in the build tree. If you&#8217;re really interested in doing this, you can contact <a href="mailto:consulting@kaply.com">Kaply Consulting</a> and we can talk about it.
</p>
<p>
I hope this answered some questions folks have. If anyone has any more questions, please don&#8217;t hesistate to ask.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2010/06/18/customizing-the-firefox-installer-on-windows/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>CCK Wizard Status</title>
		<link>http://kaply.com/weblog/2010/01/28/cck-wizard-status/</link>
		<comments>http://kaply.com/weblog/2010/01/28/cck-wizard-status/#comments</comments>
		<pubDate>Thu, 28 Jan 2010 14:25:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://kaply.com/weblog/?p=418</guid>
		<description><![CDATA[With the release of Firefox 3.6, people are already asking me about a new CCK Wizard. I am working on an update. You can get a beta of that here. Primary changes are more information on the proxy page, ability &#8230; <a href="http://kaply.com/weblog/2010/01/28/cck-wizard-status/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
With the release of Firefox 3.6, people are already asking me about a new <a href="https://addons.mozilla.org/en-US/firefox/addon/2553">CCK Wizard</a>. I am working on an update. You can get a beta of that <a href="http://kaply.com/cck/cckwizard-1.2.5.2b4.xpi">here</a>. Primary changes are more information on the proxy page, ability to open an existing CCK and better coexistence of multiple CCKs.
</p>
<p>
Most interesting news on the CCK front is that I&#8217;ve decided to move it to Google Code instead of maintaining in the Mozilla trees. The URL is <a href="http://code.google.com/p/ff-cckwizard/">http://code.google.com/p/ff-cckwizard/</a>. My primary reason for doing this is honestly that I&#8217;m not really contributing to Mozilla/Firefox proper anymore and messing with Mercurial isn&#8217;t worth it for me (I know, lame excuse.) It has some other advantages, though, like having my own bug reporting system and not having to get any reviews/approvals for checkins.
</p>
<p>
So if you have ideas/suggestions/bugs for the CCK Wizard, please open them in Google Code.
</p>
<p>
 Also note that CCK Wizard is something I do on the side, so my time is limited. <a href="https://addons.mozilla.org/en-US/firefox/addon/2553/about">Contributions help</a>. I know there are a lot of folks who depend on this for the business. Any and all love is appreciated.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2010/01/28/cck-wizard-status/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>I Couldn&#039;t Stay Away From the CCK</title>
		<link>http://kaply.com/weblog/2009/02/11/i-couldnt-stay-away-from-the-cck/</link>
		<comments>http://kaply.com/weblog/2009/02/11/i-couldnt-stay-away-from-the-cck/#comments</comments>
		<pubDate>Wed, 11 Feb 2009 16:25:30 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/?p=249</guid>
		<description><![CDATA[So it just so happens that some of the work I&#8217;m doing before I leave IBM involves the CCK, so I ended up working on it and fixing some bugs. In addition, a company asked for a feature that was &#8230; <a href="http://kaply.com/weblog/2009/02/11/i-couldnt-stay-away-from-the-cck/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
So it just so happens that some of the work I&#8217;m doing before I leave IBM involves the CCK, so I ended up working on it and fixing some bugs. In addition, a company asked for a feature that was pretty easy to implement. So here for your testing pleasure is:
</p>
<p>
<a href="http://www.kaply.com/consulting/cckwizard-1.2.5.xpi">CCK Wizard version 1.2.5</a>
</p>
<p>
Here&#8217;s a summary of what&#8217;s changed:
<ul>
<li>Dropped support for Firefox 2</li>
<li>Added support for specifying sites where cookies are always allowed</li>
<li>Added support for specifying sites to deny popups/installs/cookies</li>
<li>Rewrote CCKService XPCOM Component to be a little cleaner
<li>Fixed problem where sometimes a created CCK wouldn&#8217;t install (ZIP path problem)</li>
<li>Fixed problem where sometimes bookmarks weren&#8217;t created on first load</li>
<li>Fixed problem where bookmarks weren&#8217;t created in the same order as specified in the CCK Wizard</li>
<li>Made the additional help menu look better on Mac
</ul>
</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2009/02/11/i-couldnt-stay-away-from-the-cck/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>CCK Wizard 1.2 Finally Available</title>
		<link>http://kaply.com/weblog/2009/01/16/cck-wizard-12-finally-available/</link>
		<comments>http://kaply.com/weblog/2009/01/16/cck-wizard-12-finally-available/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 20:49:29 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/?p=224</guid>
		<description><![CDATA[The CCK Wizard for Firefox 3 is finally available. I had been holding off trying to get some translation work but finally gave up. You can get it from amo: CCK Wizard 1.2 Enjoy!]]></description>
			<content:encoded><![CDATA[<p>
The CCK Wizard for Firefox 3 is finally available. I had been holding off trying to get some translation work but finally gave up. You can get it from amo:
</p>
<p>
<a href="https://addons.mozilla.org/firefox/addon/2553">CCK Wizard 1.2</a>
</p>
<p>
Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2009/01/16/cck-wizard-12-finally-available/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Enterprise Firefox Requirements</title>
		<link>http://kaply.com/weblog/2008/08/12/enterprise-firefox-requirements/</link>
		<comments>http://kaply.com/weblog/2008/08/12/enterprise-firefox-requirements/#comments</comments>
		<pubDate>Tue, 12 Aug 2008 15:48:24 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/?p=159</guid>
		<description><![CDATA[I was going through some old documents from the office and found the result of a brainstorming session around Enterprise Firefox requirements. I wanted to capture this list somewhere and figured this was the best place. Note that some of &#8230; <a href="http://kaply.com/weblog/2008/08/12/enterprise-firefox-requirements/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
I was going through some old documents from the office and found the result of a brainstorming session around Enterprise Firefox requirements. I wanted to capture this list somewhere and figured this was the best place. Note that some of these might be done and some of these might not even be clear &#8211; this was just a moment in time. It will be interesting to see what other folks think of the list. It is in no particular order.
</p>
<ul>
<li>Security (keycards, etc.)</li>
<li>MSI Packaging</li>
<li>Active Directory Integration</li>
<li>Perfect unattended install</li>
<li>Allow entire Firefox directory to be specified</li>
<li>Roaming profiles</li>
<li>CCK for Thunderbird</li>
<li>Store preferences in registry?</li>
<li>Allow cache to be local with a remote profile</li>
<li>Better ActiveX sandbox for Firefox</li>
<li>Scalable deployment/management</li>
<ul>
<li>IEAK</li>
<li>Active Directory</li>
<li>Registry Editing</li>
</ul>
<li>Centralized Management</li>
<li>Better enterprise patch deployment tools (Tivoli)</li>
<li>WebDAV?</li>
<li>LDAP</li>
<li>Kiosk mode</li>
<li>Whitelisting</li>
</ul>
<p>
What do people think? What on this list is really important?
</p></p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/08/12/enterprise-firefox-requirements/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Customizing Firefox with the CCK Wizard</title>
		<link>http://kaply.com/weblog/2008/06/11/customizing-firefox-with-the-cck-wizard/</link>
		<comments>http://kaply.com/weblog/2008/06/11/customizing-firefox-with-the-cck-wizard/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 18:13:09 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/?p=152</guid>
		<description><![CDATA[New version with fix for search engines not working. FYI, I&#8217;m making a beta of the CCK Wizard available today for Firefox 3. If you are deploying Firefox in your enterprise, educational institution, or even your household, you&#8217;ll want to &#8230; <a href="http://kaply.com/weblog/2008/06/11/customizing-firefox-with-the-cck-wizard/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
<strong>New version with fix for search engines not working.</strong>
</p>
<p>
FYI, <a href="http://www.kaply.com/operator/cckwizard-1.2b2.xpi"> I&#8217;m making a beta of the CCK Wizard available today for Firefox 3.</a>
</p>
<p>
If you are deploying Firefox in your enterprise, educational institution, or even your household, you&#8217;ll want to check out the <a href="http://www.mozilla.org/projects/cck/firefox/">CCK Wizard</a> (info at that link is a little dated right now).The CCK Wizard is an implementation of the old <a href="http://wp.netscape.com/browsers/6/cck/">Netscape CCK</a> that allows you to customize various aspects of Firefox and then contain all of those customizations in a single Firefox extension. Here are some of the things you can do</p>
<ul>
<li>Add an identifier to the user agent string</li>
<li>Change the default home page and startup override home page</li>
<li>Change the title bar text</li>
<li>Change the animated logo</li>
<li>Add a web page and tooltip used for the animated logo</li>
<li>Add a help menu item that links to a web page</li>
<li>Provide sites for which popups and XPInstalls are allowed by default</li>
<li>Preinstall browser plug-ins</li>
<li>Preinstall search engines</li>
<li>Change the default search engine</li>
<li>Add folders, bookmarks and live bookmarks to the personal toolbar</li>
<li>Add folders, bookmarks and live bookmarks to the bookmarks folder</li>
<li>Set default preferences</li>
<li>Lock preferences</li>
<li>Add registry keys (Windows only)</li>
<li>Add certificates (See NOTE below)</li>
<li>Set default proxy configurations</li>
<li>Package other XPIs with your distribution</li>
<li>Disable about:config</li>
</ul>
<p>
Note that if you customize Firefox using the CCK Wizard, there are certain restrictions on redistribution outside of your organization, especially if you add certificates. Read the <a href="http://www.mozilla.org/foundation/trademarks/">Mozilla Foundation Trademark policies</a> for more info, or contact licensing@mozilla.org.
</p>
<p>
And please let me know if you find any bugs.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/06/11/customizing-firefox-with-the-cck-wizard/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Group Policy Extension for Firefox</title>
		<link>http://kaply.com/weblog/2008/03/14/group-policy-extension-for-firefox/</link>
		<comments>http://kaply.com/weblog/2008/03/14/group-policy-extension-for-firefox/#comments</comments>
		<pubDate>Fri, 14 Mar 2008 15:55:59 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[enterprise]]></category>
		<category><![CDATA[extensions]]></category>
		<category><![CDATA[group-policy]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/2008/03/14/group-policy-extension-for-firefox/</guid>
		<description><![CDATA[I&#8217;ve been working with Cesar Oliveira from Seneca College to put together some initial attempts at group policy support. Here&#8217;s his comment from bug 267888: Since there doesn&#8217;t seem to have been any communication from the assignee for over a &#8230; <a href="http://kaply.com/weblog/2008/03/14/group-policy-extension-for-firefox/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
I&#8217;ve been working with Cesar Oliveira from Seneca College to put together some initial attempts at group policy support. Here&#8217;s his comment from <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=267888">bug 267888</a>:</p>
<blockquote><p>
Since there doesn&#8217;t seem to have been any communication from the assignee for<br />
over a year, I am guessing that he is no longer working on it. With big help of<br />
Michael Kaply (mkaply), we went into a different approach with this bug.</p>
<p>Instead of doing our own ADM template, we decided to do an implementation using<br />
generic IE policies (gpedit.msc) that both browsers can share. For example,<br />
setting the home page and enforcing full screen, and even disabling tabs! This<br />
won&#8217;t be the best solution, because Firefox and IE are different in many ways.<br />
But it gives us something to start with, as IE is already in the corporate<br />
world, we might as well try imitating some of their success <img src='http://kaply.com/weblog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>We haven&#8217;t implemented every policy (only slightly over a dozen). And it<br />
definitely needs some polish to the functionality and the code. There are some<br />
ways to get around certain policies (we don&#8217;t do any preference locking), but<br />
it is certainly better than not moving forward.</p>
<p>The code was designed to go into the mozilla\extensions directory. It works<br />
with the latest version of Firefox3 (Firefox3.0b5pre), but not Firefox 2<br />
(started using fuel). You can check out the source code via svn:<br />
<a href="svn://cdot.senecac.on.ca/ff-ad/trunk">svn://cdot.senecac.on.ca/ff-ad/trunk</a></p>
<p>I am also making available an extension you can use. I haven&#8217;t done much<br />
testing with it, other than it installs and works with no tab browsing and<br />
enforce full screen:<br />
<a href="http://matrix.senecac.on.ca/~cdolivei/files/grouppolicy.xpi">http://matrix.senecac.on.ca/~cdolivei/files/grouppolicy.xpi</a></p>
<p>I also made a list of policies that we implement. Please feel free to look and<br />
give feedback.<br />
<a href="http://spreadsheets.google.com/pub?key=pqlMBxIY5x3i2yeezToYGfg">http://spreadsheets.google.com/pub?key=pqlMBxIY5x3i2yeezToYGfg</a></p>
<p>So now I am requesting community feedback. What is going to stop this from one<br />
day getting into the tree (I assume everyone on the CC list wants something<br />
like this in)? Other than using IE&#8217;s policies, of course <img src='http://kaply.com/weblog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>I think I got everything. If something is not working, feel free to email me.
</p></blockquote>
<p>
This is really a first step, but I hope people will try it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/03/14/group-policy-extension-for-firefox/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Customizing Reporter for your Enterprise</title>
		<link>http://kaply.com/weblog/2008/02/06/customizing-reporter-for-your-enterprise/</link>
		<comments>http://kaply.com/weblog/2008/02/06/customizing-reporter-for-your-enterprise/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 21:58:35 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/2008/02/06/customizing-reporter-for-your-enterprise/</guid>
		<description><![CDATA[Ever wish the reporter extension could be used to report problems with internal websites? Yuriy Krylov has an excellent post up about customizing reporter for your intranet. Definitely worth a read.]]></description>
			<content:encoded><![CDATA[<p>
Ever wish the reporter extension could be used to report problems with internal websites? Yuriy Krylov has an <a href="http://e2pt0.blogspot.com/2008/02/customizing-firefoxs-reporter-for.html">excellent post up about customizing reporter for your intranet</a>. Definitely worth a read.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/02/06/customizing-reporter-for-your-enterprise/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Firefox, Group Policy and Active Directory</title>
		<link>http://kaply.com/weblog/2008/01/24/firefox-group-policy-and-active-directory/</link>
		<comments>http://kaply.com/weblog/2008/01/24/firefox-group-policy-and-active-directory/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 17:22:08 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[enterprise]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/2008/01/24/firefox-group-policy-and-active-directory/</guid>
		<description><![CDATA[One of the complaints that seems to come up a lot with regards to Firefox in the enterprise is the lack of support for management via Active Directory (using Group Policies). There have actually been a couple attempts to solve &#8230; <a href="http://kaply.com/weblog/2008/01/24/firefox-group-policy-and-active-directory/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
One of the complaints that seems to come up a lot with regards to Firefox in the enterprise is the lack of support for management via Active Directory (using Group Policies). There have actually been a couple attempts to solve this including <a href="http://ick2.wordpress.com/">FirefoxADM</a> and <a href="http://wetdog.sourceforge.net/">WetDog</a>. There is even a company, <a href="http://www.frontmotion.com/FMFirefoxCE/index.htm">FrontMotion</a>, that makes custom Firefox MSIs that can be managed via Active Directory.
</p>
<p>
I decided I don&#8217;t know enough about this area, so I&#8217;ve spent the past couple weeks investigating what Microsoft provides and the results actually surprised me: IE configuration via Group Policies seems to focus much more on customizing the browser(*) than it does on configuring individual preferences. Learning this made me wonder what exactly it is that people mean when the say that Firefox has a lack of support for Active Directory. Do they mean using Active Directory to manage install and updates? Or do they mean the types of customization that are provided via IE&#8217;s Group Policy.
</p>
<p>
So I&#8217;d like to pose a few questions to my readers:
</p>
<ol>
<li>Do you use Active Directory and Group Policy to manage Internet Explorer? If so, what policies are most important to you?</li>
<li>Do you use FirefoxADM or WetDog to manage Firefox? If so, what features are most important to you?</li>
<li>If support for Group Policies was implemented for Firefox, should it focus more on customizing the browser or setting preferences?</li>
</ol>
<p>
For more information on this subject, here are some links:</p>
<ul>
<li><a href="http://blogs.technet.com/askperf/archive/2007/07/06/overview-of-internet-explorer-group-policies.aspx">Overview of Internet Explorer Group Policies</a></li>
<li><a href="http://www.kaply.com/work/IEGroupPolicySettingsforWindowsVista.xls">Microsoft Spreadsheet where we removed everything but the IE policies.</a></li>
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=337679">Bug 337679 (cck could allow settings to be set via windows group policy)</a></li>
<li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=267888">Bug 267888 (Windows 2000/XP/2003 Group Policies support (make firefox configurable with domain group policy objects))</a></li>
</ul>
<p>
(*) By customizing the browser I mean things like removing printing, removing the help menu, removing view source, removing the context menu, preventing saving files to disk, removing the ability to open new windows, turning off tabbed browing, removing access to bookmarks, etc.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/01/24/firefox-group-policy-and-active-directory/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Simple Firefox Customizations: What Else Can I Do?</title>
		<link>http://kaply.com/weblog/2008/01/21/simple-firefox-customizations-what-else-can-i-do/</link>
		<comments>http://kaply.com/weblog/2008/01/21/simple-firefox-customizations-what-else-can-i-do/#comments</comments>
		<pubDate>Mon, 21 Jan 2008 20:40:19 +0000</pubDate>
		<dc:creator>mkaply</dc:creator>
				<category><![CDATA[firefox]]></category>
		<category><![CDATA[cck]]></category>
		<category><![CDATA[enterprise]]></category>
		<category><![CDATA[extensions]]></category>

		<guid isPermaLink="false">http://www.kaply.com/weblog/2008/01/21/simple-firefox-customizations-what-else-can-i-do/</guid>
		<description><![CDATA[Before we get started on this next topic, I need to make one correction. In earlier posts, I said to use collapsed="true" to hide XUL menuitems. A better option is to use hidden="true" instead. Using collapsed doesn&#8217;t hide the margins, &#8230; <a href="http://kaply.com/weblog/2008/01/21/simple-firefox-customizations-what-else-can-i-do/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
Before we get started on this next topic, I need to make one correction. In earlier posts, I said to use <code>collapsed="true"</code> to hide XUL menuitems. A better option is to use <code>hidden="true"</code> instead. Using collapsed doesn&#8217;t hide the margins, so you get a lot of whitespace in your menus.
</p>
<p>
I also mentioned customizing the toolbar in my last post. We&#8217;ll actually save that for a future post.
</p>
<p>
Now that we&#8217;ve seen how to create XUL overlays to modify menus, let&#8217;s try out a real world scenario to see what else we might need to do. Let&#8217;s say we want to remove the user&#8217;s access to &#8220;Full Screen&#8221; mode. (I have no idea why you would ever want to do this, but Microsoft provides it as a customization in their group policy, so someone must want it.) Removing the menu is the easy part. We look in the file <a href="http://lxr.mozilla.org/mozilla1.8/source/browser/base/content/browser-menubar.inc">browser-menubar.inc</a> and see that the ID of the menu is fullScreenItem. So by adding this code to our overlay: <code><br />
<menuitem id="fullScreenItem" hidden="true"/></code>we make the menu go away.
</p>
<p>
But we have a problem. The user could also press F11 to use &#8220;Full Screen&#8221; mode. How do we stop that? Luckily key commands are also defined in XUL, so we can modify those. Most key commands are defined in the file <a href="http://lxr.mozilla.org/mozilla1.8/source/browser/base/content/browser-sets.inc">browser-sets.inc</a>. Searching through this file, we find:<code><key id="key_fullScreen" keycode="VK_F11" command="View:FullScreen"/></code> By simply adding this line to our overlay:<code><key id="key_fullScreen" command=""/></code>we prevent the keystroke from working.
</p>
<p>
That was an easy one. Let&#8217;s try something harder. Let&#8217;s remove access to &#8220;View Source.&#8221; View Source can be accessed three different ways, the View menu, the keystroke Ctrl+U, and View Page Source on the page&#8217;s context menu. Let&#8217;s remove all three. We already learned how to remove the keystroke:<code><key id="key_viewSource" command=""/></code> What about the context menu? Removing items from the context menu can be done exactly the same way as removing items from any other menu &#8211; with hidden. The question is where do we get the IDs for items on the context menu. Similar to the main main and they keystrokes, it is stored it its own file, <a href="http://lxr.mozilla.org/mozilla1.8/source/browser/base/content/browser-context.inc">browser-context.inc</a>. Here we see that the ID for the view source item on the context menu is context-viewsource so we can just add <code><br />
<menuitem id="context-viewsource" hidden="true"/></code> to our overlay. OK, one last thing. Let&#8217;s remove the actual View Source menuitem. Looking in <a href="http://lxr.mozilla.org/mozilla1.8/source/browser/base/content/browser-menubar.inc">browser-menubar.inc</a> we see:<code><br />
<menuitem accesskey="&#038;pageSourceCmd.accesskey;" label="&#038;pageSourceCmd.label;" key="key_viewSource" command="View:PageSource"/></code> Wait a minute. This menuitem has no ID? How can we hide it? Luckily we can put JavaScript into our XUL overlay as well. In cases where we don&#8217;t have an ID, we have to write custom JavaScript to do our work. Here&#8217;s some code that hides the View Source menuitem:
<pre><code><script type="application/x-javascript;version=1.7">
  <![CDATA[
    for(let i=document.getElementById("menu_viewPopup").childNodes.length - 1; i>=0; i--) {
      if (document.getElementById("menu_viewPopup").childNodes.item(i).getAttribute("command") == "View:PageSource") {
        document.getElementById("menu_viewPopup").childNodes.item(i).hidden = true;
        break;
      }
    }
  ]]&gt;
</script>
</code>
</pre>
<p>This code uses JavaScript to find the View Source menuitem and explicitly hide it. It does that by getting the length of the View menu popup (the number of items on it), and traversing backwards through the menuietems until it find the View Source menu. Then it explicitly sets the hidden attribute on the View Source menu. The reason we know this is the View Source menu is because we were able to look in the browser-menubar.inc to see other properties that are only set on that menu (command=&#8221;View:PageSource&#8221;).
</p>
<p>
So now you should have most of the tools in your toolbox to remove functionality from the Firefox menus using the CCK to create the XUL overlay.</p>
]]></content:encoded>
			<wfw:commentRss>http://kaply.com/weblog/2008/01/21/simple-firefox-customizations-what-else-can-i-do/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
