Commit Graph

22292 Commits

Author SHA1 Message Date
Henrik Grimler ef84298feb
chore(tree-wide): remove exe bit from build.sh scripts
There is zero reason to have our build recipes marked as executable.

%ci:no-build
2022-07-30 19:43:55 +02:00
Henrik Grimler edb6d4fd35
chore(main/apktool): Avoid stripping and elf-cleaning tools manually
It is done automatically by termux_step_massage.
2022-07-30 16:44:12 +02:00
Henrik Grimler f4e72abcfd
chore(main/valgrind): skip downloading and running align_fix.py
Termux-elf-cleaner 2.0.0 and newer checks and fixes underaligned TLS
segments as well, so no need to download another script for it.
2022-07-30 16:44:10 +02:00
Henrik Grimler 5ab6d52854
scripts(massage): specify target api level when running elf-cleaner
Termux-elf-cleaner 2.0.0 added the possibility to specify target api
level with --api-level, instead of just during compile time.
2022-07-30 16:44:07 +02:00
Henrik Grimler 5d07daf772
scripts(start_build.sh): download pre-compiled termux-elf-cleaner
CI now compiles the program on every release, so lets download that
instead of the source in termux_step_start_build.sh.
2022-07-30 16:44:05 +02:00
Henrik Grimler acc766f652
updpkg(main/termux-elf-cleaner): update to 2.1.1 2022-07-30 16:40:17 +02:00
Henrik Grimler ae57e3fae0
scripts(setup-termux.sh): install xmlto, needed by git 2022-07-30 16:27:31 +02:00
Henrik Grimler 4f9a758e12
addpkg(main/xmlto): add package 2022-07-30 16:27:28 +02:00
Henrik Grimler ece48b76d1
addpkg(main/mkp224o): generates (brute-forces) customised onion addresses 2022-07-30 16:27:13 +02:00
Henrik Grimler bc888d9a76
addpkg(main): add package rust-bindgen
For generating rust bindings from headers.
2022-07-30 16:26:59 +02:00
Termux Github Actions 9a7b2f6490 clvk: update to 0.0.20220730g8d0412c7
This commit has been automatically submitted by Github Actions.
2022-07-30 13:02:06 +00:00
Henrik Grimler 5c812ef4bc
chore(main/python-apt): remove setuptools patch
It is no longer needed after update of ubuntu in docker image to
22.04.

%ci:no-build
2022-07-30 14:34:20 +02:00
Henrik Grimler ae7efef821
chore(main/matplotlib): remove setuptools patch
It is no longer needed after update of ubuntu in docker image to
22.04.
2022-07-30 14:34:12 +02:00
Henrik Grimler 9d695d6f4b
scripts(setup-ubuntu.sh): install openjdk-17 from ppa repo
This is necessary if we are to build openjdk-17 after update of docker
image to ubuntu 22.04.
2022-07-30 14:34:07 +02:00
Henrik Grimler d3b2ac380c
chore(main/libsoxr): do not override termux_step_{configure,make}
%ci:no-build
2022-07-30 12:56:32 +02:00
Henrik Grimler 5ed8877277
chore(main/entr): do not override termux_step_make
There does not seem to be any reason for it.
2022-07-30 12:56:29 +02:00
Henrik Grimler 31dfe9ff86
chore(main/bitcoin): configure mandir
Since we set prefix to the depends folder some install paths are
wrong.
2022-07-30 12:56:26 +02:00
Henrik Grimler 271e96e8a7
chore(main/mutt): simplify termux_step_post_make_install
Since we are building in TERMUX_PKG_SRCDIR we can specify paths as
relative paths instead of absolute paths.
2022-07-30 12:56:24 +02:00
Henrik Grimler 9770ac9eee
chore(main/git): avoid overriding termux_step_make{,_install}
Run custom steps related to contrib/subtree dir in
termux_step_post_make_install instead.
2022-07-30 12:56:19 +02:00
Henrik Grimler bcb81f5d35
fix(main/mpc): use termux's mpd socket if --host is not given
Previously mpc had to be run with '--host $PREFIX/var/run/mpd.socket',
or else we got:

  MPD error: Connection refused

