Deploying the Desktop app for Enterprise Customers

The desktop app comes in an easy to distribute .exe for Windows or .app file for Mac. For requirements on what the app needs you can see here

Mac installation:

The file can be downloaded at the following location: https://download.readcube.com/app/Install%20Papers.zip

Mac installation will require administrator rights to install and update the application. This is due to the restrictions that apple has made to get access to folders and files(used for downloading the library offline). We are working to see if this is changeable in the future. The Mac app is deployed to the Applications folder. The papers app does NOT work with other online storage locations for the library. All third party storage locations must not be used for watch folder or the library location. This includes but is not limited to OneDrive, Dropbox, iCloud, Google Drive, or any network share.  It will default the library locations to be in the home documents folder. You can find the home directory by the following command in terminal.

echo $HOME

To customize this path you can edit the file manually(located at ~/Library/Application Support/Papers/config.json) or see below for automating the path on large user deployments.

Windows installation:

The file for installation can be downloaded at the following location: https://download.readcube.com/app/Papers_Setup.exe

The Windows file can be installed using any form of package management. By default it will install in the users local appdata folder and be only available for that user(Like a chrome installation: %localappdata%\Programs\Papers). This requires no admin rights to install or update but must be run on the user's profile that you wish to install it.

If the machine is being used by multiple people you can run the installation with command line switches for All Users(default: C:\Program Files\Papers)
Please note running for all users will require admin rights for installation AND updates.

Command line switches currently supported

SwitchDescription
/SSilent. Installation will run without any GUI interface
/ALLUSERSWill install for all users instead of just one. Requires Admin Rights!
/DCustom Installation path of the application. Surround with quotes if spaces. For instance: Papers_Setup.exe /S /D="C:\Program Files\SomeDirectory\Papers"

Since ReadCube provides it's own cloud service documents should be stored locally. The default path will be in the users default documents folder. To see the default documents folder you can use PowerShell to read the setting from the registry.

Get-ItemProperty -Path "Registry::HKEY_Current_User\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" | Select-Object Personal

If the default location needs to be changed please refer below for changing the config file programmatically.


Changing default library location

Since cloud storage is not supported we highly recommend you put the library paths somewhere local on the disk to prevent conflicts between the cloud application and papers. The easiest way is to manually update the config file with the new location. However if you require environmental variables to be part of the config file we suggest using the following PowerShell script. This will require PowerShell 5 or greater on Windows(included as part of Windows 10) or PowerShell 6 or greater for Mac. The following PowerShell script will take any environmental variables you need to update the config file. This config file is also attached at the bottom of the page.


#####################################################################
#####################################################################
#####################################################################
# This file will update config files for enterprise deployments. It #
# can be used for Mac or Windows envrionments provided powershell 5+#
##### is installed. Please see https://aka.ms/pscore6 ###############
#####################################################################
#####################################################################

#Please select where you would like the library & Styles for Windows systems
#Please end the path with a \
$winLocation = "C:\Users\$env:USERNAME\Documents\"

#Please select where you would like the library for Macintosh systems
#Please end the path with a /
$macLocation = "/Users/$env:USER/Documents/"

#Windows Configuration
function WindowsConfig {
    #Find the file
    $readcubeWinFile = "$env:APPDATA\Papers\config.json"
    if (Test-Path -Path $readcubeWinFile) {
        Write-Host "File found at $readcubeWinFile"
        #file found continue script
    }
    else {
        Write-Host "Config File Missing. Stopping Script..."
        exit
    }
    #grab the json file into raw memory
    $readcubeJSON = Get-Content $readcubeWinFile -raw | ConvertFrom-Json
    #update the paths to the following
    $readcubeJSON.stylesPath = $winLocation + "Paper Styles"
    $readcubeJSON.libraryPath = $winLocation + "Papers Libary"
    Write-Host "File locations have been updated."
    Write-Host "Styles New Path = "  $readcubeJSON.stylesPath
    Write-Host "Library New Path = " $readcubeJSON.libraryPath
    $readcubeJSON | ConvertTo-Json -depth 32| set-content $readcubeWinFile
    Write-Host "File Saved. Script Exiting..."
    exit
}

function MacConfig {
    #Mac Configuration
    $readcubeMacFile = "~/Library/Application Support/Papers/config.json"
    if (Test-Path -Path $readcubeMacFile) {
        Write-Host "File found at $readcubeMacFile"
        #file found continue script
    }
    else {
        Write-Host "Config File Missing. Stopping Script..."
        exit
    }
    $readcubeJSON = Get-Content $readcubeMacFile -raw | ConvertFrom-Json
    #update the paths to the following
    $readcubeJSON.stylesPath = $macLocation + "Papers Styles"
    $readcubeJSON.libraryPath = $macLocation + "Papers Library"
    Write-Host "File locations have been updated."
    Write-Host "Styles New Path = "  $readcubeJSON.stylesPath
    Write-Host "Library New Path = " $readcubeJSON.libraryPath
    $readcubeJSON | ConvertTo-Json -depth 32| set-content $readcubeMacFile
    Write-Host "File Saved. Script Exiting..."
    exit
}

if($IsWindows) {
    Write-Host "Detected Windows environment. Powershell 6+"
    WindowsConfig
}
else{
    if($IsMacOS) {
        Write-Host "Detected Macintosh environment"
        MacConfig
    }    
    else{
        try {
            $simplePSVersion = (Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name 'PowerShellVersion').PowerShellVersion
        }
        catch {
           Write-Host "Unsuported Operating System detected. Script Exiting" 
        }
        
if ($simplePSVersion) {
        Write-Host "Windows but powershell is lower than 6. V:$simplePSVersion"
        WindowsConfig
        else {
            Write-Host "Unsupported Operating System detected. Script Exiting...."
            exit
            }
        }   
    }
}


Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.