Commit Graph

1032 Commits

Author SHA1 Message Date
Aditya Alok 2157e972d9
fix(auto-update): compare versions with epoch added
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 11:38:21 +05:30
Aditya Alok d67a38d324
refactor(auto-update): clean up some code
- move epoch addition to termux_pkg_upgrade_version set.
- now termux_pkg_upgrade_version can be given retrived version/tag from
  api, directly.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 11:21:14 +05:30
Aditya Alok f8cce7faba
fix(auto-update): removal of epoch when TERMUX_PKG_UPDATE_VERSION_REGEXP is set
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-05 00:39:32 +05:30
Aditya Alok 3b92fd5648
Revert "[TEMP] download deps from grimler.se instead of packages.termux.org"
- It should be fixed now.
https://github.com/termux/termux-packages/issues/9860#issuecomment-1087144145

This reverts commit dbd7249e4b.
2022-04-04 11:37:23 +05:30
Aditya Alok dbd7249e4b
[TEMP] download deps from grimler.se instead of packages.termux.org
- packages.termux.org gives wrong checksum for arm and aarch64 repository metadata
2022-04-04 11:03:30 +05:30
Aditya Alok 442174ca9a
refactor(auto-update): move checking unique packages to standalone script
Hmmm..., why do we even need to check whether package is unique or not if we have
TERMUX_PKG_AUTO_UPDATE=true?

It should be checked before enabling auto-update.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-03 00:48:29 +05:30
Tee KOBAYASHI 3c617f6222 golang: Fix hardcoded `/etc/resolv.conf` and friends 2022-04-01 17:22:37 +09:00
Aditya Alok a7d089c195
fix(auto-updates): move extraction of version from regexp to upgrade version step
previously setting TERMUX_PKG_UPDATE_VERSION_REGEXP had no effect on version being wriiten to
build.sh. It was only used for version comparison.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-01 12:58:16 +05:30
Yaksh Bariya 9f28b53c09 cmake: update to 3.23.0 2022-04-01 06:54:18 +00:00
Lucinda May Phipps bf4f0708b9
auto-updates: fix unique package detection 2022-03-31 09:45:47 +01:00
Aditya Alok 64c2ed40b0
fix(termux_github_api_get_tag): addition of '|000' when `extra_curl_opts[1]` was empty
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-30 09:26:56 +02:00
Aditya Alok 0c412fe300
Revert "fix autoupdate for projects hosted on GitHub"
This reverts commit 9d98e6bd14.
2022-03-30 09:26:53 +02:00
Yaksh Bariya 9d98e6bd14
fix autoupdate for projects hosted on GitHub 2022-03-29 18:44:37 +05:30
Aditya Alok c23d019058
feat: replace `apt-compare-versions` script with `termux_pkg_is_update_needed`
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-29 01:01:12 +05:30
Aditya Alok 292474f082 fix(termux_github_api_get_tag): expansion of newline in graphql api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 694a941883 fix(auto update): fix few messages, comments and code
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 08ac4aa4db feat(auto update): add script to get newest version from repology api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 843823e3f9 feat(auto update): add script to get tags from gitlab api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok ba0688e4c5 feat(auto update): add script to get tags from github api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok ea595dd257 feat(auto update): add script to extract repology data from its api
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 4af1102029 feat(auto update): add script to update repology tracked packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok b518a1599b feat(auto update): add script to update gitlab hosted packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 6a061af281 feat(auto update): add script to update github hosted packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 03cc6b6ce8 feat(auto update): add utility function to check if update is needed
- compare current and latest version retrived from respective api

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok 2e093339b2 feat(auto update): add utility function to upgrade package's version
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok e1d6ab87f6 feat(auto update): add utility function to exit on error
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok b089c6182b feat(auto update): add script to decide update method
- hook to be called when auto updating.
- it may be overridden by build.sh

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Aditya Alok bd99580451 refactor(update-packages): new auto-update system
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-28 23:11:11 +05:30
Tee KOBAYASHI 2a1524d67c ndk-patches: Don't declare `sem_{open,close,unlink}`
but instead declare `libandroid_sem_{open,close,unlink}` defined in
`libandroid-posix-semaphore`.
2022-03-26 00:02:59 +09:00
Tee KOBAYASHI a860a7dc20 golang: Update to 1.18 2022-03-23 10:13:33 +09:00
Aditya Alok 64535d4ac3
fix(haskell packages): do not delete `lib/ghc-*` directory for ghc and ghc-libs package itself
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-22 21:39:04 +01:00
Henrik Grimler 3a7bb54376
termux_setup_nodejs: fix check for cached nodejs 2022-03-20 22:11:57 +01:00
Aditya Alok d11d6846e7
refactor(haskell-build): remove default-setup.hs
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:40 +01:00
Aditya Alok 52d7cc88d2
fix(setup ghc cross compiler): call `__termux_haskell_register_packages` after cross ghc setup
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:38 +01:00
Aditya Alok 0866d7b388
fix(setup ghc): create tmpdir in `/tmp`
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:35 +01:00
Aditya Alok 744c20a12d
refactor(setup ghc cross compiler): remove arch specific dirs
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:30 +01:00
Aditya Alok 7b0cf76bad
fix(setup ghc): typo in command `termux_download`
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:26 +01:00
Aditya Alok 6137422df7
fix(setup ghc cross compiler): run `__termux_haskell_register_packages` only when ghc has been setup
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:22 +01:00
Aditya Alok a5f9e8199a
style: lint with shellcheck
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:20 +01:00
Aditya Alok 5dfa5ccbd0
fix(setup ghc cross compiler): did no registered haskell packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:17 +01:00
Aditya Alok f21125b33a
feat(haskell build): export configure variables in setup toolchain step
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:15 +01:00
Aditya Alok 0590811415
fix(configure haskell build): remove `runghc` arg
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:10 +01:00
Aditya Alok a9b411f577
feat(setup ghc cross): handle package registration
feat(termux_setup_ghc_cross_compiler): handle haskell packages registration

