Commit Graph

1006 Commits

Author SHA1 Message Date
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
Tee KOBAYASHI 9fe1b6ae36 termux_setup_protobuf: Update checksum 2022-01-17 11:05:26 +02:00
Ivan Max ece5419863
build-package.sh: setting up to work with pacman (#8451) 2022-01-14 15:16:37 +02:00
Tee KOBAYASHI 19563a614b docker image: Install python3-jsonschema 2022-01-14 10:49:11 +02:00
Arun 1fe661b544 golang: update to 1.17.6 2022-01-14 09:30:45 +01:00
agnostic-apollo f25b989d6f Fixed: Fix broken bootstrap zips by adding termux-keyring dependency
The science-repo and game-repo were recently removed and their packages were added to the main repo.
During this their dependencies were removed from bootstrap zips in generate-bootstrap.sh script.
However, both these packages were dependent on termux-keyring package and the script did not have an entry itself for termux-keyring, so their removal resulted in missing termux-keyring package in bootstrap, which resulted in no keys to exist in `$TERMUX_PREFIX/etc/apt/trusted.gpg.d/` on fresh install, which resulted in `The following signatures couldn't be verified because the public key is not available: NO_PUBKEY*` errors when running `apt update` command for any bootstrap generated after Dec 14, 2021.

https://github.com/termux/termux-packages/commits/master/scripts/generate-bootstraps.sh
https://github.com/termux/termux-packages/commit/87b9cd3cf
https://github.com/termux/termux-packages/commit/758ec3a92

https://github.com/termux/termux-packages/commit/a3307822
https://github.com/termux/termux-packages/commit/f8746124
2022-01-07 23:59:14 +05:00
Yaksh Bariya c15b7f17bf
ndk-sysroot: bump revision after removing patch for mntent.h
Also bump toolchain version
2022-01-03 19:21:36 +05:30
Ivan Max b2fbd905e2
build-package.sh: improve version string editing for pacman format (#8384) 2021-12-29 10:55:08 +02:00
Leonid Pliushch b048650736
linter: fix detecting invalid versions 2021-12-26 17:47:07 +02:00
Leonid Pliushch 1b7a64470c
linter: check package version format 2021-12-23 15:31:33 +02:00
Tee KOBAYASHI a50823da6b toolchain: Link libandroid-support with `--no-as-needed` 2021-12-20 12:01:41 +02:00
Yaksh Bariya e54de65f96
Revert "termux_setup_meson: roll back to 0.59.3"
This reverts commit df0c1def16.
2021-12-14 19:32:13 +05:30
Henrik Grimler 87b9cd3cfd
bootstraps: remove science-repo
Since the science-packages repository has been merged into
termux-packages.
2021-12-14 14:57:18 +01:00
Yaksh Bariya df0c1def16
termux_setup_meson: roll back to 0.59.3
shared-mime-info from x11 packages needs old version of meson
2021-12-14 16:00:26 +05:30
Yaksh Bariya dd647ac3c7 toolchain: bump revision 2021-12-12 10:07:41 +05:30
Leonid Pliushch 8279cf4717
setup-ubuntu.sh: use 'env' to pass DEBIAN_FRONTEND=noninteractive
Fixes https://github.com/termux/termux-packages/issues/8209
2021-12-11 23:19:13 +02:00
Oskar 9cf48b4910 Update termux_setup_golang.sh 2021-12-10 19:33:05 +05:30
Yaksh Bariya c96f4a8579
cmake: update to 3.22.1 2021-12-09 22:06:10 +05:30
Ivan Max d36faee697
build-package.sh: remove or operator in dependencies for pacman format (#8179) 2021-12-08 16:33:47 +02:00
sk0kanik ecae8900d5 golang: from 1.17.3 to 1.17.4 2021-12-07 01:16:06 +05:30
Yaksh Bariya a6699b433c
gn: bump to 20211203 2021-12-05 21:19:02 +05:30
Henrik Grimler 75edafa904
postgresql: add pg_config shell script
Can be used for packages that depend on postgresql and that tries to
run pg_config during build.
2021-12-05 13:19:49 +01:00
Henrik Grimler a5cf5ef9d5
termux_step_override_config_scripts: don't run on device 2021-12-05 13:18:27 +01:00
Henrik Grimler ed351084a0
termux_step_setup_variables: no need to check termux-{games,science}
Since these repositories have been merged into the main repository
there is no need to check them for dependencies.
2021-12-05 13:18:21 +01:00
Tee KOBAYASHI e4f761f9da toolchain: Bump version 2021-12-05 11:52:23 +02:00
Tee KOBAYASHI 653a110ddb termux_step_setup_toolchain: `-fPIC` should be in `CFLAGS` 2021-12-05 11:52:23 +02:00
Leonid Pliushch 82a78ca781
build-package.sh: fix undefined AR variable
Building metapackages doesn't involve setup of compiler toolchain,
so certain variables are not set. In general, it was not expected
that package archive generation will use utilities that come with
cross-compiler as this functionality should rely on utilities
installed by host package manager.

/home/builder/termux-packages/scripts/build/termux_step_create_debian_package.sh: line 49: AR: unbound variable
2021-12-04 10:37:55 +02:00