Skip to main content
Code42 Support

Preparing The CrashPlan App For Deployment

Applies to:
  • CrashPlan PROe

Overview

You can prepare deployment packages for the CrashPlan app in order to apply customized images or settings to your environment's CrashPlan apps at installation. For example, you might co-brand the CrashPlan app by adding your own graphics, or you could automatically set the IP address of the master server. This article explains the specific elements that can be customized, and how to enable the customizations. Only the elements described in this article are customizable.

This article is applicable to Code42 environments using version 3.x of the enterprise server software, including version 3.6.x and earlier of the CrashPlan app. For later versions, see the articles for version 4.x or version 5.x Code42 environments.

Considerations

  • Customizing the CrashPlan app requires CrashPlan PROe 3.3 or later.
  • Devices must meet the CrashPlan app system requirements.
  • Our Customer Champions can assist you with customizations to the CrashPlan app, but assistance with software deployment of the CrashPlan app (such as use of Casper Suite or SCCM) is beyond the support scope of our Customer Champion team. For assistance with deployment, please contact sales to engage our PRO Services team.

Step 1: Download custom template folder

Download the custom content template from your master server:

http://master-server.example.com:4280/download/CrashPlanPROe_Custom.zip

Once you have downloaded the file CrashPlanPROe_Custom.zip, move the file to a convenient location and unzip the file:

customize desktop zipfile expanded

A folder with the name custom will appear in same directory as the file CrashPlanPROe_Custom.zip.

Step 2: Prepare customized content

You can use the downloaded custom template to customize one or more of these areas of the CrashPlan app:

  • Application text values (e.g., text field labels, error messages, etc.)
  • Application images and logos
  • General configuration and connection information

Customize the CrashPlan app text

  1. From within the custom folder, open the custom.properties file using a plain text editor.
    Plain Text Editors 
    Use a plain text editor, such as Vi, VIM, emacs, Text Wrangler, Notepad++, TextMate, etc., to make these changes.
    Word processors, such as Wordpad, Word, Pages, or OpenOffice Writer, can add formatting characters to plain text files and should be avoided.
  2. Within the section listed below, add any attributes that you would like to modify. You can modify any attribute listed in the lang/txt.properties file, installed alongside the CrashPlan app.
    • Windows: C:\Program Files\CrashPlan\lang\txt.properties
      If you installed per user, see the file and folder hierarchy for file locations.
    • OS X: /Applications/CrashPlan.app/Contents/Resources/Java/lang/txt.properties
      If you installed per user, see the file and folder hierarchy for file locations.
    • Linux: /usr/local/crashplan/lang/txt.properties
    • Solaris (when installed as root): /opt/sfw/crashplan/lang/txt.properties

Text changes will only affect CrashPlan apps using an English-language locale.

Add your customizations to this section of the custom.properties file:

## Language properties???    
## Specify any properties found in lang/txt.properties???    
## Any properties listed here will override but are English only.

For example, the following properties change the labels of the text fields of the user login screen:

LoginPanel.firstName=First name\:???    
LoginPanel.lastName=Last name\:???    
LoginPanel.password=Password\:

Account Custom Fields

Property Default Value Displayed Text
a LoginPanel.firstName First name\: First name:
b LoginPanel.lastName Last name\:??? Last name:
c LoginPanel.password Password\: Password:

For example, you can change the displayed login page labels by adding 'C42' to the firstName, lastName, and password fields as follows:

LoginPanel.firstName=C42 First name\:???    
LoginPanel.lastName=C42 Last name\:???    
LoginPanel.password=C42 Password\:

Customize the CrashPlan app images

The custom/skin directory contains the images that you can customize or replace with your own images. These are the only images or graphics that can be customized.

Image Description
logo_main.png The logo that is displayed in the upper right corner of the CrashPlan app
splash_default.png The main splash screen that is displayed when CrashPlan app is launched.
window_bg.jpg The main background image of the CrashPlan app.

Modified images must be saved with filenames, image dimensions, and formats identical to the original. Only images matching the original file's properties are applied during the install process.

An example of a CrashPlan app co-branded with an example logo:

Custom Desktop Logo Example

Customize configuration settings

