| :mod:`mozprofile` --- Create and modify Mozilla application profiles | 
 | ==================================================================== | 
 |  | 
 | Mozprofile_ is a python tool for creating and managing profiles for Mozilla's | 
 | applications (Firefox, Thunderbird, etc.). In addition to creating profiles, | 
 | mozprofile can install addons_ and set preferences_ Mozprofile can be utilized | 
 | from the command line or as an API. | 
 |  | 
 | The preferred way of setting up profile data (addons, permissions, preferences | 
 | etc) is by passing them to the profile_ constructor. | 
 |  | 
 | Addons | 
 | ------ | 
 |  | 
 | .. automodule:: mozprofile.addons | 
 |    :members: | 
 |  | 
 | Addons may be installed individually or from a manifest. | 
 |  | 
 | Example:: | 
 |  | 
 | 	from mozprofile import FirefoxProfile | 
 | 	 | 
 | 	# create new profile to pass to mozmill/mozrunner | 
 | 	profile = FirefoxProfile(addons=["adblock.xpi"]) | 
 |  | 
 | Command Line Interface | 
 | ---------------------- | 
 |  | 
 | .. automodule:: mozprofile.cli | 
 |    :members: | 
 |  | 
 | The profile to be operated on may be specified with the ``--profile`` | 
 | switch. If a profile is not specified, one will be created in a | 
 | temporary directory which will be echoed to the terminal:: | 
 |  | 
 |     (mozmill)> mozprofile | 
 |     /tmp/tmp4q1iEU.mozrunner | 
 |     (mozmill)> ls /tmp/tmp4q1iEU.mozrunner | 
 |     user.js | 
 |  | 
 | To run mozprofile from the command line enter: | 
 | ``mozprofile --help`` for a list of options. | 
 |  | 
 | Permissions | 
 | ----------- | 
 |  | 
 | .. automodule:: mozprofile.permissions | 
 |    :members: | 
 |  | 
 | You can set permissions by creating a ``ServerLocations`` object that you pass | 
 | to the ``Profile`` constructor. Hosts can be added to it with | 
 | ``add_host(host, port)``. ``port`` can be 0. | 
 |  | 
 | Preferences | 
 | ----------- | 
 |  | 
 | .. automodule:: mozprofile.prefs | 
 |    :members: | 
 |  | 
 | Preferences can be set in several ways: | 
 |  | 
 | - using the API: You can make a dictionary with the preferences and pass it to | 
 |   the ``Profile`` constructor. You can also add more preferences with the | 
 |   ``Profile.set_preferences`` method. | 
 | - using a JSON blob file: ``mozprofile --preferences myprefs.json`` | 
 | - using a ``.ini`` file: ``mozprofile --preferences myprefs.ini`` | 
 | - via the command line: ``mozprofile --pref key:value --pref key:value [...]`` | 
 |  | 
 | When setting preferences from  an ``.ini`` file or the ``--pref`` switch, | 
 | the value will be interpolated as an integer or a boolean | 
 | (``true``/``false``) if possible. | 
 |  | 
 | Profile | 
 | -------------------- | 
 |  | 
 | .. automodule:: mozprofile.profile | 
 |    :members: | 
 |  | 
 | Resources | 
 | ----------- | 
 | Other Mozilla programs offer additional and overlapping functionality | 
 | for profiles.  There is also substantive documentation on profiles and | 
 | their management. | 
 |  | 
 | - ProfileManager_: XULRunner application for managing profiles. Has a GUI and CLI. | 
 | - python-profilemanager_: python CLI interface similar to ProfileManager | 
 | - profile documentation_  | 
 |  | 
 |  | 
 | .. _Mozprofile: https://github.com/mozilla/mozbase/tree/master/mozprofile | 
 | .. _addons: https://developer.mozilla.org/en/addons | 
 | .. _preferences: https://developer.mozilla.org/En/A_Brief_Guide_to_Mozilla_Preferences | 
 | .. _mozprofile.profile: https://github.com/mozilla/mozbase/tree/master/mozprofile/mozprofile/profile.py | 
 | .. _AddonManager: https://github.com/mozilla/mozbase/tree/master/mozprofile/mozprofile/addons.py | 
 | .. _here: https://github.com/mozilla/mozbase/blob/master/mozprofile/mozprofile/permissions.py | 
 | .. _ProfileManager: https://developer.mozilla.org/en/Profile_Manager | 
 | .. _python-profilemanager: http://k0s.org/mozilla/hg/profilemanager/ | 
 | .. _documentation: http://support.mozilla.com/en-US/kb/Profiles |