Patch mpd to use our socket if --host option is omitted, so that it
works without extra options.
2022-07-30 12:15:49 +02:00
Henrik Grimler 52eff4a81c
fix(main/pkg-config): use symlinks instead of hardlinks
To fix error when building on device.  The file that is
hardlinked/softlinked is removed through TERMUX_PKG_RM_AFTER_INSTALL
so we could have also just removed the Makefile target that runs ln.
2022-07-30 12:15:47 +02:00
Henrik Grimler 7565ac8bf0
fix(main/emacs): fix so emacsclient uses socket in /var/run per default 2022-07-30 12:15:44 +02:00
Henrik Grimler c764ffdba3
fix(main/emacs): silence warning about site-start.el quoting
Warning (comp): ../../../../../usr/share/emacs/site-lisp/site-start.el: Warning: (lambda nil \...) quoted with ' rather than with #' Disable showing Disable logging
2022-07-30 12:15:42 +02:00
Henrik Grimler b108e5be62
chore(main/emacs): sort configure args alphabetically 2022-07-30 12:15:39 +02:00
Henrik Grimler 0e812bed2f
chore(main/termux-tools): mark profile script as conffile 2022-07-30 12:15:34 +02:00
Termux Github Actions 87ef30ad49 z3: update to 4.10.2
This commit has been automatically submitted by Github Actions.
2022-07-30 06:35:02 +00:00
Termux Github Actions 71f138f480 neovim-nightly: update to 0.8.0-dev-739-ge59bc078d
This commit has been automatically submitted by Github Actions.
2022-07-30 06:19:19 +00:00
Pooya Moradi 4d78fc1cd9 new package: atool 2022-07-30 13:02:26 +08:00
Confundo 111363b541 add(main): new package hcloud 2022-07-30 12:21:50 +08:00
Termux Github Actions 4685eecb9b mdbook-mermaid: update to 0.11.2
This commit has been automatically submitted by Github Actions.
2022-07-30 00:25:38 +00:00
Termux Github Actions efb759cbea flyctl: update to 0.0.363
This commit has been automatically submitted by Github Actions.
2022-07-29 18:12:16 +00:00
Li Chong Yun 00a99765c7 nushell: update to 0.66.2 2022-07-29 21:38:26 +05:30
Termux Github Actions 0a306c98ee procs: update to 0.13.0
This commit has been automatically submitted by Github Actions.
2022-07-29 06:26:40 +00:00
Termux Github Actions 9f7ac68483 neovim-nightly: update to 0.8.0-dev-737-g0b8bade49
This commit has been automatically submitted by Github Actions.
2022-07-29 06:21:24 +00:00
Termux Github Actions 8e14c0b1d2 kubelogin: update to 1.25.2
This commit has been automatically submitted by Github Actions.
2022-07-29 06:13:00 +00:00
Termux Github Actions d60f95f049 chezmoi: update to 2.20.0
This commit has been automatically submitted by Github Actions.
2022-07-29 06:10:55 +00:00
Termux Github Actions 9b5f54a438 vulkan-tools: update to 1.3.223
This commit has been automatically submitted by Github Actions.
2022-07-29 00:25:06 +00:00
Termux Github Actions 383bde0214 vulkan-headers: update to 1.3.223
This commit has been automatically submitted by Github Actions.
2022-07-28 12:10:56 +00:00
agnostic-apollo caff1a71e5 libprotobuf: Revert package revision bump 2022-07-28 15:35:42 +05:00
Lucinda May Phipps 7e2daf81e1 termux-step-massage: faster empty package check 2022-07-28 15:27:20 +05:00
agnostic-apollo f743005751 fix(build-package.sh): Localize and do not use variables defined in `termux_step_host_build` in other functions
The `termux_step_host_build` runs only the first time package is built for its specific version, based on `TERMUX_HOSTBUILD_MARKER` in `termux_step_handle_hostbuild`. If `build-package.sh` is run twice, then second time, variables defined in `termux_step_host_build` won't be set in later functions since its not called, like `_PREFIX_FOR_BUILD` in `aapt/build.sh` would be unset inside `termux_step_pre_configure`, resulting in unbound variable error.

Even `termux_step_pre_configure` may not always run, depending on `$TERMUX_CONTINUE_BUILD`, so build scripts should not share variables between functions and redefine them again where necessary.

