Commit Graph

264 Commits

Author SHA1 Message Date
agnostic-apollo b6a9dd1524 Bump termux-tools to 0.135 2021-09-10 06:25:27 +05:00
agnostic-apollo d1a911b9ac Add deprecation and future disabling of playstore builds warning to banner 2021-09-09 04:25:48 +05:00
Lucy Phipps a636bfa2da
bump termux-tools, youtubedr, zsh
https://github.com/termux/termux-packages/pull/7335#issuecomment-904202191
2021-08-24 20:13:10 +01:00
Leonid Pliushch c6a80e0662
termux-tools: add NJU mirrors to termux-change-repo 2021-08-23 11:11:10 +03:00
Leonid Pliushch 6d6f4826df
termux-tools: bump revision 2021-08-01 18:40:17 +03:00
Leonid Pliushch a093c3ff8a
termux-tools: remove information about play store from motd 2021-08-01 15:47:57 +03:00
Leonid Pliushch b4492f5a2f
termux-tools: fix typo 2021-08-01 15:46:18 +03:00
Leonid Pliushch 5bfa35412c
termux-tools: update mirror list
Fixes https://github.com/termux/termux-packages/issues/7229
2021-08-01 15:34:52 +03:00
Leonid Pliushch f7142c23db
termux-tools: pkg: ensure that pkgcache exists before attempting to check modification time 2021-06-30 10:59:44 +03:00
Simeon Huang 8da081c823
termux-tools: add mirror termux.librehat.com (#7052) 2021-06-25 17:56:31 +03:00
Krishna Kanhaiya ea9e90052c
Another Termux Mirror hosted on GH release. (#7034)
* Added another termux mirror
This mirror is hosting on Github release.

* Revised naming convention and sorted alphabetically
2021-06-20 18:24:10 +05:30
Leonid Pliushch d41e649d9a
termux-tools: update mirror list for termux-change-repo 2021-06-18 10:07:06 +03:00
Leonid Pliushch ceaf09d804
termux-tools: update mirror list for termux-change-repo 2021-06-14 22:25:24 +03:00
Henrik Grimler 0f9c536c1a Point to libera.chat for official irc channel 2021-06-11 08:04:46 +02:00
Leonid Pliushch 1952a8a2e7
termux-tools: update path for termux.mentality.rip mirror 2021-06-04 17:58:54 +03:00
Leonid Pliushch 74d431b0eb
termux-tools: bump revision (testing upload script after fix) 2021-06-03 18:37:06 +03:00
Leonid Pliushch 14ce7ac0da
termux-tools: bump revision (testing updated upload script) 2021-06-03 17:40:49 +03:00
Leonid Pliushch 6afa93e058
termux-tools: bump revision 2021-06-03 02:16:13 +03:00
Leonid Pliushch 0d856e1f30
termux-tools: version 0.123 2021-06-03 01:49:30 +03:00
Leonid Pliushch f2697d41c7
termux-tools: termux-change-repo: update list of default repository urls 2021-06-03 01:48:51 +03:00
Leonid Pliushch a34fe61158
termux-tools: pkg: update list of repository urls 2021-06-03 01:46:49 +03:00
Leonid Pliushch 6458d3f88b termux-tools: version 0.122 2021-05-19 16:25:59 +03:00
Leonid Pliushch f38de1945b termux-tools: pkg: run `apt update` if no package list available for current mirror 2021-05-19 16:25:59 +03:00
Leonid Pliushch c605627c40 termux-tools: pkg: fix possible case where $current_mirror receives a multiline value 2021-05-19 16:25:59 +03:00
Leonid Pliushch 1e5ca4b743 termux-tools: pkg: fix bug where last_modified returned negative values 2021-05-19 16:25:59 +03:00
Leonid Pliushch cf3236e9e8 termux-tools: pkg: try to avoid cases where pkgcache is up-to-date but sources.list has been changed
A small percentage of users reporting issue where `pkg install` shows that
package is not available, though it is present in our apt repository. This
happens when sources.list has been changed without subsequent `apt update`.

Now `pkg` will force run `apt update` if sources.list was modified after
packages list update but cache still not expired.
2021-05-19 16:25:59 +03:00
Leonid Pliushch 03663a8e42
termux-tools: pkg: fix traffic share values
There should not be equal values.
2021-05-18 16:04:39 +03:00
Leonid Pliushch 4b00637faf
termux-tools: version 0.121, mark as it doesn't work if keyring version is below 1.9
Kcubeterm's GPG key has been added recently, so latest keyring is required when
using dl.kcubeterm.me Termux mirror.
2021-05-18 15:57:19 +03:00
Leonid Pliushch d5fac3a9d7
termux-tools: pkg: get rid of redundant IPFS gateway, use dweb.link as IPFS gateway, recalculate traffic shares 2021-05-18 15:56:34 +03:00
Leonid Pliushch 5d32c11daf
termux-tools: termux-change-repo: alphabetically sort mirrors except CN ones 2021-05-18 15:48:47 +03:00
Krishna Kanhaiya e63d89bdc1
Added new repo/mirror (#6821) 2021-05-18 12:26:39 +05:30
Leonid Pliushch af75537b43
termux-tools: update default repositories in termux-change-repo 2021-04-30 20:36:46 +03:00
Leonid Pliushch 77604a91e0
termux-tools: termux-change-repo: get rid of Bintray repos
Update URLs in "default" hosting section.
2021-04-14 18:04:57 +03:00
Leonid Pliushch 43a7f0730c
termux-tools: termux-change-repo: refer to termux.org as default repository
We have never used it as standalone host but instead as persistent URL pointing
to the actual stable repository or other mirror shown by termux-change-repo
utility.
2021-04-14 18:02:04 +03:00
Dario Vladovic ecd1a46232 termux-tools: pkg: add `hostname` helper 2021-04-07 19:38:12 +03:00
Dario Vladovic 29e41670ed termux-tools: pkg: calculate cache age using `last_modified` 2021-04-07 19:38:12 +03:00
Dario Vladovic a8d6930b8d termux-tools: pkg: extract mirror check to function 2021-04-07 19:38:12 +03:00
agnostic-apollo 1ab8eb34f1 termux-tools: Only create ~/.termux/termux.properties if ~/.config/termux/termux.properties does not exist 2021-04-04 07:45:56 +05:00
Leonid Pliushch 8d447cb1b4
termux-tools: show application version when running termux-info (#6547) 2021-03-20 15:46:44 +02:00
Dario Vladović ac2ec670dd
termux-tools: pkg: add info as show alias (#6498) 2021-03-10 06:48:07 +01:00
Leonid Pliushch 7b5a67d416
termux-tools: use profile script to generate a sample termux.properties
Avoid use of postinst or preinst scripts in bootstrap packages. They will not
be executed.
2021-02-27 22:49:55 +02:00
Leonid Pliushch b613af721f
termux-tools: pkg: replace ipfs.2read.net gateway
ipfs.2read.net has limited bandwidth which is a problem when downloading
large packages.
2021-02-15 20:41:15 +02:00
Leonid Pliushch b10c5eb196
termux-tools: pkg: don't use ipfs.sloppyta.co due to aggressive caching
Clients using ipfs.sloppyta.co IPFS gateway won't see repo updates.

Use termux.mentality.rip web mirror as it seems working fine now.
2021-02-15 18:32:28 +02:00
Leonid Pliushch d6cc31ce65
termux-tools: pkg: update ipfs gateways & mirrors list 2021-02-12 20:20:05 +02:00
Leonid Pliushch 130f10f0a1
termux-tools: pkg: rotate ipfs gateways and mirrors 2021-02-12 18:52:51 +02:00
Leonid Pliushch b373b3dfff
termux-tools: pkg: replace main.termux-mirror.ml 2021-02-10 21:33:02 +02:00
Leonid Pliushch dec6715cf2
termux-tools: fix termux-am class name, so termux-reset will work correctly 2021-02-10 15:28:29 +02:00
Leonid Pliushch 5b1cd873e4
termux-tools: termux-change-repo: mirrors by @xeffyr are on IPFS now 2021-02-10 14:58:34 +02:00
Henrik Grimler 5c106a4225 termux-tools: add dummy termux.properties file
Hopefully makes it easier for users to learn about the available settings.
2021-01-06 15:00:09 +01:00
Archenoth 654f255f8a Fixed typo in motd (And changed wording to keep line lengths consistent) 2021-01-04 22:00:50 +05:30
Leonid Pliushch 058b1c7ad4
termux-tools: pkg: mirrors should not have same weight 2021-01-03 12:51:00 +02:00
Leonid Pliushch 4b8ffa260e
termux-tools: pkg: disable mirror termux.mentality.rip
Doesn't receive updates since December 25, 2020.
2021-01-02 23:05:36 +02:00
Leonid Pliushch 44a735d843
termux-tools: motd: add note that Play Store variant is no longer updated 2020-12-29 21:05:11 +02:00
Leonid Pliushch 377da94e12
termux-tools: version 0.100 2020-12-24 17:14:07 +02:00
Leonid Pliushch 99fff21d87
termux-tools: pkg: use termux.org as primary mirror 2020-12-24 17:13:50 +02:00
Leonid Pliushch c101139097
termux-tools: pkg: send more info in user-agent string
Send termux-tools package version, build-time app package name and
installation prefix. Just like with apt.
2020-12-24 17:13:45 +02:00
Leonid Pliushch 37375312b9
explicitly set maintainer for each package
In issue https://github.com/termux/termux-packages/issues/6160 I have found
that community repo "its-pointless.github.io" specifies us as maintainer
for its packages. This is NOT TRUE and potentially misleads people using
these packages.

Now TERMUX_PKG_MAINTAINER will contain a default value which is neutral
and not specify maintainer. So all packages now have to override it to
the correct value.

[skip ci]
%ci:no-build
2020-12-20 15:16:34 +02:00
Leonid Pliushch 68ca728891
termux-tools: version 0.99 2020-11-24 02:27:21 +02:00
Leonid Pliushch 61fccaf2d0
termux-tools: improve description of 'single-user' environment in termux.1 manpage 2020-11-24 02:26:55 +02:00
Leonid Pliushch d340a1605e
termux-tools: fix another typo in termux.1 manpage 2020-11-24 02:21:31 +02:00
Leonid Pliushch 21aab222d6
termux-tools: fix typo in termux.1 manpage
https://github.com/termux/termux-app/issues/1829
2020-11-24 02:14:27 +02:00
Leonid Pliushch d98a741ac6 termux-tools: pkg: when checking mirrors, force terminate curl command after 6 seconds timeout
Before this, we had only '--connect-timeout 5' option specified but unfortunately
it doesn't work in cases when remote host is behind some proxy (e.g. CloudFlare)
but is not connected to Internet.

To prevent curl from hanging for unspecified amount of time, we need to introduce
external timeout here.
2020-11-12 20:02:17 +02:00
Leonid Pliushch 0cb1b82333 fix hardcoded Termux directories in mpd, renameutils, termux-tools 2020-10-30 22:15:19 +02:00
Leonid Pliushch acd44693df termux-tools: add one line padding to the end of MOTD 2020-10-04 19:40:38 +03:00
Leonid Pliushch 83e3020a2c termux-tools: add manual page for Termux app
An offline compilation of important information from the
Termux Wiki.
2020-10-02 21:32:06 +03:00
Leonid Pliushch 46425818bc termux-tools: avoid duplicate slashes in URLs when checking mirror availability
Really this is not an issue, but double slashes make logs looking a bit weird:

... "HEAD //dists/stable/Release HTTP/1.1" ...
2020-08-11 20:42:17 +03:00
Leonid Pliushch fc0e77edb2 termux-tools: fix typo in pkg 2020-08-04 01:39:52 +03:00
Leonid Pliushch 578f66a5e3 termux-tools: use 5 seconds connection timeout when testing mirror availability 2020-08-02 01:50:34 +03:00
Leonid Pliushch 22a4bf8cfe termux-tools: use weight-based mirror selection (#5628)
* Weight-based mirror selection: do not give each mirror same usage ratio as hosts have different properties.
* Rotate mirrors after 6h: pkg now checks usability of all mirrors before selecting one, this takes time but we may want to reduce delays before the actual `apt` operation will be started.
* Update apt cache after 20min: reduce amount of necessary package list queries. We even can go with 1h, but since we prefer origin repository over mirrors as download source, 20 minutes should be fine.
2020-08-01 20:25:19 +03:00
Leonid Pliushch 0c682b3cd6 termux-tools: improve usage info for pkg
* Avoid long lines.
* Add missing info for some commands.
* Do not show deb cache size if its size cannot be determined, for example if cache dir was deleted.
2020-08-01 02:49:07 +03:00
buttaface 4801874eb6 termux-tools: add 'pkg autoclean' and command descriptions to help (#5627) 2020-08-01 15:21:10 +03:00
Leonid Pliushch 9c1635f1c3 termux-tools: fix path to pkgcache.bin after apt update, add support for `pkg clean` 2020-07-31 19:31:42 +03:00
Leonid Pliushch c30de5e30b termux-tools: use https://termux.org/packages/ as fallback instead of direct Bintray URL 2020-07-31 14:29:31 +03:00
Leonid Pliushch 713c7160fc termux-tools: automatically pick a mirror by pkg (#5621)
See https://github.com/termux/termux-packages/issues/5620.

Implements automatic mirror selection:
* Pick a random URL of top 4 mirrors of Termux main repository and use it during 30 minutes limit, then rotate to a new one. Distribute traffic accross multiple mirrors, including origin Bintray repository.
* During 30 minutes limit, let `pkg` to check whether mirror is accessible on each run. If mirror is not accessible, use a new one. Mirrors are not guaranteed to be 100% accessible, so let pkg to check which one is working before using `apt`.
* Skip rotating if using `.cn` mirrors - Chinese users will not want to use something else due to great firewall and download speed issues.
2020-07-31 14:18:43 +03:00
Leonid Pliushch 23eee5f7cb termux-tools: add '-Xusejit:true' to dalvikvm 2020-07-26 14:08:52 +03:00
Leonid Pliushch d5b4dddff0 termux-tools: termux-reset: ensure that $PREFIX is RWX before deleting
Set RWX permissions recursively on $PREFIX before deleting it. This
is needed to ensure that all files and directories can be deleted
by `rm`.

However this may not work if permissions were messed up with root.
2020-07-21 16:01:45 +03:00
Leonid Pliushch 3f081dd19e termux-tools: do not mkdir $PREFIX/bin/applets 2020-07-09 00:59:24 +03:00
Leonid Pliushch f7216d85b8 termux-tools: bump revision 2020-07-01 14:49:59 +03:00
Henrik Grimler d25ef2c156 termux-tools: add cmd wrapper as well
See https://github.com/termux/termux-api/issues/354.
2020-07-01 12:37:34 +02:00
Leonid Pliushch 3998a1692b termux-tools: add BFSU mirrors 2020-06-21 22:21:14 +03:00
Leonid Pliushch 0ce19ca522 termux-tools: remove check for /system/bin/killall
/system/bin/killall should be present on all devices running Android 7.0+.
2020-06-07 21:01:12 +03:00
Henrik Grimler cc79632785 termux-tools: minor grammatical changes 2020-06-07 19:55:26 +02:00
Leonid Pliushch aa225b374d termux-tools: fix message typo in termux-reset 2020-06-07 20:40:53 +03:00
Leonid Pliushch b9a86e7836 termux-tools: add script for resetting Termux installation (#5377) 2020-06-07 20:05:11 +03:00
Leonid Pliushch f8f367cfc3 termux-tools: bump revision 2020-06-01 20:28:17 +03:00
Leonid Pliushch 00545cf7b9 termux-tools: fix message in termux-setup-storage 2020-06-01 20:27:14 +03:00
Leonid Pliushch ad8fa679cb termux-tools: ask user for confirmation before recreating ~/storage directory
Notify user about potential data loss if files were placed to
the root of ~/storage directory during execution of termux-setup-storage.
2020-06-01 20:23:30 +03:00
Leonid Pliushch 1fa297a587 termux-tools: update mirror list for termux-change-repo 2020-04-19 23:05:34 +03:00
Leonid Pliushch 3d371241d1 termux-tools: depend on util-linux and bump revision 2020-03-30 15:19:14 +03:00
Leonid Pliushch df1c86646f termux-tools: use getopt from util-linux 2020-03-30 15:18:06 +03:00
Leonid Pliushch 6fb2bb2fbf termux-tools: avoid busybox usage 2020-03-30 15:15:59 +03:00
Leonid Pliushch 846ed3a780 chmod 755 termux-change-repo 2020-03-30 15:13:47 +03:00
Leonid Pliushch cf701debba termux-tools: fix repo component names for "x11" & "unstable" 2020-03-29 21:30:25 +03:00
Henrik Grimler c2dc8dfe5c termux-tools: remove backticks 2020-03-29 20:30:10 +02:00
Henrik Grimler e15f8c42be termux-tools: fix copy-paste error in x11-packages url
Also run apt update after changing repositories
2020-03-29 20:26:30 +02:00
Henrik Grimler 9415f71929 termux-tools: add termux-change-repo script (#5069)
* termux-tools: add termux-change-repo script

Simplifies changing repositories to a mirror, useful when Bintray downloads hit the roof

* *-repo: add etc/apt/sources.list.d/* to TERMUX_PKG_CONFFILES
2020-03-24 07:14:42 +01:00
Leonid Pliushch dc14c12940 apt: prevent usage of certain commands as root
Usage of package manager as root has certain bad effects in Termux such as
messed up SELinux contexts and ownership. Root checks done in 'pkg' wrapper
are not reliable because one can execute 'apt' directly or with third-party
script downloaded from the Internet.

This commit adds user id check and if it found that uid is 0, apt will
refuse to do any work in root session. These checks done in such way so
they cannot be bypassed in any way unless command is executed as non-root
user.

Those who use Termux via ADB root shell should be able to switch to Termux
user id with command 'su' in order to have package manager working.

---

This change also affects the 'termux-info' utility:

 * It will no longer use 'apt policy' to detect subscribed repositories. Each
   source will be checked by script manually.

 * Information will be copied to clipboard only if 'termux-api' is installed.

 * Syntax error in timeout command is fixed: 'timeout' doesn't understand the
   argument '-t'.

 * Minor information entries reordering.
2019-11-13 16:38:40 +02:00
Efreak 63733da336 Don't run `apt update` if it's been run recently (#4135)
When installing or searching for packages, the `apt update` will run only if it
was not executed within the last 5 minutes. Command `pkg upgrade` will
always execute `apt update` to ensure that latest package versions were
picked during upgrade.
2019-11-10 16:29:05 +02:00
Fredrik Fornwall 8bb0f44ad7 termux-tools: bump version 2019-10-06 10:00:12 +02:00
Fredrik Fornwall 8223845be1 termux-tools: Add /sbin to su path (fixes #4345) 2019-10-06 01:26:36 +02:00