├── .github ├── dependabot.yml └── workflows │ └── docker_build.yml ├── Dockerfile ├── README.md ├── build-all.sh ├── entrypoint.sh ├── entrypoint_root.sh └── system ├── arm ├── bin │ ├── busybox │ ├── dnsmasq │ ├── linker │ ├── linker64 │ ├── mksh │ └── sh ├── etc │ ├── group │ ├── hosts │ ├── ld.config.28.txt │ ├── mkshrc │ └── passwd ├── lib │ ├── ld-android.so │ ├── libc++.so │ ├── libc.so │ ├── libc_malloc_debug.so │ ├── libc_malloc_hooks.so │ ├── libcutils.so │ ├── libdl.so │ ├── libicuuc.so │ ├── liblog.so │ ├── libm.so │ └── libnetd_client.so ├── lib64 │ ├── ld-android.so │ ├── libc++.so │ ├── libc.so │ ├── libc_malloc_debug.so │ ├── libc_malloc_hooks.so │ ├── libdl.so │ ├── libicuuc.so │ ├── liblog.so │ ├── libm.so │ └── libnetd_client.so └── usr │ ├── icu │ └── icudt60l.dat │ └── share │ └── zoneinfo │ ├── tzdata │ └── tzlookup.xml └── x86 ├── bin ├── busybox ├── dnsmasq ├── linker ├── linker64 ├── mksh └── sh ├── etc ├── group ├── hosts ├── ld.config.28.txt ├── mkshrc └── passwd ├── lib ├── ld-android.so ├── libc++.so ├── libc.so ├── libc_malloc_debug.so ├── libc_malloc_hooks.so ├── libcutils.so ├── libdl.so ├── libicuuc.so ├── liblog.so ├── libm.so └── libnetd_client.so ├── lib64 ├── ld-android.so ├── libc++.so ├── libc.so ├── libc_malloc_debug.so ├── libc_malloc_hooks.so ├── libdl.so ├── libicuuc.so ├── liblog.so ├── libm.so └── libnetd_client.so └── usr ├── icu └── icudt60l.dat └── share └── zoneinfo ├── tzdata └── tzlookup.xml /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | - package-ecosystem: github-actions 4 | directory: / 5 | schedule: 6 | interval: daily 7 | -------------------------------------------------------------------------------- /.github/workflows/docker_build.yml: -------------------------------------------------------------------------------- 1 | name: Build and push Docker image 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | pull_request: 8 | schedule: 9 | - cron: '0 2 * * 0' 10 | workflow_dispatch: 11 | 12 | env: 13 | CI: true 14 | DOCKER_BUILDKIT: 1 15 | 16 | jobs: 17 | main: 18 | runs-on: ubuntu-latest 19 | strategy: 20 | matrix: 21 | CPU_ARCH: 22 | - aarch64 23 | - arm 24 | - i686 25 | - x86_64 26 | steps: 27 | 28 | - name: Clone repository 29 | uses: actions/checkout@v4 30 | 31 | - name: Setup binfmt_misc 32 | if: (matrix.CPU_ARCH == 'aarch64') || (matrix.CPU_ARCH == 'arm') 33 | run: docker run --rm --privileged aptman/qus -s -- -p aarch64 arm 34 | 35 | - name: Build images 36 | run: | 37 | case '${{ matrix.CPU_ARCH }}' in 38 | arm) SYSTEM_TYPE=arm; PLATFORM_TAG="linux/arm/v7";; 39 | aarch64) SYSTEM_TYPE=arm; PLATFORM_TAG="linux/arm64";; 40 | i686) SYSTEM_TYPE=x86; PLATFORM_TAG="linux/386";; 41 | *) SYSTEM_TYPE=x86; PLATFORM_TAG="linux/amd64";; 42 | esac 43 | docker buildx build -t \ 44 | termux/termux-docker:${{ matrix.CPU_ARCH }} \ 45 | --platform "$PLATFORM_TAG" \ 46 | --build-arg BOOTSTRAP_ARCH=${{ matrix.CPU_ARCH }} \ 47 | --build-arg SYSTEM_TYPE="${SYSTEM_TYPE}" \ 48 | . 49 | 50 | - name: Login to Docker Hub 51 | if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' && github.repository == 'termux/termux-docker' 52 | uses: docker/login-action@v3 53 | with: 54 | username: grimler 55 | password: ${{ secrets.GRIMLER_DOCKER_TOKEN }} 56 | 57 | - name: Push to Docker Hub 58 | if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' && github.repository == 'termux/termux-docker' 59 | run: | 60 | docker push termux/termux-docker:${{ matrix.CPU_ARCH }} 61 | if [ ${{ matrix.CPU_ARCH }} = i686 ]; then 62 | docker tag termux/termux-docker:i686 termux/termux-docker:latest 63 | docker push termux/termux-docker:latest 64 | fi 65 | 66 | - name: Export container as tar archive 67 | if: always() 68 | run: | 69 | docker run \ 70 | --privileged \ 71 | --name termux-docker-${{ matrix.CPU_ARCH }} \ 72 | termux/termux-docker:${{ matrix.CPU_ARCH }} \ 73 | uname -a 74 | docker stop termux-docker-${{ matrix.CPU_ARCH }} 75 | docker export -o termux-docker-${{ matrix.CPU_ARCH }}.tar \ 76 | termux-docker-${{ matrix.CPU_ARCH }} 77 | sha256sum termux-docker-${{ matrix.CPU_ARCH }}.tar 78 | 79 | - name: Store tar archive 80 | if: always() 81 | uses: actions/upload-artifact@v4 82 | with: 83 | name: termux-docker-${{ matrix.CPU_ARCH }}-${{ github.sha }} 84 | path: termux-docker-${{ matrix.CPU_ARCH }}.tar 85 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | ############################################################################## 2 | # Bootstrap Termux environment. 3 | FROM scratch AS bootstrap 4 | 5 | ARG BOOTSTRAP_VERSION=2023.02.19-r1%2Bapt-android-7 6 | ARG BOOTSTRAP_ARCH=i686 7 | ARG SYSTEM_TYPE=x86 8 | 9 | # Docker uses /bin/sh by default, but we don't have it currently. 10 | SHELL ["/system/bin/sh", "-c"] 11 | ENV PATH /system/bin 12 | 13 | # Copy libc, linker and few utilities. 14 | COPY /system/$SYSTEM_TYPE /system 15 | 16 | # Copy entrypoint script. 17 | COPY /entrypoint.sh /entrypoint.sh 18 | COPY /entrypoint_root.sh /entrypoint_root.sh 19 | 20 | # Extract bootstrap archive and create symlinks. 21 | ADD https://github.com/termux/termux-packages/releases/download/bootstrap-$BOOTSTRAP_VERSION/bootstrap-$BOOTSTRAP_ARCH.zip /bootstrap.zip 22 | RUN busybox mkdir -p /data/data/com.termux/files && \ 23 | cd /data/data/com.termux/files && \ 24 | busybox mkdir ../cache ./usr ./home && \ 25 | busybox unzip -d usr /bootstrap.zip && \ 26 | busybox rm /bootstrap.zip && \ 27 | cd ./usr && \ 28 | busybox cat SYMLINKS.txt | while read -r line; do \ 29 | dest=$(echo "$line" | busybox awk -F '←' '{ print $1 }'); \ 30 | link=$(echo "$line" | busybox awk -F '←' '{ print $2 }'); \ 31 | busybox ln -s "$dest" "$link"; \ 32 | done && \ 33 | busybox rm SYMLINKS.txt && \ 34 | busybox ln -s /data/data/com.termux/files/usr /usr && \ 35 | busybox ln -s /data/data/com.termux/files/usr/bin /bin && \ 36 | busybox ln -s /data/data/com.termux/files/usr/tmp /tmp 37 | 38 | # Link some utilities to busybox. 39 | # Some utilities in $PREFIX are actually a wrapper of the same binary 40 | # from /system/bin. See termux-tools/build.sh#L29. 41 | RUN for tool in df mount ping ping6 su top umount; do \ 42 | busybox ln -s /system/bin/busybox /system/bin/$tool; \ 43 | done 44 | 45 | # Set ownership and file access modes: 46 | # * User content is owned by 1000:1000. 47 | # * Termux file modes are set only for user. 48 | # * Rest is owned by root and has 755/644 modes. 49 | RUN busybox chown -Rh 0:0 /system && \ 50 | busybox chown -Rh 1000:1000 /data/data/com.termux && \ 51 | busybox ln -s /system/etc/passwd /etc/passwd && \ 52 | busybox ln -s /system/etc/group /etc/group && \ 53 | busybox find /system -type d -exec busybox chmod 755 "{}" \; && \ 54 | busybox find /system -type f -executable -exec busybox chmod 755 "{}" \; && \ 55 | busybox find /system -type f ! -executable -exec busybox chmod 644 "{}" \; && \ 56 | busybox find /data -type d -exec busybox chmod 755 "{}" \; && \ 57 | busybox find /data/data/com.termux/files -type f -o -type d -exec busybox chmod g-rwx,o-rwx "{}" \; && \ 58 | cd /data/data/com.termux/files/usr && \ 59 | busybox find ./bin ./lib/apt ./libexec -type f -exec busybox chmod 700 "{}" \; 60 | 61 | # Install updates and cleanup when not building for arm. 62 | ENV PATH /data/data/com.termux/files/usr/bin 63 | RUN if [ ${SYSTEM_TYPE} = 'arm' ]; then exit; else \ 64 | /system/bin/mksh -T /dev/ptmx -c "/system/bin/dnsmasq -u root -g root --pid-file /dnsmasq.pid" && sleep 1 && \ 65 | su - system -c "/data/data/com.termux/files/usr/bin/apt update" && \ 66 | su - system -c "/data/data/com.termux/files/usr/bin/apt upgrade -o Dpkg::Options::=--force-confnew -yq" && \ 67 | rm -rf /data/data/com.termux/files/usr/var/lib/apt/* && \ 68 | rm -rf /data/data/com.termux/files/usr/var/log/apt/* && \ 69 | rm -rf /data/data/com.termux/cache/apt/* ;\ 70 | fi 71 | 72 | ############################################################################## 73 | # Create final image. 74 | FROM scratch 75 | 76 | ENV ANDROID_DATA /data 77 | ENV ANDROID_ROOT /system 78 | ENV HOME /data/data/com.termux/files/home 79 | ENV LANG en_US.UTF-8 80 | ENV PATH /data/data/com.termux/files/usr/bin 81 | ENV PREFIX /data/data/com.termux/files/usr 82 | ENV TMPDIR /data/data/com.termux/files/usr/tmp 83 | ENV TZ UTC 84 | 85 | COPY --from=bootstrap / / 86 | 87 | WORKDIR /data/data/com.termux/files/home 88 | SHELL ["/data/data/com.termux/files/usr/bin/sh", "-c"] 89 | 90 | ENTRYPOINT ["/entrypoint.sh"] 91 | CMD ["/data/data/com.termux/files/usr/bin/login"] 92 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Termux environment for Docker/Podman. 2 | 3 | A [Termux](https://termux.com) environment packaged into Docker image. 4 | Environment doesn't have Android runtime components, so certain things will 5 | not be available (DalvikVM, OpenSLES, etc...). 6 | 7 | ## How to use 8 | 9 | ### Requirements 10 | 11 | You should have a properly configured and running Docker or Podman 12 | container systems. Further instructions will provide examples only for 13 | Docker. 14 | 15 | ### Basic usage 16 | 17 | This will start interactive login shell. Everything will look like in a 18 | normal Termux installation. 19 | 20 | ```.sh 21 | docker run -it termux/termux-docker:latest 22 | ``` 23 | 24 | When using the tag `latest`, container will be 32 bit (i686 architecture). 25 | 26 | Other architecture can be installed using a different tags. Available 27 | tags: 28 | 29 | - `aarch64` 30 | - `arm` 31 | - `i686` (`latest`) 32 | - `x86_64` 33 | 34 | If architecture is not compatible with host, the additional setup will 35 | be needed. Read this document further to learn how you can run containers 36 | of incompatible CPU architecture. 37 | 38 | **Important note**: do not pass `--user` option to Docker command line. 39 | The initial user of container must be root. Otherwise DNS will be broken 40 | because of `dnsmasq` server failure. 41 | 42 | ### Running ARM containers on x86 host 43 | 44 | In order to run AArch64 container on x86(64) host, you need to setup 45 | QEMU emulator through binfmt_misc. This can be easily done by one 46 | command: 47 | 48 | ```.sh 49 | docker run --rm --privileged aptman/qus -s -- -p aarch64 arm 50 | ``` 51 | 52 | Note that AArch64 and ARM containers work properly only in privileged 53 | mode. If you want your containers to have standard privileges, a custom 54 | seccomp profile is required. 55 | 56 | Variant with privileged container: 57 | 58 | ```.sh 59 | docker run -it --privileged termux/termux-docker:aarch64 60 | ``` 61 | 62 | Variant with seccomp unconfined profile: 63 | 64 | ```.sh 65 | docker run -it --security-opt seccomp:unconfined termux/termux-docker:aarch64 66 | ``` 67 | 68 | ### Non-interactive execution of commands 69 | 70 | You can run commands in non-interactive mode. Just append them to Docker 71 | command line. 72 | 73 | Example: 74 | 75 | ```.sh 76 | docker run -it --rm termux/termux-docker:latest bash -c "apt update && apt install -yq clang" 77 | ``` 78 | 79 | ### Root shell 80 | 81 | By default root shell is disabled in container as Termux doesn't really 82 | support usage of package manager under root account. In cases where you 83 | really need shell with root privileges, entrypoint should be overridden. 84 | 85 | The provided images have 2 entry points: 86 | 87 | - `/entrypoint.sh` - the standard one which drops privileges to `system` 88 | user. 89 | - `/entrypoint_root.sh` - alternate entrypoint that does not drop privileges. 90 | 91 | Usage example: 92 | 93 | ```.sh 94 | docker run -it --entrypoint /entrypoint_root.sh termux/termux-docker:latest 95 | ``` 96 | 97 | ## Building image 98 | 99 | Docker: 100 | 101 | ```.sh 102 | ./build-all.sh 103 | ``` 104 | 105 | Podman: 106 | 107 | ```.sh 108 | ./build-all.sh --podman 109 | ``` 110 | 111 | ## Known issues 112 | 113 | There a number of known issues which may not be resolved: 114 | 115 | * ARM containers may require a custom seccomp profile to remove restrictions from 116 | `personality()` system call. 117 | 118 | * When running certain multi threaded program in 32bit containers, the PIDs can 119 | balloon and easily exceed libc's limit. The only way to fix this is to set 120 | `/proc/sys/kernel/pid_max` to 65535. See [termux-docker#40](https://github.com/termux/termux-docker/issues/40). 121 | -------------------------------------------------------------------------------- /build-all.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | OCI="docker" 6 | OCI_ARG="" 7 | case $1 in 8 | -p|--podman) OCI="podman" ; OCI_ARG="--format docker" ;; 9 | esac 10 | 11 | if [ -n "${TERMUX_DOCKER_USE_SUDO-}" ]; then 12 | SUDO="sudo" 13 | else 14 | SUDO="" 15 | fi 16 | 17 | case "$(uname -m)" in 18 | aarch64) SYSTEM_TYPE="arm"; ARCHITECTURES=("aarch64" "arm");; 19 | armv7l|armv8l) SYSTEM_TYPE="arm"; ARCHITECTURES=("arm");; 20 | i686) SYSTEM_TYPE="x86"; ARCHITECTURES=("i686");; 21 | x86_64) SYSTEM_TYPE="x86"; ARCHITECTURES=("i686" "x86_64");; 22 | *) 23 | echo "'uname -m' returned unknown architecture" 24 | exit 1 25 | ;; 26 | esac 27 | 28 | for arch in "${ARCHITECTURES[@]}"; do 29 | $SUDO $OCI build \ 30 | ${OCI_ARG} \ 31 | -t 'termux/termux-docker:'"$arch" \ 32 | -f Dockerfile \ 33 | --build-arg BOOTSTRAP_ARCH="$arch" \ 34 | --build-arg SYSTEM_TYPE="$SYSTEM_TYPE" \ 35 | . 36 | if [ "${1-}" = "publish" ]; then 37 | $SUDO $OCI push 'termux/termux-docker:'"$arch" 38 | fi 39 | done 40 | 41 | if [ "$SYSTEM_TYPE" = "x86" ]; then 42 | $SUDO $OCI tag termux/termux-docker:i686 termux/termux-docker:latest 43 | if [ "${1-}" = "publish" ]; then 44 | $SUDO $OCI push 'termux/termux-docker:latest' 45 | fi 46 | fi 47 | -------------------------------------------------------------------------------- /entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/system/bin/sh 2 | 3 | if [ "$(id -u)" = "0" ]; then 4 | if [ -z "$(/system/bin/busybox pidof dnsmasq)" ]; then 5 | /system/bin/mksh -T /dev/ptmx -c "/system/bin/dnsmasq -u root -g root --pid-file /dnsmasq.pid" >/dev/null 2>&1 6 | sleep 1 7 | if [ -z "$(/system/bin/busybox pidof dnsmasq)" ]; then 8 | echo "[!] Failed to start dnsmasq, host name resolution may fail." >&2 9 | fi 10 | fi 11 | else 12 | echo "[!] Container is running as non-root, unable to start dnsmasq. DNS will be unavailable." >&2 13 | if [ $# -ge 1 ]; then 14 | exec "$@" 15 | else 16 | exec /data/data/com.termux/files/usr/bin/login 17 | fi 18 | fi 19 | 20 | if [ $# -lt 1 ]; then 21 | set -- /data/data/com.termux/files/usr/bin/login 22 | fi 23 | 24 | exec /system/bin/su -s /data/data/com.termux/files/usr/bin/env system -- \ 25 | -i \ 26 | ANDROID_DATA="$ANDROID_DATA" \ 27 | ANDROID_ROOT="$ANDROID_ROOT" \ 28 | HOME="$HOME" \ 29 | LANG="$LANG" \ 30 | PATH="$PATH" \ 31 | PREFIX="$PREFIX" \ 32 | TMPDIR="$TMPDIR" \ 33 | TZ=UTC \ 34 | "$@" 35 | -------------------------------------------------------------------------------- /entrypoint_root.sh: -------------------------------------------------------------------------------- 1 | #!/system/bin/sh 2 | 3 | if [ "$(id -u)" != "0" ]; then 4 | echo "Failure: /entrypoint_root.sh must be started as root." >&2 5 | exit 1 6 | fi 7 | 8 | if [ -z "$(/system/bin/busybox pidof dnsmasq)" ]; then 9 | /system/bin/mksh -T /dev/ptmx -c "/system/bin/dnsmasq -u root -g root --pid-file /dnsmasq.pid" >/dev/null 2>&1 10 | sleep 1 11 | if [ -z "$(/system/bin/busybox pidof dnsmasq)" ]; then 12 | echo "[!] Failed to start dnsmasq, host name resolution may fail." >&2 13 | fi 14 | fi 15 | 16 | if [ $# -ge 1 ]; then 17 | exec "$@" 18 | else 19 | exec /data/data/com.termux/files/usr/bin/login 20 | fi 21 | -------------------------------------------------------------------------------- /system/arm/bin/busybox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/bin/busybox -------------------------------------------------------------------------------- /system/arm/bin/dnsmasq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/bin/dnsmasq -------------------------------------------------------------------------------- /system/arm/bin/linker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/bin/linker -------------------------------------------------------------------------------- /system/arm/bin/linker64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/bin/linker64 -------------------------------------------------------------------------------- /system/arm/bin/mksh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/bin/mksh -------------------------------------------------------------------------------- /system/arm/bin/sh: -------------------------------------------------------------------------------- 1 | busybox -------------------------------------------------------------------------------- /system/arm/etc/group: -------------------------------------------------------------------------------- 1 | root:x:0: 2 | system:!:1000:system 3 | -------------------------------------------------------------------------------- /system/arm/etc/hosts: -------------------------------------------------------------------------------- 1 | 127.0.0.1 localhost 2 | ::1 ip6-localhost 3 | -------------------------------------------------------------------------------- /system/arm/etc/ld.config.28.txt: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017 The Android Open Source Project 2 | # 3 | # Bionic loader config file. 4 | # 5 | 6 | # Don't change the order here. The first pattern that matches with the 7 | # absolute path of an executable is selected. 8 | dir.system = /system/bin/ 9 | dir.system = /system/xbin/ 10 | dir.system = /system/product/bin/ 11 | 12 | dir.vendor = /odm/bin/ 13 | dir.vendor = /vendor/bin/ 14 | dir.vendor = /data/nativetest/odm 15 | dir.vendor = /data/nativetest64/odm 16 | dir.vendor = /data/benchmarktest/odm 17 | dir.vendor = /data/benchmarktest64/odm 18 | dir.vendor = /data/nativetest/vendor 19 | dir.vendor = /data/nativetest64/vendor 20 | dir.vendor = /data/benchmarktest/vendor 21 | dir.vendor = /data/benchmarktest64/vendor 22 | 23 | dir.system = /data/nativetest 24 | dir.system = /data/nativetest64 25 | dir.system = /data/benchmarktest 26 | dir.system = /data/benchmarktest64 27 | 28 | dir.postinstall = /postinstall 29 | 30 | [system] 31 | additional.namespaces = sphal,vndk,rs 32 | 33 | ############################################################################### 34 | # "default" namespace 35 | # 36 | # Framework-side code runs in this namespace. Libs from /vendor partition 37 | # can't be loaded in this namespace. 38 | ############################################################################### 39 | namespace.default.isolated = true 40 | 41 | namespace.default.search.paths = /system/${LIB} 42 | namespace.default.search.paths += /system/product/${LIB} 43 | 44 | # We can't have entire /system/${LIB} as permitted paths because doing so 45 | # makes it possible to load libs in /system/${LIB}/vndk* directories by 46 | # their absolute paths (e.g. dlopen("/system/lib/vndk/libbase.so");). 47 | # VNDK libs are built with previous versions of Android and thus must not be 48 | # loaded into this namespace where libs built with the current version of 49 | # Android are loaded. Mixing the two types of libs in the same namespace can 50 | # cause unexpected problem. 51 | namespace.default.permitted.paths = /system/${LIB}/drm 52 | namespace.default.permitted.paths += /system/${LIB}/extractors 53 | namespace.default.permitted.paths += /system/${LIB}/hw 54 | namespace.default.permitted.paths += /system/product/${LIB} 55 | # These are where odex files are located. libart has to be able to dlopen the files 56 | namespace.default.permitted.paths += /system/framework 57 | namespace.default.permitted.paths += /system/app 58 | namespace.default.permitted.paths += /system/priv-app 59 | namespace.default.permitted.paths += /vendor/framework 60 | namespace.default.permitted.paths += /vendor/app 61 | namespace.default.permitted.paths += /vendor/priv-app 62 | namespace.default.permitted.paths += /odm/framework 63 | namespace.default.permitted.paths += /odm/app 64 | namespace.default.permitted.paths += /odm/priv-app 65 | namespace.default.permitted.paths += /oem/app 66 | namespace.default.permitted.paths += /system/product/framework 67 | namespace.default.permitted.paths += /system/product/app 68 | namespace.default.permitted.paths += /system/product/priv-app 69 | namespace.default.permitted.paths += /data 70 | namespace.default.permitted.paths += /mnt/expand 71 | 72 | namespace.default.asan.search.paths = /data/asan/system/${LIB} 73 | namespace.default.asan.search.paths += /system/${LIB} 74 | namespace.default.asan.search.paths += /data/asan/product/${LIB} 75 | namespace.default.asan.search.paths += /product/${LIB} 76 | 77 | namespace.default.asan.permitted.paths = /data 78 | namespace.default.asan.permitted.paths += /system/${LIB}/drm 79 | namespace.default.asan.permitted.paths += /system/${LIB}/extractors 80 | namespace.default.asan.permitted.paths += /system/${LIB}/hw 81 | namespace.default.asan.permitted.paths += /system/framework 82 | namespace.default.asan.permitted.paths += /system/app 83 | namespace.default.asan.permitted.paths += /system/priv-app 84 | namespace.default.asan.permitted.paths += /vendor/framework 85 | namespace.default.asan.permitted.paths += /vendor/app 86 | namespace.default.asan.permitted.paths += /vendor/priv-app 87 | namespace.default.asan.permitted.paths += /odm/framework 88 | namespace.default.asan.permitted.paths += /odm/app 89 | namespace.default.asan.permitted.paths += /odm/priv-app 90 | namespace.default.asan.permitted.paths += /oem/app 91 | namespace.default.asan.permitted.paths += /system/product/${LIB} 92 | namespace.default.asan.permitted.paths += /system/product/framework 93 | namespace.default.asan.permitted.paths += /system/product/app 94 | namespace.default.asan.permitted.paths += /system/product/priv-app 95 | namespace.default.asan.permitted.paths += /mnt/expand 96 | 97 | ############################################################################### 98 | # "sphal" namespace 99 | # 100 | # SP-HAL(Sameprocess-HAL)s are the only vendor libraries that are allowed to be 101 | # loaded inside system processes. libEGL_.so, libGLESv2_.so, 102 | # android.hardware.graphics.mapper@2.0-impl.so, etc are SP-HALs. 103 | # 104 | # This namespace is exclusivly for SP-HALs. When the framework tries to dynami- 105 | # cally load SP-HALs, android_dlopen_ext() is used to explicitly specifying 106 | # that they should be searched and loaded from this namespace. 107 | # 108 | # Note that there is no link from the default namespace to this namespace. 109 | ############################################################################### 110 | namespace.sphal.isolated = true 111 | namespace.sphal.visible = true 112 | 113 | namespace.sphal.search.paths = /odm/${LIB} 114 | namespace.sphal.search.paths += /vendor/${LIB} 115 | 116 | namespace.sphal.permitted.paths = /odm/${LIB} 117 | namespace.sphal.permitted.paths += /vendor/${LIB} 118 | 119 | namespace.sphal.asan.search.paths = /data/asan/odm/${LIB} 120 | namespace.sphal.asan.search.paths += /odm/${LIB} 121 | namespace.sphal.asan.search.paths += /data/asan/vendor/${LIB} 122 | namespace.sphal.asan.search.paths += /vendor/${LIB} 123 | 124 | namespace.sphal.asan.permitted.paths = /data/asan/odm/${LIB} 125 | namespace.sphal.asan.permitted.paths += /odm/${LIB} 126 | namespace.sphal.asan.permitted.paths += /data/asan/vendor/${LIB} 127 | namespace.sphal.asan.permitted.paths += /vendor/${LIB} 128 | 129 | # Once in this namespace, access to libraries in /system/lib is restricted. Only 130 | # libs listed here can be used. 131 | namespace.sphal.links = default,vndk,rs 132 | 133 | namespace.sphal.link.default.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libc.so:libclang_rt.asan-aarch64-android.so:libclang_rt.asan-arm-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libneuralnetworks.so:libsync.so:libvndksupport.so:libvulkan.so 134 | namespace.sphal.link.default.shared_libs += libclang_rt.asan-aarch64-android.so:libclang_rt.ubsan_standalone-aarch64-android.so:libclang_rt.tsan-aarch64-android.so:libclang_rt.asan-arm-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.tsan-arm-android.so 135 | 136 | namespace.sphal.link.vndk.shared_libs = android.hardware.graphics.common@1.0.so:android.hardware.graphics.common@1.1.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.mapper@2.1.so:android.hardware.renderscript@1.0.so:android.hidl.memory.token@1.0.so:android.hidl.memory@1.0.so:android.hidl.memory@1.0-impl.so:libRSCpuRef.so:libRSDriver.so:libRS_internal.so:libbase.so:libbcinfo.so:libc++.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libhwbinder.so:libhwbinder_noltopgo.so:libion.so:liblzma.so:libunwindstack.so:libutils.so:libutilscallstack.so:libz.so 137 | 138 | # Renderscript gets separate namespace 139 | namespace.sphal.link.rs.shared_libs = libRS_internal.so 140 | 141 | ############################################################################### 142 | # "rs" namespace 143 | # 144 | # This namespace is exclusively for Renderscript internal libraries. 145 | # This namespace has slightly looser restriction than the vndk namespace because 146 | # of the genuine characteristics of Renderscript; /data is in the permitted path 147 | # to load the compiled *.so file and libmediandk.so can be used here. 148 | ############################################################################### 149 | namespace.rs.isolated = true 150 | namespace.rs.visible = true 151 | 152 | namespace.rs.search.paths = /odm/${LIB}/vndk-sp 153 | namespace.rs.search.paths += /vendor/${LIB}/vndk-sp 154 | namespace.rs.search.paths += /system/${LIB}/vndk-sp-28 155 | namespace.rs.search.paths += /odm/${LIB} 156 | namespace.rs.search.paths += /vendor/${LIB} 157 | 158 | namespace.rs.permitted.paths = /odm/${LIB} 159 | namespace.rs.permitted.paths += /vendor/${LIB} 160 | namespace.rs.permitted.paths += /data 161 | 162 | namespace.rs.asan.search.paths = /data/asan/odm/${LIB}/vndk-sp 163 | namespace.rs.asan.search.paths += /odm/${LIB}/vndk-sp 164 | namespace.rs.asan.search.paths += /data/asan/vendor/${LIB}/vndk-sp 165 | namespace.rs.asan.search.paths += /vendor/${LIB}/vndk-sp 166 | namespace.rs.asan.search.paths += /data/asan/system/${LIB}/vndk-sp-28 167 | namespace.rs.asan.search.paths += /system/${LIB}/vndk-sp-28 168 | namespace.rs.asan.search.paths += /data/asan/odm/${LIB} 169 | namespace.rs.asan.search.paths += /odm/${LIB} 170 | namespace.rs.asan.search.paths += /data/asan/vendor/${LIB} 171 | namespace.rs.asan.search.paths += /vendor/${LIB} 172 | 173 | namespace.rs.asan.permitted.paths = /data/asan/odm/${LIB} 174 | namespace.rs.asan.permitted.paths += /odm/${LIB} 175 | namespace.rs.asan.permitted.paths += /data/asan/vendor/${LIB} 176 | namespace.rs.asan.permitted.paths += /vendor/${LIB} 177 | namespace.rs.asan.permitted.paths += /data 178 | 179 | namespace.rs.links = default,vndk 180 | 181 | namespace.rs.link.default.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libc.so:libclang_rt.asan-aarch64-android.so:libclang_rt.asan-arm-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libneuralnetworks.so:libsync.so:libvndksupport.so:libvulkan.so 182 | namespace.rs.link.default.shared_libs += libclang_rt.asan-aarch64-android.so:libclang_rt.ubsan_standalone-aarch64-android.so:libclang_rt.tsan-aarch64-android.so:libclang_rt.asan-arm-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.tsan-arm-android.so 183 | # Private LLNDK libs (e.g. libft2.so) are exceptionally allowed to this 184 | # namespace because RS framework libs are using them. 185 | namespace.rs.link.default.shared_libs += libft2.so 186 | 187 | namespace.rs.link.vndk.shared_libs = android.hardware.graphics.common@1.0.so:android.hardware.graphics.common@1.1.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.mapper@2.1.so:android.hardware.renderscript@1.0.so:android.hidl.memory.token@1.0.so:android.hidl.memory@1.0.so:android.hidl.memory@1.0-impl.so:libRSCpuRef.so:libRSDriver.so:libRS_internal.so:libbase.so:libbcinfo.so:libc++.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libhwbinder.so:libhwbinder_noltopgo.so:libion.so:liblzma.so:libunwindstack.so:libutils.so:libutilscallstack.so:libz.so 188 | 189 | ############################################################################### 190 | # "vndk" namespace 191 | # 192 | # This namespace is exclusively for vndk-sp libs. 193 | ############################################################################### 194 | namespace.vndk.isolated = true 195 | namespace.vndk.visible = true 196 | 197 | namespace.vndk.search.paths = /odm/${LIB}/vndk-sp 198 | namespace.vndk.search.paths += /vendor/${LIB}/vndk-sp 199 | namespace.vndk.search.paths += /system/${LIB}/vndk-sp-28 200 | 201 | namespace.vndk.permitted.paths = /odm/${LIB}/hw 202 | namespace.vndk.permitted.paths += /odm/${LIB}/egl 203 | namespace.vndk.permitted.paths += /vendor/${LIB}/hw 204 | namespace.vndk.permitted.paths += /vendor/${LIB}/egl 205 | # This is exceptionally required since android.hidl.memory@1.0-impl.so is here 206 | namespace.vndk.permitted.paths += /system/${LIB}/vndk-sp-28/hw 207 | 208 | namespace.vndk.asan.search.paths = /data/asan/odm/${LIB}/vndk-sp 209 | namespace.vndk.asan.search.paths += /odm/${LIB}/vndk-sp 210 | namespace.vndk.asan.search.paths += /data/asan/vendor/${LIB}/vndk-sp 211 | namespace.vndk.asan.search.paths += /vendor/${LIB}/vndk-sp 212 | namespace.vndk.asan.search.paths += /data/asan/system/${LIB}/vndk-sp-28 213 | namespace.vndk.asan.search.paths += /system/${LIB}/vndk-sp-28 214 | 215 | namespace.vndk.asan.permitted.paths = /data/asan/odm/${LIB}/hw 216 | namespace.vndk.asan.permitted.paths += /odm/${LIB}/hw 217 | namespace.vndk.asan.permitted.paths += /data/asan/odm/${LIB}/egl 218 | namespace.vndk.asan.permitted.paths += /odm/${LIB}/egl 219 | namespace.vndk.asan.permitted.paths += /data/asan/vendor/${LIB}/hw 220 | namespace.vndk.asan.permitted.paths += /vendor/${LIB}/hw 221 | namespace.vndk.asan.permitted.paths += /data/asan/vendor/${LIB}/egl 222 | namespace.vndk.asan.permitted.paths += /vendor/${LIB}/egl 223 | 224 | namespace.vndk.asan.permitted.paths += /data/asan/system/${LIB}/vndk-sp-28/hw 225 | namespace.vndk.asan.permitted.paths += /system/${LIB}/vndk-sp-28/hw 226 | 227 | # The "vndk" namespace links to "default" namespace for LLNDK libs and links to 228 | # "sphal" namespace for vendor libs. The ordering matters. The "default" 229 | # namespace has higher priority than the "sphal" namespace. 230 | namespace.vndk.links = default,sphal 231 | 232 | # When these NDK libs are required inside this namespace, then it is redirected 233 | # to the default namespace. This is possible since their ABI is stable across 234 | # Android releases. 235 | namespace.vndk.link.default.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libc.so:libclang_rt.asan-aarch64-android.so:libclang_rt.asan-arm-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libneuralnetworks.so:libsync.so:libvndksupport.so:libvulkan.so 236 | namespace.vndk.link.default.shared_libs += libclang_rt.asan-aarch64-android.so:libclang_rt.ubsan_standalone-aarch64-android.so:libclang_rt.tsan-aarch64-android.so:libclang_rt.asan-arm-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.tsan-arm-android.so 237 | 238 | # Allow VNDK-SP extensions to use vendor libraries 239 | namespace.vndk.link.sphal.allow_all_shared_libs = true 240 | 241 | ############################################################################### 242 | # Namespace config for vendor processes. In O, no restriction is enforced for 243 | # them. However, in O-MR1, access to /system/${LIB} will not be allowed to 244 | # the default namespace. 'system' namespace will be added to give limited 245 | # (LL-NDK only) access. 246 | ############################################################################### 247 | [vendor] 248 | additional.namespaces = system,vndk 249 | 250 | ############################################################################### 251 | # "default" namespace 252 | # 253 | # This is the default linker namespace for a vendor process (a process started 254 | # from /vendor/bin/*). The main executable and the libs under /vendor/lib[64] 255 | # are loaded directly into this namespace. However, other libs under the system 256 | # partition (VNDK and LLNDK libraries) are not loaded here but from the 257 | # separate namespace 'system'. The delegation to the system namespace is done 258 | # via the 'namespace.default.link.system.shared_libs' property below. 259 | ############################################################################### 260 | namespace.default.isolated = true 261 | namespace.default.visible = true 262 | 263 | namespace.default.search.paths = /odm/${LIB} 264 | namespace.default.search.paths += /vendor/${LIB} 265 | 266 | namespace.default.permitted.paths = /odm 267 | namespace.default.permitted.paths += /vendor 268 | 269 | namespace.default.asan.search.paths = /data/asan/odm/${LIB} 270 | namespace.default.asan.search.paths += /odm/${LIB} 271 | namespace.default.asan.search.paths += /data/asan/vendor/${LIB} 272 | namespace.default.asan.search.paths += /vendor/${LIB} 273 | 274 | namespace.default.asan.permitted.paths = /data/asan/odm 275 | namespace.default.asan.permitted.paths += /odm 276 | namespace.default.asan.permitted.paths += /data/asan/vendor 277 | namespace.default.asan.permitted.paths += /vendor 278 | 279 | namespace.default.links = system,vndk 280 | namespace.default.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libc.so:libclang_rt.asan-aarch64-android.so:libclang_rt.asan-arm-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libneuralnetworks.so:libsync.so:libvndksupport.so:libvulkan.so 281 | namespace.default.link.vndk.shared_libs = android.hardware.graphics.common@1.0.so:android.hardware.graphics.common@1.1.so:android.hardware.graphics.mapper@2.0.so:android.hardware.graphics.mapper@2.1.so:android.hardware.renderscript@1.0.so:android.hidl.memory.token@1.0.so:android.hidl.memory@1.0.so:android.hidl.memory@1.0-impl.so:libRSCpuRef.so:libRSDriver.so:libRS_internal.so:libbase.so:libbcinfo.so:libc++.so:libcutils.so:libhardware.so:libhidlbase.so:libhidlmemory.so:libhidltransport.so:libhwbinder.so:libhwbinder_noltopgo.so:libion.so:liblzma.so:libunwindstack.so:libutils.so:libutilscallstack.so:libz.so 282 | namespace.default.link.vndk.shared_libs += android.frameworks.displayservice@1.0.so:android.frameworks.schedulerservice@1.0.so:android.frameworks.sensorservice@1.0.so:android.frameworks.vr.composer@1.0.so:android.hardware.audio.common-util.so:android.hardware.audio.common@2.0.so:android.hardware.audio.common@2.0-util.so:android.hardware.audio.common@4.0.so:android.hardware.audio.common@4.0-util.so:android.hardware.audio.effect@2.0.so:android.hardware.audio.effect@4.0.so:android.hardware.audio@2.0.so:android.hardware.audio@4.0.so:android.hardware.authsecret@1.0.so:android.hardware.automotive.audiocontrol@1.0.so:android.hardware.automotive.evs@1.0.so:android.hardware.automotive.vehicle@2.0.so:android.hardware.biometrics.fingerprint@2.1.so:android.hardware.bluetooth.a2dp@1.0.so:android.hardware.bluetooth@1.0.so:android.hardware.boot@1.0.so:android.hardware.broadcastradio@1.0.so:android.hardware.broadcastradio@1.1.so:android.hardware.broadcastradio@2.0.so:android.hardware.camera.common@1.0.so:android.hardware.camera.device@1.0.so:android.hardware.camera.device@3.2.so:android.hardware.camera.device@3.3.so:android.hardware.camera.device@3.4.so:android.hardware.camera.metadata@3.2.so:android.hardware.camera.metadata@3.3.so:android.hardware.camera.provider@2.4.so:android.hardware.cas.native@1.0.so:android.hardware.cas@1.0.so:android.hardware.configstore-utils.so:android.hardware.configstore@1.0.so:android.hardware.configstore@1.1.so:android.hardware.confirmationui-support-lib.so:android.hardware.confirmationui@1.0.so:android.hardware.contexthub@1.0.so:android.hardware.drm@1.0.so:android.hardware.drm@1.1.so:android.hardware.dumpstate@1.0.so:android.hardware.gatekeeper@1.0.so:android.hardware.gnss@1.0.so:android.hardware.gnss@1.1.so:android.hardware.graphics.allocator@2.0.so:android.hardware.graphics.bufferqueue@1.0.so:android.hardware.graphics.composer@2.1.so:android.hardware.graphics.composer@2.2.so:android.hardware.health@1.0.so:android.hardware.health@2.0.so:android.hardware.ir@1.0.so:android.hardware.keymaster@3.0.so:android.hardware.keymaster@4.0.so:android.hardware.light@2.0.so:android.hardware.media.bufferpool@1.0.so:android.hardware.media.omx@1.0.so:android.hardware.media@1.0.so:android.hardware.memtrack@1.0.so:android.hardware.neuralnetworks@1.0.so:android.hardware.neuralnetworks@1.1.so:android.hardware.nfc@1.0.so:android.hardware.nfc@1.1.so:android.hardware.oemlock@1.0.so:android.hardware.power@1.0.so:android.hardware.power@1.1.so:android.hardware.power@1.2.so:android.hardware.radio.config@1.0.so:android.hardware.radio.deprecated@1.0.so:android.hardware.radio@1.0.so:android.hardware.radio@1.1.so:android.hardware.radio@1.2.so:android.hardware.secure_element@1.0.so:android.hardware.sensors@1.0.so:android.hardware.soundtrigger@2.0.so:android.hardware.soundtrigger@2.0-core.so:android.hardware.soundtrigger@2.1.so:android.hardware.tetheroffload.config@1.0.so:android.hardware.tetheroffload.control@1.0.so:android.hardware.thermal@1.0.so:android.hardware.thermal@1.1.so:android.hardware.tv.cec@1.0.so:android.hardware.tv.input@1.0.so:android.hardware.usb.gadget@1.0.so:android.hardware.usb@1.0.so:android.hardware.usb@1.1.so:android.hardware.vibrator@1.0.so:android.hardware.vibrator@1.1.so:android.hardware.vibrator@1.2.so:android.hardware.vr@1.0.so:android.hardware.weaver@1.0.so:android.hardware.wifi.hostapd@1.0.so:android.hardware.wifi.offload@1.0.so:android.hardware.wifi.supplicant@1.0.so:android.hardware.wifi.supplicant@1.1.so:android.hardware.wifi@1.0.so:android.hardware.wifi@1.1.so:android.hardware.wifi@1.2.so:android.hidl.allocator@1.0.so:android.hidl.memory.block@1.0.so:android.hidl.token@1.0.so:android.hidl.token@1.0-utils.so:android.system.net.netd@1.0.so:android.system.net.netd@1.1.so:android.system.wifi.keystore@1.0.so:libadf.so:libaudioroute.so:libaudioutils.so:libbinder.so:libcamera_metadata.so:libcap.so:libclang_rt.ubsan_standalone-aarch64-android.so:libclang_rt.ubsan_standalone-arm-android.so:libcn-cbor.so:libcrypto.so:libcrypto_utils.so:libcurl.so:libdiskconfig.so:libdumpstateutil.so:libevent.so:libexif.so:libexpat.so:libfmq.so:libgatekeeper.so:libhardware_legacy.so:libhidlallocatorutils.so:libhidlcache.so:libjpeg.so:libkeymaster_messages.so:libkeymaster_portable.so:libldacBT_abr.so:libldacBT_enc.so:liblz4.so:libmedia_helper.so:libmedia_omx.so:libmemtrack.so:libminijail.so:libmkbootimg_abi_check.so:libnetutils.so:libnl.so:libopus.so:libpagemap.so:libpcre2.so:libpiex.so:libpng.so:libpower.so:libprocinfo.so:libprotobuf-cpp-full.so:libprotobuf-cpp-lite.so:libpuresoftkeymasterdevice.so:libradio_metadata.so:libselinux.so:libsoftkeymasterdevice.so:libspeexresampler.so:libsqlite.so:libssl.so:libstagefright_amrnb_common.so:libstagefright_bufferqueue_helper.so:libstagefright_enc_common.so:libstagefright_flacdec.so:libstagefright_foundation.so:libstagefright_omx.so:libstagefright_omx_utils.so:libstagefright_soft_aacdec.so:libstagefright_soft_aacenc.so:libstagefright_soft_amrdec.so:libstagefright_soft_amrnbenc.so:libstagefright_soft_amrwbenc.so:libstagefright_soft_avcdec.so:libstagefright_soft_avcenc.so:libstagefright_soft_flacdec.so:libstagefright_soft_flacenc.so:libstagefright_soft_g711dec.so:libstagefright_soft_gsmdec.so:libstagefright_soft_hevcdec.so:libstagefright_soft_mp3dec.so:libstagefright_soft_mpeg2dec.so:libstagefright_soft_mpeg4dec.so:libstagefright_soft_mpeg4enc.so:libstagefright_soft_opusdec.so:libstagefright_soft_rawdec.so:libstagefright_soft_vorbisdec.so:libstagefright_soft_vpxdec.so:libstagefright_soft_vpxenc.so:libstagefright_xmlparser.so:libsuspend.so:libsysutils.so:libtinyalsa.so:libtinyxml2.so:libui.so:libusbhost.so:libvixl-arm.so:libvixl-arm64.so:libvorbisidec.so:libwifi-system-iface.so:libxml2.so:libyuv.so:libziparchive.so 283 | 284 | ############################################################################### 285 | # "vndk" namespace 286 | # 287 | # This namespace is where VNDK and VNDK-SP libraries are loaded for 288 | # a vendor process. 289 | ############################################################################### 290 | namespace.vndk.isolated = false 291 | 292 | namespace.vndk.search.paths = /odm/${LIB}/vndk 293 | namespace.vndk.search.paths += /odm/${LIB}/vndk-sp 294 | namespace.vndk.search.paths += /vendor/${LIB}/vndk 295 | namespace.vndk.search.paths += /vendor/${LIB}/vndk-sp 296 | namespace.vndk.search.paths += /system/${LIB}/vndk-sp-28 297 | namespace.vndk.search.paths += /system/${LIB}/vndk-28 298 | 299 | namespace.vndk.asan.search.paths = /data/asan/odm/${LIB}/vndk 300 | namespace.vndk.asan.search.paths += /odm/${LIB}/vndk 301 | namespace.vndk.asan.search.paths += /data/asan/odm/${LIB}/vndk-sp 302 | namespace.vndk.asan.search.paths += /odm/${LIB}/vndk-sp 303 | namespace.vndk.asan.search.paths += /data/asan/vendor/${LIB}/vndk 304 | namespace.vndk.asan.search.paths += /vendor/${LIB}/vndk 305 | namespace.vndk.asan.search.paths += /data/asan/vendor/${LIB}/vndk-sp 306 | namespace.vndk.asan.search.paths += /vendor/${LIB}/vndk-sp 307 | namespace.vndk.asan.search.paths += /data/asan/system/${LIB}/vndk-sp-28 308 | namespace.vndk.asan.search.paths += /system/${LIB}/vndk-sp-28 309 | namespace.vndk.asan.search.paths += /data/asan/system/${LIB}/vndk-28 310 | namespace.vndk.asan.search.paths += /system/${LIB}/vndk-28 311 | 312 | # When these NDK libs are required inside this namespace, then it is redirected 313 | # to the system namespace. This is possible since their ABI is stable across 314 | # Android releases. 315 | namespace.vndk.links = system,default 316 | namespace.vndk.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libc.so:libclang_rt.asan-aarch64-android.so:libclang_rt.asan-arm-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libneuralnetworks.so:libsync.so:libvndksupport.so:libvulkan.so 317 | namespace.vndk.link.system.shared_libs += libclang_rt.asan-aarch64-android.so:libclang_rt.ubsan_standalone-aarch64-android.so:libclang_rt.tsan-aarch64-android.so:libclang_rt.asan-arm-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.tsan-arm-android.so 318 | 319 | namespace.vndk.link.default.allow_all_shared_libs = true 320 | 321 | ############################################################################### 322 | # "system" namespace 323 | # 324 | # This namespace is where system libs (VNDK and LLNDK libs) are loaded for 325 | # a vendor process. 326 | ############################################################################### 327 | namespace.system.isolated = false 328 | 329 | namespace.system.search.paths = /system/${LIB} 330 | namespace.system.search.paths += /system/product/${LIB} 331 | 332 | namespace.system.asan.search.paths = /data/asan/system/${LIB} 333 | namespace.system.asan.search.paths += /system/${LIB} 334 | namespace.system.asan.search.paths += /data/asan/product/${LIB} 335 | namespace.system.asan.search.paths += /product/${LIB} 336 | 337 | ############################################################################### 338 | # Namespace config for binaries under /postinstall. 339 | # Only one default namespace is defined and it has no directories other than 340 | # /system/lib in the search paths. This is because linker calls realpath on the 341 | # search paths and this causes selinux denial if the paths (/vendor, /odm) are 342 | # not allowed to the poinstall binaries. There is no reason to allow the 343 | # binaries to access the paths. 344 | ############################################################################### 345 | [postinstall] 346 | namespace.default.isolated = false 347 | namespace.default.search.paths = /system/${LIB} 348 | namespace.default.search.paths += /system/product/${LIB} 349 | -------------------------------------------------------------------------------- /system/arm/etc/mkshrc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2010, 2012, 2013, 2014 2 | # Thorsten Glaser 3 | # This file is provided under the same terms as mksh. 4 | #- 5 | # Minimal /system/etc/mkshrc for Android 6 | # 7 | # Support: https://launchpad.net/mksh 8 | 9 | : ${HOSTNAME:=$(getprop ro.product.device)} 10 | : ${HOSTNAME:=android} 11 | : ${TMPDIR:=/data/local/tmp} 12 | export HOSTNAME TMPDIR 13 | 14 | if (( USER_ID )); then PS1='$'; else PS1='#'; fi 15 | PS4='[$EPOCHREALTIME] '; PS1='${| 16 | local e=$? 17 | 18 | (( e )) && REPLY+="$e|" 19 | 20 | return $e 21 | }$HOSTNAME:${PWD:-?} '"$PS1 " 22 | -------------------------------------------------------------------------------- /system/arm/etc/passwd: -------------------------------------------------------------------------------- 1 | root:x:0:0:root:/:/system/bin/sh 2 | system:x:1000:1000:system:/data/data/com.termux/files/home:/data/data/com.termux/files/usr/bin/login 3 | -------------------------------------------------------------------------------- /system/arm/lib/ld-android.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/ld-android.so -------------------------------------------------------------------------------- /system/arm/lib/libc++.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libc++.so -------------------------------------------------------------------------------- /system/arm/lib/libc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libc.so -------------------------------------------------------------------------------- /system/arm/lib/libc_malloc_debug.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libc_malloc_debug.so -------------------------------------------------------------------------------- /system/arm/lib/libc_malloc_hooks.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libc_malloc_hooks.so -------------------------------------------------------------------------------- /system/arm/lib/libcutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libcutils.so -------------------------------------------------------------------------------- /system/arm/lib/libdl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libdl.so -------------------------------------------------------------------------------- /system/arm/lib/libicuuc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libicuuc.so -------------------------------------------------------------------------------- /system/arm/lib/liblog.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/liblog.so -------------------------------------------------------------------------------- /system/arm/lib/libm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libm.so -------------------------------------------------------------------------------- /system/arm/lib/libnetd_client.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib/libnetd_client.so -------------------------------------------------------------------------------- /system/arm/lib64/ld-android.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/ld-android.so -------------------------------------------------------------------------------- /system/arm/lib64/libc++.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libc++.so -------------------------------------------------------------------------------- /system/arm/lib64/libc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libc.so -------------------------------------------------------------------------------- /system/arm/lib64/libc_malloc_debug.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libc_malloc_debug.so -------------------------------------------------------------------------------- /system/arm/lib64/libc_malloc_hooks.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libc_malloc_hooks.so -------------------------------------------------------------------------------- /system/arm/lib64/libdl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libdl.so -------------------------------------------------------------------------------- /system/arm/lib64/libicuuc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libicuuc.so -------------------------------------------------------------------------------- /system/arm/lib64/liblog.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/liblog.so -------------------------------------------------------------------------------- /system/arm/lib64/libm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libm.so -------------------------------------------------------------------------------- /system/arm/lib64/libnetd_client.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/lib64/libnetd_client.so -------------------------------------------------------------------------------- /system/arm/usr/icu/icudt60l.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/usr/icu/icudt60l.dat -------------------------------------------------------------------------------- /system/arm/usr/share/zoneinfo/tzdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/arm/usr/share/zoneinfo/tzdata -------------------------------------------------------------------------------- /system/arm/usr/share/zoneinfo/tzlookup.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | Europe/Andorra 9 | 10 | 11 | Asia/Dubai 12 | 13 | 14 | Asia/Kabul 15 | 16 | 17 | America/Antigua 18 | 19 | 20 | America/Anguilla 21 | 22 | 23 | Europe/Tirane 24 | 25 | 26 | Asia/Yerevan 27 | 28 | 29 | Africa/Luanda 30 | 31 | 32 | Antarctica/McMurdo 33 | Antarctica/DumontDUrville 34 | Antarctica/Casey 35 | Antarctica/Davis 36 | Antarctica/Mawson 37 | Antarctica/Vostok 38 | Antarctica/Syowa 39 | Antarctica/Troll 40 | Antarctica/Rothera 41 | Antarctica/Palmer 42 | 43 | 44 | America/Argentina/Buenos_Aires 45 | America/Argentina/Cordoba 46 | America/Argentina/Salta 47 | America/Argentina/Jujuy 48 | America/Argentina/Tucuman 49 | America/Argentina/Catamarca 50 | America/Argentina/La_Rioja 51 | America/Argentina/San_Juan 52 | America/Argentina/Mendoza 53 | America/Argentina/San_Luis 54 | America/Argentina/Rio_Gallegos 55 | America/Argentina/Ushuaia 56 | 57 | 58 | Pacific/Pago_Pago 59 | 60 | 61 | Europe/Vienna 62 | 63 | 64 | Australia/Sydney 65 | Australia/Melbourne 66 | Australia/Brisbane 67 | Australia/Hobart 68 | Australia/Currie 69 | Australia/Lindeman 70 | Antarctica/Macquarie 71 | Australia/Lord_Howe 72 | Australia/Adelaide 73 | Australia/Broken_Hill 74 | Australia/Darwin 75 | Australia/Perth 76 | Australia/Eucla 77 | 78 | 79 | America/Aruba 80 | 81 | 82 | Europe/Mariehamn 83 | 84 | 85 | Asia/Baku 86 | 87 | 88 | Europe/Sarajevo 89 | 90 | 91 | America/Barbados 92 | 93 | 94 | Asia/Dhaka 95 | 96 | 97 | Europe/Brussels 98 | 99 | 100 | Africa/Ouagadougou 101 | 102 | 103 | Europe/Sofia 104 | 105 | 106 | Asia/Bahrain 107 | 108 | 109 | Africa/Bujumbura 110 | 111 | 112 | Africa/Porto-Novo 113 | 114 | 115 | America/St_Barthelemy 116 | 117 | 118 | Atlantic/Bermuda 119 | 120 | 121 | Asia/Brunei 122 | 123 | 124 | America/La_Paz 125 | 126 | 127 | America/Kralendijk 128 | 129 | 130 | America/Noronha 131 | America/Sao_Paulo 132 | America/Belem 133 | America/Fortaleza 134 | America/Recife 135 | America/Araguaina 136 | America/Maceio 137 | America/Bahia 138 | America/Santarem 139 | America/Manaus 140 | America/Campo_Grande 141 | America/Cuiaba 142 | America/Porto_Velho 143 | America/Boa_Vista 144 | America/Eirunepe 145 | America/Rio_Branco 146 | 147 | 148 | America/Nassau 149 | 150 | 151 | Asia/Thimphu 152 | 153 | 154 | Africa/Gaborone 155 | 156 | 157 | Europe/Minsk 158 | 159 | 160 | America/Belize 161 | 162 | 163 | America/St_Johns 164 | America/Halifax 165 | America/Glace_Bay 166 | America/Moncton 167 | America/Goose_Bay 168 | America/Blanc-Sablon 169 | America/Toronto 170 | America/Nipigon 171 | America/Thunder_Bay 172 | America/Iqaluit 173 | America/Pangnirtung 174 | America/Atikokan 175 | America/Winnipeg 176 | America/Regina 177 | America/Rankin_Inlet 178 | America/Rainy_River 179 | America/Swift_Current 180 | America/Resolute 181 | America/Edmonton 182 | America/Cambridge_Bay 183 | America/Yellowknife 184 | America/Inuvik 185 | America/Dawson_Creek 186 | America/Creston 187 | America/Fort_Nelson 188 | America/Vancouver 189 | America/Whitehorse 190 | America/Dawson 191 | 192 | 193 | Indian/Cocos 194 | 195 | 196 | Africa/Lubumbashi 197 | Africa/Kinshasa 198 | 199 | 200 | Africa/Bangui 201 | 202 | 203 | Africa/Brazzaville 204 | 205 | 206 | Europe/Zurich 207 | 208 | 209 | Africa/Abidjan 210 | 211 | 212 | Pacific/Rarotonga 213 | 214 | 215 | America/Punta_Arenas 216 | America/Santiago 217 | Pacific/Easter 218 | 219 | 220 | Africa/Douala 221 | 222 | 223 | Asia/Shanghai 224 | Asia/Urumqi 225 | 226 | 227 | America/Bogota 228 | 229 | 230 | America/Costa_Rica 231 | 232 | 233 | America/Havana 234 | 235 | 236 | Atlantic/Cape_Verde 237 | 238 | 239 | America/Curacao 240 | 241 | 242 | Indian/Christmas 243 | 244 | 245 | Asia/Nicosia 246 | Asia/Famagusta 247 | 248 | 249 | Europe/Prague 250 | 251 | 252 | Europe/Berlin 253 | Europe/Busingen 254 | 255 | 256 | Africa/Djibouti 257 | 258 | 259 | Europe/Copenhagen 260 | 261 | 262 | America/Dominica 263 | 264 | 265 | America/Santo_Domingo 266 | 267 | 268 | Africa/Algiers 269 | 270 | 271 | America/Guayaquil 272 | Pacific/Galapagos 273 | 274 | 275 | Europe/Tallinn 276 | 277 | 278 | Africa/Cairo 279 | 280 | 281 | Africa/El_Aaiun 282 | 283 | 284 | Africa/Asmara 285 | 286 | 287 | Europe/Madrid 288 | Africa/Ceuta 289 | Atlantic/Canary 290 | 291 | 292 | Africa/Addis_Ababa 293 | 294 | 295 | Europe/Helsinki 296 | 297 | 298 | Pacific/Fiji 299 | 300 | 301 | Atlantic/Stanley 302 | 303 | 304 | Pacific/Pohnpei 305 | Pacific/Kosrae 306 | Pacific/Chuuk 307 | 308 | 309 | Atlantic/Faroe 310 | 311 | 312 | Europe/Paris 313 | 314 | 315 | Africa/Libreville 316 | 317 | 318 | Europe/London 319 | 320 | 321 | America/Grenada 322 | 323 | 324 | Asia/Tbilisi 325 | 326 | 327 | America/Cayenne 328 | 329 | 330 | Europe/Guernsey 331 | 332 | 333 | Africa/Accra 334 | 335 | 336 | Europe/Gibraltar 337 | 338 | 339 | America/Danmarkshavn 340 | America/Scoresbysund 341 | America/Godthab 342 | America/Thule 343 | 344 | 345 | Africa/Banjul 346 | 347 | 348 | Africa/Conakry 349 | 350 | 351 | America/Guadeloupe 352 | 353 | 354 | Africa/Malabo 355 | 356 | 357 | Europe/Athens 358 | 359 | 360 | Atlantic/South_Georgia 361 | 362 | 363 | America/Guatemala 364 | 365 | 366 | Pacific/Guam 367 | 368 | 369 | Africa/Bissau 370 | 371 | 372 | America/Guyana 373 | 374 | 375 | Asia/Hong_Kong 376 | 377 | 378 | America/Tegucigalpa 379 | 380 | 381 | Europe/Zagreb 382 | 383 | 384 | America/Port-au-Prince 385 | 386 | 387 | Europe/Budapest 388 | 389 | 390 | Asia/Jayapura 391 | Asia/Makassar 392 | Asia/Jakarta 393 | Asia/Pontianak 394 | 395 | 396 | Europe/Dublin 397 | 398 | 399 | Asia/Jerusalem 400 | 401 | 402 | Europe/Isle_of_Man 403 | 404 | 405 | Asia/Kolkata 406 | 407 | 408 | Indian/Chagos 409 | 410 | 411 | Asia/Baghdad 412 | 413 | 414 | Asia/Tehran 415 | 416 | 417 | Atlantic/Reykjavik 418 | 419 | 420 | Europe/Rome 421 | 422 | 423 | Europe/Jersey 424 | 425 | 426 | America/Jamaica 427 | 428 | 429 | Asia/Amman 430 | 431 | 432 | Asia/Tokyo 433 | 434 | 435 | Africa/Nairobi 436 | 437 | 438 | Asia/Bishkek 439 | 440 | 441 | Asia/Phnom_Penh 442 | 443 | 444 | Pacific/Kiritimati 445 | Pacific/Enderbury 446 | Pacific/Tarawa 447 | 448 | 449 | Indian/Comoro 450 | 451 | 452 | America/St_Kitts 453 | 454 | 455 | Asia/Pyongyang 456 | 457 | 458 | Asia/Seoul 459 | 460 | 461 | Asia/Kuwait 462 | 463 | 464 | America/Cayman 465 | 466 | 467 | Asia/Almaty 468 | Asia/Qyzylorda 469 | Asia/Aqtau 470 | Asia/Oral 471 | Asia/Aqtobe 472 | Asia/Atyrau 473 | 474 | 475 | Asia/Vientiane 476 | 477 | 478 | Asia/Beirut 479 | 480 | 481 | America/St_Lucia 482 | 483 | 484 | Europe/Vaduz 485 | 486 | 487 | Asia/Colombo 488 | 489 | 490 | Africa/Monrovia 491 | 492 | 493 | Africa/Maseru 494 | 495 | 496 | Europe/Vilnius 497 | 498 | 499 | Europe/Luxembourg 500 | 501 | 502 | Europe/Riga 503 | 504 | 505 | Africa/Tripoli 506 | 507 | 508 | Africa/Casablanca 509 | 510 | 511 | Europe/Monaco 512 | 513 | 514 | Europe/Chisinau 515 | 516 | 517 | Europe/Podgorica 518 | 519 | 520 | America/Marigot 521 | 522 | 523 | Indian/Antananarivo 524 | 525 | 526 | Pacific/Majuro 527 | Pacific/Kwajalein 528 | 529 | 530 | Europe/Skopje 531 | 532 | 533 | Africa/Bamako 534 | 535 | 536 | Asia/Yangon 537 | 538 | 539 | Asia/Choibalsan 540 | Asia/Ulaanbaatar 541 | Asia/Hovd 542 | 543 | 544 | Asia/Macau 545 | 546 | 547 | Pacific/Saipan 548 | 549 | 550 | America/Martinique 551 | 552 | 553 | Africa/Nouakchott 554 | 555 | 556 | America/Montserrat 557 | 558 | 559 | Europe/Malta 560 | 561 | 562 | Indian/Mauritius 563 | 564 | 565 | Indian/Maldives 566 | 567 | 568 | Africa/Blantyre 569 | 570 | 571 | America/Mexico_City 572 | America/Merida 573 | America/Monterrey 574 | America/Matamoros 575 | America/Bahia_Banderas 576 | America/Cancun 577 | America/Chihuahua 578 | America/Hermosillo 579 | America/Mazatlan 580 | America/Ojinaga 581 | America/Tijuana 582 | 583 | 584 | Asia/Kuala_Lumpur 585 | Asia/Kuching 586 | 587 | 588 | Africa/Maputo 589 | 590 | 591 | Africa/Windhoek 592 | 593 | 594 | Pacific/Noumea 595 | 596 | 597 | Africa/Niamey 598 | 599 | 600 | Pacific/Norfolk 601 | 602 | 603 | Africa/Lagos 604 | 605 | 606 | America/Managua 607 | 608 | 609 | Europe/Amsterdam 610 | 611 | 612 | Europe/Oslo 613 | 614 | 615 | Asia/Kathmandu 616 | 617 | 618 | Pacific/Nauru 619 | 620 | 621 | Pacific/Niue 622 | 623 | 624 | Pacific/Auckland 625 | Pacific/Chatham 626 | 627 | 628 | Asia/Muscat 629 | 630 | 631 | America/Panama 632 | 633 | 634 | America/Lima 635 | 636 | 637 | Pacific/Gambier 638 | Pacific/Marquesas 639 | Pacific/Tahiti 640 | 641 | 642 | Pacific/Port_Moresby 643 | Pacific/Bougainville 644 | 645 | 646 | Asia/Manila 647 | 648 | 649 | Asia/Karachi 650 | 651 | 652 | Europe/Warsaw 653 | 654 | 655 | America/Miquelon 656 | 657 | 658 | Pacific/Pitcairn 659 | 660 | 661 | America/Puerto_Rico 662 | 663 | 664 | Asia/Gaza 665 | Asia/Hebron 666 | 667 | 668 | Europe/Lisbon 669 | Atlantic/Madeira 670 | Atlantic/Azores 671 | 672 | 673 | Pacific/Palau 674 | 675 | 676 | America/Asuncion 677 | 678 | 679 | Asia/Qatar 680 | 681 | 682 | Indian/Reunion 683 | 684 | 685 | Europe/Bucharest 686 | 687 | 688 | Europe/Belgrade 689 | 690 | 691 | Asia/Kamchatka 692 | Asia/Anadyr 693 | Asia/Magadan 694 | Asia/Sakhalin 695 | Asia/Srednekolymsk 696 | Asia/Vladivostok 697 | Asia/Ust-Nera 698 | Asia/Yakutsk 699 | Asia/Chita 700 | Asia/Khandyga 701 | Asia/Irkutsk 702 | Asia/Krasnoyarsk 703 | Asia/Novosibirsk 704 | Asia/Barnaul 705 | Asia/Novokuznetsk 706 | Asia/Tomsk 707 | Asia/Omsk 708 | Asia/Yekaterinburg 709 | Europe/Samara 710 | Europe/Astrakhan 711 | Europe/Ulyanovsk 712 | Europe/Saratov 713 | Europe/Moscow 714 | Europe/Volgograd 715 | Europe/Kirov 716 | Europe/Simferopol 717 | Europe/Kaliningrad 718 | 719 | 720 | Africa/Kigali 721 | 722 | 723 | Asia/Riyadh 724 | 725 | 726 | Pacific/Guadalcanal 727 | 728 | 729 | Indian/Mahe 730 | 731 | 732 | Africa/Khartoum 733 | 734 | 735 | Europe/Stockholm 736 | 737 | 738 | Asia/Singapore 739 | 740 | 741 | Atlantic/St_Helena 742 | 743 | 744 | Europe/Ljubljana 745 | 746 | 747 | Arctic/Longyearbyen 748 | 749 | 750 | Europe/Bratislava 751 | 752 | 753 | Africa/Freetown 754 | 755 | 756 | Europe/San_Marino 757 | 758 | 759 | Africa/Dakar 760 | 761 | 762 | Africa/Mogadishu 763 | 764 | 765 | America/Paramaribo 766 | 767 | 768 | Africa/Juba 769 | 770 | 771 | Africa/Sao_Tome 772 | 773 | 774 | America/El_Salvador 775 | 776 | 777 | America/Lower_Princes 778 | 779 | 780 | Asia/Damascus 781 | 782 | 783 | Africa/Mbabane 784 | 785 | 786 | America/Grand_Turk 787 | 788 | 789 | Africa/Ndjamena 790 | 791 | 792 | Indian/Kerguelen 793 | 794 | 795 | Africa/Lome 796 | 797 | 798 | Asia/Bangkok 799 | 800 | 801 | Asia/Dushanbe 802 | 803 | 804 | Pacific/Fakaofo 805 | 806 | 807 | Asia/Dili 808 | 809 | 810 | Asia/Ashgabat 811 | 812 | 813 | Africa/Tunis 814 | 815 | 816 | Pacific/Tongatapu 817 | 818 | 819 | Europe/Istanbul 820 | 821 | 822 | America/Port_of_Spain 823 | 824 | 825 | Pacific/Funafuti 826 | 827 | 828 | Asia/Taipei 829 | 830 | 831 | Africa/Dar_es_Salaam 832 | 833 | 834 | Europe/Kiev 835 | Europe/Uzhgorod 836 | Europe/Zaporozhye 837 | 838 | 839 | Africa/Kampala 840 | 841 | 842 | Pacific/Wake 843 | Pacific/Midway 844 | 845 | 846 | America/New_York 847 | America/Detroit 848 | America/Kentucky/Louisville 849 | America/Kentucky/Monticello 850 | America/Indiana/Indianapolis 851 | America/Indiana/Vincennes 852 | America/Indiana/Winamac 853 | America/Indiana/Marengo 854 | America/Indiana/Petersburg 855 | America/Indiana/Vevay 856 | America/Chicago 857 | America/Indiana/Knox 858 | America/Menominee 859 | America/North_Dakota/Center 860 | America/North_Dakota/New_Salem 861 | America/Indiana/Tell_City 862 | America/North_Dakota/Beulah 863 | America/Denver 864 | America/Boise 865 | America/Phoenix 866 | America/Los_Angeles 867 | America/Anchorage 868 | America/Juneau 869 | America/Yakutat 870 | America/Nome 871 | America/Metlakatla 872 | America/Sitka 873 | Pacific/Honolulu 874 | America/Adak 875 | 876 | 877 | America/Montevideo 878 | 879 | 880 | Asia/Tashkent 881 | Asia/Samarkand 882 | 883 | 884 | Europe/Vatican 885 | 886 | 887 | America/St_Vincent 888 | 889 | 890 | America/Caracas 891 | 892 | 893 | America/Tortola 894 | 895 | 896 | America/St_Thomas 897 | 898 | 899 | Asia/Ho_Chi_Minh 900 | 901 | 902 | Pacific/Efate 903 | 904 | 905 | Pacific/Wallis 906 | 907 | 908 | Pacific/Apia 909 | 910 | 911 | Asia/Aden 912 | 913 | 914 | Indian/Mayotte 915 | 916 | 917 | Africa/Johannesburg 918 | 919 | 920 | Africa/Lusaka 921 | 922 | 923 | Africa/Harare 924 | 925 | 926 | 927 | -------------------------------------------------------------------------------- /system/x86/bin/busybox: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/bin/busybox -------------------------------------------------------------------------------- /system/x86/bin/dnsmasq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/bin/dnsmasq -------------------------------------------------------------------------------- /system/x86/bin/linker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/bin/linker -------------------------------------------------------------------------------- /system/x86/bin/linker64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/bin/linker64 -------------------------------------------------------------------------------- /system/x86/bin/mksh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/bin/mksh -------------------------------------------------------------------------------- /system/x86/bin/sh: -------------------------------------------------------------------------------- 1 | busybox -------------------------------------------------------------------------------- /system/x86/etc/group: -------------------------------------------------------------------------------- 1 | root:x:0: 2 | system:!:1000:system 3 | -------------------------------------------------------------------------------- /system/x86/etc/hosts: -------------------------------------------------------------------------------- 1 | 127.0.0.1 localhost 2 | ::1 ip6-localhost 3 | -------------------------------------------------------------------------------- /system/x86/etc/ld.config.28.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Bionic loader config file. 3 | # 4 | 5 | dir.system = /system/bin/ 6 | dir.system = /system/xbin/ 7 | 8 | [system] 9 | namespace.default.isolated = false 10 | namespace.default.search.paths = /system/${LIB} 11 | namespace.default.permitted.paths = /system/${LIB} 12 | namespace.default.permitted.paths += /data 13 | namespace.default.asan.search.paths = /system/${LIB} 14 | namespace.default.asan.permitted.paths = /system 15 | namespace.default.asan.permitted.paths += /data 16 | -------------------------------------------------------------------------------- /system/x86/etc/mkshrc: -------------------------------------------------------------------------------- 1 | # Copyright (c) 2010, 2012, 2013, 2014 2 | # Thorsten Glaser 3 | # This file is provided under the same terms as mksh. 4 | #- 5 | # Minimal /system/etc/mkshrc for Android 6 | # 7 | # Support: https://launchpad.net/mksh 8 | 9 | if (( USER_ID )); then PS1='$'; else PS1='#'; fi 10 | PS4='[$EPOCHREALTIME] '; PS1='${| 11 | local e=$? 12 | 13 | (( e )) && REPLY+="$e|" 14 | 15 | return $e 16 | }$HOSTNAME:${PWD:-?} '"$PS1 " 17 | -------------------------------------------------------------------------------- /system/x86/etc/passwd: -------------------------------------------------------------------------------- 1 | root:x:0:0:root:/:/system/bin/sh 2 | system:x:1000:1000:system:/data/data/com.termux/files/home:/data/data/com.termux/files/usr/bin/login 3 | -------------------------------------------------------------------------------- /system/x86/lib/ld-android.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/ld-android.so -------------------------------------------------------------------------------- /system/x86/lib/libc++.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libc++.so -------------------------------------------------------------------------------- /system/x86/lib/libc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libc.so -------------------------------------------------------------------------------- /system/x86/lib/libc_malloc_debug.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libc_malloc_debug.so -------------------------------------------------------------------------------- /system/x86/lib/libc_malloc_hooks.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libc_malloc_hooks.so -------------------------------------------------------------------------------- /system/x86/lib/libcutils.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libcutils.so -------------------------------------------------------------------------------- /system/x86/lib/libdl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libdl.so -------------------------------------------------------------------------------- /system/x86/lib/libicuuc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libicuuc.so -------------------------------------------------------------------------------- /system/x86/lib/liblog.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/liblog.so -------------------------------------------------------------------------------- /system/x86/lib/libm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libm.so -------------------------------------------------------------------------------- /system/x86/lib/libnetd_client.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib/libnetd_client.so -------------------------------------------------------------------------------- /system/x86/lib64/ld-android.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/ld-android.so -------------------------------------------------------------------------------- /system/x86/lib64/libc++.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libc++.so -------------------------------------------------------------------------------- /system/x86/lib64/libc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libc.so -------------------------------------------------------------------------------- /system/x86/lib64/libc_malloc_debug.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libc_malloc_debug.so -------------------------------------------------------------------------------- /system/x86/lib64/libc_malloc_hooks.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libc_malloc_hooks.so -------------------------------------------------------------------------------- /system/x86/lib64/libdl.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libdl.so -------------------------------------------------------------------------------- /system/x86/lib64/libicuuc.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libicuuc.so -------------------------------------------------------------------------------- /system/x86/lib64/liblog.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/liblog.so -------------------------------------------------------------------------------- /system/x86/lib64/libm.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libm.so -------------------------------------------------------------------------------- /system/x86/lib64/libnetd_client.so: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/lib64/libnetd_client.so -------------------------------------------------------------------------------- /system/x86/usr/icu/icudt60l.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/usr/icu/icudt60l.dat -------------------------------------------------------------------------------- /system/x86/usr/share/zoneinfo/tzdata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/termux/termux-docker/e3c861f5b6cb762d3d99f6d6e6dd78cdffe109b6/system/x86/usr/share/zoneinfo/tzdata -------------------------------------------------------------------------------- /system/x86/usr/share/zoneinfo/tzlookup.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | Europe/Andorra 9 | 10 | 11 | Asia/Dubai 12 | 13 | 14 | Asia/Kabul 15 | 16 | 17 | America/Antigua 18 | 19 | 20 | America/Anguilla 21 | 22 | 23 | Europe/Tirane 24 | 25 | 26 | Asia/Yerevan 27 | 28 | 29 | Africa/Luanda 30 | 31 | 32 | Antarctica/McMurdo 33 | Antarctica/DumontDUrville 34 | Antarctica/Casey 35 | Antarctica/Davis 36 | Antarctica/Mawson 37 | Antarctica/Vostok 38 | Antarctica/Syowa 39 | Antarctica/Troll 40 | Antarctica/Rothera 41 | Antarctica/Palmer 42 | 43 | 44 | America/Argentina/Buenos_Aires 45 | America/Argentina/Cordoba 46 | America/Argentina/Salta 47 | America/Argentina/Jujuy 48 | America/Argentina/Tucuman 49 | America/Argentina/Catamarca 50 | America/Argentina/La_Rioja 51 | America/Argentina/San_Juan 52 | America/Argentina/Mendoza 53 | America/Argentina/San_Luis 54 | America/Argentina/Rio_Gallegos 55 | America/Argentina/Ushuaia 56 | 57 | 58 | Pacific/Pago_Pago 59 | 60 | 61 | Europe/Vienna 62 | 63 | 64 | Australia/Sydney 65 | Australia/Melbourne 66 | Australia/Brisbane 67 | Australia/Hobart 68 | Australia/Currie 69 | Australia/Lindeman 70 | Antarctica/Macquarie 71 | Australia/Lord_Howe 72 | Australia/Adelaide 73 | Australia/Broken_Hill 74 | Australia/Darwin 75 | Australia/Perth 76 | Australia/Eucla 77 | 78 | 79 | America/Aruba 80 | 81 | 82 | Europe/Mariehamn 83 | 84 | 85 | Asia/Baku 86 | 87 | 88 | Europe/Sarajevo 89 | 90 | 91 | America/Barbados 92 | 93 | 94 | Asia/Dhaka 95 | 96 | 97 | Europe/Brussels 98 | 99 | 100 | Africa/Ouagadougou 101 | 102 | 103 | Europe/Sofia 104 | 105 | 106 | Asia/Bahrain 107 | 108 | 109 | Africa/Bujumbura 110 | 111 | 112 | Africa/Porto-Novo 113 | 114 | 115 | America/St_Barthelemy 116 | 117 | 118 | Atlantic/Bermuda 119 | 120 | 121 | Asia/Brunei 122 | 123 | 124 | America/La_Paz 125 | 126 | 127 | America/Kralendijk 128 | 129 | 130 | America/Noronha 131 | America/Sao_Paulo 132 | America/Belem 133 | America/Fortaleza 134 | America/Recife 135 | America/Araguaina 136 | America/Maceio 137 | America/Bahia 138 | America/Santarem 139 | America/Manaus 140 | America/Campo_Grande 141 | America/Cuiaba 142 | America/Porto_Velho 143 | America/Boa_Vista 144 | America/Eirunepe 145 | America/Rio_Branco 146 | 147 | 148 | America/Nassau 149 | 150 | 151 | Asia/Thimphu 152 | 153 | 154 | Africa/Gaborone 155 | 156 | 157 | Europe/Minsk 158 | 159 | 160 | America/Belize 161 | 162 | 163 | America/St_Johns 164 | America/Halifax 165 | America/Glace_Bay 166 | America/Moncton 167 | America/Goose_Bay 168 | America/Blanc-Sablon 169 | America/Toronto 170 | America/Nipigon 171 | America/Thunder_Bay 172 | America/Iqaluit 173 | America/Pangnirtung 174 | America/Atikokan 175 | America/Winnipeg 176 | America/Regina 177 | America/Rankin_Inlet 178 | America/Rainy_River 179 | America/Swift_Current 180 | America/Resolute 181 | America/Edmonton 182 | America/Cambridge_Bay 183 | America/Yellowknife 184 | America/Inuvik 185 | America/Dawson_Creek 186 | America/Creston 187 | America/Fort_Nelson 188 | America/Vancouver 189 | America/Whitehorse 190 | America/Dawson 191 | 192 | 193 | Indian/Cocos 194 | 195 | 196 | Africa/Lubumbashi 197 | Africa/Kinshasa 198 | 199 | 200 | Africa/Bangui 201 | 202 | 203 | Africa/Brazzaville 204 | 205 | 206 | Europe/Zurich 207 | 208 | 209 | Africa/Abidjan 210 | 211 | 212 | Pacific/Rarotonga 213 | 214 | 215 | America/Punta_Arenas 216 | America/Santiago 217 | Pacific/Easter 218 | 219 | 220 | Africa/Douala 221 | 222 | 223 | Asia/Shanghai 224 | Asia/Urumqi 225 | 226 | 227 | America/Bogota 228 | 229 | 230 | America/Costa_Rica 231 | 232 | 233 | America/Havana 234 | 235 | 236 | Atlantic/Cape_Verde 237 | 238 | 239 | America/Curacao 240 | 241 | 242 | Indian/Christmas 243 | 244 | 245 | Asia/Nicosia 246 | Asia/Famagusta 247 | 248 | 249 | Europe/Prague 250 | 251 | 252 | Europe/Berlin 253 | Europe/Busingen 254 | 255 | 256 | Africa/Djibouti 257 | 258 | 259 | Europe/Copenhagen 260 | 261 | 262 | America/Dominica 263 | 264 | 265 | America/Santo_Domingo 266 | 267 | 268 | Africa/Algiers 269 | 270 | 271 | America/Guayaquil 272 | Pacific/Galapagos 273 | 274 | 275 | Europe/Tallinn 276 | 277 | 278 | Africa/Cairo 279 | 280 | 281 | Africa/El_Aaiun 282 | 283 | 284 | Africa/Asmara 285 | 286 | 287 | Europe/Madrid 288 | Africa/Ceuta 289 | Atlantic/Canary 290 | 291 | 292 | Africa/Addis_Ababa 293 | 294 | 295 | Europe/Helsinki 296 | 297 | 298 | Pacific/Fiji 299 | 300 | 301 | Atlantic/Stanley 302 | 303 | 304 | Pacific/Pohnpei 305 | Pacific/Kosrae 306 | Pacific/Chuuk 307 | 308 | 309 | Atlantic/Faroe 310 | 311 | 312 | Europe/Paris 313 | 314 | 315 | Africa/Libreville 316 | 317 | 318 | Europe/London 319 | 320 | 321 | America/Grenada 322 | 323 | 324 | Asia/Tbilisi 325 | 326 | 327 | America/Cayenne 328 | 329 | 330 | Europe/Guernsey 331 | 332 | 333 | Africa/Accra 334 | 335 | 336 | Europe/Gibraltar 337 | 338 | 339 | America/Danmarkshavn 340 | America/Scoresbysund 341 | America/Godthab 342 | America/Thule 343 | 344 | 345 | Africa/Banjul 346 | 347 | 348 | Africa/Conakry 349 | 350 | 351 | America/Guadeloupe 352 | 353 | 354 | Africa/Malabo 355 | 356 | 357 | Europe/Athens 358 | 359 | 360 | Atlantic/South_Georgia 361 | 362 | 363 | America/Guatemala 364 | 365 | 366 | Pacific/Guam 367 | 368 | 369 | Africa/Bissau 370 | 371 | 372 | America/Guyana 373 | 374 | 375 | Asia/Hong_Kong 376 | 377 | 378 | America/Tegucigalpa 379 | 380 | 381 | Europe/Zagreb 382 | 383 | 384 | America/Port-au-Prince 385 | 386 | 387 | Europe/Budapest 388 | 389 | 390 | Asia/Jayapura 391 | Asia/Makassar 392 | Asia/Jakarta 393 | Asia/Pontianak 394 | 395 | 396 | Europe/Dublin 397 | 398 | 399 | Asia/Jerusalem 400 | 401 | 402 | Europe/Isle_of_Man 403 | 404 | 405 | Asia/Kolkata 406 | 407 | 408 | Indian/Chagos 409 | 410 | 411 | Asia/Baghdad 412 | 413 | 414 | Asia/Tehran 415 | 416 | 417 | Atlantic/Reykjavik 418 | 419 | 420 | Europe/Rome 421 | 422 | 423 | Europe/Jersey 424 | 425 | 426 | America/Jamaica 427 | 428 | 429 | Asia/Amman 430 | 431 | 432 | Asia/Tokyo 433 | 434 | 435 | Africa/Nairobi 436 | 437 | 438 | Asia/Bishkek 439 | 440 | 441 | Asia/Phnom_Penh 442 | 443 | 444 | Pacific/Kiritimati 445 | Pacific/Enderbury 446 | Pacific/Tarawa 447 | 448 | 449 | Indian/Comoro 450 | 451 | 452 | America/St_Kitts 453 | 454 | 455 | Asia/Pyongyang 456 | 457 | 458 | Asia/Seoul 459 | 460 | 461 | Asia/Kuwait 462 | 463 | 464 | America/Cayman 465 | 466 | 467 | Asia/Almaty 468 | Asia/Qyzylorda 469 | Asia/Aqtau 470 | Asia/Oral 471 | Asia/Aqtobe 472 | Asia/Atyrau 473 | 474 | 475 | Asia/Vientiane 476 | 477 | 478 | Asia/Beirut 479 | 480 | 481 | America/St_Lucia 482 | 483 | 484 | Europe/Vaduz 485 | 486 | 487 | Asia/Colombo 488 | 489 | 490 | Africa/Monrovia 491 | 492 | 493 | Africa/Maseru 494 | 495 | 496 | Europe/Vilnius 497 | 498 | 499 | Europe/Luxembourg 500 | 501 | 502 | Europe/Riga 503 | 504 | 505 | Africa/Tripoli 506 | 507 | 508 | Africa/Casablanca 509 | 510 | 511 | Europe/Monaco 512 | 513 | 514 | Europe/Chisinau 515 | 516 | 517 | Europe/Podgorica 518 | 519 | 520 | America/Marigot 521 | 522 | 523 | Indian/Antananarivo 524 | 525 | 526 | Pacific/Majuro 527 | Pacific/Kwajalein 528 | 529 | 530 | Europe/Skopje 531 | 532 | 533 | Africa/Bamako 534 | 535 | 536 | Asia/Yangon 537 | 538 | 539 | Asia/Choibalsan 540 | Asia/Ulaanbaatar 541 | Asia/Hovd 542 | 543 | 544 | Asia/Macau 545 | 546 | 547 | Pacific/Saipan 548 | 549 | 550 | America/Martinique 551 | 552 | 553 | Africa/Nouakchott 554 | 555 | 556 | America/Montserrat 557 | 558 | 559 | Europe/Malta 560 | 561 | 562 | Indian/Mauritius 563 | 564 | 565 | Indian/Maldives 566 | 567 | 568 | Africa/Blantyre 569 | 570 | 571 | America/Mexico_City 572 | America/Merida 573 | America/Monterrey 574 | America/Matamoros 575 | America/Bahia_Banderas 576 | America/Cancun 577 | America/Chihuahua 578 | America/Hermosillo 579 | America/Mazatlan 580 | America/Ojinaga 581 | America/Tijuana 582 | 583 | 584 | Asia/Kuala_Lumpur 585 | Asia/Kuching 586 | 587 | 588 | Africa/Maputo 589 | 590 | 591 | Africa/Windhoek 592 | 593 | 594 | Pacific/Noumea 595 | 596 | 597 | Africa/Niamey 598 | 599 | 600 | Pacific/Norfolk 601 | 602 | 603 | Africa/Lagos 604 | 605 | 606 | America/Managua 607 | 608 | 609 | Europe/Amsterdam 610 | 611 | 612 | Europe/Oslo 613 | 614 | 615 | Asia/Kathmandu 616 | 617 | 618 | Pacific/Nauru 619 | 620 | 621 | Pacific/Niue 622 | 623 | 624 | Pacific/Auckland 625 | Pacific/Chatham 626 | 627 | 628 | Asia/Muscat 629 | 630 | 631 | America/Panama 632 | 633 | 634 | America/Lima 635 | 636 | 637 | Pacific/Gambier 638 | Pacific/Marquesas 639 | Pacific/Tahiti 640 | 641 | 642 | Pacific/Port_Moresby 643 | Pacific/Bougainville 644 | 645 | 646 | Asia/Manila 647 | 648 | 649 | Asia/Karachi 650 | 651 | 652 | Europe/Warsaw 653 | 654 | 655 | America/Miquelon 656 | 657 | 658 | Pacific/Pitcairn 659 | 660 | 661 | America/Puerto_Rico 662 | 663 | 664 | Asia/Gaza 665 | Asia/Hebron 666 | 667 | 668 | Europe/Lisbon 669 | Atlantic/Madeira 670 | Atlantic/Azores 671 | 672 | 673 | Pacific/Palau 674 | 675 | 676 | America/Asuncion 677 | 678 | 679 | Asia/Qatar 680 | 681 | 682 | Indian/Reunion 683 | 684 | 685 | Europe/Bucharest 686 | 687 | 688 | Europe/Belgrade 689 | 690 | 691 | Asia/Kamchatka 692 | Asia/Anadyr 693 | Asia/Magadan 694 | Asia/Sakhalin 695 | Asia/Srednekolymsk 696 | Asia/Vladivostok 697 | Asia/Ust-Nera 698 | Asia/Yakutsk 699 | Asia/Chita 700 | Asia/Khandyga 701 | Asia/Irkutsk 702 | Asia/Krasnoyarsk 703 | Asia/Novosibirsk 704 | Asia/Barnaul 705 | Asia/Novokuznetsk 706 | Asia/Tomsk 707 | Asia/Omsk 708 | Asia/Yekaterinburg 709 | Europe/Samara 710 | Europe/Astrakhan 711 | Europe/Ulyanovsk 712 | Europe/Saratov 713 | Europe/Moscow 714 | Europe/Volgograd 715 | Europe/Kirov 716 | Europe/Simferopol 717 | Europe/Kaliningrad 718 | 719 | 720 | Africa/Kigali 721 | 722 | 723 | Asia/Riyadh 724 | 725 | 726 | Pacific/Guadalcanal 727 | 728 | 729 | Indian/Mahe 730 | 731 | 732 | Africa/Khartoum 733 | 734 | 735 | Europe/Stockholm 736 | 737 | 738 | Asia/Singapore 739 | 740 | 741 | Atlantic/St_Helena 742 | 743 | 744 | Europe/Ljubljana 745 | 746 | 747 | Arctic/Longyearbyen 748 | 749 | 750 | Europe/Bratislava 751 | 752 | 753 | Africa/Freetown 754 | 755 | 756 | Europe/San_Marino 757 | 758 | 759 | Africa/Dakar 760 | 761 | 762 | Africa/Mogadishu 763 | 764 | 765 | America/Paramaribo 766 | 767 | 768 | Africa/Juba 769 | 770 | 771 | Africa/Sao_Tome 772 | 773 | 774 | America/El_Salvador 775 | 776 | 777 | America/Lower_Princes 778 | 779 | 780 | Asia/Damascus 781 | 782 | 783 | Africa/Mbabane 784 | 785 | 786 | America/Grand_Turk 787 | 788 | 789 | Africa/Ndjamena 790 | 791 | 792 | Indian/Kerguelen 793 | 794 | 795 | Africa/Lome 796 | 797 | 798 | Asia/Bangkok 799 | 800 | 801 | Asia/Dushanbe 802 | 803 | 804 | Pacific/Fakaofo 805 | 806 | 807 | Asia/Dili 808 | 809 | 810 | Asia/Ashgabat 811 | 812 | 813 | Africa/Tunis 814 | 815 | 816 | Pacific/Tongatapu 817 | 818 | 819 | Europe/Istanbul 820 | 821 | 822 | America/Port_of_Spain 823 | 824 | 825 | Pacific/Funafuti 826 | 827 | 828 | Asia/Taipei 829 | 830 | 831 | Africa/Dar_es_Salaam 832 | 833 | 834 | Europe/Kiev 835 | Europe/Uzhgorod 836 | Europe/Zaporozhye 837 | 838 | 839 | Africa/Kampala 840 | 841 | 842 | Pacific/Wake 843 | Pacific/Midway 844 | 845 | 846 | America/New_York 847 | America/Detroit 848 | America/Kentucky/Louisville 849 | America/Kentucky/Monticello 850 | America/Indiana/Indianapolis 851 | America/Indiana/Vincennes 852 | America/Indiana/Winamac 853 | America/Indiana/Marengo 854 | America/Indiana/Petersburg 855 | America/Indiana/Vevay 856 | America/Chicago 857 | America/Indiana/Knox 858 | America/Menominee 859 | America/North_Dakota/Center 860 | America/North_Dakota/New_Salem 861 | America/Indiana/Tell_City 862 | America/North_Dakota/Beulah 863 | America/Denver 864 | America/Boise 865 | America/Phoenix 866 | America/Los_Angeles 867 | America/Anchorage 868 | America/Juneau 869 | America/Yakutat 870 | America/Nome 871 | America/Metlakatla 872 | America/Sitka 873 | Pacific/Honolulu 874 | America/Adak 875 | 876 | 877 | America/Montevideo 878 | 879 | 880 | Asia/Tashkent 881 | Asia/Samarkand 882 | 883 | 884 | Europe/Vatican 885 | 886 | 887 | America/St_Vincent 888 | 889 | 890 | America/Caracas 891 | 892 | 893 | America/Tortola 894 | 895 | 896 | America/St_Thomas 897 | 898 | 899 | Asia/Ho_Chi_Minh 900 | 901 | 902 | Pacific/Efate 903 | 904 | 905 | Pacific/Wallis 906 | 907 | 908 | Pacific/Apia 909 | 910 | 911 | Asia/Aden 912 | 913 | 914 | Indian/Mayotte 915 | 916 | 917 | Africa/Johannesburg 918 | 919 | 920 | Africa/Lusaka 921 | 922 | 923 | Africa/Harare 924 | 925 | 926 | 927 | --------------------------------------------------------------------------------