chore(termux_setup_ghc_cross_compiler): update checksum

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:07 +01:00
Aditya Alok 3c9ed52daf
feat(haskell build): adhere to new setup script
feat(termux_setup_jailbreak_cabal): use pre-compiled binary

chore(termux_setup_cabal): update checksum

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:32:04 +01:00
Aditya Alok d47825a88c
feat(haskell build system): remove unwanted files/dirs before packaging
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>

fix(termux_step_massage): add `-r` option to `rm` command to delete dir

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>

wip
2022-03-16 15:32:01 +01:00
Aditya Alok 49c3e79513
feat(setup ghc cross compiler): make it work independently from other build steps
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:59 +01:00
Aditya Alok 0a47e01c4d
feat: setup ghc cross compiler during configure step
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:56 +01:00
Aditya Alok 6219a64f32
feat(build scripts): add configure script for haskell packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:51 +01:00
Aditya Alok e492c145af
feat(setup ghc): use patched Cabal package
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:48 +01:00
Aditya Alok 39bf6e9835
feat(build scripts): add steps for haskell packages
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>

refactor(termux_step_get_dependencies): move haskell build steps from here
2022-03-16 15:31:45 +01:00
Aditya Alok e63a8b36a8
feat(haskell build): add default setup.hs
It is used when package does not ship with its own Setup.hs

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:43 +01:00
Aditya Alok e913a1913e
feat(build scripts): add script to setup jailbreak-cabal
It is use to remove version constraints from cabal packages

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:40 +01:00
Aditya Alok feec2fe8ec
feat(build scripts): add script to setup ghc cross compiler
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:36 +01:00
Aditya Alok dbed364f00
feat(build scripts): add script to setup cabal
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-16 15:31:33 +01:00
Chongyun Lee 2894168dfa new package: pypy 2022-03-15 12:01:29 +09:00
Henrik Grimler 33354fdc39
mv a couple of scripts from scripts/ to scripts/bin/
These ones are not run by, and are not really related to, the build
system, so should be safe to move them to the bin/ subdirectory.
2022-03-13 17:23:23 +01:00
Henrik Grimler d0bb3a9273
aptly_api: need to use double quotes in json string
Should hopefully explain error in package publish step..
2022-03-13 14:35:54 +01:00
Henrik Grimler a9befe63d2
aptly_api: fix expansion of GPG_PASSPHRASE when publishing repo 2022-03-13 14:02:52 +01:00
Henrik Grimler 7502d684d8
build-package: create $PREFIX/bin/sh->/bin/sh symlink later
We need to run it after termux_step_get_dependencies, or else the
symlink might be overridden if dash is a dependency, since it contains
a sh->dash symlink.

