initial commit

This commit is contained in:
Leonid Plyushch
2020-02-08 18:13:00 +02:00
commit 0cb4831bd4
67 changed files with 2315 additions and 0 deletions

29
README.md Normal file
View File

@@ -0,0 +1,29 @@
# Termux environment for Docker.
A [Termux](https://termux.com) i686 (x86_64) environment packaged into Docker image.
Environment doesn't have Android runtime components, so certain things will
not be available (DalvikVM, OpenSLES, etc...).
## How to use
1. Make sure that Docker is installed and running.
2. `git clone https://github.com/xeffyr/termux-docker && cd ./termux-docker`
3. `./run.sh` or `./run-x86_64.sh` - if need x86_64 arch.
You can use the image directly without startup script. For example:
```
docker run -it xeffyr/termux:latest
```
You can build Docker image yourself by running this script:
```
./build-all.sh
```
## Known issues
There a number of known issues which may not be resolved:
* DNS: Docker image has to use a static DNS resolver through `/system/etc/hosts`.
You can regenerate this file by editing `/system/etc/static-dns-hosts.txt` and
executing script `/system/bin/update-static-dns`.

9
build-all.sh Executable file
View File

@@ -0,0 +1,9 @@
#!/usr/bin/env bash
docker build -t 'xeffyr/termux:latest' -f i686/Dockerfile .
docker build -t 'xeffyr/termux:x86_64' -f x86_64/Dockerfile .
if [ "$(whoami)" = "xeffyr" ]; then
docker push 'xeffyr/termux:latest'
docker push 'xeffyr/termux:x86_64'
fi

185
common/static-dns-hosts.txt Normal file
View File

@@ -0,0 +1,185 @@
##
## Termux Docker environment doesn't have working DNS resolver.
## This list contains domains that will be manually resolved. Result
## will be used to fill /system/etc/hosts.
##
# Termux repositories:
dl.bintray.com
termux.net
termux.org
# From termux-packages build.sh files.
0xcc.net
abook.sourceforge.net
apache.mirrors.spacedump.net
archive.apache.org
archive.eclipse.org
archive.mozilla.org
bellard.org
beyondgrep.com
bitbucket.org
busybox.net
cabextract.org.uk
cache.ruby-lang.org
cairographics.org
calcurse.org
ccrypt.sourceforge.net
cgdb.me
codeload.github.com
curl.haxx.se
deb.debian.org
dev.yorhel.nl
dianne.skoll.ca
distfiles.macports.org
dist.libuv.org
dl.bintray.com
dl.fefe.de
dotat.at
download.gimp.org
download.gnome.org
download.lighttpd.net
download.osgeo.org
download.pureftpd.org
download.redis.io
download.savannah.gnu.org
download.savannah.nongnu.org
downloads.sourceforge.net
downloads.xiph.org
downloads.xvid.org
fastly.cdn.openbsd.org
files.openscad.org
fossies.org
ftp.astron.com
ftp.debian.org
ftp.figlet.org
ftp.gnome.org
ftp.gnu.org
ftp.gnupg.org
ftp.infradead.org
ftp.isc.org
ftp.mars.org
ftp.midnight-commander.org
ftp.mutt.org
ftp.osuosl.org
ftp.pcre.org
ftp.postgresql.org
ftp.tug.org
ftp.videolan.org
geoff.greer.fm
github.com
git.kernel.org
gitlab.com
git.zx2c4.com
gmic.eu
gnu.uberglobalmirror.com
gondor.apana.org.au
gstreamer.freedesktop.org
hisham.hm
http.debian.net
invisible-mirror.net
isl.gforge.inria.fr
jodies.de
kernel.org
launchpad.net
lftp.tech
libbsd.freedesktop.org
libzip.org
links.twibright.com
luarocks.org
mama.indstate.edu
marlam.de
matt.ucc.asn.au
mdocml.bsd.lv
megatools.megous.com
mirror.httrack.com
mirrors.dotsrc.org
mirrors.kernel.org
mosquitto.org
nano-editor.org
netfilter.org
newsboat.org
nginx.org
nim-lang.org
nmap.org
nodejs.org
notmuchmail.org
oligarchy.co.uk
otr.cypherpunks.ca
pdfgrep.org
pkgconfig.freedesktop.org
point-at-infinity.org
poppler.freedesktop.org
potrace.sourceforge.net
prdownloads.sourceforge.net
raw.githubusercontent.com
releases.pagure.org
rsync.samba.org
rybczak.net
s3.amazonaws.com
secure.php.net
soulsphere.org
sourceforge.net
sourceware.org
squid.mirror.globo.tech
static.rust-lang.org
storage.googleapis.com
taglib.github.io
taskwarrior.org
thrysoee.dk
waterlan.home.xs4all.nl
www.aleksey.com
www.apache.org
www.brain-dump.org
www.cipherdyne.org
www.clamav.net
www.clifford.at
www.cmake.org
www.colm.net
www.colordiff.org
www.cpan.org
www.cryptopp.com
www.cybercom.net
www.dest-unreach.org
www.digital-scurf.org
www.ffmpeg.org
www.fftw.org
www.fossil-scm.org
www.freedesktop.org
www.gnu.org
www.gnupg.org
www.greenwoodsoftware.com
www.ibiblio.org
www.inf.puc-rio.br
www.ivarch.com
www.kernel.org
www.lcdf.org
www.leonerd.org.uk
www.libssh2.org
www.libssh.org
www.lua.org
www.lysator.liu.se
www.memcached.org
www.mirbsd.org
www.mirrorservice.org
www.musicpd.org
www.nlnetlabs.nl
www.openssl.org
www.privoxy.org
www.python.org
www.rarlab.com
www.samba.org
www.schweikhardt.net
www.sentex.net
www.sqlite.org
www.stunnel.org
www.swi-prolog.org
www.tarsnap.com
www.torproject.org
www.tortall.net
www.weechat.org
www.winfield.demon.nl
www.zlib.net
xmlsoft.org
yarnpkg.com
zsync.moria.org.uk

74
i686/Dockerfile Normal file
View File

@@ -0,0 +1,74 @@
FROM scratch
ENV ANDROID_DATA /data
ENV ANDROID_ROOT /system
ENV HOME /data/data/com.termux/files/home
ENV LANG en_US.UTF-8
ENV PREFIX /data/data/com.termux/files/usr
ENV TMPDIR /data/data/com.termux/files/usr/tmp
ENV TZ UTC
# Temporary set PATH to /system/bin so we will be able to
# bootstrap Termux environment.
ENV PATH /system/bin
SHELL ["/system/bin/sh", "-c"]
# Bootstrapping Termux environment.
ADD https://termux.org/bootstrap-i686.zip /data/data/com.termux/files/bootstrap.zip
COPY i686/system /system
COPY common/static-dns-hosts.txt /system/etc/static-dns-hosts.txt
WORKDIR /data/data/com.termux/files
RUN busybox mkdir usr && busybox unzip -d usr bootstrap.zip
WORKDIR /data/data/com.termux/files/usr
RUN busybox cat SYMLINKS.txt | while read -r line; do \
dest=$(echo "$line" | busybox awk -F '←' '{ print $1 }'); \
link=$(echo "$line" | busybox awk -F '←' '{ print $2 }'); \
echo "Creating symlink: $link --> $dest"; \
busybox ln -s "$dest" "$link"; \
done && \
busybox find bin lib/apt lib/bash libexec -type f -exec busybox chmod 700 "{}" \; && \
for p in ./share/doc/util-linux/getopt/getopt-parse.bash \
./share/doc/util-linux/getopt/getopt-parse.tcsh ./var/service/ftpd/run \
./var/service/telnetd/run; do \
if [ -f "$p" ]; then busybox chmod 700 "$p"; fi; \
done
WORKDIR /
RUN busybox mkdir -p /data/data/com.termux/files/home && \
busybox rm -f /data/data/com.termux/files/bootstrap.zip && \
busybox rm -f /data/data/com.termux/files/usr/SYMLINKS.txt
# Fix permissions.
RUN busybox find /data -type d -exec busybox chmod 755 "{}" \; && \
busybox find /data/data/com.termux/files -type d -exec busybox chmod 700 "{}" \; && \
busybox find /data/data/com.termux/files/usr -type f -executable -exec busybox chmod 700 "{}" \; && \
busybox find /data/data/com.termux/files/usr -type f ! -executable -exec busybox chmod 600 "{}" \; && \
busybox chown -Rh 1000:1000 /data && \
busybox find /system -type d -exec busybox chmod 755 "{}" \; && \
busybox find /system -type f -executable -exec busybox chmod 755 "{}" \; && \
busybox find /system -type f ! -executable -exec busybox chmod 644 "{}" \; && \
busybox chown -Rh 0:0 /system && \
busybox chown 1000:1000 /system/etc/hosts /system/etc/static-dns-hosts.txt
# Termux doesn't use these directories, but create them for compatibility
# when executing stuff like package tests.
RUN busybox ln -sf /data/data/com.termux/files/usr/bin /bin && \
busybox ln -sf /data/data/com.termux/files/usr /usr && \
busybox mkdir -p -m 1777 /tmp
# Switch to Termux environment.
WORKDIR /data/data/com.termux/files/home
USER 1000:1000
ENV PATH /data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets
# Make sure static dns list is up-to-date.
RUN /system/bin/update-static-dns
# Install package updates.
RUN apt update && \
yes | apt upgrade && \
rm -f /data/data/com.termux/files/usr/var/log/apt/*
ENTRYPOINT /data/data/com.termux/files/usr/bin/login

BIN
i686/system/bin/busybox Executable file

Binary file not shown.

BIN
i686/system/bin/linker Executable file

Binary file not shown.

BIN
i686/system/bin/linker64 Executable file

Binary file not shown.

1
i686/system/bin/sh Symbolic link
View File

@@ -0,0 +1 @@
busybox

View File

@@ -0,0 +1,17 @@
#!/system/bin/sh
export PATH=/system/bin
echo "127.0.0.1 localhost" > /system/etc/hosts
echo "::1 ip6-localhost" >> /system/etc/hosts
for host in $(busybox cat /system/etc/static-dns-hosts.txt | busybox grep -vE '^\s*#'); do
ip_addr=$(busybox nslookup -type=a "$host" 8.8.8.8 | busybox awk '/^Address: / { print $2 ; exit }')
if [ -z "$ip_addr" ]; then
echo "Can't resolve '$host'." >&2
exit 1
fi
echo "$ip_addr $host" | busybox tee -a /system/etc/hosts
done

2
i686/system/etc/hosts Normal file
View File

@@ -0,0 +1,2 @@
127.0.0.1 localhost
::1 ip6-localhost

View File

@@ -0,0 +1,15 @@
#
# Bionic loader config file.
#
dir.system = /system/bin/
dir.system = /system/xbin/
[system]
namespace.default.isolated = false
namespace.default.search.paths = /system/${LIB}
namespace.default.permitted.paths = /system/${LIB}
namespace.default.permitted.paths += /data
namespace.default.asan.search.paths = /system/${LIB}
namespace.default.asan.permitted.paths = /system
namespace.default.asan.permitted.paths += /data

Binary file not shown.

BIN
i686/system/lib/libc++.so Normal file

Binary file not shown.

BIN
i686/system/lib/libc.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
i686/system/lib/libdl.so Normal file

Binary file not shown.

BIN
i686/system/lib/libicuuc.so Normal file

Binary file not shown.

BIN
i686/system/lib/liblog.so Normal file

Binary file not shown.

BIN
i686/system/lib/libm.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
i686/system/lib64/libc++.so Normal file

Binary file not shown.

BIN
i686/system/lib64/libc.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
i686/system/lib64/libdl.so Normal file

Binary file not shown.

Binary file not shown.

BIN
i686/system/lib64/liblog.so Normal file

Binary file not shown.

BIN
i686/system/lib64/libm.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,926 @@
<?xml version="1.0" encoding="UTF-8"?><!--
**** Autogenerated file - DO NOT EDIT ****
--><timezones ianaversion="2018e">
<countryzones>
<country code="ad" default="Europe/Andorra" everutc="n">
<id>Europe/Andorra</id>
</country>
<country code="ae" default="Asia/Dubai" everutc="n">
<id>Asia/Dubai</id>
</country>
<country code="af" default="Asia/Kabul" everutc="n">
<id>Asia/Kabul</id>
</country>
<country code="ag" default="America/Antigua" everutc="n">
<id>America/Antigua</id>
</country>
<country code="ai" default="America/Anguilla" everutc="n">
<id>America/Anguilla</id>
</country>
<country code="al" default="Europe/Tirane" everutc="n">
<id>Europe/Tirane</id>
</country>
<country code="am" default="Asia/Yerevan" everutc="n">
<id>Asia/Yerevan</id>
</country>
<country code="ao" default="Africa/Luanda" everutc="n">
<id>Africa/Luanda</id>
</country>
<country code="aq" default="Antarctica/McMurdo" everutc="y">
<id>Antarctica/McMurdo</id>
<id>Antarctica/DumontDUrville</id>
<id>Antarctica/Casey</id>
<id>Antarctica/Davis</id>
<id>Antarctica/Mawson</id>
<id>Antarctica/Vostok</id>
<id>Antarctica/Syowa</id>
<id>Antarctica/Troll</id>
<id>Antarctica/Rothera</id>
<id>Antarctica/Palmer</id>
</country>
<country code="ar" default="America/Argentina/Buenos_Aires" everutc="n">
<id>America/Argentina/Buenos_Aires</id>
<id notafter="687931200000">America/Argentina/Cordoba</id>
<id notafter="1096171200000">America/Argentina/Salta</id>
<id notafter="687931200000">America/Argentina/Jujuy</id>
<id notafter="1087099200000">America/Argentina/Tucuman</id>
<id notafter="1087704000000">America/Argentina/Catamarca</id>
<id notafter="687931200000">America/Argentina/La_Rioja</id>
<id notafter="1090728000000">America/Argentina/San_Juan</id>
<id notafter="1237082400000">America/Argentina/Mendoza</id>
<id>America/Argentina/San_Luis</id>
<id notafter="673588800000">America/Argentina/Rio_Gallegos</id>
<id notafter="1087704000000">America/Argentina/Ushuaia</id>
</country>
<country code="as" default="Pacific/Pago_Pago" everutc="n">
<id>Pacific/Pago_Pago</id>
</country>
<country code="at" default="Europe/Vienna" everutc="n">
<id>Europe/Vienna</id>
</country>
<country code="au" default="Australia/Sydney" everutc="n">
<id>Australia/Sydney</id>
<id notafter="796147200000">Australia/Melbourne</id>
<id>Australia/Brisbane</id>
<id notafter="1193500800000">Australia/Hobart</id>
<id notafter="37728000000">Australia/Currie</id>
<id notafter="762883200000">Australia/Lindeman</id>
<id>Antarctica/Macquarie</id>
<id>Australia/Lord_Howe</id>
<id>Australia/Adelaide</id>
<id notafter="796149000000">Australia/Broken_Hill</id>
<id>Australia/Darwin</id>
<id>Australia/Perth</id>
<id>Australia/Eucla</id>
</country>
<country code="aw" default="America/Aruba" everutc="n">
<id>America/Aruba</id>
</country>
<country code="ax" default="Europe/Mariehamn" everutc="n">
<id>Europe/Mariehamn</id>
</country>
<country code="az" default="Asia/Baku" everutc="n">
<id>Asia/Baku</id>
</country>
<country code="ba" default="Europe/Sarajevo" everutc="n">
<id>Europe/Sarajevo</id>
</country>
<country code="bb" default="America/Barbados" everutc="n">
<id>America/Barbados</id>
</country>
<country code="bd" default="Asia/Dhaka" everutc="n">
<id>Asia/Dhaka</id>
</country>
<country code="be" default="Europe/Brussels" everutc="n">
<id>Europe/Brussels</id>
</country>
<country code="bf" default="Africa/Ouagadougou" everutc="y">
<id>Africa/Ouagadougou</id>
</country>
<country code="bg" default="Europe/Sofia" everutc="n">
<id>Europe/Sofia</id>
</country>
<country code="bh" default="Asia/Bahrain" everutc="n">
<id>Asia/Bahrain</id>
</country>
<country code="bi" default="Africa/Bujumbura" everutc="n">
<id>Africa/Bujumbura</id>
</country>
<country code="bj" default="Africa/Porto-Novo" everutc="n">
<id>Africa/Porto-Novo</id>
</country>
<country code="bl" default="America/St_Barthelemy" everutc="n">
<id>America/St_Barthelemy</id>
</country>
<country code="bm" default="Atlantic/Bermuda" everutc="n">
<id>Atlantic/Bermuda</id>
</country>
<country code="bn" default="Asia/Brunei" everutc="n">
<id>Asia/Brunei</id>
</country>
<country code="bo" default="America/La_Paz" everutc="n">
<id>America/La_Paz</id>
</country>
<country code="bq" default="America/Kralendijk" everutc="n">
<id>America/Kralendijk</id>
</country>
<country code="br" default="America/Noronha" everutc="n">
<id>America/Noronha</id>
<id>America/Sao_Paulo</id>
<id notafter="1013911200000">America/Belem</id>
<id notafter="972180000000">America/Fortaleza</id>
<id notafter="1330221600000">America/Recife</id>
<id notafter="1361066400000">America/Araguaina</id>
<id notafter="824004000000">America/Maceio</id>
<id>America/Bahia</id>
<id notafter="1214280000000">America/Santarem</id>
<id>America/Manaus</id>
<id notafter="1076814000000">America/Campo_Grande</id>
<id>America/Cuiaba</id>
<id notafter="761713200000">America/Porto_Velho</id>
<id notafter="971578800000">America/Boa_Vista</id>
<id notafter="761716800000">America/Eirunepe</id>
<id>America/Rio_Branco</id>
</country>
<country code="bs" default="America/Nassau" everutc="n">
<id>America/Nassau</id>
</country>
<country code="bt" default="Asia/Thimphu" everutc="n">
<id>Asia/Thimphu</id>
</country>
<country code="bw" default="Africa/Gaborone" everutc="n">
<id>Africa/Gaborone</id>
</country>
<country code="by" default="Europe/Minsk" everutc="n">
<id>Europe/Minsk</id>
</country>
<country code="bz" default="America/Belize" everutc="n">
<id>America/Belize</id>
</country>
<country code="ca" default="America/St_Johns" everutc="n">
<id>America/St_Johns</id>
<id>America/Halifax</id>
<id notafter="57733200000">America/Glace_Bay</id>
<id notafter="1162098000000">America/Moncton</id>
<id notafter="1299996000000">America/Goose_Bay</id>
<id>America/Blanc-Sablon</id>
<id>America/Toronto</id>
<id notafter="89186400000">America/Nipigon</id>
<id notafter="120636000000">America/Thunder_Bay</id>
<id notafter="972802800000">America/Iqaluit</id>
<id notafter="796806000000">America/Pangnirtung</id>
<id>America/Atikokan</id>
<id>America/Winnipeg</id>
<id>America/Regina</id>
<id notafter="1130659200000">America/Rankin_Inlet</id>
<id notafter="986112000000">America/Rainy_River</id>
<id notafter="73472400000">America/Swift_Current</id>
<id notafter="1173600000000">America/Resolute</id>
<id>America/Edmonton</id>
<id notafter="986115600000">America/Cambridge_Bay</id>
<id notafter="309945600000">America/Yellowknife</id>
<id notafter="294228000000">America/Inuvik</id>
<id>America/Dawson_Creek</id>
<id notafter="84013200000">America/Creston</id>
<id notafter="1425808800000">America/Fort_Nelson</id>
<id>America/Vancouver</id>
<id notafter="309949200000">America/Whitehorse</id>
<id notafter="120646800000">America/Dawson</id>
</country>
<country code="cc" default="Indian/Cocos" everutc="n">
<id>Indian/Cocos</id>
</country>
<country code="cd" default="Africa/Kinshasa" everutc="n">
<id>Africa/Lubumbashi</id>
<id>Africa/Kinshasa</id>
</country>
<country code="cf" default="Africa/Bangui" everutc="n">
<id>Africa/Bangui</id>
</country>
<country code="cg" default="Africa/Brazzaville" everutc="n">
<id>Africa/Brazzaville</id>
</country>
<country code="ch" default="Europe/Zurich" everutc="n">
<id>Europe/Zurich</id>
</country>
<country code="ci" default="Africa/Abidjan" everutc="y">
<id>Africa/Abidjan</id>
</country>
<country code="ck" default="Pacific/Rarotonga" everutc="n">
<id>Pacific/Rarotonga</id>
</country>
<country code="cl" default="America/Santiago" everutc="n">
<id>America/Punta_Arenas</id>
<id>America/Santiago</id>
<id>Pacific/Easter</id>
</country>
<country code="cm" default="Africa/Douala" everutc="n">
<id>Africa/Douala</id>
</country>
<country code="cn" default="Asia/Shanghai" everutc="n">
<id>Asia/Shanghai</id>
<id>Asia/Urumqi</id>
</country>
<country code="co" default="America/Bogota" everutc="n">
<id>America/Bogota</id>
</country>
<country code="cr" default="America/Costa_Rica" everutc="n">
<id>America/Costa_Rica</id>
</country>
<country code="cu" default="America/Havana" everutc="n">
<id>America/Havana</id>
</country>
<country code="cv" default="Atlantic/Cape_Verde" everutc="n">
<id>Atlantic/Cape_Verde</id>
</country>
<country code="cw" default="America/Curacao" everutc="n">
<id>America/Curacao</id>
</country>
<country code="cx" default="Indian/Christmas" everutc="n">
<id>Indian/Christmas</id>
</country>
<country code="cy" default="Asia/Nicosia" everutc="n">
<id>Asia/Nicosia</id>
<id>Asia/Famagusta</id>
</country>
<country code="cz" default="Europe/Prague" everutc="n">
<id>Europe/Prague</id>
</country>
<country code="de" default="Europe/Berlin" everutc="n">
<id>Europe/Berlin</id>
<id notafter="338950800000">Europe/Busingen</id>
</country>
<country code="dj" default="Africa/Djibouti" everutc="n">
<id>Africa/Djibouti</id>
</country>
<country code="dk" default="Europe/Copenhagen" everutc="n">
<id>Europe/Copenhagen</id>
</country>
<country code="dm" default="America/Dominica" everutc="n">
<id>America/Dominica</id>
</country>
<country code="do" default="America/Santo_Domingo" everutc="n">
<id>America/Santo_Domingo</id>
</country>
<country code="dz" default="Africa/Algiers" everutc="n">
<id>Africa/Algiers</id>
</country>
<country code="ec" default="America/Guayaquil" everutc="n">
<id>America/Guayaquil</id>
<id>Pacific/Galapagos</id>
</country>
<country code="ee" default="Europe/Tallinn" everutc="n">
<id>Europe/Tallinn</id>
</country>
<country code="eg" default="Africa/Cairo" everutc="n">
<id>Africa/Cairo</id>
</country>
<country code="eh" default="Africa/El_Aaiun" everutc="y">
<id>Africa/El_Aaiun</id>
</country>
<country code="er" default="Africa/Asmara" everutc="n">
<id>Africa/Asmara</id>
</country>
<country code="es" default="Europe/Madrid" everutc="y">
<id>Europe/Madrid</id>
<id notafter="496803600000">Africa/Ceuta</id>
<id>Atlantic/Canary</id>
</country>
<country code="et" default="Africa/Addis_Ababa" everutc="n">
<id>Africa/Addis_Ababa</id>
</country>
<country code="fi" default="Europe/Helsinki" everutc="n">
<id>Europe/Helsinki</id>
</country>
<country code="fj" default="Pacific/Fiji" everutc="n">
<id>Pacific/Fiji</id>
</country>
<country code="fk" default="Atlantic/Stanley" everutc="n">
<id>Atlantic/Stanley</id>
</country>
<country code="fm" default="Pacific/Pohnpei" everutc="n">
<id>Pacific/Pohnpei</id>
<id>Pacific/Kosrae</id>
<id>Pacific/Chuuk</id>
</country>
<country code="fo" default="Atlantic/Faroe" everutc="y">
<id>Atlantic/Faroe</id>
</country>
<country code="fr" default="Europe/Paris" everutc="n">
<id>Europe/Paris</id>
</country>
<country code="ga" default="Africa/Libreville" everutc="n">
<id>Africa/Libreville</id>
</country>
<country code="gb" default="Europe/London" everutc="y">
<id>Europe/London</id>
</country>
<country code="gd" default="America/Grenada" everutc="n">
<id>America/Grenada</id>
</country>
<country code="ge" default="Asia/Tbilisi" everutc="n">
<id>Asia/Tbilisi</id>
</country>
<country code="gf" default="America/Cayenne" everutc="n">
<id>America/Cayenne</id>
</country>
<country code="gg" default="Europe/Guernsey" everutc="y">
<id>Europe/Guernsey</id>
</country>
<country code="gh" default="Africa/Accra" everutc="y">
<id>Africa/Accra</id>
</country>
<country code="gi" default="Europe/Gibraltar" everutc="n">
<id>Europe/Gibraltar</id>
</country>
<country code="gl" default="America/Godthab" everutc="y">
<id>America/Danmarkshavn</id>
<id>America/Scoresbysund</id>
<id>America/Godthab</id>
<id>America/Thule</id>
</country>
<country code="gm" default="Africa/Banjul" everutc="y">
<id>Africa/Banjul</id>
</country>
<country code="gn" default="Africa/Conakry" everutc="y">
<id>Africa/Conakry</id>
</country>
<country code="gp" default="America/Guadeloupe" everutc="n">
<id>America/Guadeloupe</id>
</country>
<country code="gq" default="Africa/Malabo" everutc="n">
<id>Africa/Malabo</id>
</country>
<country code="gr" default="Europe/Athens" everutc="n">
<id>Europe/Athens</id>
</country>
<country code="gs" default="Atlantic/South_Georgia" everutc="n">
<id>Atlantic/South_Georgia</id>
</country>
<country code="gt" default="America/Guatemala" everutc="n">
<id>America/Guatemala</id>
</country>
<country code="gu" default="Pacific/Guam" everutc="n">
<id>Pacific/Guam</id>
</country>
<country code="gw" default="Africa/Bissau" everutc="y">
<id>Africa/Bissau</id>
</country>
<country code="gy" default="America/Guyana" everutc="n">
<id>America/Guyana</id>
</country>
<country code="hk" default="Asia/Hong_Kong" everutc="n">
<id>Asia/Hong_Kong</id>
</country>
<country code="hn" default="America/Tegucigalpa" everutc="n">
<id>America/Tegucigalpa</id>
</country>
<country code="hr" default="Europe/Zagreb" everutc="n">
<id>Europe/Zagreb</id>
</country>
<country code="ht" default="America/Port-au-Prince" everutc="n">
<id>America/Port-au-Prince</id>
</country>
<country code="hu" default="Europe/Budapest" everutc="n">
<id>Europe/Budapest</id>
</country>
<country code="id" default="Asia/Jakarta" everutc="n">
<id>Asia/Jayapura</id>
<id>Asia/Makassar</id>
<id>Asia/Jakarta</id>
<id notafter="567964800000">Asia/Pontianak</id>
</country>
<country code="ie" default="Europe/Dublin" everutc="y">
<id>Europe/Dublin</id>
</country>
<country code="il" default="Asia/Jerusalem" everutc="n">
<id>Asia/Jerusalem</id>
</country>
<country code="im" default="Europe/Isle_of_Man" everutc="y">
<id>Europe/Isle_of_Man</id>
</country>
<country code="in" default="Asia/Kolkata" everutc="n">
<id>Asia/Kolkata</id>
</country>
<country code="io" default="Indian/Chagos" everutc="n">
<id>Indian/Chagos</id>
</country>
<country code="iq" default="Asia/Baghdad" everutc="n">
<id>Asia/Baghdad</id>
</country>
<country code="ir" default="Asia/Tehran" everutc="n">
<id>Asia/Tehran</id>
</country>
<country code="is" default="Atlantic/Reykjavik" everutc="y">
<id>Atlantic/Reykjavik</id>
</country>
<country code="it" default="Europe/Rome" everutc="n">
<id>Europe/Rome</id>
</country>
<country code="je" default="Europe/Jersey" everutc="y">
<id>Europe/Jersey</id>
</country>
<country code="jm" default="America/Jamaica" everutc="n">
<id>America/Jamaica</id>
</country>
<country code="jo" default="Asia/Amman" everutc="n">
<id>Asia/Amman</id>
</country>
<country code="jp" default="Asia/Tokyo" everutc="n">
<id>Asia/Tokyo</id>
</country>
<country code="ke" default="Africa/Nairobi" everutc="n">
<id>Africa/Nairobi</id>
</country>
<country code="kg" default="Asia/Bishkek" everutc="n">
<id>Asia/Bishkek</id>
</country>
<country code="kh" default="Asia/Phnom_Penh" everutc="n">
<id>Asia/Phnom_Penh</id>
</country>
<country code="ki" default="Pacific/Tarawa" everutc="n">
<id>Pacific/Kiritimati</id>
<id>Pacific/Enderbury</id>
<id>Pacific/Tarawa</id>
</country>
<country code="km" default="Indian/Comoro" everutc="n">
<id>Indian/Comoro</id>
</country>
<country code="kn" default="America/St_Kitts" everutc="n">
<id>America/St_Kitts</id>
</country>
<country code="kp" default="Asia/Pyongyang" everutc="n">
<id>Asia/Pyongyang</id>
</country>
<country code="kr" default="Asia/Seoul" everutc="n">
<id>Asia/Seoul</id>
</country>
<country code="kw" default="Asia/Kuwait" everutc="n">
<id>Asia/Kuwait</id>
</country>
<country code="ky" default="America/Cayman" everutc="n">
<id>America/Cayman</id>
</country>
<country code="kz" default="Asia/Almaty" everutc="n">
<id>Asia/Almaty</id>
<id notafter="1099170000000">Asia/Qyzylorda</id>
<id notafter="1099173600000">Asia/Aqtau</id>
<id>Asia/Oral</id>
<id>Asia/Aqtobe</id>
<id notafter="922572000000">Asia/Atyrau</id>
</country>
<country code="la" default="Asia/Vientiane" everutc="n">
<id>Asia/Vientiane</id>
</country>
<country code="lb" default="Asia/Beirut" everutc="n">
<id>Asia/Beirut</id>
</country>
<country code="lc" default="America/St_Lucia" everutc="n">
<id>America/St_Lucia</id>
</country>
<country code="li" default="Europe/Vaduz" everutc="n">
<id>Europe/Vaduz</id>
</country>
<country code="lk" default="Asia/Colombo" everutc="n">
<id>Asia/Colombo</id>
</country>
<country code="lr" default="Africa/Monrovia" everutc="y">
<id>Africa/Monrovia</id>
</country>
<country code="ls" default="Africa/Maseru" everutc="n">
<id>Africa/Maseru</id>
</country>
<country code="lt" default="Europe/Vilnius" everutc="n">
<id>Europe/Vilnius</id>
</country>
<country code="lu" default="Europe/Luxembourg" everutc="n">
<id>Europe/Luxembourg</id>
</country>
<country code="lv" default="Europe/Riga" everutc="n">
<id>Europe/Riga</id>
</country>
<country code="ly" default="Africa/Tripoli" everutc="n">
<id>Africa/Tripoli</id>
</country>
<country code="ma" default="Africa/Casablanca" everutc="y">
<id>Africa/Casablanca</id>
</country>
<country code="mc" default="Europe/Monaco" everutc="n">
<id>Europe/Monaco</id>
</country>
<country code="md" default="Europe/Chisinau" everutc="n">
<id>Europe/Chisinau</id>
</country>
<country code="me" default="Europe/Podgorica" everutc="n">
<id>Europe/Podgorica</id>
</country>
<country code="mf" default="America/Marigot" everutc="n">
<id>America/Marigot</id>
</country>
<country code="mg" default="Indian/Antananarivo" everutc="n">
<id>Indian/Antananarivo</id>
</country>
<country code="mh" default="Pacific/Majuro" everutc="n">
<id>Pacific/Majuro</id>
<id notafter="745848000000">Pacific/Kwajalein</id>
</country>
<country code="mk" default="Europe/Skopje" everutc="n">
<id>Europe/Skopje</id>
</country>
<country code="ml" default="Africa/Bamako" everutc="y">
<id>Africa/Bamako</id>
</country>
<country code="mm" default="Asia/Yangon" everutc="n">
<id>Asia/Yangon</id>
</country>
<country code="mn" default="Asia/Ulaanbaatar" everutc="n">
<id>Asia/Choibalsan</id>
<id>Asia/Ulaanbaatar</id>
<id>Asia/Hovd</id>
</country>
<country code="mo" default="Asia/Macau" everutc="n">
<id>Asia/Macau</id>
</country>
<country code="mp" default="Pacific/Saipan" everutc="n">
<id>Pacific/Saipan</id>
</country>
<country code="mq" default="America/Martinique" everutc="n">
<id>America/Martinique</id>
</country>
<country code="mr" default="Africa/Nouakchott" everutc="y">
<id>Africa/Nouakchott</id>
</country>
<country code="ms" default="America/Montserrat" everutc="n">
<id>America/Montserrat</id>
</country>
<country code="mt" default="Europe/Malta" everutc="n">
<id>Europe/Malta</id>
</country>
<country code="mu" default="Indian/Mauritius" everutc="n">
<id>Indian/Mauritius</id>
</country>
<country code="mv" default="Indian/Maldives" everutc="n">
<id>Indian/Maldives</id>
</country>
<country code="mw" default="Africa/Blantyre" everutc="n">
<id>Africa/Blantyre</id>
</country>
<country code="mx" default="America/Mexico_City" everutc="n">
<id>America/Mexico_City</id>
<id notafter="407653200000">America/Merida</id>
<id notafter="594198000000">America/Monterrey</id>
<id>America/Matamoros</id>
<id notafter="1270371600000">America/Bahia_Banderas</id>
<id>America/Cancun</id>
<id>America/Chihuahua</id>
<id>America/Hermosillo</id>
<id notafter="891766800000">America/Mazatlan</id>
<id>America/Ojinaga</id>
<id>America/Tijuana</id>
</country>
<country code="my" default="Asia/Kuala_Lumpur" everutc="n">
<id>Asia/Kuala_Lumpur</id>
<id notafter="378664200000">Asia/Kuching</id>
</country>
<country code="mz" default="Africa/Maputo" everutc="n">
<id>Africa/Maputo</id>
</country>
<country code="na" default="Africa/Windhoek" everutc="n">
<id>Africa/Windhoek</id>
</country>
<country code="nc" default="Pacific/Noumea" everutc="n">
<id>Pacific/Noumea</id>
</country>
<country code="ne" default="Africa/Niamey" everutc="n">
<id>Africa/Niamey</id>
</country>
<country code="nf" default="Pacific/Norfolk" everutc="n">
<id>Pacific/Norfolk</id>
</country>
<country code="ng" default="Africa/Lagos" everutc="n">
<id>Africa/Lagos</id>
</country>
<country code="ni" default="America/Managua" everutc="n">
<id>America/Managua</id>
</country>
<country code="nl" default="Europe/Amsterdam" everutc="n">
<id>Europe/Amsterdam</id>
</country>
<country code="no" default="Europe/Oslo" everutc="n">
<id>Europe/Oslo</id>
</country>
<country code="np" default="Asia/Kathmandu" everutc="n">
<id>Asia/Kathmandu</id>
</country>
<country code="nr" default="Pacific/Nauru" everutc="n">
<id>Pacific/Nauru</id>
</country>
<country code="nu" default="Pacific/Niue" everutc="n">
<id>Pacific/Niue</id>
</country>
<country code="nz" default="Pacific/Auckland" everutc="n">
<id>Pacific/Auckland</id>
<id>Pacific/Chatham</id>
</country>
<country code="om" default="Asia/Muscat" everutc="n">
<id>Asia/Muscat</id>
</country>
<country code="pa" default="America/Panama" everutc="n">
<id>America/Panama</id>
</country>
<country code="pe" default="America/Lima" everutc="n">
<id>America/Lima</id>
</country>
<country code="pf" default="Pacific/Tahiti" everutc="n">
<id>Pacific/Gambier</id>
<id>Pacific/Marquesas</id>
<id>Pacific/Tahiti</id>
</country>
<country code="pg" default="Pacific/Port_Moresby" everutc="n">
<id>Pacific/Port_Moresby</id>
<id>Pacific/Bougainville</id>
</country>
<country code="ph" default="Asia/Manila" everutc="n">
<id>Asia/Manila</id>
</country>
<country code="pk" default="Asia/Karachi" everutc="n">
<id>Asia/Karachi</id>
</country>
<country code="pl" default="Europe/Warsaw" everutc="n">
<id>Europe/Warsaw</id>
</country>
<country code="pm" default="America/Miquelon" everutc="n">
<id>America/Miquelon</id>
</country>
<country code="pn" default="Pacific/Pitcairn" everutc="n">
<id>Pacific/Pitcairn</id>
</country>
<country code="pr" default="America/Puerto_Rico" everutc="n">
<id>America/Puerto_Rico</id>
</country>
<country code="ps" default="Asia/Gaza" everutc="n">
<id notafter="1317330000000">Asia/Gaza</id>
<id>Asia/Hebron</id>
</country>
<country code="pt" default="Europe/Lisbon" everutc="y">
<id>Europe/Lisbon</id>
<id notafter="828234000000">Atlantic/Madeira</id>
<id>Atlantic/Azores</id>
</country>
<country code="pw" default="Pacific/Palau" everutc="n">
<id>Pacific/Palau</id>
</country>
<country code="py" default="America/Asuncion" everutc="n">
<id>America/Asuncion</id>
</country>
<country code="qa" default="Asia/Qatar" everutc="n">
<id>Asia/Qatar</id>
</country>
<country code="re" default="Indian/Reunion" everutc="n">
<id>Indian/Reunion</id>
</country>
<country code="ro" default="Europe/Bucharest" everutc="n">
<id>Europe/Bucharest</id>
</country>
<country code="rs" default="Europe/Belgrade" everutc="n">
<id>Europe/Belgrade</id>
</country>
<country code="ru" default="Europe/Moscow" everutc="n">
<id>Asia/Kamchatka</id>
<id>Asia/Anadyr</id>
<id>Asia/Magadan</id>
<id>Asia/Sakhalin</id>
<id>Asia/Srednekolymsk</id>
<id>Asia/Vladivostok</id>
<id notafter="1315828800000">Asia/Ust-Nera</id>
<id notafter="1459015200000">Asia/Yakutsk</id>
<id>Asia/Chita</id>
<id notafter="1315832400000">Asia/Khandyga</id>
<id>Asia/Irkutsk</id>
<id>Asia/Krasnoyarsk</id>
<id>Asia/Novosibirsk</id>
<id>Asia/Barnaul</id>
<id notafter="1459022400000">Asia/Novokuznetsk</id>
<id notafter="1464465600000">Asia/Tomsk</id>
<id>Asia/Omsk</id>
<id>Asia/Yekaterinburg</id>
<id>Europe/Samara</id>
<id notafter="701823600000">Europe/Astrakhan</id>
<id notafter="1480806000000">Europe/Ulyanovsk</id>
<id>Europe/Saratov</id>
<id>Europe/Moscow</id>
<id notafter="701823600000">Europe/Volgograd</id>
<id>Europe/Kirov</id>
<id picker="n" notafter="1396137600000">Europe/Simferopol</id>
<id>Europe/Kaliningrad</id>
</country>
<country code="rw" default="Africa/Kigali" everutc="n">
<id>Africa/Kigali</id>
</country>
<country code="sa" default="Asia/Riyadh" everutc="n">
<id>Asia/Riyadh</id>
</country>
<country code="sb" default="Pacific/Guadalcanal" everutc="n">
<id>Pacific/Guadalcanal</id>
</country>
<country code="sc" default="Indian/Mahe" everutc="n">
<id>Indian/Mahe</id>
</country>
<country code="sd" default="Africa/Khartoum" everutc="n">
<id>Africa/Khartoum</id>
</country>
<country code="se" default="Europe/Stockholm" everutc="n">
<id>Europe/Stockholm</id>
</country>
<country code="sg" default="Asia/Singapore" everutc="n">
<id>Asia/Singapore</id>
</country>
<country code="sh" default="Atlantic/St_Helena" everutc="y">
<id>Atlantic/St_Helena</id>
</country>
<country code="si" default="Europe/Ljubljana" everutc="n">
<id>Europe/Ljubljana</id>
</country>
<country code="sj" default="Arctic/Longyearbyen" everutc="n">
<id>Arctic/Longyearbyen</id>
</country>
<country code="sk" default="Europe/Bratislava" everutc="n">
<id>Europe/Bratislava</id>
</country>
<country code="sl" default="Africa/Freetown" everutc="y">
<id>Africa/Freetown</id>
</country>
<country code="sm" default="Europe/San_Marino" everutc="n">
<id>Europe/San_Marino</id>
</country>
<country code="sn" default="Africa/Dakar" everutc="y">
<id>Africa/Dakar</id>
</country>
<country code="so" default="Africa/Mogadishu" everutc="n">
<id>Africa/Mogadishu</id>
</country>
<country code="sr" default="America/Paramaribo" everutc="n">
<id>America/Paramaribo</id>
</country>
<country code="ss" default="Africa/Juba" everutc="n">
<id>Africa/Juba</id>
</country>
<country code="st" default="Africa/Sao_Tome" everutc="y">
<id>Africa/Sao_Tome</id>
</country>
<country code="sv" default="America/El_Salvador" everutc="n">
<id>America/El_Salvador</id>
</country>
<country code="sx" default="America/Lower_Princes" everutc="n">
<id>America/Lower_Princes</id>
</country>
<country code="sy" default="Asia/Damascus" everutc="n">
<id>Asia/Damascus</id>
</country>
<country code="sz" default="Africa/Mbabane" everutc="n">
<id>Africa/Mbabane</id>
</country>
<country code="tc" default="America/Grand_Turk" everutc="n">
<id>America/Grand_Turk</id>
</country>
<country code="td" default="Africa/Ndjamena" everutc="n">
<id>Africa/Ndjamena</id>
</country>
<country code="tf" default="Indian/Kerguelen" everutc="n">
<id>Indian/Kerguelen</id>
</country>
<country code="tg" default="Africa/Lome" everutc="y">
<id>Africa/Lome</id>
</country>
<country code="th" default="Asia/Bangkok" everutc="n">
<id>Asia/Bangkok</id>
</country>
<country code="tj" default="Asia/Dushanbe" everutc="n">
<id>Asia/Dushanbe</id>
</country>
<country code="tk" default="Pacific/Fakaofo" everutc="n">
<id>Pacific/Fakaofo</id>
</country>
<country code="tl" default="Asia/Dili" everutc="n">
<id>Asia/Dili</id>
</country>
<country code="tm" default="Asia/Ashgabat" everutc="n">
<id>Asia/Ashgabat</id>
</country>
<country code="tn" default="Africa/Tunis" everutc="n">
<id>Africa/Tunis</id>
</country>
<country code="to" default="Pacific/Tongatapu" everutc="n">
<id>Pacific/Tongatapu</id>
</country>
<country code="tr" default="Europe/Istanbul" everutc="n">
<id>Europe/Istanbul</id>
</country>
<country code="tt" default="America/Port_of_Spain" everutc="n">
<id>America/Port_of_Spain</id>
</country>
<country code="tv" default="Pacific/Funafuti" everutc="n">
<id>Pacific/Funafuti</id>
</country>
<country code="tw" default="Asia/Taipei" everutc="n">
<id>Asia/Taipei</id>
</country>
<country code="tz" default="Africa/Dar_es_Salaam" everutc="n">
<id>Africa/Dar_es_Salaam</id>
</country>
<country code="ua" default="Europe/Kiev" everutc="n">
<id>Europe/Kiev</id>
<id notafter="686091600000">Europe/Uzhgorod</id>
<id notafter="686102400000">Europe/Zaporozhye</id>
</country>
<country code="ug" default="Africa/Kampala" everutc="n">
<id>Africa/Kampala</id>
</country>
<country code="um" default="Pacific/Wake" everutc="n">
<id>Pacific/Wake</id>
<id>Pacific/Midway</id>
</country>
<country code="us" default="America/New_York" everutc="n">
<id>America/New_York</id>
<id notafter="167814000000">America/Detroit</id>
<id notafter="152089200000">America/Kentucky/Louisville</id>
<id notafter="972802800000">America/Kentucky/Monticello</id>
<id notafter="1130652000000">America/Indiana/Indianapolis</id>
<id notafter="1194159600000">America/Indiana/Vincennes</id>
<id notafter="1173600000000">America/Indiana/Winamac</id>
<id notafter="183535200000">America/Indiana/Marengo</id>
<id notafter="247042800000">America/Indiana/Petersburg</id>
<id notafter="89186400000">America/Indiana/Vevay</id>
<id>America/Chicago</id>
<id notafter="688546800000">America/Indiana/Knox</id>
<id notafter="104918400000">America/Menominee</id>
<id notafter="720000000000">America/North_Dakota/Center</id>
<id notafter="1067155200000">America/North_Dakota/New_Salem</id>
<id notafter="1143964800000">America/Indiana/Tell_City</id>
<id notafter="1289116800000">America/North_Dakota/Beulah</id>
<id>America/Denver</id>
<id notafter="129114000000">America/Boise</id>
<id>America/Phoenix</id>
<id>America/Los_Angeles</id>
<id>America/Anchorage</id>
<id notafter="436359600000">America/Juneau</id>
<id notafter="436356000000">America/Yakutat</id>
<id notafter="436363200000">America/Nome</id>
<id notafter="1446372000000">America/Metlakatla</id>
<id notafter="341402400000">America/Sitka</id>
<id>Pacific/Honolulu</id>
<id>America/Adak</id>
</country>
<country code="uy" default="America/Montevideo" everutc="n">
<id>America/Montevideo</id>
</country>
<country code="uz" default="Asia/Tashkent" everutc="n">
<id>Asia/Tashkent</id>
<id notafter="670366800000">Asia/Samarkand</id>
</country>
<country code="va" default="Europe/Vatican" everutc="n">
<id>Europe/Vatican</id>
</country>
<country code="vc" default="America/St_Vincent" everutc="n">
<id>America/St_Vincent</id>
</country>
<country code="ve" default="America/Caracas" everutc="n">
<id>America/Caracas</id>
</country>
<country code="vg" default="America/Tortola" everutc="n">
<id>America/Tortola</id>
</country>
<country code="vi" default="America/St_Thomas" everutc="n">
<id>America/St_Thomas</id>
</country>
<country code="vn" default="Asia/Ho_Chi_Minh" everutc="n">
<id>Asia/Ho_Chi_Minh</id>
</country>
<country code="vu" default="Pacific/Efate" everutc="n">
<id>Pacific/Efate</id>
</country>
<country code="wf" default="Pacific/Wallis" everutc="n">
<id>Pacific/Wallis</id>
</country>
<country code="ws" default="Pacific/Apia" everutc="n">
<id>Pacific/Apia</id>
</country>
<country code="ye" default="Asia/Aden" everutc="n">
<id>Asia/Aden</id>
</country>
<country code="yt" default="Indian/Mayotte" everutc="n">
<id>Indian/Mayotte</id>
</country>
<country code="za" default="Africa/Johannesburg" everutc="n">
<id>Africa/Johannesburg</id>
</country>
<country code="zm" default="Africa/Lusaka" everutc="n">
<id>Africa/Lusaka</id>
</country>
<country code="zw" default="Africa/Harare" everutc="n">
<id>Africa/Harare</id>
</country>
</countryzones>
</timezones>

1
run-x86_64.sh Symbolic link
View File

@@ -0,0 +1 @@
run.sh

21
run.sh Executable file
View File

@@ -0,0 +1,21 @@
#!/usr/bin/env bash
if [ "$(basename "$0")" = "run-x86_64.sh" ]; then
CONTAINER_NAME="termux-x86_64"
DOCKER_IMAGE_NAME="xeffyr/termux:x86_64"
else
CONTAINER_NAME="termux-i686"
DOCKER_IMAGE_NAME="xeffyr/termux:latest"
fi
docker start "$CONTAINER_NAME" > /dev/null 2> /dev/null || {
echo "Creating new container..."
docker run \
--detach \
--name "$CONTAINER_NAME" \
--tty \
"$DOCKER_IMAGE_NAME"
}
docker exec --interactive --tty "$CONTAINER_NAME" \
/data/data/com.termux/files/usr/bin/login

74
x86_64/Dockerfile Normal file
View File

@@ -0,0 +1,74 @@
FROM scratch
ENV ANDROID_DATA /data
ENV ANDROID_ROOT /system
ENV HOME /data/data/com.termux/files/home
ENV LANG en_US.UTF-8
ENV PREFIX /data/data/com.termux/files/usr
ENV TMPDIR /data/data/com.termux/files/usr/tmp
ENV TZ UTC
# Temporary set PATH to /system/bin so we will be able to
# bootstrap Termux environment.
ENV PATH /system/bin
SHELL ["/system/bin/sh", "-c"]
# Bootstrapping Termux environment.
ADD https://termux.org/bootstrap-x86_64.zip /data/data/com.termux/files/bootstrap.zip
COPY x86_64/system /system
COPY common/static-dns-hosts.txt /system/etc/static-dns-hosts.txt
WORKDIR /data/data/com.termux/files
RUN busybox mkdir usr && busybox unzip -d usr bootstrap.zip
WORKDIR /data/data/com.termux/files/usr
RUN busybox cat SYMLINKS.txt | while read -r line; do \
dest=$(echo "$line" | busybox awk -F '←' '{ print $1 }'); \
link=$(echo "$line" | busybox awk -F '←' '{ print $2 }'); \
echo "Creating symlink: $link --> $dest"; \
busybox ln -s "$dest" "$link"; \
done && \
busybox find bin lib/apt lib/bash libexec -type f -exec busybox chmod 700 "{}" \; && \
for p in ./share/doc/util-linux/getopt/getopt-parse.bash \
./share/doc/util-linux/getopt/getopt-parse.tcsh ./var/service/ftpd/run \
./var/service/telnetd/run; do \
if [ -f "$p" ]; then busybox chmod 700 "$p"; fi; \
done
WORKDIR /
RUN busybox mkdir -p /data/data/com.termux/files/home && \
busybox rm -f /data/data/com.termux/files/bootstrap.zip && \
busybox rm -f /data/data/com.termux/files/usr/SYMLINKS.txt
# Fix permissions.
RUN busybox find /data -type d -exec busybox chmod 755 "{}" \; && \
busybox find /data/data/com.termux/files -type d -exec busybox chmod 700 "{}" \; && \
busybox find /data/data/com.termux/files/usr -type f -executable -exec busybox chmod 700 "{}" \; && \
busybox find /data/data/com.termux/files/usr -type f ! -executable -exec busybox chmod 600 "{}" \; && \
busybox chown -Rh 1000:1000 /data && \
busybox find /system -type d -exec busybox chmod 755 "{}" \; && \
busybox find /system -type f -executable -exec busybox chmod 755 "{}" \; && \
busybox find /system -type f ! -executable -exec busybox chmod 644 "{}" \; && \
busybox chown -Rh 0:0 /system && \
busybox chown 1000:1000 /system/etc/hosts /system/etc/static-dns-hosts.txt
# Termux doesn't use these directories, but create them for compatibility
# when executing stuff like package tests.
RUN busybox ln -sf /data/data/com.termux/files/usr/bin /bin && \
busybox ln -sf /data/data/com.termux/files/usr /usr && \
busybox mkdir -p -m 1777 /tmp
# Switch to Termux environment.
WORKDIR /data/data/com.termux/files/home
USER 1000:1000
ENV PATH /data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets
# Make sure static dns list is up-to-date.
RUN /system/bin/update-static-dns
# Install package updates.
RUN apt update && \
yes | apt upgrade && \
rm -f /data/data/com.termux/files/usr/var/log/apt/*
ENTRYPOINT /data/data/com.termux/files/usr/bin/login

BIN
x86_64/system/bin/busybox Executable file

Binary file not shown.

BIN
x86_64/system/bin/linker Executable file

Binary file not shown.

BIN
x86_64/system/bin/linker64 Executable file

Binary file not shown.

1
x86_64/system/bin/sh Symbolic link
View File

@@ -0,0 +1 @@
busybox

View File

@@ -0,0 +1,17 @@
#!/system/bin/sh
export PATH=/system/bin
echo "127.0.0.1 localhost" > /system/etc/hosts
echo "::1 ip6-localhost" >> /system/etc/hosts
for host in $(busybox cat /system/etc/static-dns-hosts.txt | busybox grep -vE '^\s*#'); do
ip_addr=$(busybox nslookup -type=a "$host" 8.8.8.8 | busybox awk '/^Address: / { print $2 ; exit }')
if [ -z "$ip_addr" ]; then
echo "Can't resolve '$host'." >&2
exit 1
fi
echo "$ip_addr $host" | busybox tee -a /system/etc/hosts
done

2
x86_64/system/etc/hosts Normal file
View File

@@ -0,0 +1,2 @@
127.0.0.1 localhost
::1 ip6-localhost

View File

@@ -0,0 +1,15 @@
#
# Bionic loader config file.
#
dir.system = /system/bin/
dir.system = /system/xbin/
[system]
namespace.default.isolated = false
namespace.default.search.paths = /system/${LIB}
namespace.default.permitted.paths = /system/${LIB}
namespace.default.permitted.paths += /data
namespace.default.asan.search.paths = /system/${LIB}
namespace.default.asan.permitted.paths = /system
namespace.default.asan.permitted.paths += /data

Binary file not shown.

BIN
x86_64/system/lib/libc++.so Normal file

Binary file not shown.

BIN
x86_64/system/lib/libc.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
x86_64/system/lib/libdl.so Normal file

Binary file not shown.

Binary file not shown.

BIN
x86_64/system/lib/liblog.so Normal file

Binary file not shown.

BIN
x86_64/system/lib/libm.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
x86_64/system/lib64/libc.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
x86_64/system/lib64/libm.so Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,926 @@
<?xml version="1.0" encoding="UTF-8"?><!--
**** Autogenerated file - DO NOT EDIT ****
--><timezones ianaversion="2018e">
<countryzones>
<country code="ad" default="Europe/Andorra" everutc="n">
<id>Europe/Andorra</id>
</country>
<country code="ae" default="Asia/Dubai" everutc="n">
<id>Asia/Dubai</id>
</country>
<country code="af" default="Asia/Kabul" everutc="n">
<id>Asia/Kabul</id>
</country>
<country code="ag" default="America/Antigua" everutc="n">
<id>America/Antigua</id>
</country>
<country code="ai" default="America/Anguilla" everutc="n">
<id>America/Anguilla</id>
</country>
<country code="al" default="Europe/Tirane" everutc="n">
<id>Europe/Tirane</id>
</country>
<country code="am" default="Asia/Yerevan" everutc="n">
<id>Asia/Yerevan</id>
</country>
<country code="ao" default="Africa/Luanda" everutc="n">
<id>Africa/Luanda</id>
</country>
<country code="aq" default="Antarctica/McMurdo" everutc="y">
<id>Antarctica/McMurdo</id>
<id>Antarctica/DumontDUrville</id>
<id>Antarctica/Casey</id>
<id>Antarctica/Davis</id>
<id>Antarctica/Mawson</id>
<id>Antarctica/Vostok</id>
<id>Antarctica/Syowa</id>
<id>Antarctica/Troll</id>
<id>Antarctica/Rothera</id>
<id>Antarctica/Palmer</id>
</country>
<country code="ar" default="America/Argentina/Buenos_Aires" everutc="n">
<id>America/Argentina/Buenos_Aires</id>
<id notafter="687931200000">America/Argentina/Cordoba</id>
<id notafter="1096171200000">America/Argentina/Salta</id>
<id notafter="687931200000">America/Argentina/Jujuy</id>
<id notafter="1087099200000">America/Argentina/Tucuman</id>
<id notafter="1087704000000">America/Argentina/Catamarca</id>
<id notafter="687931200000">America/Argentina/La_Rioja</id>
<id notafter="1090728000000">America/Argentina/San_Juan</id>
<id notafter="1237082400000">America/Argentina/Mendoza</id>
<id>America/Argentina/San_Luis</id>
<id notafter="673588800000">America/Argentina/Rio_Gallegos</id>
<id notafter="1087704000000">America/Argentina/Ushuaia</id>
</country>
<country code="as" default="Pacific/Pago_Pago" everutc="n">
<id>Pacific/Pago_Pago</id>
</country>
<country code="at" default="Europe/Vienna" everutc="n">
<id>Europe/Vienna</id>
</country>
<country code="au" default="Australia/Sydney" everutc="n">
<id>Australia/Sydney</id>
<id notafter="796147200000">Australia/Melbourne</id>
<id>Australia/Brisbane</id>
<id notafter="1193500800000">Australia/Hobart</id>
<id notafter="37728000000">Australia/Currie</id>
<id notafter="762883200000">Australia/Lindeman</id>
<id>Antarctica/Macquarie</id>
<id>Australia/Lord_Howe</id>
<id>Australia/Adelaide</id>
<id notafter="796149000000">Australia/Broken_Hill</id>
<id>Australia/Darwin</id>
<id>Australia/Perth</id>
<id>Australia/Eucla</id>
</country>
<country code="aw" default="America/Aruba" everutc="n">
<id>America/Aruba</id>
</country>
<country code="ax" default="Europe/Mariehamn" everutc="n">
<id>Europe/Mariehamn</id>
</country>
<country code="az" default="Asia/Baku" everutc="n">
<id>Asia/Baku</id>
</country>
<country code="ba" default="Europe/Sarajevo" everutc="n">
<id>Europe/Sarajevo</id>
</country>
<country code="bb" default="America/Barbados" everutc="n">
<id>America/Barbados</id>
</country>
<country code="bd" default="Asia/Dhaka" everutc="n">
<id>Asia/Dhaka</id>
</country>
<country code="be" default="Europe/Brussels" everutc="n">
<id>Europe/Brussels</id>
</country>
<country code="bf" default="Africa/Ouagadougou" everutc="y">
<id>Africa/Ouagadougou</id>
</country>
<country code="bg" default="Europe/Sofia" everutc="n">
<id>Europe/Sofia</id>
</country>
<country code="bh" default="Asia/Bahrain" everutc="n">
<id>Asia/Bahrain</id>
</country>
<country code="bi" default="Africa/Bujumbura" everutc="n">
<id>Africa/Bujumbura</id>
</country>
<country code="bj" default="Africa/Porto-Novo" everutc="n">
<id>Africa/Porto-Novo</id>
</country>
<country code="bl" default="America/St_Barthelemy" everutc="n">
<id>America/St_Barthelemy</id>
</country>
<country code="bm" default="Atlantic/Bermuda" everutc="n">
<id>Atlantic/Bermuda</id>
</country>
<country code="bn" default="Asia/Brunei" everutc="n">
<id>Asia/Brunei</id>
</country>
<country code="bo" default="America/La_Paz" everutc="n">
<id>America/La_Paz</id>
</country>
<country code="bq" default="America/Kralendijk" everutc="n">
<id>America/Kralendijk</id>
</country>
<country code="br" default="America/Noronha" everutc="n">
<id>America/Noronha</id>
<id>America/Sao_Paulo</id>
<id notafter="1013911200000">America/Belem</id>
<id notafter="972180000000">America/Fortaleza</id>
<id notafter="1330221600000">America/Recife</id>
<id notafter="1361066400000">America/Araguaina</id>
<id notafter="824004000000">America/Maceio</id>
<id>America/Bahia</id>
<id notafter="1214280000000">America/Santarem</id>
<id>America/Manaus</id>
<id notafter="1076814000000">America/Campo_Grande</id>
<id>America/Cuiaba</id>
<id notafter="761713200000">America/Porto_Velho</id>
<id notafter="971578800000">America/Boa_Vista</id>
<id notafter="761716800000">America/Eirunepe</id>
<id>America/Rio_Branco</id>
</country>
<country code="bs" default="America/Nassau" everutc="n">
<id>America/Nassau</id>
</country>
<country code="bt" default="Asia/Thimphu" everutc="n">
<id>Asia/Thimphu</id>
</country>
<country code="bw" default="Africa/Gaborone" everutc="n">
<id>Africa/Gaborone</id>
</country>
<country code="by" default="Europe/Minsk" everutc="n">
<id>Europe/Minsk</id>
</country>
<country code="bz" default="America/Belize" everutc="n">
<id>America/Belize</id>
</country>
<country code="ca" default="America/St_Johns" everutc="n">
<id>America/St_Johns</id>
<id>America/Halifax</id>
<id notafter="57733200000">America/Glace_Bay</id>
<id notafter="1162098000000">America/Moncton</id>
<id notafter="1299996000000">America/Goose_Bay</id>
<id>America/Blanc-Sablon</id>
<id>America/Toronto</id>
<id notafter="89186400000">America/Nipigon</id>
<id notafter="120636000000">America/Thunder_Bay</id>
<id notafter="972802800000">America/Iqaluit</id>
<id notafter="796806000000">America/Pangnirtung</id>
<id>America/Atikokan</id>
<id>America/Winnipeg</id>
<id>America/Regina</id>
<id notafter="1130659200000">America/Rankin_Inlet</id>
<id notafter="986112000000">America/Rainy_River</id>
<id notafter="73472400000">America/Swift_Current</id>
<id notafter="1173600000000">America/Resolute</id>
<id>America/Edmonton</id>
<id notafter="986115600000">America/Cambridge_Bay</id>
<id notafter="309945600000">America/Yellowknife</id>
<id notafter="294228000000">America/Inuvik</id>
<id>America/Dawson_Creek</id>
<id notafter="84013200000">America/Creston</id>
<id notafter="1425808800000">America/Fort_Nelson</id>
<id>America/Vancouver</id>
<id notafter="309949200000">America/Whitehorse</id>
<id notafter="120646800000">America/Dawson</id>
</country>
<country code="cc" default="Indian/Cocos" everutc="n">
<id>Indian/Cocos</id>
</country>
<country code="cd" default="Africa/Kinshasa" everutc="n">
<id>Africa/Lubumbashi</id>
<id>Africa/Kinshasa</id>
</country>
<country code="cf" default="Africa/Bangui" everutc="n">
<id>Africa/Bangui</id>
</country>
<country code="cg" default="Africa/Brazzaville" everutc="n">
<id>Africa/Brazzaville</id>
</country>
<country code="ch" default="Europe/Zurich" everutc="n">
<id>Europe/Zurich</id>
</country>
<country code="ci" default="Africa/Abidjan" everutc="y">
<id>Africa/Abidjan</id>
</country>
<country code="ck" default="Pacific/Rarotonga" everutc="n">
<id>Pacific/Rarotonga</id>
</country>
<country code="cl" default="America/Santiago" everutc="n">
<id>America/Punta_Arenas</id>
<id>America/Santiago</id>
<id>Pacific/Easter</id>
</country>
<country code="cm" default="Africa/Douala" everutc="n">
<id>Africa/Douala</id>
</country>
<country code="cn" default="Asia/Shanghai" everutc="n">
<id>Asia/Shanghai</id>
<id>Asia/Urumqi</id>
</country>
<country code="co" default="America/Bogota" everutc="n">
<id>America/Bogota</id>
</country>
<country code="cr" default="America/Costa_Rica" everutc="n">
<id>America/Costa_Rica</id>
</country>
<country code="cu" default="America/Havana" everutc="n">
<id>America/Havana</id>
</country>
<country code="cv" default="Atlantic/Cape_Verde" everutc="n">
<id>Atlantic/Cape_Verde</id>
</country>
<country code="cw" default="America/Curacao" everutc="n">
<id>America/Curacao</id>
</country>
<country code="cx" default="Indian/Christmas" everutc="n">
<id>Indian/Christmas</id>
</country>
<country code="cy" default="Asia/Nicosia" everutc="n">
<id>Asia/Nicosia</id>
<id>Asia/Famagusta</id>
</country>
<country code="cz" default="Europe/Prague" everutc="n">
<id>Europe/Prague</id>
</country>
<country code="de" default="Europe/Berlin" everutc="n">
<id>Europe/Berlin</id>
<id notafter="338950800000">Europe/Busingen</id>
</country>
<country code="dj" default="Africa/Djibouti" everutc="n">
<id>Africa/Djibouti</id>
</country>
<country code="dk" default="Europe/Copenhagen" everutc="n">
<id>Europe/Copenhagen</id>
</country>
<country code="dm" default="America/Dominica" everutc="n">
<id>America/Dominica</id>
</country>
<country code="do" default="America/Santo_Domingo" everutc="n">
<id>America/Santo_Domingo</id>
</country>
<country code="dz" default="Africa/Algiers" everutc="n">
<id>Africa/Algiers</id>
</country>
<country code="ec" default="America/Guayaquil" everutc="n">
<id>America/Guayaquil</id>
<id>Pacific/Galapagos</id>
</country>
<country code="ee" default="Europe/Tallinn" everutc="n">
<id>Europe/Tallinn</id>
</country>
<country code="eg" default="Africa/Cairo" everutc="n">
<id>Africa/Cairo</id>
</country>
<country code="eh" default="Africa/El_Aaiun" everutc="y">
<id>Africa/El_Aaiun</id>
</country>
<country code="er" default="Africa/Asmara" everutc="n">
<id>Africa/Asmara</id>
</country>
<country code="es" default="Europe/Madrid" everutc="y">
<id>Europe/Madrid</id>
<id notafter="496803600000">Africa/Ceuta</id>
<id>Atlantic/Canary</id>
</country>
<country code="et" default="Africa/Addis_Ababa" everutc="n">
<id>Africa/Addis_Ababa</id>
</country>
<country code="fi" default="Europe/Helsinki" everutc="n">
<id>Europe/Helsinki</id>
</country>
<country code="fj" default="Pacific/Fiji" everutc="n">
<id>Pacific/Fiji</id>
</country>
<country code="fk" default="Atlantic/Stanley" everutc="n">
<id>Atlantic/Stanley</id>
</country>
<country code="fm" default="Pacific/Pohnpei" everutc="n">
<id>Pacific/Pohnpei</id>
<id>Pacific/Kosrae</id>
<id>Pacific/Chuuk</id>
</country>
<country code="fo" default="Atlantic/Faroe" everutc="y">
<id>Atlantic/Faroe</id>
</country>
<country code="fr" default="Europe/Paris" everutc="n">
<id>Europe/Paris</id>
</country>
<country code="ga" default="Africa/Libreville" everutc="n">
<id>Africa/Libreville</id>
</country>
<country code="gb" default="Europe/London" everutc="y">
<id>Europe/London</id>
</country>
<country code="gd" default="America/Grenada" everutc="n">
<id>America/Grenada</id>
</country>
<country code="ge" default="Asia/Tbilisi" everutc="n">
<id>Asia/Tbilisi</id>
</country>
<country code="gf" default="America/Cayenne" everutc="n">
<id>America/Cayenne</id>
</country>
<country code="gg" default="Europe/Guernsey" everutc="y">
<id>Europe/Guernsey</id>
</country>
<country code="gh" default="Africa/Accra" everutc="y">
<id>Africa/Accra</id>
</country>
<country code="gi" default="Europe/Gibraltar" everutc="n">
<id>Europe/Gibraltar</id>
</country>
<country code="gl" default="America/Godthab" everutc="y">
<id>America/Danmarkshavn</id>
<id>America/Scoresbysund</id>
<id>America/Godthab</id>
<id>America/Thule</id>
</country>
<country code="gm" default="Africa/Banjul" everutc="y">
<id>Africa/Banjul</id>
</country>
<country code="gn" default="Africa/Conakry" everutc="y">
<id>Africa/Conakry</id>
</country>
<country code="gp" default="America/Guadeloupe" everutc="n">
<id>America/Guadeloupe</id>
</country>
<country code="gq" default="Africa/Malabo" everutc="n">
<id>Africa/Malabo</id>
</country>
<country code="gr" default="Europe/Athens" everutc="n">
<id>Europe/Athens</id>
</country>
<country code="gs" default="Atlantic/South_Georgia" everutc="n">
<id>Atlantic/South_Georgia</id>
</country>
<country code="gt" default="America/Guatemala" everutc="n">
<id>America/Guatemala</id>
</country>
<country code="gu" default="Pacific/Guam" everutc="n">
<id>Pacific/Guam</id>
</country>
<country code="gw" default="Africa/Bissau" everutc="y">
<id>Africa/Bissau</id>
</country>
<country code="gy" default="America/Guyana" everutc="n">
<id>America/Guyana</id>
</country>
<country code="hk" default="Asia/Hong_Kong" everutc="n">
<id>Asia/Hong_Kong</id>
</country>
<country code="hn" default="America/Tegucigalpa" everutc="n">
<id>America/Tegucigalpa</id>
</country>
<country code="hr" default="Europe/Zagreb" everutc="n">
<id>Europe/Zagreb</id>
</country>
<country code="ht" default="America/Port-au-Prince" everutc="n">
<id>America/Port-au-Prince</id>
</country>
<country code="hu" default="Europe/Budapest" everutc="n">
<id>Europe/Budapest</id>
</country>
<country code="id" default="Asia/Jakarta" everutc="n">
<id>Asia/Jayapura</id>
<id>Asia/Makassar</id>
<id>Asia/Jakarta</id>
<id notafter="567964800000">Asia/Pontianak</id>
</country>
<country code="ie" default="Europe/Dublin" everutc="y">
<id>Europe/Dublin</id>
</country>
<country code="il" default="Asia/Jerusalem" everutc="n">
<id>Asia/Jerusalem</id>
</country>
<country code="im" default="Europe/Isle_of_Man" everutc="y">
<id>Europe/Isle_of_Man</id>
</country>
<country code="in" default="Asia/Kolkata" everutc="n">
<id>Asia/Kolkata</id>
</country>
<country code="io" default="Indian/Chagos" everutc="n">
<id>Indian/Chagos</id>
</country>
<country code="iq" default="Asia/Baghdad" everutc="n">
<id>Asia/Baghdad</id>
</country>
<country code="ir" default="Asia/Tehran" everutc="n">
<id>Asia/Tehran</id>
</country>
<country code="is" default="Atlantic/Reykjavik" everutc="y">
<id>Atlantic/Reykjavik</id>
</country>
<country code="it" default="Europe/Rome" everutc="n">
<id>Europe/Rome</id>
</country>
<country code="je" default="Europe/Jersey" everutc="y">
<id>Europe/Jersey</id>
</country>
<country code="jm" default="America/Jamaica" everutc="n">
<id>America/Jamaica</id>
</country>
<country code="jo" default="Asia/Amman" everutc="n">
<id>Asia/Amman</id>
</country>
<country code="jp" default="Asia/Tokyo" everutc="n">
<id>Asia/Tokyo</id>
</country>
<country code="ke" default="Africa/Nairobi" everutc="n">
<id>Africa/Nairobi</id>
</country>
<country code="kg" default="Asia/Bishkek" everutc="n">
<id>Asia/Bishkek</id>
</country>
<country code="kh" default="Asia/Phnom_Penh" everutc="n">
<id>Asia/Phnom_Penh</id>
</country>
<country code="ki" default="Pacific/Tarawa" everutc="n">
<id>Pacific/Kiritimati</id>
<id>Pacific/Enderbury</id>
<id>Pacific/Tarawa</id>
</country>
<country code="km" default="Indian/Comoro" everutc="n">
<id>Indian/Comoro</id>
</country>
<country code="kn" default="America/St_Kitts" everutc="n">
<id>America/St_Kitts</id>
</country>
<country code="kp" default="Asia/Pyongyang" everutc="n">
<id>Asia/Pyongyang</id>
</country>
<country code="kr" default="Asia/Seoul" everutc="n">
<id>Asia/Seoul</id>
</country>
<country code="kw" default="Asia/Kuwait" everutc="n">
<id>Asia/Kuwait</id>
</country>
<country code="ky" default="America/Cayman" everutc="n">
<id>America/Cayman</id>
</country>
<country code="kz" default="Asia/Almaty" everutc="n">
<id>Asia/Almaty</id>
<id notafter="1099170000000">Asia/Qyzylorda</id>
<id notafter="1099173600000">Asia/Aqtau</id>
<id>Asia/Oral</id>
<id>Asia/Aqtobe</id>
<id notafter="922572000000">Asia/Atyrau</id>
</country>
<country code="la" default="Asia/Vientiane" everutc="n">
<id>Asia/Vientiane</id>
</country>
<country code="lb" default="Asia/Beirut" everutc="n">
<id>Asia/Beirut</id>
</country>
<country code="lc" default="America/St_Lucia" everutc="n">
<id>America/St_Lucia</id>
</country>
<country code="li" default="Europe/Vaduz" everutc="n">
<id>Europe/Vaduz</id>
</country>
<country code="lk" default="Asia/Colombo" everutc="n">
<id>Asia/Colombo</id>
</country>
<country code="lr" default="Africa/Monrovia" everutc="y">
<id>Africa/Monrovia</id>
</country>
<country code="ls" default="Africa/Maseru" everutc="n">
<id>Africa/Maseru</id>
</country>
<country code="lt" default="Europe/Vilnius" everutc="n">
<id>Europe/Vilnius</id>
</country>
<country code="lu" default="Europe/Luxembourg" everutc="n">
<id>Europe/Luxembourg</id>
</country>
<country code="lv" default="Europe/Riga" everutc="n">
<id>Europe/Riga</id>
</country>
<country code="ly" default="Africa/Tripoli" everutc="n">
<id>Africa/Tripoli</id>
</country>
<country code="ma" default="Africa/Casablanca" everutc="y">
<id>Africa/Casablanca</id>
</country>
<country code="mc" default="Europe/Monaco" everutc="n">
<id>Europe/Monaco</id>
</country>
<country code="md" default="Europe/Chisinau" everutc="n">
<id>Europe/Chisinau</id>
</country>
<country code="me" default="Europe/Podgorica" everutc="n">
<id>Europe/Podgorica</id>
</country>
<country code="mf" default="America/Marigot" everutc="n">
<id>America/Marigot</id>
</country>
<country code="mg" default="Indian/Antananarivo" everutc="n">
<id>Indian/Antananarivo</id>
</country>
<country code="mh" default="Pacific/Majuro" everutc="n">
<id>Pacific/Majuro</id>
<id notafter="745848000000">Pacific/Kwajalein</id>
</country>
<country code="mk" default="Europe/Skopje" everutc="n">
<id>Europe/Skopje</id>
</country>
<country code="ml" default="Africa/Bamako" everutc="y">
<id>Africa/Bamako</id>
</country>
<country code="mm" default="Asia/Yangon" everutc="n">
<id>Asia/Yangon</id>
</country>
<country code="mn" default="Asia/Ulaanbaatar" everutc="n">
<id>Asia/Choibalsan</id>
<id>Asia/Ulaanbaatar</id>
<id>Asia/Hovd</id>
</country>
<country code="mo" default="Asia/Macau" everutc="n">
<id>Asia/Macau</id>
</country>
<country code="mp" default="Pacific/Saipan" everutc="n">
<id>Pacific/Saipan</id>
</country>
<country code="mq" default="America/Martinique" everutc="n">
<id>America/Martinique</id>
</country>
<country code="mr" default="Africa/Nouakchott" everutc="y">
<id>Africa/Nouakchott</id>
</country>
<country code="ms" default="America/Montserrat" everutc="n">
<id>America/Montserrat</id>
</country>
<country code="mt" default="Europe/Malta" everutc="n">
<id>Europe/Malta</id>
</country>
<country code="mu" default="Indian/Mauritius" everutc="n">
<id>Indian/Mauritius</id>
</country>
<country code="mv" default="Indian/Maldives" everutc="n">
<id>Indian/Maldives</id>
</country>
<country code="mw" default="Africa/Blantyre" everutc="n">
<id>Africa/Blantyre</id>
</country>
<country code="mx" default="America/Mexico_City" everutc="n">
<id>America/Mexico_City</id>
<id notafter="407653200000">America/Merida</id>
<id notafter="594198000000">America/Monterrey</id>
<id>America/Matamoros</id>
<id notafter="1270371600000">America/Bahia_Banderas</id>
<id>America/Cancun</id>
<id>America/Chihuahua</id>
<id>America/Hermosillo</id>
<id notafter="891766800000">America/Mazatlan</id>
<id>America/Ojinaga</id>
<id>America/Tijuana</id>
</country>
<country code="my" default="Asia/Kuala_Lumpur" everutc="n">
<id>Asia/Kuala_Lumpur</id>
<id notafter="378664200000">Asia/Kuching</id>
</country>
<country code="mz" default="Africa/Maputo" everutc="n">
<id>Africa/Maputo</id>
</country>
<country code="na" default="Africa/Windhoek" everutc="n">
<id>Africa/Windhoek</id>
</country>
<country code="nc" default="Pacific/Noumea" everutc="n">
<id>Pacific/Noumea</id>
</country>
<country code="ne" default="Africa/Niamey" everutc="n">
<id>Africa/Niamey</id>
</country>
<country code="nf" default="Pacific/Norfolk" everutc="n">
<id>Pacific/Norfolk</id>
</country>
<country code="ng" default="Africa/Lagos" everutc="n">
<id>Africa/Lagos</id>
</country>
<country code="ni" default="America/Managua" everutc="n">
<id>America/Managua</id>
</country>
<country code="nl" default="Europe/Amsterdam" everutc="n">
<id>Europe/Amsterdam</id>
</country>
<country code="no" default="Europe/Oslo" everutc="n">
<id>Europe/Oslo</id>
</country>
<country code="np" default="Asia/Kathmandu" everutc="n">
<id>Asia/Kathmandu</id>
</country>
<country code="nr" default="Pacific/Nauru" everutc="n">
<id>Pacific/Nauru</id>
</country>
<country code="nu" default="Pacific/Niue" everutc="n">
<id>Pacific/Niue</id>
</country>
<country code="nz" default="Pacific/Auckland" everutc="n">
<id>Pacific/Auckland</id>
<id>Pacific/Chatham</id>
</country>
<country code="om" default="Asia/Muscat" everutc="n">
<id>Asia/Muscat</id>
</country>
<country code="pa" default="America/Panama" everutc="n">
<id>America/Panama</id>
</country>
<country code="pe" default="America/Lima" everutc="n">
<id>America/Lima</id>
</country>
<country code="pf" default="Pacific/Tahiti" everutc="n">
<id>Pacific/Gambier</id>
<id>Pacific/Marquesas</id>
<id>Pacific/Tahiti</id>
</country>
<country code="pg" default="Pacific/Port_Moresby" everutc="n">
<id>Pacific/Port_Moresby</id>
<id>Pacific/Bougainville</id>
</country>
<country code="ph" default="Asia/Manila" everutc="n">
<id>Asia/Manila</id>
</country>
<country code="pk" default="Asia/Karachi" everutc="n">
<id>Asia/Karachi</id>
</country>
<country code="pl" default="Europe/Warsaw" everutc="n">
<id>Europe/Warsaw</id>
</country>
<country code="pm" default="America/Miquelon" everutc="n">
<id>America/Miquelon</id>
</country>
<country code="pn" default="Pacific/Pitcairn" everutc="n">
<id>Pacific/Pitcairn</id>
</country>
<country code="pr" default="America/Puerto_Rico" everutc="n">
<id>America/Puerto_Rico</id>
</country>
<country code="ps" default="Asia/Gaza" everutc="n">
<id notafter="1317330000000">Asia/Gaza</id>
<id>Asia/Hebron</id>
</country>
<country code="pt" default="Europe/Lisbon" everutc="y">
<id>Europe/Lisbon</id>
<id notafter="828234000000">Atlantic/Madeira</id>
<id>Atlantic/Azores</id>
</country>
<country code="pw" default="Pacific/Palau" everutc="n">
<id>Pacific/Palau</id>
</country>
<country code="py" default="America/Asuncion" everutc="n">
<id>America/Asuncion</id>
</country>
<country code="qa" default="Asia/Qatar" everutc="n">
<id>Asia/Qatar</id>
</country>
<country code="re" default="Indian/Reunion" everutc="n">
<id>Indian/Reunion</id>
</country>
<country code="ro" default="Europe/Bucharest" everutc="n">
<id>Europe/Bucharest</id>
</country>
<country code="rs" default="Europe/Belgrade" everutc="n">
<id>Europe/Belgrade</id>
</country>
<country code="ru" default="Europe/Moscow" everutc="n">
<id>Asia/Kamchatka</id>
<id>Asia/Anadyr</id>
<id>Asia/Magadan</id>
<id>Asia/Sakhalin</id>
<id>Asia/Srednekolymsk</id>
<id>Asia/Vladivostok</id>
<id notafter="1315828800000">Asia/Ust-Nera</id>
<id notafter="1459015200000">Asia/Yakutsk</id>
<id>Asia/Chita</id>
<id notafter="1315832400000">Asia/Khandyga</id>
<id>Asia/Irkutsk</id>
<id>Asia/Krasnoyarsk</id>
<id>Asia/Novosibirsk</id>
<id>Asia/Barnaul</id>
<id notafter="1459022400000">Asia/Novokuznetsk</id>
<id notafter="1464465600000">Asia/Tomsk</id>
<id>Asia/Omsk</id>
<id>Asia/Yekaterinburg</id>
<id>Europe/Samara</id>
<id notafter="701823600000">Europe/Astrakhan</id>
<id notafter="1480806000000">Europe/Ulyanovsk</id>
<id>Europe/Saratov</id>
<id>Europe/Moscow</id>
<id notafter="701823600000">Europe/Volgograd</id>
<id>Europe/Kirov</id>
<id picker="n" notafter="1396137600000">Europe/Simferopol</id>
<id>Europe/Kaliningrad</id>
</country>
<country code="rw" default="Africa/Kigali" everutc="n">
<id>Africa/Kigali</id>
</country>
<country code="sa" default="Asia/Riyadh" everutc="n">
<id>Asia/Riyadh</id>
</country>
<country code="sb" default="Pacific/Guadalcanal" everutc="n">
<id>Pacific/Guadalcanal</id>
</country>
<country code="sc" default="Indian/Mahe" everutc="n">
<id>Indian/Mahe</id>
</country>
<country code="sd" default="Africa/Khartoum" everutc="n">
<id>Africa/Khartoum</id>
</country>
<country code="se" default="Europe/Stockholm" everutc="n">
<id>Europe/Stockholm</id>
</country>
<country code="sg" default="Asia/Singapore" everutc="n">
<id>Asia/Singapore</id>
</country>
<country code="sh" default="Atlantic/St_Helena" everutc="y">
<id>Atlantic/St_Helena</id>
</country>
<country code="si" default="Europe/Ljubljana" everutc="n">
<id>Europe/Ljubljana</id>
</country>
<country code="sj" default="Arctic/Longyearbyen" everutc="n">
<id>Arctic/Longyearbyen</id>
</country>
<country code="sk" default="Europe/Bratislava" everutc="n">
<id>Europe/Bratislava</id>
</country>
<country code="sl" default="Africa/Freetown" everutc="y">
<id>Africa/Freetown</id>
</country>
<country code="sm" default="Europe/San_Marino" everutc="n">
<id>Europe/San_Marino</id>
</country>
<country code="sn" default="Africa/Dakar" everutc="y">
<id>Africa/Dakar</id>
</country>
<country code="so" default="Africa/Mogadishu" everutc="n">
<id>Africa/Mogadishu</id>
</country>
<country code="sr" default="America/Paramaribo" everutc="n">
<id>America/Paramaribo</id>
</country>
<country code="ss" default="Africa/Juba" everutc="n">
<id>Africa/Juba</id>
</country>
<country code="st" default="Africa/Sao_Tome" everutc="y">
<id>Africa/Sao_Tome</id>
</country>
<country code="sv" default="America/El_Salvador" everutc="n">
<id>America/El_Salvador</id>
</country>
<country code="sx" default="America/Lower_Princes" everutc="n">
<id>America/Lower_Princes</id>
</country>
<country code="sy" default="Asia/Damascus" everutc="n">
<id>Asia/Damascus</id>
</country>
<country code="sz" default="Africa/Mbabane" everutc="n">
<id>Africa/Mbabane</id>
</country>
<country code="tc" default="America/Grand_Turk" everutc="n">
<id>America/Grand_Turk</id>
</country>
<country code="td" default="Africa/Ndjamena" everutc="n">
<id>Africa/Ndjamena</id>
</country>
<country code="tf" default="Indian/Kerguelen" everutc="n">
<id>Indian/Kerguelen</id>
</country>
<country code="tg" default="Africa/Lome" everutc="y">
<id>Africa/Lome</id>
</country>
<country code="th" default="Asia/Bangkok" everutc="n">
<id>Asia/Bangkok</id>
</country>
<country code="tj" default="Asia/Dushanbe" everutc="n">
<id>Asia/Dushanbe</id>
</country>
<country code="tk" default="Pacific/Fakaofo" everutc="n">
<id>Pacific/Fakaofo</id>
</country>
<country code="tl" default="Asia/Dili" everutc="n">
<id>Asia/Dili</id>
</country>
<country code="tm" default="Asia/Ashgabat" everutc="n">
<id>Asia/Ashgabat</id>
</country>
<country code="tn" default="Africa/Tunis" everutc="n">
<id>Africa/Tunis</id>
</country>
<country code="to" default="Pacific/Tongatapu" everutc="n">
<id>Pacific/Tongatapu</id>
</country>
<country code="tr" default="Europe/Istanbul" everutc="n">
<id>Europe/Istanbul</id>
</country>
<country code="tt" default="America/Port_of_Spain" everutc="n">
<id>America/Port_of_Spain</id>
</country>
<country code="tv" default="Pacific/Funafuti" everutc="n">
<id>Pacific/Funafuti</id>
</country>
<country code="tw" default="Asia/Taipei" everutc="n">
<id>Asia/Taipei</id>
</country>
<country code="tz" default="Africa/Dar_es_Salaam" everutc="n">
<id>Africa/Dar_es_Salaam</id>
</country>
<country code="ua" default="Europe/Kiev" everutc="n">
<id>Europe/Kiev</id>
<id notafter="686091600000">Europe/Uzhgorod</id>
<id notafter="686102400000">Europe/Zaporozhye</id>
</country>
<country code="ug" default="Africa/Kampala" everutc="n">
<id>Africa/Kampala</id>
</country>
<country code="um" default="Pacific/Wake" everutc="n">
<id>Pacific/Wake</id>
<id>Pacific/Midway</id>
</country>
<country code="us" default="America/New_York" everutc="n">
<id>America/New_York</id>
<id notafter="167814000000">America/Detroit</id>
<id notafter="152089200000">America/Kentucky/Louisville</id>
<id notafter="972802800000">America/Kentucky/Monticello</id>
<id notafter="1130652000000">America/Indiana/Indianapolis</id>
<id notafter="1194159600000">America/Indiana/Vincennes</id>
<id notafter="1173600000000">America/Indiana/Winamac</id>
<id notafter="183535200000">America/Indiana/Marengo</id>
<id notafter="247042800000">America/Indiana/Petersburg</id>
<id notafter="89186400000">America/Indiana/Vevay</id>
<id>America/Chicago</id>
<id notafter="688546800000">America/Indiana/Knox</id>
<id notafter="104918400000">America/Menominee</id>
<id notafter="720000000000">America/North_Dakota/Center</id>
<id notafter="1067155200000">America/North_Dakota/New_Salem</id>
<id notafter="1143964800000">America/Indiana/Tell_City</id>
<id notafter="1289116800000">America/North_Dakota/Beulah</id>
<id>America/Denver</id>
<id notafter="129114000000">America/Boise</id>
<id>America/Phoenix</id>
<id>America/Los_Angeles</id>
<id>America/Anchorage</id>
<id notafter="436359600000">America/Juneau</id>
<id notafter="436356000000">America/Yakutat</id>
<id notafter="436363200000">America/Nome</id>
<id notafter="1446372000000">America/Metlakatla</id>
<id notafter="341402400000">America/Sitka</id>
<id>Pacific/Honolulu</id>
<id>America/Adak</id>
</country>
<country code="uy" default="America/Montevideo" everutc="n">
<id>America/Montevideo</id>
</country>
<country code="uz" default="Asia/Tashkent" everutc="n">
<id>Asia/Tashkent</id>
<id notafter="670366800000">Asia/Samarkand</id>
</country>
<country code="va" default="Europe/Vatican" everutc="n">
<id>Europe/Vatican</id>
</country>
<country code="vc" default="America/St_Vincent" everutc="n">
<id>America/St_Vincent</id>
</country>
<country code="ve" default="America/Caracas" everutc="n">
<id>America/Caracas</id>
</country>
<country code="vg" default="America/Tortola" everutc="n">
<id>America/Tortola</id>
</country>
<country code="vi" default="America/St_Thomas" everutc="n">
<id>America/St_Thomas</id>
</country>
<country code="vn" default="Asia/Ho_Chi_Minh" everutc="n">
<id>Asia/Ho_Chi_Minh</id>
</country>
<country code="vu" default="Pacific/Efate" everutc="n">
<id>Pacific/Efate</id>
</country>
<country code="wf" default="Pacific/Wallis" everutc="n">
<id>Pacific/Wallis</id>
</country>
<country code="ws" default="Pacific/Apia" everutc="n">
<id>Pacific/Apia</id>
</country>
<country code="ye" default="Asia/Aden" everutc="n">
<id>Asia/Aden</id>
</country>
<country code="yt" default="Indian/Mayotte" everutc="n">
<id>Indian/Mayotte</id>
</country>
<country code="za" default="Africa/Johannesburg" everutc="n">
<id>Africa/Johannesburg</id>
</country>
<country code="zm" default="Africa/Lusaka" everutc="n">
<id>Africa/Lusaka</id>
</country>
<country code="zw" default="Africa/Harare" everutc="n">
<id>Africa/Harare</id>
</country>
</countryzones>
</timezones>