diff --git a/ctl b/ctl index 794ec4c..58f56b7 100755 --- a/ctl +++ b/ctl @@ -44,6 +44,13 @@ else else ARCH=32 fi + if [ $PLATFORM == "aarch64" ]; then + ARCH="_aarch64" + PLATFORM_PY=3.5 + fi + if [ $PLATFORM == "armv7l" ]; then + ARCH="_armv7l" + fi PLATFORM="linux$ARCH" fi if [ $SYSTEM == "Darwin" ]; then diff --git a/install b/install index c4a7a05..b476552 100755 --- a/install +++ b/install @@ -20,7 +20,12 @@ def get_platform(): name = 'darwin64' elif name.startswith('linux'): import platform - if platform.architecture()[0] == '64bit': + machine = platform.machine() + if machine == 'armv7l': + name = 'linux_armv7l' + elif machine == 'aarch64': + name = 'linux_aarch64' + elif machine == 'x86_64': name = 'linux64' else: name = 'linux32' diff --git a/oml/tor.py b/oml/tor.py index c7832e4..200a640 100644 --- a/oml/tor.py +++ b/oml/tor.py @@ -56,7 +56,7 @@ DirReqStatistics 0 with open(torrc, 'r') as fd: data = fd.read() modified_data = re.sub('DataDirectory.*?TorData', - 'DataDirectory {tor_data}'.format(tor_data=tor_data), data) + 'DataDirectory {tor_data}'.format(tor_data=tor_data), data) if data != modified_data: with open(torrc, 'w') as fd: fd.write(modified_data) @@ -298,6 +298,8 @@ def get_tor(): for path in ( os.path.join(settings.base_dir, '..', 'platform_linux64', 'tor', 'tor'), os.path.join(settings.base_dir, '..', 'platform_linux32', 'tor', 'tor'), + os.path.join(settings.base_dir, '..', 'platform_linux_armv7l', 'tor', 'tor'), + os.path.join(settings.base_dir, '..', 'platform_linux_aarch64', 'tor', 'tor'), ): if os.path.isfile(path) and os.access(path, os.X_OK): return os.path.normpath(path) diff --git a/oml/update.py b/oml/update.py index f72a837..f311ec1 100644 --- a/oml/update.py +++ b/oml/update.py @@ -113,7 +113,12 @@ def get_platform(): name = 'darwin64' elif name.startswith('linux'): import platform - if platform.architecture()[0] == '64bit': + machine = platform.machine() + if machine == 'armv7l': + name = 'linux_armv7l' + elif machine == 'aarch64': + name = 'linux_aarch64' + elif machine == 'x86_64': name = 'linux64' else: name = 'linux32'