Hello community,

here is the log from the commit of package torbrowser-launcher for 
openSUSE:Factory checked in at 2018-02-06 16:48:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/torbrowser-launcher (Old)
 and      /work/SRC/openSUSE:Factory/.torbrowser-launcher.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "torbrowser-launcher"

Tue Feb  6 16:48:31 2018 rev:8 rq:572914 version:0.2.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/torbrowser-launcher/torbrowser-launcher.changes  
2017-07-19 12:22:18.181403646 +0200
+++ 
/work/SRC/openSUSE:Factory/.torbrowser-launcher.new/torbrowser-launcher.changes 
    2018-02-06 16:48:57.384623534 +0100
@@ -1,0 +2,14 @@
+Mon Feb  5 10:28:36 UTC 2018 - [email protected]
+
+- Update to versio 0.2.9:
+  * Fixed crash issue related to Tor Browser 7.5 changing how the
+    currently installed version number is stored
+  * Updated list of Tor Project dist mirrors
+  * Fixed edge case crash for when stdout isn't writable
+  * Updated AppStream metadata
+  * Updated AppArmor profiles
+- Only run post[un] scripts for openSUSE < 1500; these macros are
+  void for newer versions, where rpm triggers automatically take
+  care of the appropriate action.
+
+-------------------------------------------------------------------

Old:
----
  v0.2.8.tar.gz

New:
----
  v0.2.9.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ torbrowser-launcher.spec ++++++
--- /var/tmp/diff_new_pack.wSQonV/_old  2018-02-06 16:48:58.024593589 +0100
+++ /var/tmp/diff_new_pack.wSQonV/_new  2018-02-06 16:48:58.028593401 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package torbrowser-launcher
 #
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           torbrowser-launcher
-Version:        0.2.8
+Version:        0.2.9
 Release:        0
 Summary:        Tool for launching and easy-updates of Tor Browser
 License:        MIT
@@ -94,11 +94,13 @@
 # REMOVE USELESS TOPLEVEL .mo FILE
 rm -fr %{buildroot}%{_datadir}/locale/%{name}.mo
 
+%if 0%{?suse_version} < 1500
 %post
 %desktop_database_post
 
 %postun
 %desktop_database_postun
+%endif
 
 %files
 %defattr(-,root,root)