Also `_PREFIX_FOR_BUILD` should use a standard path `$TERMUX_PKG_HOSTBUILD_DIR/prefix` and not others like `$TERMUX_PKG_HOSTBUILD_DIR/_prefix`. Some build scripts use `$TERMUX_PKG_HOSTBUILD_DIR/src` for other stuff, so best use `prefix` sub directory.
2022-07-28 15:27:20 +05:00
agnostic-apollo f598de4ae4 fix(termux_step_massage): Fix typo in 034f29eb 2022-07-28 15:27:20 +05:00
agnostic-apollo 81e4f8dea4 changed(.gitignore): Ignore log and bootstrap files 2022-07-28 15:27:20 +05:00
agnostic-apollo 7b9b9b6224 fix(run-docker.sh): Fix docker exec not passing kill signals (ctrl+c) to commands in some cases leaving processes still running
If `--tty` is not passed to `docker exec` because stdout is not available (`[ ! -t 1 ]`), like due to redirection to file (`&> build.log`) or if stdin is not available (`< /dev/null`), then docker does not forward kill signals to the process started and they remain running.

To fix the issue, the `DOCKER_EXEC_PID_FILE_PATH` env variable with the value `/tmp/docker-exec-pid-<timestamp>` is passed to the process called with `docke exec` and the process started stores its pid in the file path passed. Traps are set in `run-docker.sh` that runs the `docker exec` command to receive any kills signals, and if it does, it runs another `docker exec` command to read the pid of the process previously started from `DOCKER_EXEC_PID_FILE_PATH` and then kills it and all its children.

See Also:

https://github.com/docker/cli/issues/2607
https://github.com/moby/moby/issues/9098
https://github.com/moby/moby/pull/41548
https://stackoverflow.com/questions/41097652/how-to-fix-ctrlc-inside-a-docker-container

Also passing `--init` to `docker run` to "Run an init inside the container that forwards signals and reaps processes", although it does not work for above cases, but may helpful in others. The `--init` flag changes will only engage on new container creation.

https://docs.docker.com/engine/reference/run/#specify-an-init-process

https://docs.docker.com/engine/reference/commandline/run/

```
./scripts/run-docker.sh ./build-package.sh -f libjpeg-turbo  &> build.log
^C
$ ./scripts/run-docker.sh ps -efww
Running container 'termux-package-builder' from image 'termux/package-builder'...
UID          PID    PPID  C STIME TTY          TIME CMD
builder        1       0  0 05:48 pts/0    00:00:00 bash
builder     9243       0  0 06:01 pts/1    00:00:00 bash
builder    28127       0  0 06:12 ?        00:00:00 /bin/bash ./build-package.sh -f libjpeg-turbo
builder    28141   28127  0 06:12 ?        00:00:00 /bin/bash ./build-package.sh -f libjpeg-turbo
builder    28449   28141  1 06:12 ?        00:00:00 ninja -w dupbuild=warn -j 8
builder    28656   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28657   28656 79 06:12 ?        00:00:01 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28694   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28695   28694 89 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28728   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28729   28728  0 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28731   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28734   28731  0 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28740   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28741   28740  0 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28744       0  0 06:12 pts/2    00:00:00 ps -efww
builder    28748   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28752   28748  0 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28753   28449  0 06:12 ?        00:00:00 /bin/sh -c /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28754   28753  0 06:12 ?        00:00:00 /home/builder/.termux-build/_cache/android-r23c-api-24-v0/bin/clang
builder    28755   28449  0 06:12 ?        00:00:00 ninja -w dupbuild=warn -j 8
$ ./scripts/run-docker.sh ./build-package.sh -f libjpeg-turbo  &> build.log
$ ./scripts/run-docker.sh ./build-package.sh -f libjpeg-turbo
Running container 'termux-package-builder' from image 'termux/package-builder'...
ERROR: Another build is already running within same environment.
```
2022-07-28 15:27:20 +05:00
agnostic-apollo 571db28a3d termux_step_configure_cmake: Revert CMAKE_INSTALL_LIBDIR old behaviour changed in 2af00064
Absolute paths are still allowed in `DCMAKE_INSTALL_LIBDIR` as per https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html