termux_step_override_config_scripts is run right after
termux_step_get_dependencies, and feels seems like a logical place to
create the symlink (since symlink is used to make config scripts
executable).
2022-03-13 13:58:37 +01:00
Henrik Grimler d2c12f838b
gnunet: update to 0.16.1 2022-03-13 12:23:25 +01:00
Henrik Grimler e7f3a436ae
CI: packages.yml: refactor, move aptly api functions to scripts/ 2022-03-13 11:12:39 +01:00
Tee KOBAYASHI 01cf29c450 setup-android-sdk.sh: Install 'platforms;android-32' 2022-03-13 08:30:29 +09:00
Tee KOBAYASHI 0ed19b96ad termux_setup_meson: Modify URL for gtkdoc patch
now that it is merged upstream.
2022-03-11 15:33:53 +09:00
Henrik Grimler d85f11720e
cmake: update to 3.22.3 2022-03-10 22:04:42 +01:00
Henrik Grimler bf56580acd
termux_setup_meson: use 0.61.2
The PR where we take the gtkdoc patch from has had a force push, so
url to diff needs to be updated.  Upgrade to 0.61.2 while we are at
it.
2022-03-09 09:49:28 +01:00
Henrik Grimler 0e9c95fd90
toolchain/ndk-sysroot: let mesa provide KHR/khrplatform.h
The headers are nearly identical, use the one from mesa to ensure
compatibility with mesa.
2022-03-09 09:28:40 +01:00
Henrik Grimler 59f1c7b183
Revert "feat(ghc): enable cross-compiling haskell packages on CI"
This will need some more work.  Currently
termux_create_haskell_debscripts is run for all packages, even
non-haskell ones, which causes errors in postinst and prerm scripts in
an ugly way.

This reverts commit dc2474b2c2.
2022-03-09 07:40:36 +01:00
Aditya Alok db89dd924d fix(setup ghc cross): define variable before use
Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-09 10:01:57 +09:00
Aditya Alok 3a1acb712b feat(build scripts): allow packages to define extra static split patterns
- add variable `TERMUX_PKG_STATICSPLIT_EXTRA_PATTERNS`

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-09 10:01:57 +09:00
Aditya Alok dc2474b2c2 feat(ghc): enable cross-compiling haskell packages on CI
- `termux_setup_ghc_cross_compiler` should not be called by build.sh, as it installs cross-compiler
in $TERMUX_PREFIX (otherwise ghc adds wrong `rpaths` to built libs and executables)

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-03-09 10:01:57 +09:00
Henrik Grimler b79db7ce73
Revert "[TEMP] download deps from grimler.se instead of packages.termux.org"
This reverts commit 5b432ffbbc.
2022-03-07 14:40:40 +01:00
Tee KOBAYASHI 13c7ef4379 golang: Update to 1.17.8 2022-03-07 12:07:11 +05:30
Henrik Grimler 5b432ffbbc
[TEMP] download deps from grimler.se instead of packages.termux.org
Fosshost mirror is down at the moment.
2022-03-04 08:26:51 +01:00
Tee KOBAYASHI 697894eee0 termux_download_deb_pac.sh: Handle 'all' arch properly 2022-03-04 03:09:30 +09:00
Tee KOBAYASHI 9849f01987 new function: termux_setup_python_crossenv 2022-03-02 12:00:30 +09:00
Henrik Grimler 3879280345
ndk-patches: remove wait3 patch from sys/wait.h
It was added specifically for busybox, and busybox > 1.33 now
implements its own workaround, so should hopefully be no need for this
patch anymore.
2022-03-01 21:45:47 +01:00
Henrik Grimler f66938e355
scripts/build/setup: add termux_setup_nodejs function
To be used by packages that need nodejs during build (gitea and
frida-server for example).

