X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=setup.py;h=4e06e60020b982973076cbd3f574dc9cecda38a4;hb=4b9d49c18315476b1a95878c2d84e8e8299db6c9;hp=d8d8842f86711bcddd9aff3598836e437642d8c6;hpb=dbb63e3d3755aaefc5d8e4a0994b317605dc89be;p=torbrowser-launcher.git diff --git a/setup.py b/setup.py index d8d8842..4e06e60 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ Tor Browser Launcher https://github.com/micahflee/torbrowser-launcher/ -Copyright (c) 2013-2014 Micah Lee +Copyright (c) 2013-2017 Micah Lee Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation @@ -26,50 +26,103 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. """ +import os +import sys +import distro +import subprocess from distutils.core import setup -import os, sys, platform -SHARE = 'share' + +SHARE = "share" # detect linux distribution -distro = platform.dist()[0] +distro = distro.linux_distribution()[0] + def file_list(path): files = [] for filename in os.listdir(path): - if os.path.isfile(path+'/'+filename): - files.append(path+'/'+filename) + if os.path.isfile(path + "/" + filename): + files.append(path + "/" + filename) return files -with open(os.path.join(SHARE, 'torbrowser-launcher/version')) as buf: + +def create_mo_files(): + po_dir = "po/" + if not os.path.exists(po_dir): + return [] + domain = "torbrowser-launcher" + mo_files = [] + po_files = sorted( + [f for f in next(os.walk(po_dir))[2] if os.path.splitext(f)[1] == ".po"] + ) + for po_file in po_files: + filename, extension = os.path.splitext(po_file) + mo_file = domain + ".mo" + mo_dir = "share/locale/" + filename + "/LC_MESSAGES/" + subprocess.call("mkdir -p " + mo_dir, shell=True) + msgfmt_cmd = "msgfmt {} -o {}".format(po_dir + po_file, mo_dir + mo_file) + subprocess.call(msgfmt_cmd, shell=True) + mo_files.append(mo_dir + mo_file) + return mo_files + + +with open(os.path.join(SHARE, "torbrowser-launcher/version")) as buf: version = buf.read().strip() datafiles = [] for root, dirs, files in os.walk(SHARE): - datafiles.append((os.path.join(sys.prefix, root), - [os.path.join(root, f) for f in files])) + if files: + datafiles.append((root, [os.path.join(root, f) for f in files])) # disable shipping apparmor profiles until they work in ubuntu (#128) -if distro != 'Ubuntu': - if not hasattr(sys, 'real_prefix'): +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.Tor.tor"], + ), + ( + "/etc/apparmor.d/local/", + [ + "apparmor/local/torbrowser.Browser.firefox", + "apparmor/local/torbrowser.Tor.tor", + ], + ), + ("/etc/apparmor.d/tunables/", ["apparmor/tunables/torbrowser"]), + ] + +datafiles += [(os.path.dirname(f), [f]) for f in create_mo_files()] setup( - name='torbrowser-launcher', + name="torbrowser-launcher", version=version, - author='Micah Lee', - author_email='micah@micahflee.com', - url='https://www.github.com/micahflee/torbrowser-launcher', - platforms=['GNU/Linux'], - license='MIT', - description='A program to help you securely download and run Tor Browser', + author="Micah Lee", + author_email="micah@micahflee.com", + url="https://www.github.com/micahflee/torbrowser-launcher", + platforms=["GNU/Linux"], + license="MIT", + description="A program to help you securely download and run Tor Browser", long_description=""" -Tor Browser Launcher is intended to make Tor Browser easier to install and use for GNU/Linux users. You install torbrowser-launcher from your distribution's package manager and it handles securely downloading the most recent version of Tor Browser for you, in your language and for your architecture. It also adds a "Tor Browser" application launcher to your operating system's menu. When you first launch Tor Browser Launcher, it will download Tor Browser from https://www.torproject.org/, verify the PGP signature, extract it in your home directory, and launch it. When you run it after that it will just launch Tor Browser. +Tor Browser Launcher is intended to make Tor Browser easier to install and use +for GNU/Linux users. You install torbrowser-launcher from your distribution's +package manager and it handles securely downloading the most recent version of +Tor Browser for you, in your language and for your architecture. It also adds a +"Tor Browser" application launcher to your operating system's menu. When you +first launch Tor Browser Launcher, it will download Tor Browser from +https://www.torproject.org/, verify the PGP signature, extract it in your home +directory, and launch it. When you run it after that it will just launch Tor +Browser. """, - packages=['torbrowser_launcher'], - scripts=['torbrowser-launcher'], - data_files=datafiles + packages=["torbrowser_launcher"], + scripts=["torbrowser-launcher"], + data_files=datafiles, + install_requires=[ + 'gpg', + 'packaging', + 'PyQt5', + 'requests', + 'PySocks', + ], )