Mozilla Maintenance Service

So … I finally got around to removing the Mozilla Maintenance Service from my deployment of Firefox.  It was pretty easy, but surprisingly unexplored by the blogging community.  I’m by no means calling first on this post, just saying I did it through self-discovery. Why would I want to remove this service?  Quite simply, we have an automated process for our current roll out of Firefox updates.  Mozilla Maintenance Service is a long overdue, but unnecessary feature for my infrastructure.  Additionally, I don’t like things being installed arbitrarily.  I may investigate if I would rather use this service for silent updates of Firefox in the future. I can boil this process down to two basic needs: Block Service InstallPrevention of future and new installs of the Mozilla Maintenance Service. Silent RemovalSilently removal of the Mozilla Maintenance Service from systems with it already installed. Block Service Install Note: Thanks to Ph0neutria for helping me  determine that this doesn’t work for new installs.  It’s just for the upgrade, as the bugzilla report states.  See the comments for details. Fresh Install Create an .ini file to disable the install of the Mozilla Maintenance Service, as shown: [Install] MaintenanceService=false Install firefox with the /INI switch, as shown (assumes the .ini file is in the same directory as the Firefox setup.exe): Firefox Setup 22.0.exe /INI="C:FullPathtoFileFirefox.ini" Supporting Documentation. Application Update Block Mozilla Maintenance Service from installing by running the following command BEFORE you run the Firefox Setup X.X.X.exe installer: REG ADD HKLMSOFTWAREMozillaMaintenanceService /v Attempted /t REG_DWORD /d 1 /f Supporting Documentation. Silent Removal You can silently uninstall the Mozilla Maintenance Service with the following command: x64 Systems:“%ProgramFiles(x86)%Mozilla Maintenance ServiceUninstall.exe” /S /v"qn" x86 Systems:“%ProgramFiles%Mozilla Maintenance ServiceUninstall.exe” /S /v"qn"

Microsoft Endpoint Configuration Manager

SCCM – Query/Collection by MSI Installed

Most of the time, when adding an SCCM Collection based on installed software, I’ll simply use the Add/Remove Programs Attribute Class.  However, in a recent case, the installed software doesn’t show up in Add/Remove Programs, but it is an MSI installer.  In this particular instance, I wanted to remove the Java Updater. Since approximately 1.6.18 / 6.0 update 18, Oracle (formerly Sun) has included Java Auto Updater as a separate package that is automatically installed with the JRE [ref].  This makes it really easy to remove: msiexec /qn /x {4A03706F-666A-4037-7777-5F2748764D10} Now, I just needed to figure out how to target all computers with that package code installed.  After a lot of Googling, and turning up nothing useful, I decided to dig into SCCM myself.  Here’s how to set-up the Criterion Properties, for a Collection, to look for machines with Java Updater installed: If you’d rather just have the SQL, here’s what my system generated: select SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client from SMS_R_System inner join SMS_G_System_INSTALLED_SOFTWARE on SMS_G_System_INSTALLED_SOFTWARE.ResourceID = SMS_R_System.ResourceId where UPPER(SMS_G_System_INSTALLED_SOFTWARE.ProductCode) = "{4A03706F-666A-4037-7777-5F2748764D10}" Hope this helps others out there. Cheers!