locked
Default search in sequenced Firefox not working RRS feed

  • Question

  • Dear Pro´s,

    I´m currently trying to sequence Firefox (v34.0.5) which is working fine except one problem.
    There is no default search at all when running it on clientside.

    What I do:
    Before I start sequencing I´m setting the following exclusions:
    •[{AppData}]\Mozilla
    •[{Common AppData}]\Microsoft\RAC
    •REGISTRY\USER\ [{AppVCurrentUserSID}]\Software\Microsoft\Windows\CurrentVersion\Internet Settings

    Then I start the sequencing with a cmd-file which just runs the firefox-installation with the params "-ms" and "/ini" following an ini-file.

    Then, when the installation is finished, I run Firefox once and delete all searches but google and set it as default.

    After that I´m publishing it on the managementserver and log in to the client. When I then start the published Firefox there´s no search provider at all. Not even google, which I left in there as default.

    I cannot find any problems for firefox in any event log.

    Do you guys have any idea?


    Thanks in advance
    GoProo

    Wednesday, December 17, 2014 7:25 PM

Answers

  • @Nicke: Yes, mounting the package brings back the search providers. Thanks for that hint.
    Mount-AppvClientPackage -Name Firefox

    I didn't know that I'm still able to mount packages when using SCS.

    But this leads to another 85MB per user on this host. As I'm trying to reduce user writes to my stateless Citrix machines this would lead to a higher local storage requirement.

    So I mounted it globally:
    Publish-AppvClientPackage "Firefox" -Global
    Mount-AppvClientPackage -Name Firefox

    This way it works as expected.

    Thank you all for your support. :)

    Tuesday, February 10, 2015 3:18 PM
  • Yes, I'm indeed using App-V for RDS with Citrix XenApp :)

    I tested Rorymon's package with no luck. The search engines are still missing.

    But after more investigation I found the reason for breaking this.
    While using default App-V Client (with local caching of the package in %localappdata%) everything works. But this is not the recommendation for the Citrix/RDS use case.

    As I don't want every user to cache a copy of Firefox I enabled SharedContentStoreMode (leading to links pointing into the .appv file on the file share) which saves me a lot of storage.

    But with this mode active the search providers aren't shown. When disabling it, everything works as expected.

    When setting SHAREDCONTENTSTOREMODE=0 in the registry, Removing all packages (Get-AppVClientPackage | Remove-AppVClientPackage) and a reboot of the machine, everything runs fine in Firefox. Probably a restart of the AppV service is sufficient but rebooting is faster in my test environment ;)

    Side note: Redirecting %appdata% to a fileshare or using the local default path makes no difference in this case.

    Hoba, are you able to reproduce this in your environment?

    Andre

    Tuesday, February 10, 2015 11:22 AM