@@ -106,9 +108,9 @@
 %{_bindir}/%{name}
 %{_datadir}/applications/*.desktop
 %if 0%{?suse_version} <= 1315
-%dir %{_datadir}/appdata
+%dir %{_datadir}/metainfo
 %endif
-%{_datadir}/appdata/torbrowser.appdata.xml
+%{_datadir}/metainfo/torbrowser.appdata.xml
 %{_datadir}/pixmaps/torbrowser*.png
 %{_datadir}/%{name}/
 %{python_sitelib}/torbrowser_launcher-%{version}-py%{py_ver}.egg-info
@@ -117,9 +119,9 @@
 %files -n torbrowser-apparmor-profile
 %defattr(-,root,root)
 %doc apparmor/license.txt
-%config %{_sysconfdir}/apparmor.d/torbrowser.Browser.firefox
-%config %{_sysconfdir}/apparmor.d/torbrowser.Tor.tor
-%config %{_sysconfdir}/apparmor.d/usr.bin.torbrowser-launcher
+%config %{_sysconfdir}/apparmor.d/torbrowser.*
+%config %{_sysconfdir}/apparmor.d/local/torbrowser.*
+%config %{_sysconfdir}/apparmor.d/tunables/torbrowser
 
 %files lang -f %{name}.lang
 

++++++ v0.2.8.tar.gz -> v0.2.9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/torbrowser-launcher-0.2.8/CHANGELOG.md 
new/torbrowser-launcher-0.2.9/CHANGELOG.md
--- old/torbrowser-launcher-0.2.8/CHANGELOG.md  2017-06-22 00:40:20.000000000 
+0200
+++ new/torbrowser-launcher-0.2.9/CHANGELOG.md  2018-01-28 19:33:29.000000000 
+0100
@@ -1,5 +1,13 @@
 # Tor Browser Launcher Changelog
 
+## 0.2.9
+
+* Fixed crash issue related to Tor Browser 7.5 changing how the currently 
installed version number is stored
+* Updated list of Tor Project dist mirrors
+* Fixed edge case crash for when stdout isn't writable
+* Updated AppStream metadata
+* Updated AppArmor profiles
+
 ## 0.2.8
 
 * Update URL to check for latest version, which changed in Tor Browser 7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Browser.firefox 
new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Browser.firefox
--- old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Browser.firefox     
1970-01-01 01:00:00.000000000 +0100
+++ new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Browser.firefox     
2018-01-28 19:33:29.000000000 +0100
@@ -0,0 +1,2 @@
+# Site-specific additions and overrides for torbrowser.Browser.firefox.
+# For more details, please see /etc/apparmor.d/local/README. 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Browser.plugin-container
 
new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Browser.plugin-container
--- 
old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Browser.plugin-container
    1970-01-01 01:00:00.000000000 +0100
+++ 
new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Browser.plugin-container
    2018-01-28 19:33:29.000000000 +0100
@@ -0,0 +1,2 @@
+# Site-specific additions and overrides for torbrowser.Browser.firefox.
+# For more details, please see /etc/apparmor.d/local/README.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Tor.tor 
new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Tor.tor
--- old/torbrowser-launcher-0.2.8/apparmor/local/torbrowser.Tor.tor     
1970-01-01 01:00:00.000000000 +0100
+++ new/torbrowser-launcher-0.2.9/apparmor/local/torbrowser.Tor.tor     
2018-01-28 19:33:29.000000000 +0100
@@ -0,0 +1,2 @@
+# Site-specific additions and overrides for torbrowser.Browser.firefox.
+# For more details, please see /etc/apparmor.d/local/README.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Browser.firefox 
new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Browser.firefox
--- old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Browser.firefox   
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Browser.firefox   
2018-01-28 19:33:29.000000000 +0100
@@ -1,22 +1,20 @@
-# Last modified
 #include <tunables/global>
+#include <tunables/torbrowser>
 
 
/home/*/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/firefox 
{
   #include <abstractions/gnome>
 
-  # Uncomment the following line if you don't want the Tor Browser
-  # to have direct access to your sound hardware. Note that this is not
-  # enough to have working sound support in Tor Browser.
-  # #include <abstractions/audio>
-
   # Uncomment the following lines if you want to give the Tor Browser 
read-write
   # access to most of your personal files.
   # #include <abstractions/user-download>
   # @{HOME}/ r,
 
   #dbus,
+  network netlink raw,
   network tcp,
 
+  ptrace (trace) peer=@{profile_name},
+
   deny /etc/host.conf r,
   deny /etc/hosts r,
   deny /etc/nsswitch.conf r,
@@ -28,37 +26,38 @@
   deny /etc/machine-id r,
   deny /var/lib/dbus/machine-id r,
 
+  /dev/ r,
+  /dev/shm/ r,
+
+  owner @{PROC}/@{pid}/fd/ r,
   owner @{PROC}/@{pid}/mountinfo r,
   owner @{PROC}/@{pid}/stat r,
   owner @{PROC}/@{pid}/status r,
   owner @{PROC}/@{pid}/task/*/stat r,
   @{PROC}/sys/kernel/random/uuid r,
 
-  owner @{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/ r,
-  owner @{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/* r,
-  owner @{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/.** 
rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/update.test/ 
rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/.** rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/ rw,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/** rw,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser.bak/ 
rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser.bak/** 
rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/*.so mr,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/components/*.so
 mr,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/browser/components/*.so
 mr,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/firefox 
rix,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/plugin-container
 Pix,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/{,TorBrowser/UpdateInfo/}updates/[0-9]*/updater
 ix,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/{,TorBrowser/UpdateInfo/}updates/0/MozUpdater/bgupdate/updater
 ix,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/TorBrowser/Data/Browser/profiles.ini
 r,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/TorBrowser/Data/Browser/profile.default/
 r,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/TorBrowser/Data/Browser/profile.default/**
 rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/TorBrowser/Tor/tor
 px,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/TorBrowser/Tor/libstdc++.so.6
 m,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/Desktop/
 rw,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/Desktop/**
 rwk,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/Downloads/
 rw,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/Downloads/**
 rwk,
+  owner @{torbrowser_installation_dir}/ r,
+  owner @{torbrowser_installation_dir}/* r,
+  owner @{torbrowser_installation_dir}/.** rwk,
+  owner @{torbrowser_installation_dir}/update.test/ rwk,
+  owner @{torbrowser_home_dir}/.** rwk,
+  owner @{torbrowser_home_dir}/ rw,
+  owner @{torbrowser_home_dir}/** rwk,
+  owner @{torbrowser_home_dir}.bak/ rwk,
+  owner @{torbrowser_home_dir}.bak/** rwk,
+  owner @{torbrowser_home_dir}/*.so mr,
+  owner @{torbrowser_home_dir}/components/*.so mr,
+  owner @{torbrowser_home_dir}/browser/components/*.so mr,
+  owner @{torbrowser_home_dir}/firefox rix,
+  owner @{torbrowser_home_dir}/plugin-container px -> 
torbrowser_plugin_container,
+  owner @{torbrowser_home_dir}/{,TorBrowser/UpdateInfo/}updates/[0-9]*/updater 
ix,
+  owner 
@{torbrowser_home_dir}/{,TorBrowser/UpdateInfo/}updates/0/MozUpdater/bgupdate/updater
 ix,
+  owner @{torbrowser_home_dir}/TorBrowser/Data/Browser/profiles.ini r,
+  owner @{torbrowser_home_dir}/TorBrowser/Data/Browser/profile.default/ r,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/tor px,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/ r,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/*.so mr,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/*.so.* mr,
 
   /etc/mailcap r,
   /etc/mime.types r,
@@ -88,7 +87,7 @@
   owner /{dev,run}/shm/shmfd-* rw,
 
   # Required for multiprocess Firefox (aka Electrolysis, i.e. e10s)
-  owner /dev/shm/org.chromium.* rw,
+  owner /{dev,run}/shm/org.chromium.* rw,
 
   # Deny access to DRM nodes, that's granted by the X abstraction, which is
   # sourced by the gnome abstraction, that we include.
@@ -96,6 +95,10 @@
 
   # Silence denial logs about permissions we don't need
   deny /dev/dri/   rwklx,
+  deny @{HOME}/.cache/fontconfig/ rw,
+  deny @{HOME}/.cache/fontconfig/** rw,
+  deny @{HOME}/.config/gtk-2.0/ rw,
+  deny @{HOME}/.config/gtk-2.0/** rw,
   deny @{PROC}/@{pid}/net/route r,
   deny /sys/devices/system/cpu/cpufreq/policy[0-9]*/cpuinfo_max_freq r,
   deny /sys/devices/system/cpu/*/cache/index[0-9]*/size r,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Browser.plugin-container 
new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Browser.plugin-container
--- old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Browser.plugin-container  
1970-01-01 01:00:00.000000000 +0100
+++ new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Browser.plugin-container  
2018-01-28 19:33:29.000000000 +0100
@@ -0,0 +1,82 @@
+#include <tunables/global>
+#include <tunables/torbrowser>
+
+profile torbrowser_plugin_container {
+  #include <abstractions/gnome>
+
+  # Uncomment the following lines if you don'want the Tor Browser
+  # to have direct access to your sound hardware. You will also
+  # need to remove the "deny" word in the machine-id lines further
+  # bellow.
+  # #include <abstractions/audio>
+  # /etc/asound.conf r,
+  # owner @{PROC}/@{pid}/fd/ r,
+  # owner 
@{torbrowser_home_dir}/TorBrowser/Data/Browser/profile.default/tmp/mozilla-temp-*
 rw,
+
+  deny /etc/host.conf r,
+  deny /etc/hosts r,
+  deny /etc/nsswitch.conf r,
+  deny /etc/resolv.conf r,
+  deny /etc/passwd r,
+  deny /etc/group r,
+  deny /etc/mailcap r,
+
+  deny /etc/machine-id r,
+  deny /var/lib/dbus/machine-id r,
+
+  owner @{PROC}/@{pid}/mountinfo r,
+  owner @{PROC}/@{pid}/stat r,
+  owner @{PROC}/@{pid}/status r,
+  owner @{PROC}/@{pid}/task/*/stat r,
+  @{PROC}/sys/kernel/random/uuid r,
+
+  owner @{torbrowser_home_dir}/*.dat r,
+  owner @{torbrowser_home_dir}/*.manifest r,
+  owner @{torbrowser_home_dir}/*.so mr,
+  owner @{torbrowser_home_dir}/.cache/fontconfig/   rw,
+  owner @{torbrowser_home_dir}/.cache/fontconfig/** rw,
+  owner @{torbrowser_home_dir}/browser/** r,
+  owner @{torbrowser_home_dir}/components/*.so mr,
+  owner @{torbrowser_home_dir}/browser/components/*.so mr,
+  owner @{torbrowser_home_dir}/defaults/pref/     r,
+  owner @{torbrowser_home_dir}/defaults/pref/*.js r,
+  owner @{torbrowser_home_dir}/fonts/   r,
+  owner @{torbrowser_home_dir}/fonts/** r,
+  owner @{torbrowser_home_dir}/omni.ja r,
+  owner @{torbrowser_home_dir}/plugin-container ixmr,
+  owner 
@{torbrowser_home_dir}/TorBrowser/Data/Browser/profile.default/extensions/*.xpi 
r,
+  owner @{torbrowser_home_dir}/TorBrowser/Data/Browser/profile.default/tmp/* 
rw,
+  owner @{torbrowser_home_dir}/TorBrowser/Data/fontconfig/fonts.conf r,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/ r,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/*.so mr,
+  owner @{torbrowser_home_dir}/TorBrowser/Tor/*.so.* mr,
+  owner @{torbrowser_home_dir}/Downloads/ rwk,
+  owner @{torbrowser_home_dir}/Downloads/** rwk,
+
+  /sys/devices/system/cpu/ r,
+  /sys/devices/system/cpu/present r,
+  /sys/devices/system/node/ r,
+  /sys/devices/system/node/node[0-9]*/meminfo r,
+  deny /sys/devices/virtual/block/*/uevent r,
+
+  # Should use abstractions/gstreamer instead once merged upstream
+  /etc/udev/udev.conf r,
+  /run/udev/data/+pci:* r,
+  /sys/devices/pci[0-9]*/**/uevent r,
+  owner /{dev,run}/shm/shmfd-* rw,
+
+  # Required for multiprocess Firefox (aka Electrolysis, i.e. e10s)
+  owner /{dev,run}/shm/org.chromium.* rw,
+
+  # Deny access to DRM nodes, that's granted by the X abstraction, which is
+  # sourced by the gnome abstraction, that we include.
+  deny /dev/dri/** rwklx,
+
+  # Silence denial logs about permissions we don't need
+  deny /dev/dri/   rwklx,
+  deny @{PROC}/@{pid}/net/route r,
+  deny /sys/devices/system/cpu/cpufreq/policy[0-9]*/cpuinfo_max_freq r,
+  deny /sys/devices/system/cpu/*/cache/index[0-9]*/size r,
+
+  #include <local/torbrowser.Browser.plugin-container>
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Tor.tor 
new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Tor.tor
--- old/torbrowser-launcher-0.2.8/apparmor/torbrowser.Tor.tor   2017-06-22 
00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/apparmor/torbrowser.Tor.tor   2018-01-28 
19:33:29.000000000 +0100
@@ -3,6 +3,7 @@
 
/home/*/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Tor/tor
 {
   #include <abstractions/base>
 
+  network netlink raw,
   network tcp,
   network udp,
 
@@ -11,12 +12,18 @@
   /etc/passwd r,
   /etc/resolv.conf r,
   owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Tor/tor
 mr,
-  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Tor/
 r,
+  owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Tor/
 rw,
   owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Tor/*
 rw,
   owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Tor/lock
 rwk,
   owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/Tor,Lib}/*.so
 mr,
   owner 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/Tor,Lib}/*.so.*
 mr,
 
+  # Silence file_inherit logs
+  deny 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/Browser/{browser/,}omni.ja
 r,
+  deny 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Browser/profile.default/.parentlock
 rw,
+  deny 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Browser/profile.default/extensions/*.xpi
 r,
+  deny 
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/{Browser/TorBrowser/,}Data/Browser/profile.default/startupCache/*
 r,
+
   @{PROC}/sys/kernel/random/uuid r,
   /sys/devices/system/cpu/ r,
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/tunables/torbrowser 
new/torbrowser-launcher-0.2.9/apparmor/tunables/torbrowser
--- old/torbrowser-launcher-0.2.8/apparmor/tunables/torbrowser  1970-01-01 
01:00:00.000000000 +0100
+++ new/torbrowser-launcher-0.2.9/apparmor/tunables/torbrowser  2018-01-28 
19:33:29.000000000 +0100
@@ -0,0 +1,2 @@
+@{torbrowser_installation_dir}=@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*
+@{torbrowser_home_dir}=@{torbrowser_installation_dir}/Browser
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/apparmor/usr.bin.torbrowser-launcher 
new/torbrowser-launcher-0.2.9/apparmor/usr.bin.torbrowser-launcher
--- old/torbrowser-launcher-0.2.8/apparmor/usr.bin.torbrowser-launcher  
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/apparmor/usr.bin.torbrowser-launcher  
1970-01-01 01:00:00.000000000 +0100
@@ -1,54 +0,0 @@
-# Last Modified: Thu Jan  2 15:12:38 2014
-#include <tunables/global>
-
-/usr/bin/torbrowser-launcher flags=(complain) {
-  #include <abstractions/base>
-  #include <abstractions/nameservice>
-  #include <abstractions/python>
-  #include <abstractions/consoles>
-  #include <abstractions/gnome>
-  #include <abstractions/fonts>
-  #include <abstractions/X>
-  #include <abstractions/audio>
-  #include <abstractions/freedesktop.org>
-
-  capability sys_ptrace,
-
-  # This script doesn't really need to read the interpreter that's running it.
-  deny /usr/bin/python{2,3}.[0-7]* r,
-
-  /{usr/,}bin/{dash,grep,ps} rix,
-  /dev/ r,
-  /etc/magic r,
-  @{HOME}/.config/torbrowser/ rw,
-  @{HOME}/.config/torbrowser/** mrwk,
-  @{HOME}/.cache/torbrowser/ rw,
-  @{HOME}/.cache/torbrowser/** mrwk,
-  @{HOME}/.local/share/torbrowser/ rw,
-  @{HOME}/.local/share/torbrowser/** mrwk,
-  @{HOME}/.local/share/torbrowser/gnupg_homedir/* l,
-  
@{HOME}/.local/share/torbrowser/tbb/{i686,x86_64}/tor-browser_*/start-tor-browser.desktop
 Ux,
-
-  @{PROC}/ r,
-  @{PROC}/[0-9]*/{cmdline,mountinfo,stat,status} r,
-  @{PROC}/[0-9]*/task/** r,
-  @{PROC}/sys/kernel/pid_max r,
-  @{PROC}/tty/drivers r,
-  @{PROC}/uptime r,
-  /usr/bin/ r,
-  /usr/bin/{gpg,dirname,expr,file,getconf,id} rix,
-  /usr/bin/torbrowser-launcher r,
-  /usr/share/file/magic.mgc r,
-  /usr/share/file/magic/ r,
-  /usr/share/themes/** r,
-  /usr/share/torbrowser-launcher/** r,
-
-  /usr/share/glib-2.0/schemas/gschemas.compiled r,
-  owner @{HOME}/.config/dconf/user r,
-  owner /{,var/}run/user/*/dconf/user rw,
-
-  # including abstractions/audio is not enough to play modem sound
-  /usr/bin/pulseaudio Pixr,
-
-  #include <local/usr.bin.torbrowser-launcher>
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/torbrowser-launcher-0.2.8/setup.py 
new/torbrowser-launcher-0.2.9/setup.py
--- old/torbrowser-launcher-0.2.8/setup.py      2017-06-22 00:40:20.000000000 
+0200
+++ new/torbrowser-launcher-0.2.9/setup.py      2018-01-28 19:33:29.000000000 
+0100
@@ -71,10 +71,17 @@
 if distro != 'Ubuntu':
     if not hasattr(sys, 'real_prefix'):
         # we're not in a virtualenv, so we can probably write to /etc
-        datafiles += [('/etc/apparmor.d/', [
-            'apparmor/torbrowser.Browser.firefox',
-            'apparmor/torbrowser.Tor.tor',
-            'apparmor/usr.bin.torbrowser-launcher'])]
+        datafiles += [
+            ('/etc/apparmor.d/', [
+                'apparmor/torbrowser.Browser.firefox',
+                'apparmor/torbrowser.Browser.plugin-container',
+                'apparmor/torbrowser.Tor.tor']),
+            ('/etc/apparmor.d/local/', [
+                'apparmor/local/torbrowser.Browser.firefox',
+                'apparmor/local/torbrowser.Browser.plugin-container',
+                'apparmor/local/torbrowser.Tor.tor']),
+            ('/etc/apparmor.d/tunables/', ['apparmor/tunables/torbrowser'])
+        ]
 
 datafiles += [('/usr/share/locale/', create_mo_files())]
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/share/appdata/torbrowser.appdata.xml 
new/torbrowser-launcher-0.2.9/share/appdata/torbrowser.appdata.xml
--- old/torbrowser-launcher-0.2.8/share/appdata/torbrowser.appdata.xml  
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/share/appdata/torbrowser.appdata.xml  
1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Copyright 2014 Micah Lee <[email protected]> -->
-<application>
- <id type="desktop">torbrowser.desktop</id>
- <metadata_license>CC0-1.0</metadata_license>
- <project_license>MIT</project_license>
- <name>Tor Browser Launcher</name>
- <summary>A program to help you download, keep updated, and run the Tor 
Browser Bundle</summary>
- <description>
-  <p>Tor Browser Launcher is intended to make the Tor Browser Bundle (TBB) 
easier to maintain and use for GNU/Linux users. It downloads the same TBB from 
torproject.org that everyone else uses, and it doesn't alter it in any way. But 
it does make it much more usable, and it makes the task of keeping it 
up-to-date more secure.</p>
-  <p>You install torbrowser-launcher from your distribution's package manager 
and it handles everything else, including:</p>
-  <ul>
-   <li>Downloading the most recent version of TBB for you, in your language 
and for your architecture</li>
-   <li>Automatically updating (while preserving your bookmarks and 
preferences)</li>
-   <li>Verifying the TBB's GnuPG signature</li>
-   <li>Includes AppArmor profiles to make a Tor Browser compromise not as bad 
(in some distros)</li>
-   <li>Adding a Tor Browser application launcher to your desktop environment's 
menu</li>
-   <li>Lets you set Tor Browser as your default browser</li>
-   <li>Optionally playing a modem sound when you open Tor Browser (because Tor 
is so slow)</li>
-  </ul>
- </description>
- <screenshots>
-  <screenshot type="default">
-   
<image>https://raw.githubusercontent.com/micahflee/torbrowser-launcher/master/screenshot.png</image>
-   <caption>Window to change Tor Browser Launcher settings</caption>
-  </screenshot>
- </screenshots>
- <url type="homepage">https://github.com/micahflee/torbrowser-launcher</url>
- <updatecontact>[email protected]</updatecontact>
-</application>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/share/metainfo/torbrowser.appdata.xml 
new/torbrowser-launcher-0.2.9/share/metainfo/torbrowser.appdata.xml
--- old/torbrowser-launcher-0.2.8/share/metainfo/torbrowser.appdata.xml 
1970-01-01 01:00:00.000000000 +0100
+++ new/torbrowser-launcher-0.2.9/share/metainfo/torbrowser.appdata.xml 
2018-01-28 19:33:29.000000000 +0100
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2014 Micah Lee <[email protected]> -->
+<component>
+ <id>org.torproject.torbrowser.desktop</id>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>MIT</project_license>
+ <name>Tor Browser Launcher</name>
+ <summary>A program to help you download, keep updated, and run the Tor 
Browser Bundle</summary>
+ <description>
+  <p>Tor Browser Launcher is intended to make the Tor Browser Bundle (TBB) 
easier to maintain and use for GNU/Linux users. It downloads the same TBB from 
torproject.org that everyone else uses, and it doesn't alter it in any way. But 
it does make it much more usable, and it makes the task of keeping it 
up-to-date more secure.</p>
+  <p>You install torbrowser-launcher from your distribution's package manager 
and it handles everything else, including:</p>
+  <ul>
+   <li>Downloading the most recent version of TBB for you, in your language 
and for your architecture</li>
+   <li>Automatically updating (while preserving your bookmarks and 
preferences)</li>
+   <li>Verifying the TBB's GnuPG signature</li>
+   <li>Includes AppArmor profiles to make a Tor Browser compromise not as bad 
(in some distros)</li>
+   <li>Adding a Tor Browser application launcher to your desktop environment's 
menu</li>
+   <li>Lets you set Tor Browser as your default browser</li>
+   <li>Optionally playing a modem sound when you open Tor Browser (because Tor 
is so slow)</li>
+  </ul>
+ </description>
+ <screenshots>
+  <screenshot type="default">
+   
<image>https://raw.githubusercontent.com/micahflee/torbrowser-launcher/master/screenshot.png</image>
+   <caption>Window to change Tor Browser Launcher settings</caption>
+  </screenshot>
+ </screenshots>
+ <url type="homepage">https://github.com/micahflee/torbrowser-launcher</url>
+ <update_contact>[email protected]</update_contact>
+</component>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/share/torbrowser-launcher/mirrors.txt 
new/torbrowser-launcher-0.2.9/share/torbrowser-launcher/mirrors.txt
--- old/torbrowser-launcher-0.2.8/share/torbrowser-launcher/mirrors.txt 
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/share/torbrowser-launcher/mirrors.txt 
2018-01-28 19:33:29.000000000 +0100
@@ -1,23 +1,34 @@
-https://www.torproject.org/dist/
-https://www.torservers.net/mirrors/torproject.org/dist/
-https://mirror.ml/tor/dist/
-https://tor.spline.inf.fu-berlin.de/dist/
-https://tormirror.almnet.de/dist/
-https://tor.dev-random.de/dist/
-https://www.unicorncloud.org/public/torproject.org/dist
-https://www.oignon.net/dist/
-https://mirror.hackthissite.org/tor
-https://tor.linuxlounge.net/dist/
-https://torproject.cryptowars.info/dist/
+https://dist.torproject.org/
 https://tor.crazyhaze.de/dist/
 https://creep.im/tor/dist/
-https://mirror.torland.me/torproject.org/dist/
-https://tor.myrl.net/dist/
-https://torprojekt.userzap.de/dist/
+https://tor.ybti.net/dist/
+https://tor.0x3d.lu/dist/
+https://www.it-sicherheitschannel.de/dist/
+https://mirror.freedif.org/TorProject/dist
+https://tor.secure.voyage/dist
+https://tor.127001.ovh/dist/
+https://mirror.oldsql.cc/tor/dist/
+https://mirror.torworld.org/dist/
+https://tormirror.tb-itf-tor.de/dist/
+https://tor.zilog.es/dist/
+https://torproject.ph3x.at/dist/
+https://www.torservers.net/mirrors/torproject.org/dist/
 https://tor.myrl.net/dist/
-https://tor.beme-it.de/dist/
-http://tor.borgmann.tv/dist/
-https://otivpn.com/tor/dist
-https://www.eprci.com/tor/dist/
 https://tor.stalkr.net/dist/
-https://torproject.gtor.org/dist/
+https://tor-mirror.cyberguerrilla.org/dist/
+https://mirror.velcommuta.de/tor/dist/
+https://tor.eff.org/dist/
+https://tor.void.gr/dist/
+https://www.moparisthebest.com/tor/dist/
+https://108.248.87.242/dist/
+https://mirror.ntzk.de/torproject.org/dist/
+https://www.eprci.com/tor/dist/
+https://sela.io/mirrors/torproject.org/dist/
+https://tor.ccc.de/dist/
+https://tormirror.snydernet.net/dist/
+https://tor.calyxinstitute.org/dist/
+https://torproject.mirror.metalgamer.eu/dist/
+https://nl.mirror.babylon.network/torproject/dist/
+https://fr.mirror.babylon.network/torproject/dist/
+https://cyberside.net.ee/sibul/dist/
+https://tormirror.tb-itf-tor.de/dist/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/share/torbrowser-launcher/version 
new/torbrowser-launcher-0.2.9/share/torbrowser-launcher/version
--- old/torbrowser-launcher-0.2.8/share/torbrowser-launcher/version     
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/share/torbrowser-launcher/version     
2018-01-28 19:33:29.000000000 +0100
@@ -1 +1 @@
-0.2.8
+0.2.9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/torbrowser-launcher-0.2.8/torbrowser-launcher 
new/torbrowser-launcher-0.2.9/torbrowser-launcher
--- old/torbrowser-launcher-0.2.8/torbrowser-launcher   2017-06-22 
00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/torbrowser-launcher   2018-01-28 
19:33:29.000000000 +0100
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 """
 Tor Browser Launcher
 https://github.com/micahflee/torbrowser-launcher/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/torbrowser_launcher/__init__.py 
new/torbrowser-launcher-0.2.9/torbrowser_launcher/__init__.py
--- old/torbrowser-launcher-0.2.8/torbrowser_launcher/__init__.py       
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/torbrowser_launcher/__init__.py       
2018-01-28 19:33:29.000000000 +0100
@@ -26,11 +26,13 @@
 OTHER DEALINGS IN THE SOFTWARE.
 """
 
+from __future__ import print_function
+
 import os, sys, argparse
 
-from common import Common, SHARE
-from settings import Settings
-from launcher import Launcher
+from .common import Common, SHARE
+from .settings import Settings
+from .launcher import Launcher
 
 def main():
     # parse arguments
@@ -46,10 +48,10 @@
     with open(os.path.join(SHARE, 'version')) as buf:
         tor_browser_launcher_version = buf.read().strip()
 
-    print _('Tor Browser Launcher')
-    print _('By Micah Lee, licensed under MIT')
-    print _('version {0}').format(tor_browser_launcher_version)
-    print 'https://github.com/micahflee/torbrowser-launcher'
+    print(_('Tor Browser Launcher'))
+    print(_('By Micah Lee, licensed under MIT'))
+    print(_('version {0}').format(tor_browser_launcher_version))
+    print('https://github.com/micahflee/torbrowser-launcher')
 
     common = Common(tor_browser_launcher_version)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/torbrowser_launcher/common.py 
new/torbrowser-launcher-0.2.9/torbrowser_launcher/common.py
--- old/torbrowser-launcher-0.2.8/torbrowser_launcher/common.py 2017-06-22 
00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/torbrowser_launcher/common.py 2018-01-28 
19:33:29.000000000 +0100
@@ -26,6 +26,8 @@
 OTHER DEALINGS IN THE SOFTWARE.
 """
 
+from __future__ import print_function
+
 import os
 import sys
 import platform
@@ -68,7 +70,7 @@
         self.tbl_version = tbl_version
 
         # initialize the app
-        self.default_mirror = 'https://www.torproject.org/dist/'
+        self.default_mirror = 'https://dist.torproject.org/'
         self.discover_arch_lang()
         self.build_paths()
         for d in self.paths['dirs']:
@@ -115,7 +117,7 @@
             homedir = '/tmp/.torbrowser-'+os.getenv('USER')
             if not os.path.exists(homedir):
                 try:
-                    os.mkdir(homedir, 0700)
+                    os.mkdir(homedir, 0o700)
                 except:
                     self.set_gui('error', _("Error creating 
{0}").format(homedir), [], False)
         if not os.access(homedir, os.W_OK):
@@ -173,10 +175,10 @@
                 'version_check_url': 
'https://aus1.torproject.org/torbrowser/update_3/release/Linux_x86_64-gcc3/x/en-US',
                 'version_check_file': tbb_cache+'/download/release.xml',
                 'tbb': {
+                    'changelog': 
tbb_local+'/tbb/'+self.architecture+'/tor-browser_'+self.language+'/Browser/TorBrowser/Docs/ChangeLog.txt',
                     'dir': tbb_local+'/tbb/'+self.architecture,
                     'dir_tbb': 
tbb_local+'/tbb/'+self.architecture+'/tor-browser_'+self.language,
                     'start': 
tbb_local+'/tbb/'+self.architecture+'/tor-browser_'+self.language+'/start-tor-browser.desktop',
-                    'versions': 
tbb_local+'/tbb/'+self.architecture+'/tor-browser_'+self.language+'/Browser/TorBrowser/Docs/sources/versions',
                 },
             }
 
@@ -190,20 +192,20 @@
     def mkdir(path):
         try:
             if not os.path.exists(path):
-                os.makedirs(path, 0700)
+                os.makedirs(path, 0o700)
                 return True
         except:
-            print _("Cannot create directory {0}").format(path)
+            print(_("Cannot create directory {0}").format(path))
             return False
         if not os.access(path, os.W_OK):
-            print _("{0} is not writable").format(path)
+            print(_("{0} is not writable").format(path))
             return False
         return True
 
     # if gnupg_homedir isn't set up, set it up
     def init_gnupg(self):
         if not os.path.exists(self.paths['gnupg_homedir']):
-            print _('Creating GnuPG homedir'), self.paths['gnupg_homedir']
+            print(_('Creating GnuPG homedir'), self.paths['gnupg_homedir'])
             self.mkdir(self.paths['gnupg_homedir'])
         self.import_keys()
 
@@ -226,9 +228,11 @@
             if match and match.group(2) == 'IMPORT_OK':
                 fingerprint = str(match.group(4))
                 if match.group(3) == '0':
-                    print('Keyring refreshed successfully...\n  No key updates 
for key: ' + fingerprint)
+                    print('Keyring refreshed successfully...')
+                    print('  No key updates for key: ' + fingerprint)
                 elif match.group(3) == '4':
-                    print('Keyring refreshed successfully...\n  New signatures 
for key: ' + fingerprint)
+                    print('Keyring refreshed successfully...')
+                    print('  New signatures for key: ' + fingerprint)
                 else:
                     print('Keyring refreshed successfully...')
 
@@ -286,12 +290,12 @@
         for key in keys:
             imported = self.import_key_and_check_status(key)
             if not imported:
-                print _('Could not import key with fingerprint: %s.'
-                        % self.fingerprints[key])
+                print(_('Could not import key with fingerprint: %s.'
+                        % self.fingerprints[key]))
                 all_imports_succeeded = False
 
         if not all_imports_succeeded:
-            print _('Not all keys were imported successfully!')
+            print(_('Not all keys were imported successfully!'))
 
         self.refresh_keyring()
         return all_imports_succeeded
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/torbrowser-launcher-0.2.8/torbrowser_launcher/launcher.py 
new/torbrowser-launcher-0.2.9/torbrowser_launcher/launcher.py
--- old/torbrowser-launcher-0.2.8/torbrowser_launcher/launcher.py       
2017-06-22 00:40:20.000000000 +0200
+++ new/torbrowser-launcher-0.2.9/torbrowser_launcher/launcher.py       
2018-01-28 19:33:29.000000000 +0100
@@ -26,6 +26,8 @@
 OTHER DEALINGS IN THE SOFTWARE.
 """
 
+from __future__ import print_function
+
 import os
 import subprocess
 import time
@@ -93,7 +95,7 @@
             if self.common.settings['download_over_tor']:
                 try:
                     import txsocksx
-                    print _('Downloading over Tor')
+                    print(_('Downloading over Tor'))
                 except ImportError:
                     md = gtk.MessageDialog(None, 
gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_WARNING, gtk.BUTTONS_CLOSE, _("The 
python-txsocksx package is missing, downloads will not happen over tor"))
                     md.set_position(gtk.WIN_POS_CENTER)
@@ -110,7 +112,7 @@
                 download_message = _("Your version of Tor Browser is 
out-of-date. Downloading and installing the newest version.")
 
             # download and install
-            print download_message
+            print(download_message)
             self.set_gui('task', download_message,
                          ['download_version_check',
                           'set_version',
@@ -273,15 +275,14 @@
         self.gui_task_i += 1
 
         if task == 'download_version_check':
-            print _('Downloading'), self.common.paths['version_check_url']
-            self.download('version check', 
self.common.paths['version_check_url'],
-                          self.common.paths['version_check_file'])
+            print(_('Downloading'), self.common.paths['version_check_url'])
+            self.download('version check', 
self.common.paths['version_check_url'], self.common.paths['version_check_file'])
 
         if task == 'set_version':
             version = self.get_stable_version()
             if version:
                 self.common.build_paths(self.get_stable_version())
-                print _('Latest version: {}').format(version)
+                print(_('Latest version: {}').format(version))
                 self.run_task()
             else:
                 self.set_gui('error', _("Error detecting Tor Browser 
version."), [], False)
@@ -289,30 +290,30 @@
                 self.build_ui()
 
         elif task == 'download_sig':
-            print _('Downloading'), 
self.common.paths['sig_url'].format(self.common.settings['mirror'])
+            print(_('Downloading'), 
self.common.paths['sig_url'].format(self.common.settings['mirror']))
             self.download('signature', self.common.paths['sig_url'], 
self.common.paths['sig_file'])
 
         elif task == 'download_tarball':
-            print _('Downloading'), 
self.common.paths['tarball_url'].format(self.common.settings['mirror'])
+            print(_('Downloading'), 
self.common.paths['tarball_url'].format(self.common.settings['mirror']))
             if not self.force_redownload and 
os.path.exists(self.common.paths['tarball_file']):
                 self.run_task()
             else:
                 self.download('tarball', self.common.paths['tarball_url'], 
self.common.paths['tarball_file'])
 
         elif task == 'verify':
-            print _('Verifying Signature')
+            print(_('Verifying Signature'))
             self.verify()
 
         elif task == 'extract':
-            print _('Extracting'), self.common.paths['tarball_filename']
+            print(_('Extracting'), self.common.paths['tarball_filename'])
             self.extract()
 
         elif task == 'run':
-            print _('Running'), self.common.paths['tbb']['start']
+            print(_('Running'), self.common.paths['tbb']['start'])
             self.run()
 
         elif task == 'start_over':
-            print _('Starting download over again')
+            print(_('Starting download over again'))
             self.start_over()
 
     def response_received(self, response):
@@ -382,11 +383,11 @@
             self.run_task()
 
         else:
-            print "FINISHED", msg
-            # FIXME handle errors
+            print("FINISHED", msg)
+            ## FIXME handle errors
 
     def download_error(self, f):
-        print _("Download Error:"), f.value, type(f.value)
+        print(_("Download Error:"), f.value, type(f.value))
 
         if isinstance(f.value, TryStableException):
             f.trap(TryStableException)
@@ -600,9 +601,9 @@
 
     def check_min_version(self):
         installed_version = None
-        for line in open(self.common.paths['tbb']['versions']).readlines():
-            if line.startswith('TORBROWSER_VERSION='):
-                installed_version = line.split('=')[1].strip()
+        for line in open(self.common.paths['tbb']['changelog']).readlines():
+            if line.startswith('Tor Browser '):
+                installed_version = line.split()[2]
                 break
 
         if self.min_version <= installed_version:
@@ -615,7 +616,7 @@
         if not self.check_min_version():
             message = _("The version of Tor Browser you have installed is 
earlier than it should be, which could be a "
                         "sign of an attack!")
-            print message
+            print(message)
 
             md = gtk.MessageDialog(None, gtk.DIALOG_DESTROY_WITH_PARENT, 
gtk.MESSAGE_WARNING, gtk.BUTTONS_CLOSE, _(message))
             md.set_position(gtk.WIN_POS_CENTER)


Reply via email to