Automate FileZilla Client Deployment with ConfigMgr

This will automate the install of FileZilla Client and Disable Updater, and initial splash page via  fzdefaults.xml file.

Create your Folder Structure:
\\ConfigMgrSourceServer\Apps\FileZilla\VersionNumber\
image

image

Download FileZilla here:https://filezilla-project.org/download.php?show_all=1
I’m using the Windows (32-bit) Version

Scripts & Files available here: http://garytown.com/Downloads/FileZilla.zip
Download the EXE into the folder (Delete the blank place holder)

Create your Install & Uninstall Scripts:

Load_FileZilla.cmd Script:
-----------------------------

REM Install Filezilla Silently and load default settings File to disable updater.
REM Using FOR Loop to find any EXE file and run it with these arguments
for %%i in (*.exe) do cmd /c "%%i" /NCRC /S

REM Install 32-bit customisations
if exist "%programfiles%\FileZilla FTP Client\" copy /Y "fzdefaults.xml" "%programfiles%\FileZilla FTP Client\"

REM Install 64-bit customisations
if exist "%ProgramFiles(x86)%\FileZilla FTP Client\" copy /Y "fzdefaults.xml" "%ProgramFiles(x86)%\FileZilla FTP Client\"

------------------------------

Uninstall_FileZilla.cmd
------------------------------

REM Uninstall FileZilla
"c:\Program Files (x86)\FileZilla FTP Client\uninstall.exe" /S

REM Delete Left Over Folder
if exist "%programfiles%\FileZilla FTP Client\" rmdir "%programfiles%\FileZilla FTP Client\" /S /Q

REM Delete Left Over Folder
if exist "%ProgramFiles(x86)%\FileZilla FTP Client\" rmdir" "%ProgramFiles(x86)%\FileZilla FTP Client\" /S /Q

-------------------------

fxdefaults.xml file (This will set specific settings for your environment)

--------------------------

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

<!-- fzdefaults.xml documentation

  The file fzdefaults.xml is used to provide system-wide default settings for
  FileZilla.

  Usage:

    - Windows:

      Put the file fzdefaults.xml into the same directory as filezilla.exe

    - OS X:

      Modify the app bundle, put fzdefaults.xml into the
      Contents/SharedSupport/ subdirectory

    - Other:

      Put fzdefaults.xml into one of the following directories (in order of precedence):

      - ~/.filezilla
      - /etc/filezilla
      - share/filezilla subdirectory of the install prefix.

  Default site manager entries:

    Create some new Site Manager entries and export the list of sites. Rename
    the resulting XML file to fzdefaults.xml or copy the <Servers> block in it
    to fzdefaults.xml. See example below.

  Global configuration settings

    Location of settings directory:

      By default, FileZilla stores its settings in the user's home directory. If
      you want to change this location, modify the "Config Location" setting (see
      below).

      "Config Location" either accepts absolute paths or paths relative to the
      location of fzdefaults.xml
      You can also use environment variables by preceding them with the dollar
      sign, e.g. "$HOME/foo".
      Use $$ to denote a path containing dollar signs, e.g. "c:\$$foobar\" if
      settings should be located in "c:\$foobar".
      A single dot denotes the directory containing fzdefaults.xml

    Kiosk mode

      If the "Kiosk mode" setting is set to 1, FileZilla will not write any
      passwords to disk. If set to 2, FileZilla will not write to any
      configuration file. The latter is useful if FileZilla gets executed from
      read-only media.

    Disable update check

      If the "Disable update check" setting is set to 1, the capability to
      check for new FileZilla versions will be completely disabled.

-->

<FileZilla3>
    <Settings>
      <Setting name="Kiosk mode">0</Setting>
      <Setting name="Disable update check">1</Setting>
    </Settings>
</FileZilla3>

---------------------------

I’m going to skip some of the pictures, and go right to the deployment type & detection methods, look at previous posts for a template to go from.

 

In the Content Tab, make sure it is pointing to your ConfigMgr Content Source.

 

image

 

For Detection Method, File System.  Each time it updates, I only have to change the Version Value, which makes it quite easy to update to the new version.
I have two detection methods, one for x86 machines and one for x64.  I’m showing the one for x64
image

That should do it.  You can now deploy the app.

Normal Install (not using the fzdefault.xml file)

image

Using the xml file :
The Update option doesn’t even show up in Settings.

image

This will even work if the user has already launched the application.  The XML file in the program folder overrides user settings.

Happy Deployments!

Leave a Reply

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