apt: Update to 1.1.6, default disable SRV records

By disabling SRV records support in apt by default we work around
an issue with HTC devices (fixes #99).
This commit is contained in:
Fredrik Fornwall 2015-12-25 19:32:51 -05:00
parent 4e7183b9b8
commit 54cb74f98d
4 changed files with 34 additions and 23 deletions

View File

@ -1,7 +1,7 @@
TERMUX_PKG_HOMEPAGE=https://packages.debian.org/apt
TERMUX_PKG_DESCRIPTION="Front-end for the dpkg package manager"
TERMUX_PKG_DEPENDS="liblzma, libgnustl, dpkg, gnupg"
TERMUX_PKG_VERSION=1.1.5
TERMUX_PKG_VERSION=1.1.6
TERMUX_PKG_SRCURL=http://ftp.debian.org/debian/pool/main/a/apt/apt_${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--host=${TERMUX_ARCH}-linux --disable-rpath acl_cv_rpath=$TERMUX_PREFIX/lib gt_cv_func_CFPreferencesCopyAppValue=no gt_cv_func_CFLocaleCopyCurrent=no ac_cv_c_bigendian=no --no-create"
# When ready to drop bz2 support:

View File

@ -1,7 +1,7 @@
diff -u -r ../apt-1.1.3/cmdline/apt-key.in ./cmdline/apt-key.in
--- ../apt-1.1.3/cmdline/apt-key.in 2015-11-30 03:08:24.000000000 -0500
+++ ./cmdline/apt-key.in 2015-12-03 21:22:35.231730185 -0500
@@ -19,10 +19,7 @@
diff -u -r ../apt-1.1.6/cmdline/apt-key.in ./cmdline/apt-key.in
--- ../apt-1.1.6/cmdline/apt-key.in 2015-12-24 11:14:15.000000000 -0500
+++ ./cmdline/apt-key.in 2015-12-25 17:58:37.186396718 -0500
@@ -16,10 +16,7 @@
aptkey_echo() { echo "$@"; }
requires_root() {
@ -12,17 +12,17 @@ diff -u -r ../apt-1.1.3/cmdline/apt-key.in ./cmdline/apt-key.in
+ continue
}
get_fingerprints_of_keyring() {
@@ -212,7 +209,7 @@
command_available() {
@@ -231,7 +228,7 @@
if [ -s "$TRUSTEDFILE" ]; then
$ACTION "$TRUSTEDFILE" "$@"
fi
- local TRUSTEDPARTS="/etc/apt/trusted.gpg.d"
+ local TRUSTEDPARTS="@TERMUX_PREFIX@/etc/apt/trusted.gpg.d"
eval $(apt-config shell TRUSTEDPARTS Dir::Etc::TrustedParts/d)
eval "$(apt-config shell TRUSTEDPARTS Dir::Etc::TrustedParts/d)"
if [ -d "$TRUSTEDPARTS" ]; then
# strip / suffix as gpg will double-slash in that case (#665411)
@@ -282,11 +279,11 @@
@@ -301,11 +298,11 @@
# if a --keyring was given, just use this one
if [ -n "$FORCED_KEYRING" ]; then
if [ -s "$FORCED_KEYRING" ]; then
@ -36,7 +36,7 @@ diff -u -r ../apt-1.1.3/cmdline/apt-key.in ./cmdline/apt-key.in
eval $(apt-config shell TRUSTEDPARTS Dir::Etc::TrustedParts/d)
if [ -d "$TRUSTEDPARTS" ]; then
# ignore errors mostly for non-existing $TRUSTEDFILE
@@ -297,7 +294,7 @@
@@ -316,7 +313,7 @@
done
} > "$PUBRING" 2>/dev/null
elif [ -s "$TRUSTEDFILE" ]; then
@ -45,7 +45,7 @@ diff -u -r ../apt-1.1.3/cmdline/apt-key.in ./cmdline/apt-key.in
fi
fi
@@ -441,7 +438,7 @@
@@ -460,7 +457,7 @@
done
if [ -z "$TRUSTEDFILE" ]; then

View File

@ -1,12 +0,0 @@
diff -u -r ../apt-0.9.16.1/methods/connect.cc ./methods/connect.cc
--- ../apt-0.9.16.1/methods/connect.cc 2014-03-15 17:23:45.000000000 +0100
+++ ./methods/connect.cc 2014-03-25 01:30:10.924678745 +0100
@@ -111,7 +111,7 @@
// Check the socket for an error condition
unsigned int Err;
- unsigned int Len = sizeof(Err);
+ socklen_t Len = sizeof(Err);
if (getsockopt(Fd,SOL_SOCKET,SO_ERROR,&Err,&Len) != 0)
return _error->Errno("getsockopt",_("Failed"));

View File

@ -0,0 +1,23 @@
diff -u -r ../apt-1.1.5/methods/connect.cc ./methods/connect.cc
--- ../apt-1.1.5/methods/connect.cc 2015-12-14 10:57:32.000000000 -0500
+++ ./methods/connect.cc 2015-12-25 17:51:38.055723065 -0500
@@ -114,7 +114,7 @@
// Check the socket for an error condition
unsigned int Err;
- unsigned int Len = sizeof(Err);
+ socklen_t Len = sizeof(Err);
if (getsockopt(Fd,SOL_SOCKET,SO_ERROR,&Err,&Len) != 0)
return _error->Errno("getsockopt",_("Failed"));
@@ -277,7 +277,9 @@
if(LastHost != Host || LastPort != Port)
{
SrvRecords.clear();
- if (_config->FindB("Acquire::EnableSrvRecords", true) == true)
+ /* Disable by default in Termux due to it breaking on (some) HTC
+ devices (https://github.com/termux/termux-packages/issues/99). */
+ if (_config->FindB("Acquire::EnableSrvRecords", false) == true)
GetSrvRecords(Host, DefPort, SrvRecords);
}
// we have no SrvRecords for this host, connect right away