diff --git a/packages/dpkg/build.sh b/packages/dpkg/build.sh index e66a59bbb00a46..777bb133512313 100644 --- a/packages/dpkg/build.sh +++ b/packages/dpkg/build.sh @@ -3,7 +3,7 @@ TERMUX_PKG_DESCRIPTION="Debian package management system" TERMUX_PKG_LICENSE="GPL-2.0" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_VERSION="1.22.6" -TERMUX_PKG_REVISION=4 +TERMUX_PKG_REVISION=5 # old tarball are removed in https://mirrors.kernel.org/debian/pool/main/d/dpkg/dpkg_${TERMUX_PKG_VERSION}.tar.xz TERMUX_PKG_SRCURL=git+https://salsa.debian.org/dpkg-team/dpkg.git TERMUX_PKG_GIT_BRANCH="${TERMUX_PKG_VERSION}" diff --git a/packages/dpkg/dpkg-perl.subpackage.sh b/packages/dpkg/dpkg-perl.subpackage.sh index 620e96cf03ec2a..609bff9637db1c 100644 --- a/packages/dpkg/dpkg-perl.subpackage.sh +++ b/packages/dpkg/dpkg-perl.subpackage.sh @@ -8,8 +8,10 @@ termux_step_create_subpkg_debscripts() { #!$TERMUX_PREFIX/bin/bash set -e + export PERL_MM_USE_DEFAULT=1 + echo "Sideloading Perl Locale::gettext ..." - cpan -fi Locale::gettext + cpan -Ti Locale::gettext exit 0 POSTINST_EOF diff --git a/packages/intltool/build.sh b/packages/intltool/build.sh index 618d9d2cf53d4e..4a580d3134acbf 100644 --- a/packages/intltool/build.sh +++ b/packages/intltool/build.sh @@ -3,7 +3,7 @@ TERMUX_PKG_DESCRIPTION="The internationalization tool collection" TERMUX_PKG_MAINTAINER="@suhan-paradkar" TERMUX_PKG_LICENSE="GPL-2.0" TERMUX_PKG_VERSION=0.51.0 -TERMUX_PKG_REVISION=3 +TERMUX_PKG_REVISION=4 TERMUX_PKG_SRCURL=https://launchpad.net/intltool/trunk/$TERMUX_PKG_VERSION/+download/intltool-$TERMUX_PKG_VERSION.tar.gz TERMUX_PKG_SHA256=67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd TERMUX_PKG_DEPENDS="perl, clang, make, libexpat" @@ -14,8 +14,10 @@ termux_step_create_debscripts() { #!$TERMUX_PREFIX/bin/bash set -e + export PERL_MM_USE_DEFAULT=1 + echo "Sideloading Perl XML::Parser..." - cpan install XML::Parser + cpan -Ti XML::Parser exit 0 POSTINST_EOF diff --git a/packages/perl/build.sh b/packages/perl/build.sh index 88cecf53785dbf..07cf85b9c03b5b 100644 --- a/packages/perl/build.sh +++ b/packages/perl/build.sh @@ -11,7 +11,7 @@ TERMUX_PKG_MAINTAINER="@termux" # - subversion TERMUX_PKG_VERSION=(5.40.3 1.6.2) -TERMUX_PKG_REVISION=1 +TERMUX_PKG_REVISION=2 TERMUX_PKG_SHA256=(65f63b4763ab6cb9bb3d5731dd10369e1705be3c59be9847d453eb60b349ab43 f74ab2a6cacc574c98398ae9d36660b4cc0ba0e3d34e87b24d27b9cd2a27787d) TERMUX_PKG_SRCURL=(https://www.cpan.org/src/5.0/perl-${TERMUX_PKG_VERSION[0]}.tar.xz diff --git a/packages/perl/cpan-force-auto-local-lib.patch b/packages/perl/cpan-force-auto-local-lib.patch new file mode 100644 index 00000000000000..5269c641488c2a --- /dev/null +++ b/packages/perl/cpan-force-auto-local-lib.patch @@ -0,0 +1,10 @@ +--- a/cpan/CPAN/lib/CPAN/FirstTime.pm ++++ b/cpan/CPAN/lib/CPAN/FirstTime.pm +@@ -904,7 +904,6 @@ sub init { + unless ( $matcher + || _can_write_to_libdirs() || _using_installbase() || _using_sudo() + ) { +- local $auto_config = 0; # We *must* ask, even under autoconfig + local *_real_prompt; # We *must* show prompt + my_prompt_loop(install_help => 'local::lib', $matcher, + 'local::lib|sudo|manual'); diff --git a/packages/sendxmpp/build.sh b/packages/sendxmpp/build.sh index 252bfed9f67d69..5da9c3871f7017 100644 --- a/packages/sendxmpp/build.sh +++ b/packages/sendxmpp/build.sh @@ -3,6 +3,7 @@ TERMUX_PKG_DESCRIPTION="A perl-script to send XMPP (jabber) messages" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_LICENSE="GPL-2.0" TERMUX_PKG_VERSION=1.24 +TERMUX_PKG_REVISION=1 TERMUX_PKG_SRCURL=https://github.com/lhost/sendxmpp/archive/refs/tags/${TERMUX_PKG_VERSION}.tar.gz TERMUX_PKG_SHA256=dfaf735b4585efd6b3b0f95db31203f9ab0fe607b50e75c6951bc18a6269837d TERMUX_PKG_DEPENDS="perl, clang, make" @@ -18,8 +19,10 @@ termux_step_create_debscripts() { #!$TERMUX_PREFIX/bin/bash set -e + export PERL_MM_USE_DEFAULT=1 + echo "Sideloading Perl Authen::SASL and Net::XMPP ..." - cpan -fi Authen::SASL Net::XMPP + cpan -Ti Authen::SASL Net::XMPP exit 0 POSTINST_EOF diff --git a/scripts/setup-termux.sh b/scripts/setup-termux.sh index 30d6f764bd1577..401669409f58ef 100755 --- a/scripts/setup-termux.sh +++ b/scripts/setup-termux.sh @@ -8,6 +8,7 @@ PACKAGES+=" gnupg" # Used in termux_get_repo_files() and build-package.sh. PACKAGES+=" lzip" # Used by tar to extract *.tar.lz source archives. PACKAGES+=" patch" # Used for applying patches on source code. PACKAGES+=" python" # Used buildorder.py core script. +PACKAGES+=" python-pip" # Necessary to install 'itstool' for on-device-building (since Ubuntu gets it from 'apt') PACKAGES+=" unzip" # Used to extract *.zip source archives. PACKAGES+=" jq" # Used for parsing repo.json. PACKAGES+=" binutils-is-llvm" # Used for checking symbols. @@ -25,9 +26,11 @@ PACKAGES+=" ed" PACKAGES+=" flex" PACKAGES+=" gettext" PACKAGES+=" git" +PACKAGES+=" glslang" # Needed by mesa PACKAGES+=" golang" PACKAGES+=" gperf" PACKAGES+=" help2man" +PACKAGES+=" intltool" # Needed by qalc PACKAGES+=" libtool" PACKAGES+=" llvm-tools" # Needed to build rust PACKAGES+=" m4" @@ -42,11 +45,25 @@ PACKAGES+=" re2c" # Needed by kphp-timelib PACKAGES+=" rust" PACKAGES+=" scdoc" PACKAGES+=" texinfo" +PACKAGES+=" spirv-tools" # Needed by mesa PACKAGES+=" uuid-utils" PACKAGES+=" valac" PACKAGES+=" xmlto" # Needed by git's manpage generation PACKAGES+=" zip" +PYTHON_PACKAGES="" +PYTHON_PACKAGES+=" itstool" # necessary to build orca and some other packages +PYTHON_PACKAGES+=" pygments" # necessary to build mesa (dependency of mako that _must_ be kept `--upgrade`d) +PYTHON_PACKAGES+=" mako" # necessary to build mesa +PYTHON_PACKAGES+=" pyyaml" # necessary to build mesa +PYTHON_PACKAGES+=" setuptools" # necessary to build mesa (explicitly 'system'-wide unlike the setuptools in termux_setup_python_pip) +# More 'system-wide' python packages should be added here if working towards the goal +# of setup-termux.sh for on-device building having closer behavior +# to setup-ubuntu.sh for cross-compilation. If adding packages here, please add a comment +# for each one naming at least one of its reverse build dependencies, for which least one +# error during on-device building is solved by installing the dependency through pip. +#PYTHON_PACKAGES+=" " + # Definition of a package manager export TERMUX_SCRIPTDIR=$(dirname "$(realpath "$0")")/../ . $(dirname "$(realpath "$0")")/properties.sh @@ -62,3 +79,9 @@ else echo "Error: no package manager defined" exit 1 fi + +# Should not be installed inside venv because on Ubuntu cross-builder image, these +# particular python packages are installed system-wide, +# so should be installed Termux-wide for on-device building to be reasonably accurate +# compared with the behavior of the Ubuntu cross-builder image. +pip install --upgrade $PYTHON_PACKAGES diff --git a/x11-packages/xdg-menu/build.sh b/x11-packages/xdg-menu/build.sh index 8c71cae4db58d4..68649cd323c80f 100644 --- a/x11-packages/xdg-menu/build.sh +++ b/x11-packages/xdg-menu/build.sh @@ -3,6 +3,7 @@ TERMUX_PKG_DESCRIPTION="Tool that generates XDG Desktop Menus for icewm and othe TERMUX_PKG_LICENSE="GPL-2.0-or-later" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_VERSION="0.7.6.6" +TERMUX_PKG_REVISION=1 TERMUX_PKG_SRCURL="https://arch.p5n.pp.ru/~sergej/dl/2023/arch-xdg-menu-$TERMUX_PKG_VERSION.tar.gz" TERMUX_PKG_SHA256=01cbd3749939c180fed33783f0f7c4f47ac9563af2d1c4b39e23cb6cba792b40 TERMUX_PKG_DEPENDS="perl" @@ -37,8 +38,10 @@ termux_step_create_debscripts() { #!$TERMUX_PREFIX/bin/bash set -e + export PERL_MM_USE_DEFAULT=1 + echo "Sideloading Perl XML::Parser..." - cpan install XML::Parser + cpan -Ti XML::Parser exit 0 POSTINST_EOF diff --git a/x11-packages/xdg-utils/build.sh b/x11-packages/xdg-utils/build.sh index e2f87371512841..74da6ff3b857ec 100644 --- a/x11-packages/xdg-utils/build.sh +++ b/x11-packages/xdg-utils/build.sh @@ -3,6 +3,7 @@ TERMUX_PKG_DESCRIPTION="A set of simple scripts that provide basic desktop integ TERMUX_PKG_LICENSE="MIT" TERMUX_PKG_MAINTAINER="@termux" TERMUX_PKG_VERSION="1.2.1" +TERMUX_PKG_REVISION=1 TERMUX_PKG_SRCURL=https://gitlab.freedesktop.org/xdg/xdg-utils/-/archive/v${TERMUX_PKG_VERSION}/xdg-utils-v${TERMUX_PKG_VERSION}.tar.bz2 TERMUX_PKG_SHA256=93d510dccf328378f012fe195b4574c2fac1cd65a74d0852d6eaa72e5a2065a7 TERMUX_PKG_AUTO_UPDATE=true @@ -33,8 +34,10 @@ termux_step_create_debscripts() { #!$TERMUX_PREFIX/bin/bash set -e + export PERL_MM_USE_DEFAULT=1 + echo "Sideloading Perl File::MimeInfo ..." - cpan -fi File::MimeInfo + cpan -Ti File::MimeInfo exit 0 POSTINST_EOF