diff -uNr apt-2.1.11/apt-pkg/aptconfiguration.cc apt-2.1.11.mod/apt-pkg/aptconfiguration.cc --- apt-2.1.11/apt-pkg/aptconfiguration.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-pkg/aptconfiguration.cc 2020-11-05 15:33:57.243575020 +0200 @@ -35,11 +35,11 @@ // setDefaultConfigurationForCompressors /*{{{*/ static void setDefaultConfigurationForCompressors() { // Set default application paths to check for optional compression types - _config->CndSet("Dir::Bin::gzip", "/bin/gzip"); - _config->CndSet("Dir::Bin::bzip2", "/bin/bzip2"); - _config->CndSet("Dir::Bin::xz", "/usr/bin/xz"); - _config->CndSet("Dir::Bin::lz4", "/usr/bin/lz4"); - _config->CndSet("Dir::Bin::zstd", "/usr/bin/zstd"); + _config->CndSet("Dir::Bin::gzip", "@TERMUX_PREFIX@/bin/gzip"); + _config->CndSet("Dir::Bin::bzip2", "@TERMUX_PREFIX@/bin/bzip2"); + _config->CndSet("Dir::Bin::xz", "@TERMUX_PREFIX@/bin/xz"); + _config->CndSet("Dir::Bin::lz4", "@TERMUX_PREFIX@/bin/lz4"); + _config->CndSet("Dir::Bin::zstd", "@TERMUX_PREFIX@/bin/zstd"); if (FileExists(_config->Find("Dir::Bin::xz")) == true) { _config->Set("Dir::Bin::lzma", _config->Find("Dir::Bin::xz")); _config->Set("APT::Compressor::lzma::Binary", "xz"); @@ -52,7 +52,7 @@ _config->Set("APT::Compressor::lzma::UncompressArg::", "-d"); } } else { - _config->CndSet("Dir::Bin::lzma", "/usr/bin/lzma"); + _config->CndSet("Dir::Bin::lzma", "@TERMUX_PREFIX@/bin/lzma"); if (_config->Exists("APT::Compressor::lzma::CompressArg") == false) { _config->Set("APT::Compressor::lzma::CompressArg::", "--suffix="); _config->Set("APT::Compressor::lzma::CompressArg::", "-6"); diff -uNr apt-2.1.11/apt-pkg/contrib/cdromutl.cc apt-2.1.11.mod/apt-pkg/contrib/cdromutl.cc --- apt-2.1.11/apt-pkg/contrib/cdromutl.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-pkg/contrib/cdromutl.cc 2020-11-05 15:39:34.309826732 +0200 @@ -262,7 +262,7 @@ string FindMountPointForDevice(const char *devnode) { // this is the order that mount uses as well - std::vector const mounts = _config->FindVector("Dir::state::MountPoints", "/etc/mtab,/proc/mount"); + std::vector const mounts = _config->FindVector("Dir::state::MountPoints", "/proc/mount"); for (std::vector::const_iterator m = mounts.begin(); m != mounts.end(); ++m) if (FileExists(*m) == true) diff -uNr apt-2.1.11/apt-pkg/contrib/fileutl.cc apt-2.1.11.mod/apt-pkg/contrib/fileutl.cc --- apt-2.1.11/apt-pkg/contrib/fileutl.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-pkg/contrib/fileutl.cc 2020-11-05 15:40:49.418311615 +0200 @@ -112,7 +112,7 @@ _exit(100); } - if (chdir("/tmp/") != 0) + if (chdir("@TERMUX_PREFIX@/tmp/") != 0) _exit(100); unsigned int Count = 1; @@ -3105,10 +3105,10 @@ struct stat st; if (!tmpdir || strlen(tmpdir) == 0 || // tmpdir is set stat(tmpdir, &st) != 0 || (st.st_mode & S_IFDIR) == 0) // exists and is directory - tmpdir = "/tmp"; + tmpdir = "@TERMUX_PREFIX@/tmp"; else if (geteuid() != 0 && // root can do everything anyway faccessat(AT_FDCWD, tmpdir, R_OK | W_OK | X_OK, AT_EACCESS) != 0) // current user has rwx access to directory - tmpdir = "/tmp"; + tmpdir = "@TERMUX_PREFIX@/tmp"; return string(tmpdir); } @@ -3408,7 +3408,7 @@ setenv("LOGNAME", pw->pw_name, 1); auto const shell = flNotDir(pw->pw_shell); if (shell == "false" || shell == "nologin") - setenv("SHELL", "/bin/sh", 1); + setenv("SHELL", "@TERMUX_PREFIX@/bin/sh", 1); else setenv("SHELL", pw->pw_shell, 1); auto const apt_setenv_tmp = [](char const * const env) { diff -uNr apt-2.1.11/apt-pkg/deb/dpkgpm.cc apt-2.1.11.mod/apt-pkg/deb/dpkgpm.cc --- apt-2.1.11/apt-pkg/deb/dpkgpm.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-pkg/deb/dpkgpm.cc 2020-11-05 15:37:39.289084595 +0200 @@ -179,7 +179,7 @@ so we use the binary from util-linux */ static bool ionice(int PID) { - if (!FileExists("/usr/bin/ionice")) + if (!FileExists("@TERMUX_PREFIX@/bin/ionice")) return false; pid_t Process = ExecFork(); if (Process == 0) @@ -187,7 +187,7 @@ char buf[32]; snprintf(buf, sizeof(buf), "-p%d", PID); const char *Args[4]; - Args[0] = "/usr/bin/ionice"; + Args[0] = "@TERMUX_PREFIX@/bin/ionice"; Args[1] = "-c3"; Args[2] = buf; Args[3] = 0; @@ -482,7 +482,7 @@ debSystem::DpkgChrootDirectory(); const char *Args[4]; - Args[0] = "/bin/sh"; + Args[0] = "@TERMUX_PREFIX@/bin/sh"; Args[1] = "-c"; Args[2] = Opts->Value.c_str(); Args[3] = 0; @@ -2456,10 +2456,10 @@ } // attach dmesg log (to learn about segfaults) - if (FileExists("/bin/dmesg")) + if (FileExists("@TERMUX_PREFIX@/bin/dmesg")) { fprintf(report, "Dmesg:\n"); - FILE *log = popen("/bin/dmesg","r"); + FILE *log = popen("@TERMUX_PREFIX@/bin/dmesg","r"); if(log != NULL) { char buf[1024]; @@ -2470,11 +2470,11 @@ } // attach df -l log (to learn about filesystem status) - if (FileExists("/bin/df")) + if (FileExists("@TERMUX_PREFIX@/bin/df")) { fprintf(report, "Df:\n"); - FILE *log = popen("/bin/df -l -x squashfs","r"); + FILE *log = popen("@TERMUX_PREFIX@/bin/df","r"); if(log != NULL) { char buf[1024]; diff -uNr apt-2.1.11/apt-pkg/init.cc apt-2.1.11.mod/apt-pkg/init.cc --- apt-2.1.11/apt-pkg/init.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-pkg/init.cc 2020-11-05 15:33:08.863245537 +0200 @@ -210,7 +210,7 @@ Cnf.CndSet("Acquire::Changelogs::AlwaysOnline::Origin::Ubuntu", true); - Cnf.CndSet("DPkg::Path", "/usr/sbin:/usr/bin:/sbin:/bin"); + Cnf.CndSet("DPkg::Path", "@TERMUX_PREFIX@/bin"); // Read an alternate config file _error->PushToStack(); diff -uNr apt-2.1.11/apt-private/private-json-hooks.cc apt-2.1.11.mod/apt-private/private-json-hooks.cc --- apt-2.1.11/apt-private/private-json-hooks.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/apt-private/private-json-hooks.cc 2020-11-05 15:36:12.936497984 +0200 @@ -364,7 +364,7 @@ DpkgChrootDirectory(); const char *Args[4]; - Args[0] = "/bin/sh"; + Args[0] = "@TERMUX_PREFIX@/bin/sh"; Args[1] = "-c"; Args[2] = Opts->Value.c_str(); Args[3] = 0; diff -uNr apt-2.1.11/cmdline/apt-dump-solver.cc apt-2.1.11.mod/cmdline/apt-dump-solver.cc --- apt-2.1.11/cmdline/apt-dump-solver.cc 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/cmdline/apt-dump-solver.cc 2020-11-05 15:40:23.190141970 +0200 @@ -76,7 +76,7 @@ { EDSP::WriteError("ERR_NO_FILENAME", "You have to set the environment variable APT_EDSP_DUMP_FILENAME\n" "to a valid filename to store the dump of EDSP solver input in.\n" - "For example with: export APT_EDSP_DUMP_FILENAME=/tmp/dump.edsp", stdoutfd); + "For example with: export APT_EDSP_DUMP_FILENAME=@TERMUX_PREFIX@/tmp/dump.edsp", stdoutfd); return 0; } } diff -uNr apt-2.1.11/cmdline/apt-key.in apt-2.1.11.mod/cmdline/apt-key.in --- apt-2.1.11/cmdline/apt-key.in 2020-10-21 12:53:18.000000000 +0300 +++ apt-2.1.11.mod/cmdline/apt-key.in 2020-11-05 15:43:52.271502576 +0200 @@ -1,4 +1,4 @@ -#!/bin/sh +#!@TERMUX_PREFIX@/bin/sh set -e unset GREP_OPTIONS GPGHOMEDIR CURRENTTRAP @@ -356,7 +356,7 @@ if accessible_file_exists "$TRUSTEDFILE" && is_supported_keyring "$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)" if [ -d "$TRUSTEDPARTS" ]; then TRUSTEDPARTS="$(readlink -f "$TRUSTEDPARTS")" @@ -535,7 +535,7 @@ merge_all_trusted_keyrings_into_pubring FORCED_KEYRING="${GPGHOMEDIR}/forcedkeyid.gpg" TRUSTEDFILE="${FORCED_KEYRING}" - echo "#!/bin/sh + echo "#!@TERMUX_PREFIX@/bin/sh exec sh '($(escape_shell "${GPG}")' --keyring '$(escape_shell "${TRUSTEDFILE}")' \"\$@\"" > "${GPGHOMEDIR}/gpg.1.sh" GPG="${GPGHOMEDIR}/gpg.1.sh" # ignore error as this "just" means we haven't found the forced keyid and the keyring will be empty @@ -547,13 +547,13 @@ else touch "${GPGHOMEDIR}/pubring.gpg" "${GPGHOMEDIR}/pubring.orig.gpg" fi - echo "#!/bin/sh + echo "#!@TERMUX_PREFIX@/bin/sh exec sh '$(escape_shell "${GPG}")' --keyring '$(escape_shell "${GPGHOMEDIR}/pubring.gpg")' \"\$@\"" > "${GPGHOMEDIR}/gpg.1.sh" GPG="${GPGHOMEDIR}/gpg.1.sh" else TRUSTEDFILE="$(dearmor_filename "$FORCED_KEYRING")" create_new_keyring "$TRUSTEDFILE" - echo "#!/bin/sh + echo "#!@TERMUX_PREFIX@/bin/sh exec sh '$(escape_shell "${GPG}")' --keyring '$(escape_shell "${TRUSTEDFILE}")' \"\$@\"" > "${GPGHOMEDIR}/gpg.1.sh" GPG="${GPGHOMEDIR}/gpg.1.sh" fi @@ -653,7 +653,7 @@ done if [ -z "$TRUSTEDFILE" ]; then - TRUSTEDFILE="/etc/apt/trusted.gpg" + TRUSTEDFILE="@TERMUX_PREFIX@/etc/apt/trusted.gpg" eval $(apt-config shell TRUSTEDFILE Apt::GPGV::TrustedKeyring) eval $(apt-config shell TRUSTEDFILE Dir::Etc::Trusted/f) fi @@ -697,7 +697,7 @@ create_gpg_home # now tell gpg that it shouldn't try to maintain this trustdb file - echo "#!/bin/sh + echo "#!@TERMUX_PREFIX@/bin/sh exec '$(escape_shell "${GPG_EXE}")' --ignore-time-conflict --no-options --no-default-keyring \\ --homedir '$(escape_shell "${GPGHOMEDIR}")' --no-auto-check-trustdb --trust-model always \"\$@\"" > "${GPGHOMEDIR}/gpg.0.sh" GPG_SH="${GPGHOMEDIR}/gpg.0.sh"