commit 327c183f17910c545540d7d9882acc374d96203b Author: Sukhbir Singh sukhbir@torproject.org Date: Sun Oct 25 22:45:35 2015 -0400
Bug 17346: Update Tor Messenger branding --- projects/instantbird/branding/about.png | Bin 10718 -> 9880 bytes projects/instantbird/branding/name.patch | 16 +- projects/instantbird/branding/osx.patch | 2 +- projects/tor-messenger/build | 16 +- projects/tor-messenger/build.osx | 16 +- projects/tor-messenger/config | 10 +- projects/tor-messenger/start-tor-messenger | 372 ++++++++++++++++++++ projects/tor-messenger/start-tor-messenger.desktop | 35 ++ projects/tor-messenger/start-unnamed-messenger | 372 -------------------- .../tor-messenger/start-unnamed-messenger.desktop | 34 -- projects/tor-messenger/tor-messenger.ico | Bin 0 -> 23934 bytes projects/tor-messenger/tor-messenger.nsi | 168 +++++++++ projects/tor-messenger/unnamed-messenger.ico | Bin 23934 -> 0 bytes projects/tor-messenger/unnamed-messenger.nsi | 168 --------- 14 files changed, 605 insertions(+), 604 deletions(-)
diff --git a/projects/instantbird/branding/about.png b/projects/instantbird/branding/about.png index 99e5969..5d7f579 100644 Binary files a/projects/instantbird/branding/about.png and b/projects/instantbird/branding/about.png differ diff --git a/projects/instantbird/branding/name.patch b/projects/instantbird/branding/name.patch index a8b7f29..b183212 100644 --- a/projects/instantbird/branding/name.patch +++ b/projects/instantbird/branding/name.patch @@ -10,8 +10,8 @@ index e5b5348..276722b 100755 -!define CompanyName "Instantbird" -!define URLInfoAbout "http://www.instantbird.com/" -!define URLUpdateInfo "http://www.instantbird.com/" -+!define BrandFullNameInternal "Unnamed Messenger" -+!define CompanyName "Unnamed Messenger" ++!define BrandFullNameInternal "Tor Messenger" ++!define CompanyName "Tor Messenger" +!define URLInfoAbout "https://www.torproject.org" +!define URLUpdateInfo "https://www.torproject.org"
@@ -25,11 +25,11 @@ index c569ebb..2d6a5d8 100644
-<!ENTITY brandShortName "Instantbird"> -<!ENTITY brandFullName "Instantbird - Nightly"> -+<!ENTITY brandShortName "Unnamed Messenger"> -+<!ENTITY brandFullName "Unnamed Messenger - Beta"> ++<!ENTITY brandShortName "Tor Messenger"> ++<!ENTITY brandFullName "Tor Messenger - Beta"> <!ENTITY brandMotto "'Cause geeks can also do magic!"> -<!ENTITY vendorShortName "Instantbird"> -+<!ENTITY vendorShortName "Unnamed Messenger"> ++<!ENTITY vendorShortName "Tor Messenger"> diff --git a/im/branding/messenger/locales/en-US/brand.properties b/im/branding/messenger/locales/en-US/brand.properties index f949ced..93528a3 100644 --- a/im/branding/messenger/locales/en-US/brand.properties @@ -41,6 +41,6 @@ index f949ced..93528a3 100644 -brandShortName=Instantbird -brandFullName=Instantbird - Nightly -vendorShortName=Instantbird -+brandShortName=Unnamed Messenger -+brandFullName=Unnamed Messenger - Beta -+vendorShortName=Unnamed Messenger ++brandShortName=Tor Messenger ++brandFullName=Tor Messenger - Beta ++vendorShortName=Tor Messenger diff --git a/projects/instantbird/branding/osx.patch b/projects/instantbird/branding/osx.patch index a64e751..196d671 100644 --- a/projects/instantbird/branding/osx.patch +++ b/projects/instantbird/branding/osx.patch @@ -6,4 +6,4 @@ diff --git a/im/branding/messenger/configure.sh b/im/branding/messenger/configur # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-MOZ_APP_DISPLAYNAME=Instantbird -+MOZ_APP_DISPLAYNAME="Unnamed Messenger" ++MOZ_APP_DISPLAYNAME="Tor Messenger" diff --git a/projects/tor-messenger/build b/projects/tor-messenger/build index 352d1f9..40641e0 100644 --- a/projects/tor-messenger/build +++ b/projects/tor-messenger/build @@ -27,11 +27,11 @@ tar xf [% c('input_files_by_name/bundle-data') %] -C bundle/Messenger/TorMesseng
[% IF c("var/linux") %] tar xf [% c('input_files_by_name/gcc') %] -chmod 755 start-unnamed-messenger start-unnamed-messenger.desktop execdesktop +chmod 755 start-tor-messenger start-tor-messenger.desktop execdesktop
-cp start-unnamed-messenger.desktop bundle/ -mv start-unnamed-messenger.desktop bundle/Messenger/ -mv start-unnamed-messenger bundle/Messenger/ +cp start-tor-messenger.desktop bundle/ +mv start-tor-messenger.desktop bundle/Messenger/ +mv start-tor-messenger bundle/Messenger/ mv execdesktop bundle/Messenger/
mkdir -p bundle/Messenger/lib @@ -59,13 +59,13 @@ mv tor-browser_en-US/Browser/TorBrowser/Tor tor-launcher@torproject.org/TorBrows mv tor-browser_en-US/Browser/TorBrowser/Data/Tor tor-launcher@torproject.org/TorBrowser/Data/Tor rm -Rf tor-browser_en-US cd ../../../ -mv bundle unnamed-messenger +mv bundle tor-messenger [% IF c('var/windows') -%] -makensis unnamed-messenger.nsi -mv unnamed-messenger-install.exe [% dest_dir _ '/' _ c('filename') %] +makensis tor-messenger.nsi +mv tor-messenger-install.exe [% dest_dir _ '/' _ c('filename') %] [% ELSE -%] [% c('tar', { - tar_src => [ 'unnamed-messenger' ], + tar_src => [ 'tor-messenger' ], tar_args => '-cJf ' _ dest_dir _ '/' _ c('filename'), }) %] [% END -%] diff --git a/projects/tor-messenger/build.osx b/projects/tor-messenger/build.osx index 1b02d75..16e9b47 100644 --- a/projects/tor-messenger/build.osx +++ b/projects/tor-messenger/build.osx @@ -2,7 +2,7 @@ set -e rootdir=$(pwd) tar xf [% c('input_files_by_name/instantbird') %] -mv UnnamedMessenger.app Unnamed\ Messenger.app +mv TorMessenger.app Tor\ Messenger.app
tar xf [% c('input_files_by_name/libdmg') %] export PATH="$(pwd)/libdmg-hfsplus:$PATH" @@ -18,26 +18,26 @@ sed -i 's/^ControlPort .*/ControlPort [% c("var/tor_control_port") %]/' TorBrows mkdir -p tor-launcher@torproject.org/TorBrowser/Data mv TorBrowser.app/TorBrowser/Tor tor-launcher@torproject.org/TorBrowser/Tor mv TorBrowser.app/TorBrowser/Data/Tor tor-launcher@torproject.org/TorBrowser/Data/Tor -mv tor-launcher@torproject.org $rootdir/Unnamed\ Messenger.app/Contents/Resources/extensions/ +mv tor-launcher@torproject.org $rootdir/Tor\ Messenger.app/Contents/Resources/extensions/ cd ..
mkdir ctypes-otr cd ctypes-otr tar xf $rootdir/[% c('input_files_by_name/ctypes-otr') %] -mv ctypes-otr* $rootdir/Unnamed\ Messenger.app/Contents/Resources/extensions/ctypes-otr@tormessenger +mv ctypes-otr* $rootdir/Tor\ Messenger.app/Contents/Resources/extensions/ctypes-otr@tormessenger cd ..
-mkdir Unnamed\ Messenger.app/TorMessenger -tar xf [% c('input_files_by_name/bundle-data') %] -C Unnamed\ Messenger.app/TorMessenger +mkdir Tor\ Messenger.app/TorMessenger +tar xf [% c('input_files_by_name/bundle-data') %] -C Tor\ Messenger.app/TorMessenger
mkdir dmg -mv Unnamed\ Messenger.app dmg +mv Tor\ Messenger.app dmg cd dmg find . -executable -exec chmod 750 {} ; find . ! -executable -exec chmod 640 {} ; find . -type f | sed -e 's/^.///' | sort | xargs -i echo "{}={}" > ../filelist.txt find . -type l | sed -e 's/^.///' | sort | xargs -i echo "{}={}" >> ../filelist.txt
-mkisofs -D -V "Unnamed Messenger" -no-pad -R -apple -o ../Unnamed\ Messenger-uncompressed.dmg -path-list ../filelist.txt -graft-points -gid 20 -dir-mode 0750 -new-dir-mode 0750 +mkisofs -D -V "Tor Messenger" -no-pad -R -apple -o ../Tor\ Messenger-uncompressed.dmg -path-list ../filelist.txt -graft-points -gid 20 -dir-mode 0750 -new-dir-mode 0750 cd .. -dmg dmg Unnamed\ Messenger-uncompressed.dmg [% dest_dir _ '/' _ c('filename') %] +dmg dmg Tor\ Messenger-uncompressed.dmg [% dest_dir _ '/' _ c('filename') %] diff --git a/projects/tor-messenger/config b/projects/tor-messenger/config index b38a263..0e1073a 100644 --- a/projects/tor-messenger/config +++ b/projects/tor-messenger/config @@ -1,6 +1,6 @@ # vim: filetype=yaml sw=2 version: 0.1.0b1 -filename: 'unnamed-messenger-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].[% c("var/filename_ext") %]' +filename: 'tor-messenger-[% c("version") %]-[% c("var/osname") %]-[% c("var/build_id") %].[% c("var/filename_ext") %]' input_files: - name: instantbird project: instantbird @@ -15,13 +15,13 @@ input_files: - project: gcc name: gcc enable: '[% c("var/linux") %]' - - filename: start-unnamed-messenger - - filename: start-unnamed-messenger.desktop + - filename: start-tor-messenger + - filename: start-tor-messenger.desktop - filename: execdesktop - - filename: unnamed-messenger.nsi + - filename: tor-messenger.nsi enable: '[% c("var/windows") %]' - filename: cert_override.txt - - filename: unnamed-messenger.ico + - filename: tor-messenger.ico enable: '[% c("var/windows") %]' - project: libdmg-hfsplus name: libdmg diff --git a/projects/tor-messenger/start-tor-messenger b/projects/tor-messenger/start-tor-messenger new file mode 100755 index 0000000..6c85733 --- /dev/null +++ b/projects/tor-messenger/start-tor-messenger @@ -0,0 +1,372 @@ +#!/usr/bin/env bash +# +# This script is modified from the start-tor-browser script. +# +# GNU/Linux does not really require something like RelativeLink.c +# However, we do want to have the same look and feel with similar features. +# +# Copyright 2015 The Tor Project. See LICENSE for licensing information. + +complain_dialog_title="Tor Messenger" + +# First, make sure DISPLAY is set. If it isn't, we're hosed; scream +# at stderr and die. +if [ "x$DISPLAY" = "x" ]; then + echo "$complain_dialog_title must be run within the X Window System." >&2 + echo "Exiting." >&2 + exit 1 +fi + +# Second, make sure this script wasn't started as 'sh start-tor-messenger' or +# similar. +if [ "x$BASH" = "x" ]; then + echo "$complain_dialog_title should be started as './start-tor-messenger'" + echo "Exiting." >&2 + exit 1; +fi + +# Do not (try to) connect to the session manager +unset SESSION_MANAGER + +# Complain about an error, by any means necessary. +# Usage: complain message +# message must not begin with a dash. +complain () { + # Trim leading newlines, to avoid breaking formatting in some dialogs. + complain_message="`echo "$1" | sed '/./,$!d'`" + + # If we're being run in debug/verbose mode, complain to stderr. + if [ "$show_output" -eq 1 ]; then + echo "$complain_message" >&2 + return + fi + + # Otherwise, we're being run by a GUI program of some sort; + # try to pop up a message in the GUI in the nicest way + # possible. + # + # In mksh, non-existent commands return 127; I'll assume all + # other shells set the same exit code if they can't run a + # command. (xmessage returns 1 if the user clicks the WM + # close button, so we do need to look at the exact exit code, + # not just assume the command failed to display a message if + # it returns non-zero.) + + # First, try zenity. + zenity --error \ + --title="$complain_dialog_title" \ + --text="$complain_message" + if [ "$?" -ne 127 ]; then + return + fi + + # Try kdialog. + kdialog --title "$complain_dialog_title" \ + --error "$complain_message" + if [ "$?" -ne 127 ]; then + return + fi + + # Try xmessage. + xmessage -title "$complain_dialog_title" \ + -center \ + -buttons OK \ + -default OK \ + -xrm '*message.scrollVertical: Never' \ + "$complain_message" + if [ "$?" -ne 127 ]; then + return + fi + + # Try gxmessage. This one isn't installed by default on + # Debian with the default GNOME installation, so it seems to + # be the least likely program to have available, but it might + # be used by one of the 'lightweight' Gtk-based desktop + # environments. + gxmessage -title "$complain_dialog_title" \ + -center \ + -buttons GTK_STOCK_OK \ + -default OK \ + "$complain_message" + if [ "$?" -ne 127 ]; then + return + fi +} + +if [ "`id -u`" -eq 0 ]; then + complain "The Tor Messenger Bundle should not be run as root. Exiting." + exit 1 +fi + +tbb_usage () { + printf "\nTor Messenger Script Options\n" + printf " --verbose Display Tor and Instantbird output in the terminal\n" + printf " --log [file] Record Tor and Instantbird output in file (default: tor-messenger.log)\n" + printf " --detach Detach from terminal and run Tor Messenger in the background.\n" + printf " --register-app Register Tor Messenger as a desktop app for this user\n" + printf " --unregister-app Unregister Tor Messenger as a desktop app for this user\n" +} +log_output=0 +show_output=0 +detach=0 +show_usage=0 +register_desktop_app=0 +logfile=/dev/null +while : +do + case "$1" in + --detach) + detach=1 + shift + ;; + -v | --verbose | -d | --debug) + show_output=1 + verbose_arg="$2" + shift + ;; + -h | "-?" | --help | -help) + show_usage=1 + show_output=1 + shift + ;; + -l | --log) + if [ -z "$2" -o "${2:0:1}" == "-" ]; then + printf "Logging Tor Messenger debug information to tor-messenger.log\n" + logfile="../tor-messenger.log" + elif [ "${2:0:1}" == "/" -o "${2:0:1}" == "~" ]; then + printf "Logging Tor Messenger debug information to %s\n" "$2" + logfile="$2" + shift + else + printf "Logging Tor Messenger debug information to %s\n" "$2" + logfile="../$2" + shift + fi + log_output=1 + shift + ;; + --register-app) + register_desktop_app=1 + show_output=1 + shift + ;; + --unregister-app) + register_desktop_app=-1 + show_output=1 + shift + ;; + *) # No more options + break + ;; + esac +done + +# We can't detach and show output at the same time.. +if [ "$show_output" -eq 1 -a "$detach" -eq 1 ]; then + detach=0 +fi + +if [ "$show_output" -eq 0 ]; then + # If the user hasn't requested 'debug mode' or --help, close stdout and stderr, + # to keep Instantbird and the stuff loaded by/for it (including the + # system's shared-library loader) from printing messages to + # $HOME/.xsession-errors or other files. (Users wouldn't have seen + # messages there anyway.) + exec > "$logfile" + exec 2> "$logfile" +fi + +# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority +# before we change HOME below. (See xauth(1) and #1945.) XDM and KDM rely +# on applications using this default value. +if [ -z "$XAUTHORITY" ]; then + XAUTHORITY=~/.Xauthority + export XAUTHORITY +fi + +# If this script is being run through a symlink, we need to know where +# in the filesystem the script itself is, not where the symlink is. +myname="$0" +if [ -L "$myname" ]; then + # XXX readlink is not POSIX, but is present in GNU coreutils + # and on FreeBSD. Unfortunately, the -f option (which follows + # a whole chain of symlinks until it reaches a non-symlink + # path name) is a GNUism, so we have to have a fallback for + # FreeBSD. Fortunately, FreeBSD has realpath instead; + # unfortunately, that's also non-POSIX and is not present in + # GNU coreutils. + # + # If this launcher were a C program, we could just use the + # realpath function, which *is* POSIX. Too bad POSIX didn't + # make that function accessible to shell scripts. + + # If realpath is available, use it; it Does The Right Thing. + possibly_my_real_name="`realpath "$myname" 2>/dev/null`" + if [ "$?" -eq 0 ]; then + myname="$possibly_my_real_name" + else + # realpath is not available; hopefully readlink -f works. + myname="`readlink -f "$myname" 2>/dev/null`" + if [ "$?" -ne 0 ]; then + # Ugh. + complain "start-tor-messenger cannot be run using a symlink on this operating system." + fi + fi +fi + +# Try to be agnostic to where we're being started from, chdir to where +# the script is. +mydir="`dirname "$myname"`" +test -d "$mydir" && cd "$mydir" + +# If ${PWD} results in a zero length string, we can try something else... +if [ ! "${PWD}" ]; then + # "hacking around some braindamage" + PWD="`pwd`" + surveysays="This system has a messed up shell.\n" +fi + +# This is a fix for an ibus issue on some Linux systems. See #9353 for more +# details. The symlink needs to be created before we change HOME. +if [ ! -d ".config/ibus" ]; then + mkdir -p .config/ibus + ln -nsf ~/.config/ibus/bus .config/ibus +fi + +# Fix up .desktop Icon and Exec Paths, and update the .desktop file from the +# canonical version if it was changed by the updater. +cp start-tor-messenger.desktop ../ +sed -i -e "s,^Name=.*,Name=Tor Messenger,g" ../start-tor-messenger.desktop +sed -i -e "s,^Icon=.*,Icon=$PWD/chrome/icons/default/default48.png,g" ../start-tor-messenger.desktop +sed -i -e "s,^Exec=.*,Exec=sh -c '"$PWD/start-tor-messenger" --detach || ([ ! -x "$PWD/start-tor-messenger" ] && "$(dirname "$*")"/Messenger/start-tor-messenger --detach)' dummy %k,g" ../start-tor-messenger.desktop + +if [ "$register_desktop_app" -eq 1 ]; then + mkdir -p "$HOME/.local/share/applications/" + cp ../start-tor-messenger.desktop "$HOME/.local/share/applications/" + update-desktop-database "$HOME/.local/share/applications/" + printf "Tor Messenger has been registered as a desktop app for this user in ~/.local/share/applications/\n" + exit 0 +fi + +if [ "$register_desktop_app" -eq -1 ]; then + if [ -e "$HOME/.local/share/applications/start-tor-messenger.desktop" ]; then + rm -f "$HOME/.local/share/applications/start-tor-messenger.desktop" + update-desktop-database "$HOME/.local/share/applications/" + printf "Tor Messenger has been removed as a user desktop app (from ~/.local/share/applications/)\n" + else + printf "Tor Messenger does not appear to be a desktop app (not present in ~/.local/share/applications/)\n" + fi + exit 0 +fi + +HOME="${PWD}" +export HOME + +SYSARCHITECTURE=$(getconf LONG_BIT) +TORARCHITECTURE=$(expr "$(file extensions/tor-launcher@torproject.org/TorBrowser/Tor/tor)" : '.*ELF ([[:digit:]]*)') + +if [ $SYSARCHITECTURE -ne $TORARCHITECTURE ]; then + complain "Wrong architecture? 32-bit vs. 64-bit." + exit 1 +fi + +LD_LIBRARY_PATH="${HOME}/lib/:${HOME}/extensions/tor-launcher@torproject.org/TorBrowser/Tor:${HOME}/extensions/ctypes-otr@tormessenger/chrome/content" +export LD_LIBRARY_PATH + +function setControlPortPasswd() { + local ctrlPasswd=$1 + + if test -z "$ctrlPasswd" -o "$ctrlPasswd" = $'"secret"' ; then + unset TOR_CONTROL_PASSWD + return + fi + + if test "${ctrlPasswd:0:1}" = $'"'; then # First 2 chars were '" + printf "Using system Tor process.\n" + export TOR_CONTROL_PASSWD + else + complain "There seems to have been a quoting problem with your \ +TOR_CONTROL_PASSWD environment variable." + cat <<EOF + +The Tor ControlPort password should be given inside double quotes, inside single +quotes, i.e. if the ControlPort password is “secret” (without curly quotes) then +we must start this script after setting the environment variable exactly like +this: + + $ TOR_CONTROL_PASSWD='"secret"' $myname + +EOF + fi +} + +# Using a system-installed Tor process with Tor Messenger: +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# The Tor ControlPort password should be given inside double quotes, inside +# single quotes, i.e. if the ControlPort password is “secret” (without +# curly quotes) then we must set the environment variable *exactly* like +# this: +# +# TOR_CONTROL_PASSWD='"secret"' +# +# Yes, the variable MUST be double-quoted, then single-quoted, exactly as +# shown. This is used by TorButton and Tor Launcher to authenticate to Tor's +# ControlPort, and is necessary for using TB with a system-installed Tor. +# +# Additionally, if using a system-installed Tor, the following about:config +# options should be set (values in <> mean they are the value taken from your +# torrc): +# +# SETTING NAME VALUE +# extensions.torbutton.banned_ports [...],<SocksPort>,<ControlPort> +# extensions.torbutton.block_disk false +# extensions.torbutton.custom.socks_host 127.0.0.1 +# extensions.torbutton.custom.socks_port <SocksPort> +# extensions.torbutton.inserted_button true +# extensions.torbutton.launch_warning false +# extensions.torbutton.loglevel 2 +# extensions.torbutton.logmethod 0 +# extensions.torbutton.settings_method custom +# extensions.torbutton.socks_port <SocksPort> +# extensions.torbutton.use_privoxy false +# extensions.torlauncher.control_port <ControlPort> +# extensions.torlauncher.loglevel 2 +# extensions.torlauncher.logmethod 0 +# extensions.torlauncher.prompt_at_startup false +# extensions.torlauncher.start_tor false +# +# where the '[...]' in the banned_ports option means "leave anything that was +# already in the preference alone, just append the things specified after it". + +# Either set `TOR_CONTROL_PASSWD` before running ./start-tor-messenger, or put +# your password in the following line where the word “secret” is: +setControlPortPasswd ${TOR_CONTROL_PASSWD:='"secret"'} + +cd "${HOME}" + +# We pass all additional command-line arguments we get to Instantbird. +# +# The --class parameter was added to fix bug 11102. + +if [ "$show_usage" -eq 1 ]; then + # Display Instantbird help, then our help + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Tor Messenger" \ + -profile TorMessenger/Data/Browser/profile.default --help 2>/dev/null + tbb_usage +elif [ "$detach" -eq 1 ] ; then + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Tor Messenger" \ + -profile TorMessenger/Data/Browser/profile.default "${@}" > "$logfile" 2>&1 </dev/null & + disown "$!" +elif [ "$log_output" -eq 1 -a "$show_output" -eq 1 ]; then + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Tor Messenger" \ + -profile TorMessenger/Data/Browser/profile.default "${@}" 2>&1 </dev/null | \ + tee "$logfile" +elif [ "$show_output" -eq 1 ]; then + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Tor Messenger" \ + -profile TorMessenger/Data/Browser/profile.default "${@}" < /dev/null +else + TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Tor Messenger" \ + -profile TorMessenger/Data/Browser/profile.default "${@}" > "$logfile" 2>&1 </dev/null +fi + +exit $? diff --git a/projects/tor-messenger/start-tor-messenger.desktop b/projects/tor-messenger/start-tor-messenger.desktop new file mode 100644 index 0000000..606cf32 --- /dev/null +++ b/projects/tor-messenger/start-tor-messenger.desktop @@ -0,0 +1,35 @@ +#!/usr/bin/env ./Messenger/execdesktop +# +# This file is a self-modifying .desktop file that can be run from the shell. +# It preserves arguments and environment for the start-tor-messenger script. +# +# Run './start-tor-messenger.desktop --help' to display the full set of +# options. +# +# When invoked from the shell, this file must always be in a Tor Messenger +# root directory. When run from the file manager or desktop GUI, it is +# relocatable. +# +# After first invocation, it will update itself with the absolute path to the +# current TBB location, to support relocation of this .desktop file for GUI +# invocation. You can also add Tor Messenger to your desktop's application +# menu by running './start-tor-messenger.desktop --register-app' +# +# If you use --register-app, and then relocate your TBB directory, Tor +# Messenger will no longer launch from your desktop's app launcher/dock. +# However, if you re-run --register-app from inside that new directory, the +# script will correct the absolute paths and re-register itself. +# +# This file will also still function if the path changes when TBB is used as a +# portable app, so long as it is run directly from that new directory, either +# via the shell or via the file manager. + +[Desktop Entry] +Type=Application +Name=Tor Messenger Setup +GenericName=Instant Messenger +Comment=Tor Messenger is +1 for privacy and -1 for mass surveillance +Categories=Network;Chat;Security; +Exec=sh -c '"$(dirname "$*")"/Messenger/start-tor-messenger --detach || ([ ! -x "$(dirname "$*")"/Messenger/start-tor-messenger ] && "$(dirname "$*")"/start-tor-messenger --detach)' dummy %k +X-TorMessenger-ExecShell=./Messenger/start-tor-messenger --detach +Icon=instant-messenger diff --git a/projects/tor-messenger/start-unnamed-messenger b/projects/tor-messenger/start-unnamed-messenger deleted file mode 100755 index 4f98506..0000000 --- a/projects/tor-messenger/start-unnamed-messenger +++ /dev/null @@ -1,372 +0,0 @@ -#!/usr/bin/env bash -# -# This script is modified from the start-tor-browser script. -# -# GNU/Linux does not really require something like RelativeLink.c -# However, we do want to have the same look and feel with similar features. -# -# Copyright 2015 The Tor Project. See LICENSE for licensing information. - -complain_dialog_title="Unnamed Messenger" - -# First, make sure DISPLAY is set. If it isn't, we're hosed; scream -# at stderr and die. -if [ "x$DISPLAY" = "x" ]; then - echo "$complain_dialog_title must be run within the X Window System." >&2 - echo "Exiting." >&2 - exit 1 -fi - -# Second, make sure this script wasn't started as 'sh start-unnamed-messenger' or -# similar. -if [ "x$BASH" = "x" ]; then - echo "$complain_dialog_title should be started as './start-unnamed-messenger'" - echo "Exiting." >&2 - exit 1; -fi - -# Do not (try to) connect to the session manager -unset SESSION_MANAGER - -# Complain about an error, by any means necessary. -# Usage: complain message -# message must not begin with a dash. -complain () { - # Trim leading newlines, to avoid breaking formatting in some dialogs. - complain_message="`echo "$1" | sed '/./,$!d'`" - - # If we're being run in debug/verbose mode, complain to stderr. - if [ "$show_output" -eq 1 ]; then - echo "$complain_message" >&2 - return - fi - - # Otherwise, we're being run by a GUI program of some sort; - # try to pop up a message in the GUI in the nicest way - # possible. - # - # In mksh, non-existent commands return 127; I'll assume all - # other shells set the same exit code if they can't run a - # command. (xmessage returns 1 if the user clicks the WM - # close button, so we do need to look at the exact exit code, - # not just assume the command failed to display a message if - # it returns non-zero.) - - # First, try zenity. - zenity --error \ - --title="$complain_dialog_title" \ - --text="$complain_message" - if [ "$?" -ne 127 ]; then - return - fi - - # Try kdialog. - kdialog --title "$complain_dialog_title" \ - --error "$complain_message" - if [ "$?" -ne 127 ]; then - return - fi - - # Try xmessage. - xmessage -title "$complain_dialog_title" \ - -center \ - -buttons OK \ - -default OK \ - -xrm '*message.scrollVertical: Never' \ - "$complain_message" - if [ "$?" -ne 127 ]; then - return - fi - - # Try gxmessage. This one isn't installed by default on - # Debian with the default GNOME installation, so it seems to - # be the least likely program to have available, but it might - # be used by one of the 'lightweight' Gtk-based desktop - # environments. - gxmessage -title "$complain_dialog_title" \ - -center \ - -buttons GTK_STOCK_OK \ - -default OK \ - "$complain_message" - if [ "$?" -ne 127 ]; then - return - fi -} - -if [ "`id -u`" -eq 0 ]; then - complain "The Unnamed Messenger Bundle should not be run as root. Exiting." - exit 1 -fi - -tbb_usage () { - printf "\nUnnamed Messenger Script Options\n" - printf " --verbose Display Tor and Instantbird output in the terminal\n" - printf " --log [file] Record Tor and Instantbird output in file (default: unnamed-messenger.log)\n" - printf " --detach Detach from terminal and run Unnamed Messenger in the background.\n" - printf " --register-app Register Unnamed Messenger as a desktop app for this user\n" - printf " --unregister-app Unregister Unnamed Messenger as a desktop app for this user\n" -} -log_output=0 -show_output=0 -detach=0 -show_usage=0 -register_desktop_app=0 -logfile=/dev/null -while : -do - case "$1" in - --detach) - detach=1 - shift - ;; - -v | --verbose | -d | --debug) - show_output=1 - verbose_arg="$2" - shift - ;; - -h | "-?" | --help | -help) - show_usage=1 - show_output=1 - shift - ;; - -l | --log) - if [ -z "$2" -o "${2:0:1}" == "-" ]; then - printf "Logging Unnamed Messenger debug information to unnamed-messenger.log\n" - logfile="../unnamed-messenger.log" - elif [ "${2:0:1}" == "/" -o "${2:0:1}" == "~" ]; then - printf "Logging Unnamed Messenger debug information to %s\n" "$2" - logfile="$2" - shift - else - printf "Logging Unnamed Messenger debug information to %s\n" "$2" - logfile="../$2" - shift - fi - log_output=1 - shift - ;; - --register-app) - register_desktop_app=1 - show_output=1 - shift - ;; - --unregister-app) - register_desktop_app=-1 - show_output=1 - shift - ;; - *) # No more options - break - ;; - esac -done - -# We can't detach and show output at the same time.. -if [ "$show_output" -eq 1 -a "$detach" -eq 1 ]; then - detach=0 -fi - -if [ "$show_output" -eq 0 ]; then - # If the user hasn't requested 'debug mode' or --help, close stdout and stderr, - # to keep Instantbird and the stuff loaded by/for it (including the - # system's shared-library loader) from printing messages to - # $HOME/.xsession-errors or other files. (Users wouldn't have seen - # messages there anyway.) - exec > "$logfile" - exec 2> "$logfile" -fi - -# If XAUTHORITY is unset, set it to its default value of $HOME/.Xauthority -# before we change HOME below. (See xauth(1) and #1945.) XDM and KDM rely -# on applications using this default value. -if [ -z "$XAUTHORITY" ]; then - XAUTHORITY=~/.Xauthority - export XAUTHORITY -fi - -# If this script is being run through a symlink, we need to know where -# in the filesystem the script itself is, not where the symlink is. -myname="$0" -if [ -L "$myname" ]; then - # XXX readlink is not POSIX, but is present in GNU coreutils - # and on FreeBSD. Unfortunately, the -f option (which follows - # a whole chain of symlinks until it reaches a non-symlink - # path name) is a GNUism, so we have to have a fallback for - # FreeBSD. Fortunately, FreeBSD has realpath instead; - # unfortunately, that's also non-POSIX and is not present in - # GNU coreutils. - # - # If this launcher were a C program, we could just use the - # realpath function, which *is* POSIX. Too bad POSIX didn't - # make that function accessible to shell scripts. - - # If realpath is available, use it; it Does The Right Thing. - possibly_my_real_name="`realpath "$myname" 2>/dev/null`" - if [ "$?" -eq 0 ]; then - myname="$possibly_my_real_name" - else - # realpath is not available; hopefully readlink -f works. - myname="`readlink -f "$myname" 2>/dev/null`" - if [ "$?" -ne 0 ]; then - # Ugh. - complain "start-unnamed-messenger cannot be run using a symlink on this operating system." - fi - fi -fi - -# Try to be agnostic to where we're being started from, chdir to where -# the script is. -mydir="`dirname "$myname"`" -test -d "$mydir" && cd "$mydir" - -# If ${PWD} results in a zero length string, we can try something else... -if [ ! "${PWD}" ]; then - # "hacking around some braindamage" - PWD="`pwd`" - surveysays="This system has a messed up shell.\n" -fi - -# This is a fix for an ibus issue on some Linux systems. See #9353 for more -# details. The symlink needs to be created before we change HOME. -if [ ! -d ".config/ibus" ]; then - mkdir -p .config/ibus - ln -nsf ~/.config/ibus/bus .config/ibus -fi - -# Fix up .desktop Icon and Exec Paths, and update the .desktop file from the -# canonical version if it was changed by the updater. -cp start-unnamed-messenger.desktop ../ -sed -i -e "s,^Name=.*,Name=Unnamed Messenger,g" ../start-unnamed-messenger.desktop -sed -i -e "s,^Icon=.*,Icon=$PWD/chrome/icons/default/default48.png,g" ../start-unnamed-messenger.desktop -sed -i -e "s,^Exec=.*,Exec=sh -c '"$PWD/start-unnamed-messenger" --detach || ([ ! -x "$PWD/start-unnamed-messenger" ] && "$(dirname "$*")"/Messenger/start-unnamed-messenger --detach)' dummy %k,g" ../start-unnamed-messenger.desktop - -if [ "$register_desktop_app" -eq 1 ]; then - mkdir -p "$HOME/.local/share/applications/" - cp ../start-unnamed-messenger.desktop "$HOME/.local/share/applications/" - update-desktop-database "$HOME/.local/share/applications/" - printf "Unnamed Messenger has been registered as a desktop app for this user in ~/.local/share/applications/\n" - exit 0 -fi - -if [ "$register_desktop_app" -eq -1 ]; then - if [ -e "$HOME/.local/share/applications/start-unnamed-messenger.desktop" ]; then - rm -f "$HOME/.local/share/applications/start-unnamed-messenger.desktop" - update-desktop-database "$HOME/.local/share/applications/" - printf "Unnamed Messenger has been removed as a user desktop app (from ~/.local/share/applications/)\n" - else - printf "Unnamed Messenger does not appear to be a desktop app (not present in ~/.local/share/applications/)\n" - fi - exit 0 -fi - -HOME="${PWD}" -export HOME - -SYSARCHITECTURE=$(getconf LONG_BIT) -TORARCHITECTURE=$(expr "$(file extensions/tor-launcher@torproject.org/TorBrowser/Tor/tor)" : '.*ELF ([[:digit:]]*)') - -if [ $SYSARCHITECTURE -ne $TORARCHITECTURE ]; then - complain "Wrong architecture? 32-bit vs. 64-bit." - exit 1 -fi - -LD_LIBRARY_PATH="${HOME}/lib/:${HOME}/extensions/tor-launcher@torproject.org/TorBrowser/Tor:${HOME}/extensions/ctypes-otr@tormessenger/chrome/content" -export LD_LIBRARY_PATH - -function setControlPortPasswd() { - local ctrlPasswd=$1 - - if test -z "$ctrlPasswd" -o "$ctrlPasswd" = $'"secret"' ; then - unset TOR_CONTROL_PASSWD - return - fi - - if test "${ctrlPasswd:0:1}" = $'"'; then # First 2 chars were '" - printf "Using system Tor process.\n" - export TOR_CONTROL_PASSWD - else - complain "There seems to have been a quoting problem with your \ -TOR_CONTROL_PASSWD environment variable." - cat <<EOF - -The Tor ControlPort password should be given inside double quotes, inside single -quotes, i.e. if the ControlPort password is “secret” (without curly quotes) then -we must start this script after setting the environment variable exactly like -this: - - $ TOR_CONTROL_PASSWD='"secret"' $myname - -EOF - fi -} - -# Using a system-installed Tor process with Tor Messenger: -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# The Tor ControlPort password should be given inside double quotes, inside -# single quotes, i.e. if the ControlPort password is “secret” (without -# curly quotes) then we must set the environment variable *exactly* like -# this: -# -# TOR_CONTROL_PASSWD='"secret"' -# -# Yes, the variable MUST be double-quoted, then single-quoted, exactly as -# shown. This is used by TorButton and Tor Launcher to authenticate to Tor's -# ControlPort, and is necessary for using TB with a system-installed Tor. -# -# Additionally, if using a system-installed Tor, the following about:config -# options should be set (values in <> mean they are the value taken from your -# torrc): -# -# SETTING NAME VALUE -# extensions.torbutton.banned_ports [...],<SocksPort>,<ControlPort> -# extensions.torbutton.block_disk false -# extensions.torbutton.custom.socks_host 127.0.0.1 -# extensions.torbutton.custom.socks_port <SocksPort> -# extensions.torbutton.inserted_button true -# extensions.torbutton.launch_warning false -# extensions.torbutton.loglevel 2 -# extensions.torbutton.logmethod 0 -# extensions.torbutton.settings_method custom -# extensions.torbutton.socks_port <SocksPort> -# extensions.torbutton.use_privoxy false -# extensions.torlauncher.control_port <ControlPort> -# extensions.torlauncher.loglevel 2 -# extensions.torlauncher.logmethod 0 -# extensions.torlauncher.prompt_at_startup false -# extensions.torlauncher.start_tor false -# -# where the '[...]' in the banned_ports option means "leave anything that was -# already in the preference alone, just append the things specified after it". - -# Either set `TOR_CONTROL_PASSWD` before running ./start-tor-messenger, or put -# your password in the following line where the word “secret” is: -setControlPortPasswd ${TOR_CONTROL_PASSWD:='"secret"'} - -cd "${HOME}" - -# We pass all additional command-line arguments we get to Instantbird. -# -# The --class parameter was added to fix bug 11102. - -if [ "$show_usage" -eq 1 ]; then - # Display Instantbird help, then our help - TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Unnamed Messenger" \ - -profile TorMessenger/Data/Browser/profile.default --help 2>/dev/null - tbb_usage -elif [ "$detach" -eq 1 ] ; then - TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Unnamed Messenger" \ - -profile TorMessenger/Data/Browser/profile.default "${@}" > "$logfile" 2>&1 </dev/null & - disown "$!" -elif [ "$log_output" -eq 1 -a "$show_output" -eq 1 ]; then - TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Unnamed Messenger" \ - -profile TorMessenger/Data/Browser/profile.default "${@}" 2>&1 </dev/null | \ - tee "$logfile" -elif [ "$show_output" -eq 1 ]; then - TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Unnamed Messenger" \ - -profile TorMessenger/Data/Browser/profile.default "${@}" < /dev/null -else - TOR_CONTROL_PASSWD=${TOR_CONTROL_PASSWD} ./instantbird --class "Unnamed Messenger" \ - -profile TorMessenger/Data/Browser/profile.default "${@}" > "$logfile" 2>&1 </dev/null -fi - -exit $? diff --git a/projects/tor-messenger/start-unnamed-messenger.desktop b/projects/tor-messenger/start-unnamed-messenger.desktop deleted file mode 100644 index 3c5f92f..0000000 --- a/projects/tor-messenger/start-unnamed-messenger.desktop +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env ./Messenger/execdesktop -# -# This file is a self-modifying .desktop file that can be run from the shell. -# It preserves arguments and environment for the start-unnamed-messenger script. -# -# Run './start-unnamed-messenger.desktop --help' to display the full set of options. -# -# When invoked from the shell, this file must always be in a Unnamed Messenger -# root directory. When run from the file manager or desktop GUI, it is -# relocatable. -# -# After first invocation, it will update itself with the absolute path to the -# current TBB location, to support relocation of this .desktop file for GUI -# invocation. You can also add Unnamed Messenger to your desktop's application -# menu by running './start-unnamed-messenger.desktop --register-app' -# -# If you use --register-app, and then relocate your TBB directory, Unnamed -# Messenger will no longer launch from your desktop's app launcher/dock. -# However, if you re-run --register-app from inside that new directory, the -# script will correct the absolute paths and re-register itself. -# -# This file will also still function if the path changes when TBB is used as a -# portable app, so long as it is run directly from that new directory, either -# via the shell or via the file manager. - -[Desktop Entry] -Type=Application -Name=Unnamed Messenger Setup -GenericName=Instant Messenger -Comment=Unnamed Messenger is +1 for privacy and -1 for mass surveillance -Categories=Network;Chat;Security; -Exec=sh -c '"$(dirname "$*")"/Messenger/start-unnamed-messenger --detach || ([ ! -x "$(dirname "$*")"/Messenger/start-unnamed-messenger ] && "$(dirname "$*")"/start-unnamed-messenger --detach)' dummy %k -X-TorMessenger-ExecShell=./Messenger/start-unnamed-messenger --detach -Icon=instant-messenger diff --git a/projects/tor-messenger/tor-messenger.ico b/projects/tor-messenger/tor-messenger.ico new file mode 100644 index 0000000..cce2759 Binary files /dev/null and b/projects/tor-messenger/tor-messenger.ico differ diff --git a/projects/tor-messenger/tor-messenger.nsi b/projects/tor-messenger/tor-messenger.nsi new file mode 100644 index 0000000..eabe6f3 --- /dev/null +++ b/projects/tor-messenger/tor-messenger.nsi @@ -0,0 +1,168 @@ +;NSIS Installer for Tor Messenger +;Based on NSIS Installer for Tor Browser Bundle +;Written by Moritz Bartl +;released under Public Domain + +;-------------------------------- +;Modern" UI + + !include "MUI2.nsh" + +;-------------------------------- +;General + + ; location of Tor Messenger to put into installer + !define TBBSOURCE ".\tor-messenger" + + Name "Tor Messenger" + OutFile "tor-messenger-install.exe" + + ;Default installation folder + InstallDir "$DESKTOP\Tor Messenger" + + ;Best (but slowest) compression + SetCompressor /SOLID lzma + SetCompressorDictSize 32 + + ;Request application privileges for Windows Vista + RequestExecutionLevel user + +;-------------------------------- +;Interface Configuration + + !define MUI_ICON "tor-messenger.ico" + !define MUI_ABORTWARNING + +;-------------------------------- +;Modern UI settings + !define MUI_FINISHPAGE_NOREBOOTSUPPORT ; we don't require a reboot + !define MUI_FINISHPAGE_RUN + !define MUI_FINISHPAGE_RUN_FUNCTION "StartTorMessenger" + !define MUI_FINISHPAGE_SHOWREADME ; misuse for option to create shortcut; less ugly than MUI_PAGE_COMPONENTS + !define MUI_FINISHPAGE_SHOWREADME_TEXT "&Add Start Menu && Desktop shortcuts" + !define MUI_FINISHPAGE_SHOWREADME_FUNCTION "CreateShortCuts" +;-------------------------------- +;Pages + + !define MUI_PAGE_CUSTOMFUNCTION_LEAVE CheckIfTargetDirectoryExists + !insertmacro MUI_PAGE_DIRECTORY + !insertmacro MUI_PAGE_INSTFILES + !insertmacro MUI_PAGE_FINISH + +;-------------------------------- +;Languages + + !insertmacro MUI_LANGUAGE "English" ;first language is the default language + !insertmacro MUI_LANGUAGE "French" + !insertmacro MUI_LANGUAGE "German" + !insertmacro MUI_LANGUAGE "Spanish" + !insertmacro MUI_LANGUAGE "SpanishInternational" + !insertmacro MUI_LANGUAGE "SimpChinese" + !insertmacro MUI_LANGUAGE "TradChinese" + !insertmacro MUI_LANGUAGE "Japanese" + !insertmacro MUI_LANGUAGE "Korean" + !insertmacro MUI_LANGUAGE "Italian" + !insertmacro MUI_LANGUAGE "Dutch" + !insertmacro MUI_LANGUAGE "Danish" + !insertmacro MUI_LANGUAGE "Swedish" + !insertmacro MUI_LANGUAGE "Norwegian" + !insertmacro MUI_LANGUAGE "NorwegianNynorsk" + !insertmacro MUI_LANGUAGE "Finnish" + !insertmacro MUI_LANGUAGE "Greek" + !insertmacro MUI_LANGUAGE "Russian" + !insertmacro MUI_LANGUAGE "Portuguese" + !insertmacro MUI_LANGUAGE "PortugueseBR" + !insertmacro MUI_LANGUAGE "Polish" + !insertmacro MUI_LANGUAGE "Ukrainian" + !insertmacro MUI_LANGUAGE "Czech" + !insertmacro MUI_LANGUAGE "Slovak" + !insertmacro MUI_LANGUAGE "Croatian" + !insertmacro MUI_LANGUAGE "Bulgarian" + !insertmacro MUI_LANGUAGE "Hungarian" + !insertmacro MUI_LANGUAGE "Thai" + !insertmacro MUI_LANGUAGE "Romanian" + !insertmacro MUI_LANGUAGE "Latvian" + !insertmacro MUI_LANGUAGE "Macedonian" + !insertmacro MUI_LANGUAGE "Estonian" + !insertmacro MUI_LANGUAGE "Turkish" + !insertmacro MUI_LANGUAGE "Lithuanian" + !insertmacro MUI_LANGUAGE "Slovenian" + !insertmacro MUI_LANGUAGE "Serbian" + !insertmacro MUI_LANGUAGE "SerbianLatin" + !insertmacro MUI_LANGUAGE "Arabic" + !insertmacro MUI_LANGUAGE "Farsi" + !insertmacro MUI_LANGUAGE "Hebrew" + !insertmacro MUI_LANGUAGE "Indonesian" + !insertmacro MUI_LANGUAGE "Mongolian" + !insertmacro MUI_LANGUAGE "Luxembourgish" + !insertmacro MUI_LANGUAGE "Albanian" + !insertmacro MUI_LANGUAGE "Breton" + !insertmacro MUI_LANGUAGE "Belarusian" + !insertmacro MUI_LANGUAGE "Icelandic" + !insertmacro MUI_LANGUAGE "Malay" + !insertmacro MUI_LANGUAGE "Bosnian" + !insertmacro MUI_LANGUAGE "Kurdish" + !insertmacro MUI_LANGUAGE "Irish" + !insertmacro MUI_LANGUAGE "Uzbek" + !insertmacro MUI_LANGUAGE "Galician" + !insertmacro MUI_LANGUAGE "Afrikaans" + !insertmacro MUI_LANGUAGE "Catalan" + !insertmacro MUI_LANGUAGE "Esperanto" + +;-------------------------------- +;Multi Language support: Read strings from separate file + +; !include torbrowser-langstrings.nsi + +;-------------------------------- +;Reserve Files + + ;If you are using solid compression, files that are required before + ;the actual installation should be stored first in the data block, + ;because this will make your installer start faster. + + !insertmacro MUI_RESERVEFILE_LANGDLL + +;-------------------------------- +;Installer Sections + +Section "Tor Messenger" SecTBB + + SetOutPath "$INSTDIR" + File /r "${TBBSOURCE}*.*" + SetOutPath "$INSTDIR\Messenger" + CreateShortCut "$INSTDIR\Start Tor Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" + +SectionEnd + +Function CreateShortcuts + + CreateShortCut "$SMPROGRAMS\Start Tor Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" + CreateShortCut "$DESKTOP\Start Tor Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" + +FunctionEnd +;-------------------------------- +;Installer Functions + +Function .onInit + + !insertmacro MUI_LANGDLL_DISPLAY + +FunctionEnd + +;-------------------------------- +;Helper Functions + +Function CheckIfTargetDirectoryExists +${If} ${FileExists} "$INSTDIR*.*" + MessageBox MB_YESNO "The destination directory already exists. You can try to upgrade Tor Messenger, but if you run into any problems, use a new directory instead. Continue?" IDYES NoAbort + Abort + NoAbort: +${EndIf} +FunctionEnd + + +Function StartTorMessenger +ExecShell "open" "$INSTDIR/Start Tor Messenger.lnk" +FunctionEnd + diff --git a/projects/tor-messenger/unnamed-messenger.ico b/projects/tor-messenger/unnamed-messenger.ico deleted file mode 100644 index cce2759..0000000 Binary files a/projects/tor-messenger/unnamed-messenger.ico and /dev/null differ diff --git a/projects/tor-messenger/unnamed-messenger.nsi b/projects/tor-messenger/unnamed-messenger.nsi deleted file mode 100644 index 0f0e5cd..0000000 --- a/projects/tor-messenger/unnamed-messenger.nsi +++ /dev/null @@ -1,168 +0,0 @@ -;NSIS Installer for Unnamed Messenger -;Based on NSIS Installer for Tor Browser Bundle -;Written by Moritz Bartl -;released under Public Domain - -;-------------------------------- -;Modern" UI - - !include "MUI2.nsh" - -;-------------------------------- -;General - - ; location of Unnamed Messenger to put into installer - !define TBBSOURCE ".\unnamed-messenger" - - Name "Unnamed Messenger" - OutFile "unnamed-messenger-install.exe" - - ;Default installation folder - InstallDir "$DESKTOP\Unnamed Messenger" - - ;Best (but slowest) compression - SetCompressor /SOLID lzma - SetCompressorDictSize 32 - - ;Request application privileges for Windows Vista - RequestExecutionLevel user - -;-------------------------------- -;Interface Configuration - - !define MUI_ICON "unnamed-messenger.ico" - !define MUI_ABORTWARNING - -;-------------------------------- -;Modern UI settings - !define MUI_FINISHPAGE_NOREBOOTSUPPORT ; we don't require a reboot - !define MUI_FINISHPAGE_RUN - !define MUI_FINISHPAGE_RUN_FUNCTION "StartUnnamedMessenger" - !define MUI_FINISHPAGE_SHOWREADME ; misuse for option to create shortcut; less ugly than MUI_PAGE_COMPONENTS - !define MUI_FINISHPAGE_SHOWREADME_TEXT "&Add Start Menu && Desktop shortcuts" - !define MUI_FINISHPAGE_SHOWREADME_FUNCTION "CreateShortCuts" -;-------------------------------- -;Pages - - !define MUI_PAGE_CUSTOMFUNCTION_LEAVE CheckIfTargetDirectoryExists - !insertmacro MUI_PAGE_DIRECTORY - !insertmacro MUI_PAGE_INSTFILES - !insertmacro MUI_PAGE_FINISH - -;-------------------------------- -;Languages - - !insertmacro MUI_LANGUAGE "English" ;first language is the default language - !insertmacro MUI_LANGUAGE "French" - !insertmacro MUI_LANGUAGE "German" - !insertmacro MUI_LANGUAGE "Spanish" - !insertmacro MUI_LANGUAGE "SpanishInternational" - !insertmacro MUI_LANGUAGE "SimpChinese" - !insertmacro MUI_LANGUAGE "TradChinese" - !insertmacro MUI_LANGUAGE "Japanese" - !insertmacro MUI_LANGUAGE "Korean" - !insertmacro MUI_LANGUAGE "Italian" - !insertmacro MUI_LANGUAGE "Dutch" - !insertmacro MUI_LANGUAGE "Danish" - !insertmacro MUI_LANGUAGE "Swedish" - !insertmacro MUI_LANGUAGE "Norwegian" - !insertmacro MUI_LANGUAGE "NorwegianNynorsk" - !insertmacro MUI_LANGUAGE "Finnish" - !insertmacro MUI_LANGUAGE "Greek" - !insertmacro MUI_LANGUAGE "Russian" - !insertmacro MUI_LANGUAGE "Portuguese" - !insertmacro MUI_LANGUAGE "PortugueseBR" - !insertmacro MUI_LANGUAGE "Polish" - !insertmacro MUI_LANGUAGE "Ukrainian" - !insertmacro MUI_LANGUAGE "Czech" - !insertmacro MUI_LANGUAGE "Slovak" - !insertmacro MUI_LANGUAGE "Croatian" - !insertmacro MUI_LANGUAGE "Bulgarian" - !insertmacro MUI_LANGUAGE "Hungarian" - !insertmacro MUI_LANGUAGE "Thai" - !insertmacro MUI_LANGUAGE "Romanian" - !insertmacro MUI_LANGUAGE "Latvian" - !insertmacro MUI_LANGUAGE "Macedonian" - !insertmacro MUI_LANGUAGE "Estonian" - !insertmacro MUI_LANGUAGE "Turkish" - !insertmacro MUI_LANGUAGE "Lithuanian" - !insertmacro MUI_LANGUAGE "Slovenian" - !insertmacro MUI_LANGUAGE "Serbian" - !insertmacro MUI_LANGUAGE "SerbianLatin" - !insertmacro MUI_LANGUAGE "Arabic" - !insertmacro MUI_LANGUAGE "Farsi" - !insertmacro MUI_LANGUAGE "Hebrew" - !insertmacro MUI_LANGUAGE "Indonesian" - !insertmacro MUI_LANGUAGE "Mongolian" - !insertmacro MUI_LANGUAGE "Luxembourgish" - !insertmacro MUI_LANGUAGE "Albanian" - !insertmacro MUI_LANGUAGE "Breton" - !insertmacro MUI_LANGUAGE "Belarusian" - !insertmacro MUI_LANGUAGE "Icelandic" - !insertmacro MUI_LANGUAGE "Malay" - !insertmacro MUI_LANGUAGE "Bosnian" - !insertmacro MUI_LANGUAGE "Kurdish" - !insertmacro MUI_LANGUAGE "Irish" - !insertmacro MUI_LANGUAGE "Uzbek" - !insertmacro MUI_LANGUAGE "Galician" - !insertmacro MUI_LANGUAGE "Afrikaans" - !insertmacro MUI_LANGUAGE "Catalan" - !insertmacro MUI_LANGUAGE "Esperanto" - -;-------------------------------- -;Multi Language support: Read strings from separate file - -; !include torbrowser-langstrings.nsi - -;-------------------------------- -;Reserve Files - - ;If you are using solid compression, files that are required before - ;the actual installation should be stored first in the data block, - ;because this will make your installer start faster. - - !insertmacro MUI_RESERVEFILE_LANGDLL - -;-------------------------------- -;Installer Sections - -Section "Unnamed Messenger" SecTBB - - SetOutPath "$INSTDIR" - File /r "${TBBSOURCE}*.*" - SetOutPath "$INSTDIR\Messenger" - CreateShortCut "$INSTDIR\Start Unnamed Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" - -SectionEnd - -Function CreateShortcuts - - CreateShortCut "$SMPROGRAMS\Start Unnamed Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" - CreateShortCut "$DESKTOP\Start Unnamed Messenger.lnk" "$INSTDIR\Messenger\instantbird.exe" - -FunctionEnd -;-------------------------------- -;Installer Functions - -Function .onInit - - !insertmacro MUI_LANGDLL_DISPLAY - -FunctionEnd - -;-------------------------------- -;Helper Functions - -Function CheckIfTargetDirectoryExists -${If} ${FileExists} "$INSTDIR*.*" - MessageBox MB_YESNO "The destination directory already exists. You can try to upgrade Unnamed Messenger, but if you run into any problems, use a new directory instead. Continue?" IDYES NoAbort - Abort - NoAbort: -${EndIf} -FunctionEnd - - -Function StartUnnamedMessenger -ExecShell "open" "$INSTDIR/Start Unnamed Messenger.lnk" -FunctionEnd -
tor-commits@lists.torproject.org