All replies

  • I believe when you are setting the per user configuration, that data gets written to %Appdata%\Mozilla.  If that is correct, by excluding that, your client will not have that information.  It sounds like your App-V capture is excluding that information so when you test on your clean client machine those settings are missing.

    As a test, install Firefox on your sequence machine, set it up the way you want, then delete the %Appdata%\Mozilla folder.  Do you get the same problem?  If so that is likely your problem.

    Wednesday, December 17, 2014 9:09 PM
  • You'll need to set the default search engine by first customising the default preference files. That way you can be sure that any new user gets the defaults you want them to have on first launch.

    You can then enforce the setting or leave it as a preference.

    See these articles:

    http://stealthpuppy.com/prepare-mozilla-firefox-for-enterprise-deployment-and-virtualization/

    https://developer.mozilla.org/en-US/Firefox/Enterprise_deployment



    Please remember to click "Mark as Answer" or "Vote as Helpful" on the post that answers your question (or click "Unmark as Answer" if a marked post does not actually answer your question). This can be beneficial to other community members reading the thread.


    This forum post is my own opinion and does not necessarily reflect the opinion or view of my employer, Microsoft, its employees, or other MVPs.

    Twitter: @stealthpuppy | Blog: stealthpuppy.com | The Definitive Guide to Delivering Microsoft Office with App-V

    Wednesday, December 17, 2014 10:36 PM
    Moderator
  • Dear Agallucci,

    first of all I gotta say that I´ve done the sequencing with both ways, including and exluding %Appdata%\Mozilla.

    Anyhow you gave me a hint what I could try. Firefox behaves the following way:

    When you sequence it, it gets installed into %ProgramFiles(x86)%\Mozilla Firefox. In this folder structure you can find a folder named "browers" and inside of that "searchplugins". In there you can find all the default search engines. If you then "first run" Firefox it´ll take the engines defined in there. I tried deleting everything but google (in that searchplugins folder) which is working fine. Anyhow, it doens´t work on the clientside later, there will still be no search engine at all.

    To come back to your test:
    Deleting / renaming %AppData%\Mozilla folder doesnt change anything. It then just creates a new folder and takes the search engines from the folder mentioned above.

    I´m still in testing and will give you a feedback if I got a solution.

    Cheers
    GoProo


    • Edited by GoProo Thursday, December 18, 2014 9:32 AM
    Thursday, December 18, 2014 9:31 AM
  • Aaaron,

    thanks for your feedback.
    Currently I am no able / allowed to change the default preferences. Im probably going to be able to do so soon, but I have to talk to the responsible before.

    Do you know any other possible way to reach my goal?


    Cheers
    GoProo



    • Edited by GoProo Thursday, December 18, 2014 10:22 AM
    Thursday, December 18, 2014 10:21 AM
  • Sorry for the late feedback guys, I was on vacation.
    After some testing I´ve got some new information for you:

    We do still have the problem. Defaultsearch won´t work on the clientside.

    What I´ve done so far (additionally to the steps mentioned before):
    Trying to edit and lock down the preferences, for example:

    browser.search.defaultenginename
    browser.search.defaulturl
    browser.search.order.1

    Unfortunately this ain´t working.

    Other lockdowns like the default-homepage are working just fine.

    May anybody please tell me which settings need to be configured for the default search engine?

    For some visual aspects, here are two screenshots on the clientside.
    The first one shows that no search engine is configured at all.
    On the second one you can see that I´m unable to configure one by myself, so is it probably locked down as it should but my default search engine which is google doenst work?




    Best regards
    GoProo

    Thursday, January 8, 2015 11:35 AM
  • Hi,

    we are facing the same problem. I dived a little deeper and compared the behaviour of firefox when using App-V and when running without any virtualization.

    With App-V:

    QueryDirectory for "C:\ProgramData\App-V\B014C463-F988-4DB8-BE63-AF10464FFD31\38FAEB93-2A89-4872-999D-C0797E0D2253\Root\VFS\ProgramFilesX86\Mozilla Firefox\browser\searchplugins\*":


    Followed by the list of found .xml files:

    After retrieving this list, no more access to the files of this directory occur.

    If you look at the log using a non-virtualized Firefox, you see the same listing but followed by actual read-operations to the xml files. Then all Search Engines are shown correctly.

    Does anyone have an idea why Firefox stops reading the files? Are the paths too long or is Firefox really not aware of this when virtualized?

    For myself I found a workaround. I redirected all %appdata% folders to a network share (on my Citrix XenApp servers). Because all Firefox Profiles reside on this share, I copy the searchplugins folder to the firefox profiles, as one can see accesses to this folder, too. In this location the xml files can be found and will be used.

    Downside is, new users won't have the files and should get them using scripting on first launch of the application (i.e. after profile creation in %appdata%).

    Anyone with a better idea of solving this?

    Regards,

    Andre

    PS: I added images to this post to make things clearer, but I'm not allowed to post images or links, yet. @Microsoft: Thats very annoying and will not keep me as a user in this forum.

    Wednesday, February 4, 2015 9:40 AM
  • Hello,

    What happens if Firefox has its install folder set as PVAD, or just that folder as PVAD?


    Nicke Källén | The Knack| Twitter: @Znackattack

    Wednesday, February 4, 2015 4:58 PM
  • I'm not seeing that behavior. I actually just sequenced a few minutes ago. I did not launch during the sequence. I allowed the profile to get created outside of the VFS. I followed all other steps in Aarons recipe.

    If you don't launch, you shouldn't have any user specific crap to worry about. May I ask why you launched during your sequence?

    I also didn't bother to use an .ini file during the install.


    PLEASE MARK ANY ANSWERS TO HELP OTHERS Blog: rorymon.com Twitter: @Rorymon


    • Edited by RorymonMVP Wednesday, February 4, 2015 11:08 PM
    Wednesday, February 4, 2015 11:03 PM
  • Hi Nicke,

    thanks for your post.
    I tried "C:\Program Files (x86)" and "C:\Program Files (x86)\Mozilla Firefox" as PVAD.

    This makes no difference for me.
    I'm sorry.

    Thursday, February 5, 2015 10:28 AM
  • Hi Rorymon,

    I now did not launch it during sequencing but this also makes no difference.
    I also allowed the profile to get created outside VFS using Aarons recipe.

    As I used to install one more AddOn in my recipe I removed everything in my batch file so that only Firefox gets installed (w/o maintenance service). No further modifications were made during install.

    After creating the package I tried launching Firefox with and without redirected AppData folder. But in any case I don't see any search providers. As I installed the german version I resequenced using the US-english version but this also makes no difference.

    Can you confirm this works for you using the newest version with clean %AppData%\Mozilla, so you can see the new one-click searches when clicking on the arrow on the right in the search box?

    I'm rebuilding my sequencer right now. Maybe my 2012R2 machine needs it (even if snapshot'd).

    Regards,
    Andre

    Thursday, February 5, 2015 1:51 PM
  • Hi Andre,

    How about I send you my Firefox, you see if the search feature works when you test it on your end...

    My e-mail address is listed on the About page of my website, which is in my signature, if you e-mail me, I'd be happy to share or you can DM me your e-mail address via Twitter (also in my signature)

    At least that way you could rule in or out sequencing gone wrong.


    PLEASE MARK ANY ANSWERS TO HELP OTHERS Blog: rorymon.com Twitter: @Rorymon

    Friday, February 6, 2015 10:44 PM
  • Hi All,

    I'm having the same problem like Andre and GoProo has.
    @Rorymon: maybe you can send me your profiled firefox too?

    I will send you a message with my e-mail address.

    Best regards,
    Hoba

    Monday, February 9, 2015 4:03 PM
  • Done. My sequenced Firefox has the default search engine set to Yahoo. If you want to change it, I believe you'll have to edit the Config file.

    PLEASE MARK ANY ANSWERS TO HELP OTHERS Blog: rorymon.com Twitter: @Rorymon

    Monday, February 9, 2015 4:18 PM
  • Thanks for the sequenced package.
    Unfortunately your package is not working in my environment.
    Here is a screenshot of the Firefox Search Options:

    As you can see - no options for me to change. By the way, I didn't realize that this options exist, since this tab does not exist in the german version of Firefox.

    So the question is: what's the difference in our environments?

    I'm using App-V for RDS in a Windows 2012 R2 environment (Sequencer and Clients).

    @Andre: can you tell us something about your environment? I guess you are also using App-V for RDS - since you are using Citrix XenApp ;-)

    Tuesday, February 10, 2015 8:03 AM
  • Yes, I'm indeed using App-V for RDS with Citrix XenApp :)

    I tested Rorymon's package with no luck. The search engines are still missing.

    But after more investigation I found the reason for breaking this.
    While using default App-V Client (with local caching of the package in %localappdata%) everything works. But this is not the recommendation for the Citrix/RDS use case.

    As I don't want every user to cache a copy of Firefox I enabled SharedContentStoreMode (leading to links pointing into the .appv file on the file share) which saves me a lot of storage.

    But with this mode active the search providers aren't shown. When disabling it, everything works as expected.

    When setting SHAREDCONTENTSTOREMODE=0 in the registry, Removing all packages (Get-AppVClientPackage | Remove-AppVClientPackage) and a reboot of the machine, everything runs fine in Firefox. Probably a restart of the AppV service is sufficient but rebooting is faster in my test environment ;)

    Side note: Redirecting %appdata% to a fileshare or using the local default path makes no difference in this case.

    Hoba, are you able to reproduce this in your environment?

    Andre

    Tuesday, February 10, 2015 11:22 AM
  • Hello,

    What happens if you have SHAREDCONTENTSTOREMODE = 1 and only cache firefox?


    Nicke Källén | The Knack| Twitter: @Znackattack

    • Proposed as answer by RorymonMVP Tuesday, February 10, 2015 9:02 PM
    Tuesday, February 10, 2015 12:18 PM
  • @Andre: I can reproduce your steps in my environment.

    Disabling SharedContentStoreMode brings back the search providers...

    Tuesday, February 10, 2015 12:22 PM
  • @Nicke: how can I do that?
    Tuesday, February 10, 2015 3:16 PM
  • @Nicke: Yes, mounting the package brings back the search providers. Thanks for that hint.
    Mount-AppvClientPackage -Name Firefox

    I didn't know that I'm still able to mount packages when using SCS.

    But this leads to another 85MB per user on this host. As I'm trying to reduce user writes to my stateless Citrix machines this would lead to a higher local storage requirement.

    So I mounted it globally:
    Publish-AppvClientPackage "Firefox" -Global
    Mount-AppvClientPackage -Name Firefox

    This way it works as expected.

    Thank you all for your support. :)

    Tuesday, February 10, 2015 3:18 PM
  • ah ok, that makes sense then.

    I'm glad you got it to work.


    PLEASE MARK ANY ANSWERS TO HELP OTHERS Blog: rorymon.com Twitter: @Rorymon

    Tuesday, February 10, 2015 9:01 PM
  • @Andre: mounting Firefox globally means that all users are able to use Firefox and it's not possible to limit access to a certain AD group, correct?

    If you mount it global, is it enough to mount Firefox once or do you have to mount it after every server reboot?

    Wednesday, February 11, 2015 7:59 AM
  • Also, how does this affect non-persistent VMs?  We have the same issue and we are also using SharedContent Stores for our App-V.
    Thursday, February 19, 2015 12:15 AM
  • While I'm not sure what is causing the symptoms on the search providers at this time, I can perhaps clarify a few things.

    • On a Citrix XenApp/RDS server, only one copy is ever cached, no matter ho many users get the app.
    • Citrix does not have a blanket recommendation to use SCS.  It depends on a lot of things.  It may have been recommended or your particular situation, but I don't want someone reading this post to take that as general advice.  I have a free "tool" at TMurgent.com called "WhatWouldTimDo" that can help determine better or worse choices or configuration based on a number of parameters that you supply about your environment.
    • Mounting a package survives reboots, except or non-persistent environments, including pooled VDI and also PVS.
    • A PublishPackage script can be used to perform the mount cmd.

    We have seen some timing issues with App-V 5 on a couple of apps, but these tend to be JitV situations.  Because of this, inserting a launching program as the shortcut might or might not also be a solution.  For example, add LaunchIt (also on TMurgent site) to the package and add a shortcut to it (instead of a shortcut to Firefox) with an argument of the VFS path to Firefox as an argument; make sure to set the icon on this shortcut to Firefox.exe also.  May or may not solve the issue without caching.


    Tim Mangan MVP for App-V and Citrix CTP Author of AppV books: "The Client Book" and "OSD Reference Book" (http://www.tmurgent.com/Books )

    Friday, February 20, 2015 7:34 PM
    Moderator
  • Would checking the check box on the screen below provide the same results as running the Mount command in the deploymentConfig file?

    Monday, February 23, 2015 2:04 PM
  • Hi,

    we are facing the same problem. I dived a little deeper and compared the behaviour of firefox when using App-V and when running without any virtualization.

    With App-V:

    QueryDirectory for "C:\ProgramData\App-V\B014C463-F988-4DB8-BE63-AF10464FFD31\38FAEB93-2A89-4872-999D-C0797E0D2253\Root\VFS\ProgramFilesX86\Mozilla Firefox\browser\searchplugins\*":


    Followed by the list of found .xml files:

    After retrieving this list, no more access to the files of this directory occur.

    If you look at the log using a non-virtualized Firefox, you see the same listing but followed by actual read-operations to the xml files. Then all Search Engines are shown correctly.

    Does anyone have an idea why Firefox stops reading the files? Are the paths too long or is Firefox really not aware of this when virtualized?

    For myself I found a workaround. I redirected all %appdata% folders to a network share (on my Citrix XenApp servers). Because all Firefox Profiles reside on this share, I copy the searchplugins folder to the firefox profiles, as one can see accesses to this folder, too. In this location the xml files can be found and will be used.

    Downside is, new users won't have the files and should get them using scripting on first launch of the application (i.e. after profile creation in %appdata%).

    Anyone with a better idea of solving this?

    Regards,

    Andre

    PS: I added images to this post to make things clearer, but I'm not allowed to post images or links, yet. @Microsoft: Thats very annoying and will not keep me as a user in this forum.

    Andre,

    How are you copying the search engines?  The .default is randomly generated, correct?  Thanks.

    Friday, March 27, 2015 12:10 AM
  • I had the same problem you are describing, and I seem to have found a workaround / solution.

    During the sequencer monitoring fase ...
    After installing firefox, copy the folder searchplugins (C:\Program Files (x86)\Mozilla Firefox\browser\searchplugins) with all the xml files you want to keep, into the folder C:\Program Files (x86)\Mozilla Firefox\browser\defaults\profile\

    The searchplugins folder and xml files are copied into the %appdata% mozilla firefox profiel and work at first run.  (Roaming\Mozilla\Firefox\Profiles\ute0qx6f.default\searchplugins).
    This only works if the user doesnt have a %appdata%\Mozilla\Firefox profile and firefox creates a new one.

    Thursday, April 2, 2015 3:34 PM
  • Internal MSFT investigation reveals that Firefox.exe won't read the search provider XML files if they are symbolic links such as when App-V is used in Shared Content Store mode.
    Wednesday, January 20, 2016 3:50 PM