# Fetch the lastest version of tor-browser-ports using https://sourceforge.net/projects//best_release.json and jq PROJECT_NAME="tor-browser-ports" #SF_MIRROR="https://versaweb.dl.sourceforge.net" SF_MIRROR="https://sourceforge.net" # RELEASE_JSON_URL="${SF_MIRROR}/projects/${PROJECT_NAME}/best_release.json" # VERSION="13.0.3" ARCH="arm64" DL_DIR="/var/tmp" WGET_ARGS="--directory-prefix=${DL_DIR} --content-disposition" # Get the URL for the armhf version JSON="$(curl -s "https://sourceforge.net/projects/${PROJECT_NAME}/best_release.json")" LINUX_FILENAME="$(echo "${JSON}" | jq -r '.platform_releases.linux.filename')" # /13.0.3/tor-browser-linux-armhf-13.0.3.tar.xz echo "LINUX_FILENAME: ${LINUX_FILENAME}" VERSION="$(echo "${LINUX_FILENAME}" | awk -F'/' '{print $2}')" echo "VERSION: ${VERSION}" FILENAME="$(echo "${LINUX_FILENAME}" | awk -F'/' '{print $3}')" echo "FILENAME_1: ${FILENAME}" FILENAME="${FILENAME//armhf/${ARCH}}" echo "FILENAME_2: ${FILENAME}" # URL=$(echo "${JSON}" | jq -r '.platform_releases.linux.url')" # http://downloads.sourceforge.net/project/tor-browser-ports/13.0.3/tor-browser-linux-armhf-13.0.3.tar.xz?ts=gAAAAABlWy5eHDl8CF3KA6Ja87f36RamtBO2hapKpnviOEUOXnkmbbBIthBZFx_TErKR9W1pMpMyOEteXy_XpEYcruyZBv6YgA%3D%3D TAR_URL="${SF_MIRROR}/projects/${PROJECT_NAME}/files/${VERSION}/${FILENAME}/download" ASC_URL="${SF_MIRROR}/projects/${PROJECT_NAME}/files/${VERSION}/${FILENAME}.asc/download" # Replace "armhf" with "arm64" in the URL # TAR_URL="https://versaweb.dl.sourceforge.net/project/tor-browser-ports/${VERSION}/tor-browser-linux-${ARCH}-${VERSION}.tar.xz" # ASC_URL="https://versaweb.dl.sourceforge.net/project/tor-browser-ports/${VERSION}/tor-browser-linux-${ARCH}-${VERSION}.tar.xz.asc" # TAR_URL="${URL//armhf/${ARCH}}" # ASC_URL="${TAR_URL//tar.xz/tar.xz.asc}" wget -c "${WGET_ARGS}" "${TAR_URL}" -O "${FILENAME}" wget -c "${WGET_ARGS}" "${ASC_URL}" -O "${FILENAME}".asc # check downloaded tar using asc file, if valid unpack the tar DEST="/home/mobian" # An if statement that uses gpg verify to check the downloaded tar.gz and if valid unpack the tar.gz to DEST gpg --auto-key-locate nodefault,wkd --locate-keys torbrowser@torproject.org conf_print_public_key() { cat <<-'EOF' -----BEGIN PGP PUBLIC KEY BLOCK----- mDMEYLy7zxYJKwYBBAHaRw8BAQdA5PXKfnbxV/lViTGAgW34jh2jVahatLnFgKpU i1aZVqW0HkhlaWtraSBMaW5kaG9sbSA8aG9saW5AaWtpLmZpPoiaBBMWCgBCFiEE JPFBo7mItsNQuTdYavFdHkX9zskFAmC8u88CGwEFCQWjmoAFCwkIBwIDIgIBBhUK CQgLAgQWAgMBAh4HAheAAAoJEGrxXR5F/c7Jp7gBAL8vm5jf36L+SL2+MsiX6pYi uVvEMs0Fqns5UmH+eO9CAP9sTv4e1XUSG3kcNPxDHNhb390EALIKJOafuzIUFOkt AbgzBGC8vBMWCSsGAQQB2kcPAQEHQHkjBFnRo4dXVzwJ0PTECXGk2no5CMTXwqWc XNmrDlfFiPUEGBYKACYWIQQk8UGjuYi2w1C5N1hq8V0eRf3OyQUCYLy8EwIbAgUJ AeEzgACBCRBq8V0eRf3OyXYgBBkWCgAdFiEEnQ+3JDWrYv30FZVUWJDtuAD3xT0F AmC8vBMACgkQWJDtuAD3xT1KHQEAp6gkZRQYzLLCEnFDronvnGgPRMgfnzs3eCFW x843EJoA/RWbZQeuv2tgh7pUYJk5Kzoi6PCklnw2DWuhJST9QPYMxbUBAJeTn5+q fMa1fGLF6rcr1yvf2cO0u5ow45Tft0+jxjMNAQDlp0YaC4vF0dJF8QyWMAwgNbms OfPns7bfiACf4DnrB7g4BGC8vFISCisGAQQBl1UBBQEBB0BZCKDIGp38Qw2HtRXj iZcIrNUjZRKo7QuMcdZy+/gzWgMBCAeIfgQYFgoAJhYhBCTxQaO5iLbDULk3WGrx XR5F/c7JBQJgvLxSAhsMBQkFo5qAAAoJEGrxXR5F/c7Jw8EBAMlDEXhUjZFnuwPy hMSepnihBjoHZnmoI4EdcD40iYoLAQD9FSwq0k5Zs9rQ8U3zyif72YUS89lXoU6N Y7OFUzKJA7gzBGKjHaUWCSsGAQQB2kcPAQEHQBaImogK8gMA5DWG7lI6KTYTb9aS TS9Mwl8qi0LjwenZiPUEGBYIACYWIQQk8UGjuYi2w1C5N1hq8V0eRf3OyQUCYqMd pQIbAgUJAeEzgACBCRBq8V0eRf3OyXYgBBkWCAAdFiEEF2RjZu/4LbE+XM2yOlV4 WcljRCsFAmKjHaUACgkQOlV4WcljRCuAagD/dK4FTGwTs0vs8BCOHPUYfsts7aBl 0ZtzL9QlNa4Fkq4BAMtzw2nEo/m/eiMM4/PVOBZTRZV4j5hghV9ZFibmLfIA9VsB AJvhCUd/Wu0LpyyiImSFxQ9++t65ia1UOxPDmPY44I2RAP9YJKOs45Gc5E8og8QX yoRKGGcUJ42MbUNtzAamQct7CbgzBGSGC5wWCSsGAQQB2kcPAQEHQGxgntjMTWS3 j3WzShW2tmRQYvHLS/RPK7t04QZhFl7ciPUEGBYIACYWIQQk8UGjuYi2w1C5N1hq 8V0eRf3OyQUCZIYLnAIbAgUJAeEzgACBCRBq8V0eRf3OyXYgBBkWCAAdFiEE9dqu 16Olui9CnSxcz/8dQTbzr6YFAmSGC5wACgkQz/8dQTbzr6YlBwD5AYYvw5BUo9jS crYioNDHMxW6oxuxfrJQQATPT9aR1uoA/Rj1C3F5VmCbtTd0BRiWO8dPi1JliPtH DIglI8tPI48AJA8A/1R9YhNXA9XxmJDKvVkBTRa9c/aO3mtQ7/9d+0n+c/yTAP9D CcviCFW7hh242TYZgVFNfqs/9b66X7QBT5k2wCidCA== =KkEP -----END PGP PUBLIC KEY BLOCK----- EOF } conf_print_public_key | gpg --import gpg --lsign-key 24F141A3B988B6C350B937586AF15D1E45FDCEC9 gpg --no-default-keyring -a \ --export 24F141A3B988B6C350B937586AF15D1E45FDCEC9 | gpg --no-default-keyring \ --keyring ~/.gnupg/trustedkeys.gpg \ --import - gpg --update-trustdb if [ -f "${DL_DIR}"/tor-browser-linux-${ARCH}-"${VERSION}".tar.xz.asc ]; then if gpg --verify ${DL_DIR}/tor-browser-linux-"${ARCH}"-"${VERSION}".tar.xz.asc "${DL_DIR}"/tor-browser-linux-"${ARCH}"-"${VERSION}".tar.xz; then echo "Valid GPG signature" tar -C "${DEST}" -xf "${DL_DIR}"/tor-browser-linux-"${ARCH}"-"${VERSION}".tar.xz else echo "Invalid GPG signature; not unpacking." fi fi # Create the desktop file. # DESKTOP_FILE="https://raw.githubusercontent.com/RightToPrivacy/Tor-Browser-Pinephone/main/start-tor-browser.desktop" APP_DEST="/usr/share/applications/" # APP_DEST="~/.local/share/applications/" # sudo wget -c -O ${APP_DEST}/mobian-torbrowser.desktop $DESKTOP_FILE cat <<-EOF | sudo tee ${APP_DEST}/mobian-torbrowser.desktop #!/usr/bin/env /home/mobian/tor-browser/Browser/execdesktop # # *Slightly modified to work on Mobian* # # This file is a self-modifying .desktop file that can be run from the shell. # It preserves arguments and environment for the start-tor-browser script. # # Run './start-tor-browser.desktop --help' to display the full set of options. # # When invoked from the shell, this file must always be in a Tor Browser 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 Browser to your desktop's application menu # by running './start-tor-browser.desktop --register-app' # # If you use --register-app, and then relocate your TBB directory, Tor Browser # 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 Browser Setup GenericName=Web Browser Comment=Tor Browser is +1 for privacy and −1 for mass surveillance Categories=Network;WebBrowser;Security; Exec=/bin/bash ${DEST}/tor-browser_en-US/Browser/start-tor-browser --detach X-TorBrowser-ExecShell=/home/mobian/tor-browser/Browser/start-tor-browser --detach Icon=web-browser StartupWMClass=Tor Browser EOF sudo chmod +x /usr/share/applications/mobian-torbrowser.desktop