Use LTS version for now (gitea had issues with latest version).
2022-03-01 09:03:54 +01:00
Leap of Azzam 7fa5b47ec8
zig: bump to 0.9.1 (#9137)
* zig: bump to 0.9.1
2022-02-26 14:07:10 +05:30
YAKSH BARIYA 6fe370b6cd
picolisp: update to 21.12 (#9084) 2022-02-25 14:02:46 +00:00
Henrik Grimler e37646a3ae
Revert "[TEMP] download deps from grimler.se instead of packages.termux.org"
This reverts commit 7850c1d98b.
2022-02-25 08:27:38 +01:00
Henrik Grimler 7850c1d98b
[TEMP] download deps from grimler.se instead of packages.termux.org
Fosshost mirror is down at the moment.
2022-02-24 14:11:43 +01:00
Henrik Grimler 42b4712c15
step_setup_variables: fix warning about undefined TERMUX_MAIN_PACKAGE_FORMAT 2022-02-19 14:41:19 +05:30
Medzik 1928761152 bump golang to 1.17.7 2022-02-16 05:17:17 +05:30
Tee KOBAYASHI b34c1d7ee4 termux_step_configure_autotools: Cat `config.log` when failed 2022-02-15 19:52:41 +01:00
Tee KOBAYASHI e8625ec370 termux_setup_meson: Backport patch for gtkdoc
from https://github.com/mesonbuild/meson/pull/9841.
2022-02-15 16:38:08 +09:00
Maxython 465159a72e
build-package.sh: change logic for package manager selection to be more stable
termux_step_setup_variables: added logic with TERMUX_PACKAGE_FORMAT
for easier compilation.
2022-02-11 22:38:40 +01:00
Maxython d3556570a5
setup_build_folders, clean.sh: don't fail if chmod fails
For some reason chmod +w -R returns an error when building on
device. Lets not fail build when this happens.
2022-02-11 22:37:18 +01:00
Henrik Grimler 9155acd040 termux_step_configure_cmake: set CMAKE_INSTALL_LIBDIR
Some packages seem to need it, but maybe just when building outside
docker image?  Set in termux_step_configure_cmake instead of in
individual build recipes.

%ci:no-build
2022-02-11 21:20:14 +01:00
Henrik Grimler c31ee772c2
Update docker image to Ubuntu 21.10
A ./build-all.sh -i finishes successfully.  (There seem to be some
issue with the build-all script where some packages are not built
though)
2022-02-08 11:48:43 +01:00
Lucy Phipps bbdaa639f7
update docker image to Ubuntu 21.04 2022-02-08 11:48:36 +01:00
agnostic-apollo 5ac3fdbd30 Added(scripts): Add build-bootstrap.sh 0.1.0
The build-bootstrap.sh is a script to build bootstrap archives for the termux-app from local package sources instead of debs published in apt repo like done by generate-bootstrap.sh. It allows bootstrap archives to be easily built for (forked) termux apps without having to publish an apt repo first. Run `build-bootstrap.sh --help` for more info.

### Examples

Build default bootstrap archives for all supported archs:
./scripts/run-docker.sh ./scripts/build-bootstraps.sh &> build.log

Build default bootstrap archive for aarch64 arch only:
./scripts/run-docker.sh ./scripts/build-bootstraps.sh --architectures aarch64 &> build.log

Build bootstrap archive with additionall openssh package for aarch64 arch only:
./scripts/run-docker.sh ./scripts/build-bootstraps.sh --architectures aarch64 --add openssh &> build.log
2022-02-08 08:11:53 +05:00
Butta 5d98fde4ab swift: fix memory tagging collisions on aarch64 since Android 11 2022-02-08 01:24:14 +05:30
Henrik Grimler 89c54741a5
termux_setup_meson: fix deprecated way of setting cflags and ldflags
c_args and friends should be under [built-in options] now.
2022-02-05 09:25:45 +01:00
Henrik Grimler 1a2ab9b78f
termux_setup_meson: use latest meson 0.61.1 2022-02-04 21:05:50 +01:00
Henrik Grimler e16c9f2078
termux_setup_meson: remove RUNPATH fix
Original issue seem to have been fixed, and depfixer.py has been
updated so that the perl replace command no longer does anything.
2022-02-04 21:05:12 +01:00
xeffyr 43b2f17506 scripts: update 'update-checksum' & 'revbump' 2022-01-31 20:21:59 +02:00
Yaksh Bariya 76e3b95e41
Fix more instances of `which`
How did I miss this before?
2022-01-30 10:26:06 +05:30
Tee KOBAYASHI 907319a383 docker image: Install clang-12 and friends 2022-01-30 04:05:51 +09:00
Leap of Azzam 18fbc56c72 add package: zig
Signed-off-by: Leap of Azzam <leapofazzam@gmail.com>
2022-01-25 20:52:58 +09:00
s00se cfe80644b7 docker-image: add gcc-arm-none-eabi 2022-01-18 10:19:25 +02:00