| # Portable browser
The core component of The Uniform Server Zero portable browser plugin is the Portable Pale Moon browser. This is an optimized version of Firefox. It eliminates some features that most users don’t use, reducing bloat. It is fully compatible with Firefox while being noticeably faster to load and to respond. In addition, all Firefox add-ons work as is. Installing this module transforms The Uniform Server Zero into a fully portable server with the benefit of a full-featured browser. This page provides information on the User.ini configuration file and how to manually upgrade Pale Moon. ## Background Choosing a portable web browser for Uniform Server’s portable browser module was not an easy task. There are some very capable portable browsers; for example: Google Chrome, Firefox, Maxthon, Midori, Opera, Pale Moon, PocketKMeleon and TOR Browser Bundle to mention a few. Final choice was between Portable Firefox and Pale Moon (optimized version of Firefox). Except for compiled plugins, Pale Moon is fully compatible with all of Firefox extensions. The following list features that elevated Pale Moon above Portable Firefox: Size - 10% smaller foot-print. Optimized, resulting in speed increase. Easier to pre-configure - advantage for Uniform Server Zero. Minimum user effort to upgrade to newer version of Pale Moon. Redundant functionality removed – reduces bloat. ## Configuration file User.ini The Uniform Server Zero portable browser module was designed to have a minimum impact on the Pale Moon core component. Interestingly, the module is just a re-package of Pale Moon with a User.ini configuration file. Clearly, this demonstrates the flexibility of Pale Moon architecture. The User.ini configuration file is a copy of Palemoon-Portable.ini, with modifications allowing Pale Moon to run seamlessly with Uniform Server Zero.
Modifications: Shown on the right are extracts from User.ini configuration file, highlighting the modifications required for Uniform Server. First two modifications enable the use of a PAC file for resolving domain names. Path to the PAC file (C:\UniServerZ\home\us_pac\proxy.pac) is saved to an environment variable (US_PAC) that Pale Moon picks-up. Unicontroller sets US_PAC variable to match the server location, hence is fully portable. Third modification forces the browser to use a blank page at start-up. Fourth modification disables session store resume; we are not worried about this. Last modification is to disable the Pale Moon splash screen. It's cosmetic and not required for Uniform Server. |  | User.ini:
    ; ========================================
    ; 		** User preferences **
    ; ========================================

    ;(1 US- Enable proxy to use PAC file)
    network.proxy.type=2

    ;(2 US- Set PAC file either url or path defined by environment variable US_PAC)
    network.proxy.autoconfig_url=%US_PAC%|"/

    ;(3 US- Start-up page blank)
    browser.startup.page=0

    ;(4 US- Start-up unable to restore last session)
    browser.sessionstore.resume_from_crash=false

    ; ========================================
    ; 		** Global preferences **
    ; ========================================

    [Options]
    DeleteTemp=true
    MultipleInstances=true
    RunWait=true
    ;ShowSplash=true
    ;(5 US- No splash screen)
    ShowSplash=false
    WriteLog=false
## Manually upgrade Pale Moon If a newer version of Pale Moon Portable is released before the Uniform Server zero plugin is updated, you can manually upgrade as follows. Note: Only use official binaries from https://www.palemoon.org/; see their section on illegal redistributions. Using official binaries tightens security by preventing viruses and malware, which unofficial versions may contain. Except for file User.ini, delete all files and folders in C:\UniServerZ\core\palemoon Download the latest (64-bit) version of Pale Moon Portable from https://www.palemoon.org/ ◦ Save to folder: C:\UniServerZ\core\palemoon Extract contents of the downloaded file: ◦ Navigate to folder C:\UniServerZ\core\palemoon ◦ Double-click file Palemoon-Portable-x.x.x.exe ◦ This runs the 7-Zip self-extracting archive. No need to change the default path. Click Extract button. If you wish to save space, delete the installation file Palemoon-Portable-x.x.x.exe; it is no longer required. Create a user profile: ◦ First time Palemoon-Portable.exe is run, a user profile is created. This process is automatic. To start the process, double-click on file Palemoon-Portable.exe and wait for it to complete. ◦ Note 1: It takes a relatively long time; on completion, the browser is opened. You can set personal preferences as required. ◦ Note 2: Preferences required by UniServer have been pre-configured in the User.ini configuration file. When you have finished, close the browser. The browser is now ready to run from UniController as and when required. ### User configuration file After an upgrade, there are two configuration files (Palemoon-Portable.ini and User.ini) located in folder C:\UniServerZ\core\palemoon. The User.ini file is a modified copy of Palemoon-Portable.ini Note: The user configuration is used instead of Palemoon-Portable.ini, which can be deleted. Between releases of Pale Moon, there may be minor changes to Palemoon-Portable.ini. Before deleting this file, check for differences between Palemoon-Portable.ini and User.ini and add changes to the User.ini file. Uniform Server modifications are shown above in section Configuration file User.ini --oOo--