Prepare the Code42 app for deployment
Who is this article for?
Instructor, no.
Incydr Professional, Enterprise, Gov F2, and Horizon, no.
Incydr Basic, Advanced, and Gov F1, no.
CrashPlan Cloud, no.
Retired product plans, yes.
CrashPlan for Small Business, no.
Overview
To apply deployment settings to your Code42 apps at installation, such as predefining registration keys or enabling Single Sign-On authentication methods, you can prepare deployment packages for the Code42 app. You can also configure your Code42 app installers to apply your organization's branding to your Code42 apps.
This article applies to Code42 environments using version 5.x and later of the Code42 server software, and version 4.4.x and later or version 5.2.x and later of the Code42 app.
Considerations
Our Customer Champions can help you with standard deployment of the Code42 app, but custom installations are beyond the scope of the Customer Champion team. For help with customized installations and deployments, such as using Jamf Pro (formerly Casper Suite) or SCCM, contact sales to work with our Professional Services team.
Step 1: Download files
Download standard installer files for Code42 apps and a custom template file:
- Sign on to your Code42 console
- Download Code42 app installer files from App Downloads.
- Download custom template files from Code42.
Save the template files to the same directory as the installers you downloaded above.- For Code42 apps version 4.x:
https://download.code42.com/customizations/CrashPlanPROe_Custom.zip - For Code42 apps version 5.2.x and later:
https://download.code42.com/customizations/Code42CrashPlan_Custom.zip
- For Code42 apps version 4.x:
- Unzip the custom template.
The custom content template appears in a directory named CrashPlanPROe_Custom (version 4.x and earlier) or Code42CrashPlan_Custom (version 5.x and later). - Your files *.msi, *.dmg, *.tgz and *_Custom are all siblings.
Step 2: Co-brand installers
Optionally, you can co-brand your custom installers to use your organization's branding. Follow the instructions below for one or both versions of the Code42 app:
Co-brand version 4.x Code42 apps
In version 4.x of the Code42 app, you can replace standard images and text with your own.
Customize images
In the directory *_Custom/example_skin, replace the images with your own images.
- Modified images must be saved with filenames, formats, and image dimensions identical to the originals:
- logo_main.png, 436 pixels wide by 45 pixels high
- splash_default.png, 540 pixels wide by 330 pixels high
- window_bg.jpg, 1508 pixels wide by 1142 pixels high
- Only images matching the original file's properties are applied during the install process.
- These are the only images in the Code42 app that can be customized.
Image | Description |
---|---|
logo_main.png |
The logo that is displayed in the upper right corner of the Code42 app. |
splash_default.png |
The main splash screen that is displayed when Code42 app is launched. |
window_bg.jpg |
The main background image of the Code42 app. |
Customize text
- With a plain text editor, edit the file *_Custom/custom.properties.
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. - Locate the line labeled
## Language Properties
. - Below that line, add key/value pairs for each item of text you want to customize.
- You can customize any text item listed in the lang/txt.properties file, which is installed alongside the Code42 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
- Windows: C:\Program Files\CrashPlan\lang\txt.properties
- Text customizations apply only to Code42 apps using an English-language locale.
- For example, add the following properties to change the labels of the text fields of the user login screen:
LoginPanel.firstName=Your First Name LoginPanel.lastName=Your Last Name??? LoginPanel.password=Your CrashPlan Password
- You can customize any text item listed in the lang/txt.properties file, which is installed alongside the Code42 app.
Custom text installed by Code42 for Enterprise is not overwritten by any subsequent installs or upgrades. To remove custom text, perform a complete uninstall and reinstall.
Co-brand version 5.x Code42 apps
In version 5.2.x and later of the Code42 app, you can display your organization's logo alongside the standard Code42 branding.
- In the custom directory, create two new subdirectories:
- *_Custom/skin
- *_Custom/skin/co-branding
Verify that the skin folder and its contents have read and execute (755) permissions.
- Create custom images for your organization's logo.
- Example images are included in *_Custom/example_skin.
- Create images with the attributes listed below.
- Save your images to *_Custom/skin/co-branding
File Name | Supported File Types | Maximum Supported Image Dimensions | Description |
---|---|---|---|
about |
|
Height: 36 pixels Width: 242 pixels |
Displayed on the About screen of the Code42 app |
login |
|
Height: 37 pixels Width: any pixels |
Displayed on the sign-in screen of the Code42 app |
splash |
|
Height: 285 pixels Width: 238 pixels |
Displayed when the Code42 app opens |
Step 3: Configure installer properties
Define how your installers behave and how they connect to your server. Use a plain-text editor to edit the file *_Custom/custom.properties.
For installers to deploy to OS X systems, optionally also edit *_Custom/userInfo.sh
Edit custom.properties
Property Name | Example Values | Description |
---|---|---|
address | 192.0.2.100:4282 |
Your authority server's primary network address (hostname or IP address, and port). |
secondaryAddress | 192.0.2.101:4282 |
Your authority server's secondary network address (hostname or IP address, and port). |
To take advantage of TLS security, Code42 apps version 5.4 add 5 to whatever port number you define in custom.properties. The port number
4282
shown above causes a 5.4 app to use port 4287
. It will use port 4282
only as a fallback. TLS communication is the default for version 5.4 Code42 servers and Code42 apps. Earlier 5.x Code42 apps do not add to the configured port number this way.Property Name | Example Values | Description |
---|---|---|
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 Code42 app. Default is false . |
registrationKey | 4242-4242-4242-4242 |
Use the registration key specific to your organization for new user registration. For Windows machines in LDAP environments, where |
username | ${username} |
When the Code42 app first launches, it tries to read the username from one of three sources:
|
password | Pre-populate the password using one of the following parameters, or insert a literal password for local (not LDAP or SSO) accounts. | |
${computername} |
Computer name of the device. | |
${generated} |
Random 8 characters. | |
${uniqueId} |
A globally unique ID, a large number. | |
${deferred} |
LDAP and SSO auto-register only Allows the Code42 app to register with the server without providing a password. Requires the user to sign in the first time the Code42 app interface runs.
For Windows machines in LDAP environments, where |
|
proxy.enable | true or false |
Set to true if your Code42 app must use a proxy to connect with your Code42 servers. Default is false . |
proxy.pacUrl | http://<proxy.example.com>/proxy.pac |
The URL of a ProxyAutoConfig (PAC) file that is accessible to the client. |
ssoAuth.enabled | true or false |
Set to If your Code42 environment uses single sign on (SSO) to authenticate users, you must enable the property |
ssoAuth.required | true or false |
Set to true to require login through single sign-on (SSO) and to hide the "Login with SSO" button. Requires ssoAuth.enabled . Default is false . |
Edit userinfo.sh
On OS X, the Code42 app install process identifies startup behavior, home directory, and user name, and user file permissions by running unserInfo.sh.
Step 4: Package installers
Combine the standard Code42 app install files (*.msi, *.dmg, and *.tgz) with your *_Custom directory to create the custom installers for deployment to user endpoints. You have two options. Use whichever is convenient, given your operating system and environment.
Working on OS X, create installers for Working on Linux, create installers for Windows, Linux. |
Working on Windows, create installers for Windows. Working on OS X, create installers for OS X. Working on Linux, create installers for Linux. |
Option 1: Use the custom.sh script
Run the custom.sh script on OS X or Linux systems to create custom Code42 app installers for Windows, OS X, and Linux systems.
By default, the script attempts to package installers for Windows, OS X, and Linux. To control that behavior, use the following options. To see this list in your command terminal, type ./custom.sh -h
.
OS Options: (only build for this OS) -o win : Build the Windows 32 and 64-bit MSI customized zips -o mac : Customize the Mac installer -o linux : Customize the Linux installer Exclude Options: -x win : Do not build the Windows 32 and 64-bit MSI customized zips -x mac : Do not customize Mac installer -x linux : Do not customize Linux installer
- Move your standard Code42 app installer files into your *_Custom directory.
- In a command-line terminal, navigate to the *_Custom directory.
- Make sure the custom.sh file is executable:
chmod +x custom.sh
- Run the script:
./custom.sh
- The script lists the installer properties, then prompts you:
Change settings (yes, no, or reset) [no]?
yes
: The script prompts you again for each property, one at a time, so that you can change the values.
yes:
Existing values display between square brackets. To accept any value without change, press Enter.no
: The script proceeds with the properties as listed.reset
: Return the properties to their default values (versions 5.3 and earlier sayrevert
).
- To change the properties, run the script again at any time:
./custom.sh
. - The script creates new installer files for you to deploy:
- *.zip is for Windows
- *.dmg is for OS X
- *.tgz is for Linux.
You are finished. Do not follow any more of the procedures in this article.
Option 2: Manually package installers
Create *.zip, *.dmg, and *.tgz files for deployment as follows:
Package installers for Windows
- Rename the *_Custom directory to custom.
- Select the custom directory and a *.msi file.
- Right-click to select Send to > Compressed (zipped) folder.
Package installers for OS X
- Double-click the *.dmg installer file.
The file mounts. A new icon appears on your desktop to represent the Code42CrashPlan volume. - Open a command line terminal.
- Find and note the full path of your *_Custom directory.
- Go to /Volumes:
cd /Volumes
- Open the directory that has the name of the *.dmg file, for example
cd Code42CrashPlan
- Copy your *_Custom directory into the current directory, and name it .Custom
cp -r /Users/<userName>/<path>/<filename>_Custom ./.Custom
- Close the terminal window.
- Right-click on the *.dmg icon and select Eject.
$ cd /Volumes $ ls -al Code42CrashPlan Macintosh HD $ cd Code42CrashPlan $ cp -r /Users/<yourname>/<path>/<name>_Custom ./.Custom $ ls -al .Custom Install Code42 CrashPlan.pkg Uninstall.app
Package installers for Linux
- Find and note the full path of your *_Custom directory.
- Unpack the *.tgz:
The result is a new directory crashplan-install/.
tar
-xzvf
<filename>_Linux.tgz
- Copy your *_Custom directory into that new directory, and name it .Custom:
cp -r <path>/<filename>_Custom crashplan-install/.Custom
- Repackage the *.tgz file:
tar -czvf -mode=rwx <filename>_Linux.tgz
crashplan-install/
Step 5: Deploy installers
After packaging your custom installers according to Option 2 above, deploy the resulting *.zip, *.dmg, and *.tgz files to the devices in your Code42 environment.
When the Code42 app deploys at an endpoint device, your software management tool and further scripting can control whether the Code42 app opens on the desktop, and control its username and home directory, as described below.
Deployment on Windows devices
Example deployment script for Windows
To install the Code42 app for a single user, rather than all users of the device, add three options to the final line of the script:
ALLUSERS=2 MSIINSTALLPERUSER=1 INSTALL_PER_USER=1
Deployment on OS X devices
To install the Code42 app for a single user, rather than all users of the device, use the -target option in the install command:
installer -pkg <path>/<filename>.pkg -target CurrentUserHomeDirectory