You can customize CrashPlan app settings, such as setting the primary network address of the enterprise server, pre-populating a registration key, or configuring Single Sign-On (SSO), by creating a custom.properties file specific to your Code42 environment. For Mac OS X only, Code42 provides a shell script to assist you in creating a custom.properties file; for Windows and Linux environments, you will need to edit the custom.properties file manually.

Before running customizing configuration settings in your Code42 environment, familiarize yourself with the available custom properties:

Custom properties

Property Name Example Values Notes
address 192.0.2.100:4282 Your master server's primary network address (hostname or IP address and port).
secondaryAddress 192.0.2.101:4282 Your master server's secondary network address (hostname or IP address and port).
hideAddress true or false Set to true to hide the server address field during initial registration. Default is false.
lockedAddress true or false Set to true to disable editing of the primary and secondary address fields in the CrashPlan app. Default is false.
registrationKey 4242-4242-4242-4242 Use the registration key specific to the default Organization for new user registration.
username ${username} Determined from the CP_USER_NAME command-line argument, the CP_USER_NAME environment variable, or “user.name” Java system property from the user interface once it launches.
password Pre-populate the password using one of the following parameters:
${computername} Computer name of the device
${generated} Random 8 characters
${uniqueId} A globally unique id, a large number
${deferred}

LDAP and auto-register only

Allows the CrashPlan app to register without providing a password and requires the user to sign into the CrashPlan app the first time it is launched.

proxy.enable true or false Set to true if you must use a proxy to connect with an enterprise server
proxy.pacUrl http://<proxy.example.com>/proxy.pac Requires the URL for a ProxyAutoConfig (PAC) file that is accessible to the client
ssoAuth.enabled true or false

Set to true to enable Single Sign-On (SSO). Default is false.

If your Code42 environment uses Single Sign On (SSO) to authenticate users, you must enable the property ssoAuth.enabled. Clients installed without this property enabled will not be able to use SSO.

ssoAuth.required true or false Enable to require login only through Single Sign-On (SSO) and hide the "Login with SSO" button. Requires ssoAuth.enabled. Default is false.
ssoAuth.provider A label for your SSO provider (label). Name of the Single Sign-On (SSO) identity provider. Requires ssoAuth.enabled. Default is Shibboleth. This value is user-facing.

Step 3: Generate installers

After preparing your custom content, you are ready to create customized installers for your devices. There are two ways to create installers:

  • (OS X only) Automatically create custom installers with a shell script
  • Manually create custom installers

Option 1: Custom configuration script

CrashPlan PROe private cloud environments only
The instructions in this section apply only to CrashPlan PROe private cloud environments using OS X master servers. For Windows or Linux master servers, use Option 2: Manually Create Custom Installers.

Code42 provides a customization script for use on OS X. You can view the full options of the customization script by running custom.sh -h.

Run the script

