Commit 286d5262 authored by Tails developers's avatar Tails developers

XXX Import Tor Launcher @ commit 1d5d571.

parent d0ff87a7
#!/bin/sh
set -e
/usr/bin/xulrunner-24.0 /usr/share/tor-launcher-standalone/application.ini
Copyright (c) 2013, The Tor Project, Inc.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the names of the copyright owners nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
[App]
Vendor=TorProject
Name=TorLauncher
Version=0.2.5.0
BuildID=20140304
ID=tor-launcher@torproject.org
[Gecko]
MinVersion=24.0.0
MaxVersion=*.*.*
[Shell]
Icon=icon.png
### Copyright (c) 2013, The Tor Project, Inc.
### See LICENSE for licensing information.
content torlauncher chrome/content/
locale torlauncher af chrome/locale/af/
locale torlauncher ak chrome/locale/ak/
locale torlauncher am chrome/locale/am/
locale torlauncher ar chrome/locale/ar/
locale torlauncher arn chrome/locale/arn/
locale torlauncher ast chrome/locale/ast/
locale torlauncher az chrome/locale/az/
locale torlauncher be chrome/locale/be/
locale torlauncher bg chrome/locale/bg/
locale torlauncher bms chrome/locale/bms/
locale torlauncher bn chrome/locale/bn/
locale torlauncher bn-IN chrome/locale/bn-IN/
locale torlauncher bo chrome/locale/bo/
locale torlauncher br chrome/locale/br/
locale torlauncher bs chrome/locale/bs/
locale torlauncher ca chrome/locale/ca/
locale torlauncher cs chrome/locale/cs/
locale torlauncher csb chrome/locale/csb/
locale torlauncher cy chrome/locale/cy/
locale torlauncher da chrome/locale/da/
locale torlauncher de chrome/locale/de/
locale torlauncher dz chrome/locale/dz/
locale torlauncher el chrome/locale/el/
locale torlauncher en chrome/locale/en/
locale torlauncher eo chrome/locale/eo/
locale torlauncher es chrome/locale/es/
locale torlauncher et chrome/locale/et/
locale torlauncher eu chrome/locale/eu/
locale torlauncher fa chrome/locale/fa/
locale torlauncher fi chrome/locale/fi/
locale torlauncher fil chrome/locale/fil/
locale torlauncher fo chrome/locale/fo/
locale torlauncher fr chrome/locale/fr/
locale torlauncher fur chrome/locale/fur/
locale torlauncher fy chrome/locale/fy/
locale torlauncher ga chrome/locale/ga/
locale torlauncher gl chrome/locale/gl/
locale torlauncher gu chrome/locale/gu/
locale torlauncher gun chrome/locale/gun/
locale torlauncher ha chrome/locale/ha/
locale torlauncher he chrome/locale/he/
locale torlauncher hi chrome/locale/hi/
locale torlauncher hr chrome/locale/hr/
locale torlauncher ht chrome/locale/ht/
locale torlauncher hu chrome/locale/hu/
locale torlauncher hy chrome/locale/hy/
locale torlauncher id chrome/locale/id/
locale torlauncher is chrome/locale/is/
locale torlauncher it chrome/locale/it/
locale torlauncher ja chrome/locale/ja/
locale torlauncher jv chrome/locale/jv/
locale torlauncher ka chrome/locale/ka/
locale torlauncher km chrome/locale/km/
locale torlauncher kn chrome/locale/kn/
locale torlauncher ko chrome/locale/ko/
locale torlauncher ku chrome/locale/ku/
locale torlauncher kw chrome/locale/kw/
locale torlauncher ky chrome/locale/ky/
locale torlauncher lb chrome/locale/lb/
locale torlauncher lg chrome/locale/lg/
locale torlauncher ln chrome/locale/ln/
locale torlauncher lo chrome/locale/lo/
locale torlauncher lt chrome/locale/lt/
locale torlauncher lv chrome/locale/lv/
locale torlauncher mg chrome/locale/mg/
locale torlauncher mi chrome/locale/mi/
locale torlauncher mk chrome/locale/mk/
locale torlauncher ml chrome/locale/ml/
locale torlauncher mn chrome/locale/mn/
locale torlauncher mr chrome/locale/mr/
locale torlauncher ms chrome/locale/ms/
locale torlauncher mt chrome/locale/mt/
locale torlauncher my chrome/locale/my/
locale torlauncher nah chrome/locale/nah/
locale torlauncher nap chrome/locale/nap/
locale torlauncher nb chrome/locale/nb/
locale torlauncher ne chrome/locale/ne/
locale torlauncher nl chrome/locale/nl/
locale torlauncher nn chrome/locale/nn/
locale torlauncher nso chrome/locale/nso/
locale torlauncher oc chrome/locale/oc/
locale torlauncher or chrome/locale/or/
locale torlauncher pa chrome/locale/pa/
locale torlauncher pap chrome/locale/pap/
locale torlauncher pl chrome/locale/pl/
locale torlauncher pms chrome/locale/pms/
locale torlauncher ps chrome/locale/ps/
locale torlauncher pt chrome/locale/pt/
locale torlauncher pt-BR chrome/locale/pt-BR/
locale torlauncher ro chrome/locale/ro/
locale torlauncher ru chrome/locale/ru/
locale torlauncher sco chrome/locale/sco/
locale torlauncher sk chrome/locale/sk/
locale torlauncher sl chrome/locale/sl/
locale torlauncher so chrome/locale/so/
locale torlauncher son chrome/locale/son/
locale torlauncher sq chrome/locale/sq/
locale torlauncher sr chrome/locale/sr/
locale torlauncher st chrome/locale/st/
locale torlauncher su chrome/locale/su/
locale torlauncher sv chrome/locale/sv/
locale torlauncher sw chrome/locale/sw/
locale torlauncher ta chrome/locale/ta/
locale torlauncher te chrome/locale/te/
locale torlauncher tg chrome/locale/tg/
locale torlauncher th chrome/locale/th/
locale torlauncher ti chrome/locale/ti/
locale torlauncher tk chrome/locale/tk/
locale torlauncher tr chrome/locale/tr/
locale torlauncher uk chrome/locale/uk/
locale torlauncher ur chrome/locale/ur/
locale torlauncher ve chrome/locale/ve/
locale torlauncher vi chrome/locale/vi/
locale torlauncher wa chrome/locale/wa/
locale torlauncher wo chrome/locale/wo/
locale torlauncher zh-CN chrome/locale/zh-CN/
locale torlauncher zh-HK chrome/locale/zh-HK/
locale torlauncher zh-TW chrome/locale/zh-TW/
locale torlauncher zu chrome/locale/zu/
skin torlauncher classic/1.0 chrome/skin/
resource torlauncher ./
# Firefox 4-style component registration
component {4F476361-23FB-43EF-A427-B36A14D3208E} components/tl-protocol.js
contract @torproject.org/torlauncher-protocol-service;1 {4F476361-23FB-43EF-A427-B36A14D3208E}
component {FE7B4CAF-BCF4-4848-8BFF-EFA66C9AFDA1} components/tl-process.js
contract @torproject.org/torlauncher-process-service;1 {FE7B4CAF-BCF4-4848-8BFF-EFA66C9AFDA1}
category profile-after-change TorProcessService @torproject.org/torlauncher-process-service;1
<?xml version="1.0"?>
<!--
- Copyright (c) 2014, The Tor Project, Inc.
- See LICENSE for licensing information.
- vim: set sw=2 sts=2 ts=8 et syntax=xml:
-->
<!DOCTYPE overlay SYSTEM "chrome://torlauncher/locale/network-settings.dtd">
<overlay id="TorNetworkSettingsOverlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml">
<groupbox id="proxySpecificSettings">
<grid flex="1">
<columns>
<column/>
<column/>
</columns>
<rows>
<row align="center">
<label value="&torsettings.useProxy.type;" control="proxyType"
style="text-align:right" />
<hbox align="center">
<menulist id="proxyType" oncommand="onProxyTypeChange()">
<menupopup id="proxyType_menuPopup">
<menuitem label="-" value="" selected="true" />
<menuitem label="&torsettings.useProxy.type.socks4;"
value="SOCKS4"/>
<menuitem label="&torsettings.useProxy.type.socks5;"
value="SOCKS5"/>
<menuitem label="&torsettings.useProxy.type.http;"
value="HTTP"/>
</menupopup>
</menulist>
</hbox>
</row>
<row align="center">
<label value="&torsettings.useProxy.address;" control="proxyAddr"
style="text-align:right" />
<hbox align="center">
<textbox id="proxyAddr" size="20" flex="1"
placeholder="&torsettings.useProxy.address.placeholder;" />
<separator orient="vertical" />
<label value="&torsettings.useProxy.port;" control="proxyPort"/>
<textbox id="proxyPort" size="4" />
</hbox>
</row>
<row align="center">
<label id="proxyUsernameLabel"
value="&torsettings.useProxy.username;"
control="proxyUsername" style="text-align:right" />
<hbox align="center">
<textbox id="proxyUsername" size="14" flex="1"
placeholder="&torsettings.optional;" />
<separator orient="vertical" />
<label id="proxyPasswordLabel"
value="&torsettings.useProxy.password;"
control="proxyPassword"/>
<textbox id="proxyPassword" size="14" type="password"
placeholder="&torsettings.optional;" />
</hbox>
</row>
</rows>
</grid>
</groupbox>
<groupbox id="firewallSpecificSettings">
<hbox align="center">
<label value="&torsettings.firewall.allowedPorts;"
control="firewallAllowedPorts"/>
<textbox id="firewallAllowedPorts" value="80,443" />
</hbox>
</groupbox>
<groupbox id="bridgeSpecificSettings">
<hbox pack="end">
<radiogroup id="bridgeTypeRadioGroup" flex="1" style="margin: 0px">
<hbox align="center">
<radio id="bridgeRadioDefault"
label="&torsettings.useBridges.default;" selected="true" />
<menulist id="defaultBridgeType" oncommand="onBridgeTypeChange()">
<menupopup id="defaultBridgeType_menuPopup" />
</menulist>
<spring/>
</hbox>
<spacer style="height: 0.5em" />
<radio id="bridgeRadioCustom" label="&torsettings.useBridges.custom;"
oncommand="onCustomBridges()" />
</radiogroup>
<vbox pack="start">
<button dlgtype="help" oncommand="onOpenHelp()" />
</vbox>
</hbox>
<vbox id="bridgeCustomEntry">
<label style="margin-top:0px;"
value="&torsettings.useBridges.label;" control="bridgeList"/>
<textbox id="bridgeList" multiline="true" rows="3"
oninput="onCustomBridgesTextInput();"
placeholder="&torsettings.useBridges.placeholder;" />
</vbox>
</groupbox>
<vbox id="bridgeHelpContent">
<hbox align="middle"><label>&torsettings.bridgeHelpTitle;</label></hbox>
<description>&torsettings.bridgeHelp1;</description>
<description class="prelist">&torsettings.bridgeHelp1B;</description>
<html:ol>
<html:li>
<html:div class="heading">&torsettings.bridgeHelp2Heading;</html:div>
<html:div>&torsettings.bridgeHelp2;</html:div>
</html:li>
<html:li>
<html:div class="heading">&torsettings.bridgeHelp3Heading;</html:div>
<html:div>&torsettings.bridgeHelp3;</html:div>
</html:li>
<html:li>
<html:div class="heading">&torsettings.bridgeHelp4Heading;</html:div>
<html:div class="endOfHelp">&torsettings.bridgeHelp4;</html:div>
</html:li>
</html:ol>
</vbox>
</overlay>
<?xml version="1.0"?>
<!--
- Copyright (c) 2014, The Tor Project, Inc.
- See LICENSE for licensing information.
- vim: set sw=2 sts=2 ts=8 et syntax=xml:
-->
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://torlauncher/skin/network-settings.css"
type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://torlauncher/locale/network-settings.dtd">
<?xul-overlay href="chrome://torlauncher/content/network-settings-overlay.xul"?>
<wizard id="TorNetworkSettings"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
title="&torsettings.dialog.title;"
windowtype="TorLauncher:NetworkSettings"
persist="screenX screenY"
buttonlabelextra2="&torsettings.copyLog;"
onwizardfinish="return applySettings();"
onwizardcancel="return onCancel();"
onload="initDialog();">
<script type="application/x-javascript"
src="chrome://torlauncher/content/network-settings.js"/>
<wizardpage label=" " pageid="first" next="proxy" onextra2="onCopyLog();"
onpageshow="setTimeout(function() { showWizardNavButtons(); }, 0);">
<hbox class="tbb-header">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator orient="vertical" />
<groupbox flex="1">
<description id="startPrompt">
&torsettings.prompt;
</description>
<description id="startPromptConfigOnly">
&torsettings.prompt_config_only;
</description>
</groupbox>
</hbox>
<separator />
<vbox class="firstResponses" align="start">
<label class="question">&torSettings.firstQuestion;</label>
<separator/>
<label>&torSettings.connectPrompt2;</label>
<label>&torSettings.connectPrompt3;</label>
<button label="&torSettings.connect;" oncommand="useSettings();"/>
<separator class="tall"/>
<label>&torSettings.configurePrompt1;</label>
<label>&torSettings.configurePrompt2;</label>
<button label="&torSettings.configure;" oncommand="onWizardConfigure();"/>
</vbox>
</wizardpage>
<wizardpage label=" " pageid="proxy" next="firewall" onextra2="onCopyLog();"
onpageshow="showWizardNavButtons();"
onpageadvanced="return onWizardProxyNext(this);">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<hbox>
<vbox flex="1">
<label class="question">&torSettings.proxyQuestion;</label>
<radiogroup id="proxyRadioGroup">
<radio id="proxyRadioYes" label="&torSettings.yes;" />
<radio id="proxyRadioNo" label="&torSettings.no;" selected="true" />
</radiogroup>
<description class="questionHelp">&torSettings.proxyHelp;
</description>
</vbox>
</hbox>
</wizardpage>
<wizardpage pageid="proxyYES" next="firewall" onextra2="onCopyLog();"
onpageadvanced="return (getAndValidateProxySettings() != null)">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<label class="instructions">&torSettings.enterProxy;</label>
<groupbox id="proxySpecificSettings" />
</wizardpage>
<wizardpage pageid="firewall" next="bridges" onextra2="onCopyLog();"
onpageshow="showOrHideButton('next', true, true)"
onpageadvanced="return onWizardFirewallNext(this);">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<hbox>
<vbox flex="1">
<label class="question">&torSettings.firewallQuestion;</label>
<radiogroup id="firewallRadioGroup">
<radio id="firewallRadioYes" label="&torSettings.yes;" />
<radio id="firewallRadioNo" label="&torSettings.no;" selected="true" />
</radiogroup>
<description class="questionHelp">&torSettings.firewallHelp;
</description>
</vbox>
</hbox>
</wizardpage>
<wizardpage pageid="firewallYES" next="bridges" onextra2="onCopyLog();"
onpageadvanced="return (getAndValidateFirewallSettings() != null)">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<vbox>
<label class="instructions">&torSettings.enterFirewall;</label>
<groupbox id="firewallSpecificSettings" />
</vbox>
</wizardpage>
<wizardpage pageid="bridges" onextra2="onCopyLog();"
onpageshow="onWizardUseBridgesRadioChange(this)">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<hbox>
<vbox flex="1">
<label class="question">&torSettings.bridgeQuestion;</label>
<radiogroup id="useBridgesRadioGroup"
oncommand="onWizardUseBridgesRadioChange()">
<radio id="bridgesRadioYes" label="&torSettings.yes;" />
<radio id="bridgesRadioNo" label="&torSettings.no;" selected="true" />
</radiogroup>
<description class="questionHelp">&torSettings.bridgeHelp;
</description>
</vbox>
</hbox>
</wizardpage>
<wizardpage label=" " pageid="bridgeSettings" onextra2="onCopyLog();"
onpageshow="onWizardBridgeSettingsShow()">
<vbox class="tbb-logo-box" align="start">
<image class="tbb-logo" />
</vbox>
<separator />
<vbox>
<label class="question">&torSettings.bridgeSettingsPrompt;</label>
<groupbox id="bridgeSpecificSettings" />
</vbox>
</wizardpage>
<wizardpage label=" " pageid="startingTor" next="first">
<spring flex="1" />
<hbox>
<spring flex="1" />
<description id="startingTorMessage">&torsettings.startingTor;</description>
<spring flex="1" />
</hbox>
<hbox>
<spring flex="1" />
<button id="restartButton" label="&torsettings.restart;" hidden="true"
oncommand="onRestartApp()" />
<spring flex="1" />
</hbox>
<spring flex="1" />
</wizardpage>
<wizardpage label=" " pageid="errorPanel" next="notUsed"
onextra2="onCopyLog();">
</wizardpage>
<wizardpage class="help" label=" " pageid="bridgeHelp" next="notUsed"
onpageadvanced="closeHelp(); return false;">
<vbox id="bridgeHelpContent" />
</wizardpage>
<hbox pack="start">
<label id="forAssistance" />
</hbox>
</wizard>
<?xml version="1.0"?>
<!--
- Copyright (c) 2013, The Tor Project, Inc.
- See LICENSE for licensing information.
- vim: set sw=2 sts=2 ts=8 et syntax=xml:
-->
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://torlauncher/skin/network-settings.css"
type="text/css"?>
<!DOCTYPE overlay SYSTEM "chrome://torlauncher/locale/network-settings.dtd">
<?xul-overlay href="chrome://torlauncher/content/network-settings-overlay.xul"?>
<dialog id="TorNetworkSettings"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
title="&torsettings.dialog.title;"
windowtype="TorLauncher:NetworkSettings"
persist="screenX screenY"
buttons="accept,cancel,extra2,help"
buttonlabelextra2="&torsettings.copyLog;"
ondialogaccept="return applySettings();"
ondialogcancel="return onCancel();"
ondialogextra2="onCopyLog();"
ondialoghelp="onOpenHelp();"
onload="initDialog();">
<script type="application/x-javascript"
src="chrome://torlauncher/content/network-settings.js"/>
<deck id="deck">
<vbox id="settings">
<vbox>
<separator orient="horizontal" class="thin" />
<checkbox id="useProxy" groupboxID="proxySpecificSettings"
label="&torsettings.useProxy.checkbox;"
oncommand="toggleElemUI(this)"/>
<groupbox id="proxySpecificSettings" />
</vbox>