Different packages have different way of handling `DCMAKE_INSTALL_LIBDIR`. The `libprotobuf` is appending an absolute path to `build` directory (#10068), while `libjpeg-turbo` is not appending a relative `lib` path to `DCMAKE_INSTALL_PREFIX` and instead  appending to `build` directory and so all the lib files stay at `/home/builder/.termux-build/libjpeg-turbo/build/lib` and hence won't get added to the `deb`, which results in `openjdk-17` failing if `-i` is not passed to `build-package.sh`, since it can't find `libjpeg.so` with `-L${TERMUX_PREFIX}/lib` after compilation from source, unless `-L$TERMUX_TOPDIR/libjpeg-turbo/build/lib` is passed.

Considering that most packages would likely be considering an absolute path passed in `DCMAKE_INSTALL_LIBDIR` to actually be absolute, the default behaviour should be reverted, specially considering it is what's been working, otherwise lot of packages would need testing, like from https://github.com/termux/termux-packages/commit/9155acd040.

```
checking for which libjpeg to use... system
checking jpeglib.h usability... yes
configure: WARNING: jpeglib.h: accepted by the compiler, rejected by the preprocessor!
checking jpeglib.h presence... no
checking for jpeglib.h... yes
configure: WARNING: jpeglib.h: proceeding with the compiler's result
configure: error: --with-libjpeg=system specified, but no libjpeg found
checking for jpeg_CreateDecompress in -ljpeg... no
configure exiting with result code 1
```

```
[0/1] Install the project...
-- Install configuration: "Release"
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/libturbojpeg.so
-- Installing: /data/data/com.termux/files/usr/bin/tjbench
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/libturbojpeg.a
-- Installing: /data/data/com.termux/files/usr/include/turbojpeg.h
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/libjpeg.a
-- Installing: /data/data/com.termux/files/usr/bin/rdjpgcom
-- Installing: /data/data/com.termux/files/usr/bin/wrjpgcom
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/README.ijg
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/README.md
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/example.txt
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/tjexample.c
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/libjpeg.txt
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/structure.txt
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/usage.txt
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/wizard.txt
-- Installing: /data/data/com.termux/files/usr/share/doc/libjpeg-turbo/LICENSE.md
-- Installing: /data/data/com.termux/files/usr/share/man/man1/cjpeg.1
-- Installing: /data/data/com.termux/files/usr/share/man/man1/djpeg.1
-- Installing: /data/data/com.termux/files/usr/share/man/man1/jpegtran.1
-- Installing: /data/data/com.termux/files/usr/share/man/man1/rdjpgcom.1
-- Installing: /data/data/com.termux/files/usr/share/man/man1/wrjpgcom.1
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/pkgconfig/libjpeg.pc
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/pkgconfig/libturbojpeg.pc
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/cmake/libjpeg-turbo/libjpeg-turboConfig.cmake
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/cmake/libjpeg-turbo/libjpeg-turboConfigVersion.cmake
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/cmake/libjpeg-turbo/libjpeg-turboTargets.cmake
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/cmake/libjpeg-turbo/libjpeg-turboTargets-release.cmake
-- Installing: /data/data/com.termux/files/usr/include/jconfig.h
-- Installing: /data/data/com.termux/files/usr/include/jerror.h
-- Installing: /data/data/com.termux/files/usr/include/jmorecfg.h
-- Installing: /data/data/com.termux/files/usr/include/jpeglib.h
-- Installing: /home/builder/.termux-build/libjpeg-turbo/build/lib/libjpeg.so
-- Installing: /data/data/com.termux/files/usr/bin/cjpeg
-- Installing: /data/data/com.termux/files/usr/bin/djpeg
-- Installing: /data/data/com.termux/files/usr/bin/jpegtran
...
2022-07-28 15:27:20 +05:00
agnostic-apollo b9b5987319 fix(build-package.sh): Ensure dependency packages are force rebuilt as well if `-f` is passed 2022-07-28 15:27:20 +05:00
agnostic-apollo cd2928cbe1 fix(build-package.sh): Do not use dependencies while building from repo if it hosts packages built for a different package name than TERMUX_APP_PACKAGE 2022-07-28 15:27:20 +05:00
Pooya Moradi ea66e0a7c7 new package: restish 2022-07-28 14:50:23 +08:00
Termux Github Actions 5fe24d3a80 neovim-nightly: update to 0.8.0-dev-725-gfe254fb7e
This commit has been automatically submitted by Github Actions.
2022-07-28 06:17:09 +00:00
Termux Github Actions fcac32f8f7 stylua: update to 0.14.2
This commit has been automatically submitted by Github Actions.
2022-07-28 00:27:38 +00:00