To run the custom.sh script:

  1. Open the Terminal app
  2. Navigate to the directory containing custom.sh. Example:
    cd /Users/admin/custom.sh
  3. Run the following command:
    ./custom.sh
  4. Review the current (default) settings in the script. At the end, the script shows a prompt:
    Change settings  (yes, no, or revert) [no]?
    
  5. Enter yes
  6. Follow the prompts in the script to configure each customizable setting
    • You will be prompted for values for all of the settings that can be customized
    • The current settings, if not null, are displayed between square brackets
    • Press Enter to accept the current setting for each prompted item
  7. After configuring all the customizable settings, the script shows a prompt:
    Change settings  (yes, no, or revert) [no]?
    
  8. Enter no
  9. When prompted, enter the URL of your master server:
    CrashPlan PROe server url (Example: http://proe:4280)?
    
  10. Press Enter to run the customization script

Review script results

The script will automatically perform the following steps:

  • Download the installers for OS X, Windows, and Linux
  • Apply the configurations in your custom directory
  • Create custom installers according to your configured settings, and place them in the custom directory:

Custom Installer Creation Results

Revise custom installers (optional)

You can make changes to your custom installers without rebuilding them from scratch. Simply run the custom.sh script again to modify your previous settings.

When you run the custom.sh script from the same directory, it will display the current settings. For example:

mycomputer:custom jdoe$ ./custom.sh

=====================================================
  Please review your customization settings below:

address=proe-master.example.com:4282
secondaryAddress=192.0.2.50
hideAddress=false
lockedAddress=true
registrationKey=AAAA-BBBB-CCCC-DDDD
username=${username}
password=
proxy.enable=false
proxy.pacUrl=test
ssoAuth.enabled=true
ssoAuth.required=false
ssoAuth.provider=Shibboleth
LoginPanel.firstName=Surname\:???

Change settings  (yes, no, or revert) [no]?

Option 2: Manually create custom installers

After customizing the contents of the custom template folder, you can add the custom folder to an installer to create a custom installation package. Manually adding the custom folder is required on Windows and Linux devices, because the provided custom.sh script is designed only for OS X.

Manual customization for OS X

  1. Download the Mac installer from your master server or from your administration console
    Example URL: https://master-server.example.com:4285/download/CrashPlanPROe_Mac.dmg
  2. Mount the installer (DMG file)
  3. Create a folder called .Custom in the DMG
    Example terminal command:
    mkdir /Volumes/CrashPlanPROe/.Custom
  4. Copy the contents of your custom folder to the new .Custom folder
  5. Unmount the DMG

Use this DMG to deploy your custom installer.

Manual customization for Windows

  1. Download the Windows installer from your master server or from your administration console:
    Example URL: https://master-server.example.com:4285/download/<filename>
    • 64-bit EXE: CrashPlanPROe-x64_Win.exe
    • 32-bit EXE: CrashPlanPROe_Win.exe
    • 64-bit MSI: CrashPlanPROe-x64_Win.msi
    • 32-bit MSI: CrashPlanPROe_Win.msi
  2. Create a new directory for your installer (such as CrashPlan_Install)
  3. Copy your custom directory, including its contents, and the CrashPlan PROe installer to this directory
    Example directory:
    Custom Install Directory for Windows
  4. Right-click the installer directory and select Send to > Compressed (zipped) folder

Use this ZIP folder to deploy your custom installer.

Manual customization for Linux

  1. Download the Linux installer from your master server or from your administration console
    Example: https://master-server.example.com:4285/download/CrashPlanPROe_Linux.tgz
  2. Unpackage the installer tarball:
    tar -xzvf CrashPlanPROe_Linux.tgz CrashPlanPROe-install
  3. Copy your custom directory to the unpackaged directory (by default, CrashPlanPROe-install)
    cp -r custom CrashPlanPROe-install
  4. Repackage the installer tarball:
    tar -czvf CrashPlan_Linux.tgz CrashPlanPROe-install

Use this tarball to deploy your custom installer.

Step 4: Deploy custom installers

After packaging your custom installers, you are ready to deploy them to the devices in your Code42 environment.

One option, described here, is to place the custom installers on your master server. Your devices can then download the custom installers over your network. You may also add your custom installers to a software distribution tool, or simply copy the custom installers directly to your devices.

CrashPlan and software management tools
If you are installing the CrashPlan app with a software management tool or using a separate administrative user, you may need to specify the correct username and home path during the installation process. By default, CrashPlan PROe sets the backup user owner and home path as the user that initiated the install. For assistance with advanced scripting to modify this behavior (a billable service), please contact sales.

Place custom installers on your Master server

Copy your custom installers from their current location to a download folder on your master server. The location of this folder varies based on the operating system of your master server.

If the download folder does not exist on your master server, create it.

  • Linux: /opt/proserver/content-custom/Default-custom/download/
    Applies to enterprise servers installed as root on Ubuntu
  • Windows: C:\Program Files\CrashPlan PROe Server\content\Default-custom\download\
  • OS X: /Applications/PROServer.app/Contents/Resources/Java/content-custom/Default-custom/download/
  • Solaris: /opt/proserver/content-custom/Default-custom/download/

Download custom installers on devices

You can download and install the custom installers from your master server to your devices by signing into the administration console and selecting the appropriate platform from the welcome screen.

Downloads from the welcome screen

Windows downloads
Because the Windows links download EXEs, Windows users cannot download your custom installation package from the welcome screen. Provide direct links for Windows users instead, or distribute your custom installation package in another way.

Advanced topics

Mac

If you are installing the CrashPlan app with a software management tool, or installing as a user other than the device owner or end user, you may need to specify the correct username and home path during the installation process. By default, CrashPlan PROe sets the backup user owner and home path as the user that initiated the install. Additional scripting is required to modify this behavior. For assistance with advanced scripting (a billable service), please contact sales.

Specify User & Home Directory

Using a text editor, edit the file 'userInfo.sh' located within the directory 'custom' you created during the customization process above. Set the following variables:

Variable Description
startDesktop Possible values: true or false. Set to false if you don't want the desktop to start up immediately after installation. The default value is true.
CP_USER_HOME Allows the desktop application to start scanning the user's home folder immediately after installation.
user Used to properly set file permissions
userGroup Also used for file permissions
CP_USER_NAME This becomes the unique ID for the user in the enterprise server database. Leave CP_USER_NAME blank to require the user to enter it. If setting this value, set the username attribute in the ‘custom.properties’ file to:
username=${username}

Windows

If you are installing the CrashPlan app with a software management tool, or installing as a user other than the device owner or end user, you may need to specify the correct username and home path during the installation process. By default, CrashPlan PROe sets the backup user owner and home path as the user that initiated the install. Additional scripting is required to modify this behavior. For assistance with advanced scripting (a billable service), please contact sales.

Specify User & Home Directory

For automated or silent installation using third party management tools, an advanced script may be required.

Variable Description
CP_SILENT Possible values: true or false. Set to true if you don't want the desktop to start up immediately after installation
CP_USER_HOME Allows the CrashPlan desktop to start scanning the user's home folder immediately after installation
CP_USER_NAME This becomes the unique ID for the user in the PROe Server database. Leave CP_USER_NAME blank to require the user to enter it. If setting this value, set the username attribute in the ‘custom.properties’ file to:
username=${username}
CP_REG_KEY Allows the registration key to be automatically set. E.g., CP_REG_KEY= AAAA-BBBB-CCCC-DDDD

Windows Batch Script Example

This script is an example and is not guaranteed or supported.

@ECHO OFF

REM The LDAP login user name and the CrashPlan user name.
SET CP_USER_NAME=%USERNAME%
Echo UserName: %CP_USER_NAME%

REM The users home directory, used in backup selection path variables.
SET CP_USER_HOME=%USERPROFILE%
Echo UserHome: %CP_USER_HOME%

REM Set the registration key
SET CP_REG_KEY=AAAA-BBBB-CCCC-DDDD
Echo RegKey: %CP_REG_KEY%

REM Tells the installer not to run CrashPlan client interface following the installation.
SET CP_SILENT=true
Echo Silent: %CP_SILENT%

SET CP_ARGS="CP_USER_NAME=%CP_USER_NAME%&CP_USER_HOME=%CP_USER_HOME%&CP_REG_KEY=%CP_REG_KEY%"
Echo Arguments: %CP_ARGS%

REM You can use any of the msiexec command-line options.
ECHO Installing CrashPlan...
CrashPlanPROe-x64_Win.exe /qn /l* install.log CP_ARGS=%CP_ARGS% CP_SILENT=%CP_SILENT%

Linux

When installing on a Linux device without a GUI, a username and password must be specified within the 'custom.properties' file prior to installation.

Custom script reference

Below is a sample of the output of running custom.sh -h:

HELP - true

Usage: ./custom.sh [option]

Options:
   -? : This usage information
   -c : Clean or delete any existing previously downloaded installers.
   -h : This usage information
   -i {include}   : Include the given process - see include options below
   -o {option}    : OS options - see OS options below
   -u {url}       : CrashPlan PROe server URL to download client installers from. i.e. http://proe:4280
   -x {exclude}   : Exclude the given process - see exclude options below

OS Options:  (only build for this OS)
   -o win         : Build the Windows customized zip
   -o mac         : Customize the Mac installer
   -o linux       : Customize the Linux installer

Include Options:  (these are typically not included)
   -i x64         : Also build Windows 64-bit customized zip
   -i msi         : Also build Windows MSI customized zip

Exclude Options:
   -x win         : Do not build the Windows customized zip
   -x mac         : Do not customize Mac installer
   -x linux       : Do not customize Linux installer