diff options
author | Julian Andres Klode <julian.klode@canonical.com> | 2018-10-05 12:29:39 +0200 |
---|---|---|
committer | Julian Andres Klode <julian.klode@canonical.com> | 2018-10-09 11:34:57 +0200 |
commit | 0ce6bc5ec70ff84eb2829f91f286a93687e77a46 (patch) | |
tree | fb37ba15f426c225ddf61af2858135551d496e14 /apt-pkg/deb | |
parent | 9f9973de79bb8f2d3c2a6755e402cf5c2127c0ae (diff) |
Set DPKG_FRONTEND_LOCKED when running {pre,post}-invoke scripts
Some post-invoke scripts install packages, which fails because
the environment variable is not set. This sets the variable for
all three kinds of scripts {pre,post-}invoke and pre-install-pkgs,
but we will only allow post-invoke at a later time.
Gbp-Dch: full
(cherry picked from commit 6675601c81de85b40dc89772c1d6d17f1811c5ba)
LP: #1796808
Diffstat (limited to 'apt-pkg/deb')
-rw-r--r-- | apt-pkg/deb/dpkgpm.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index 790019b98..c8e55fe14 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -480,6 +480,9 @@ bool pkgDPkgPM::RunScriptsWithPkgs(const char *Cnf) strprintf(hookfd, "%d", InfoFD); setenv("APT_HOOK_INFO_FD", hookfd.c_str(), 1); + if (_system != nullptr && _system->IsLocked() == true && stringcasecmp(Cnf, "DPkg::Pre-Install-Pkgs") == 0) + setenv("DPKG_FRONTEND_LOCKED", "true", 1); + debSystem::DpkgChrootDirectory(); const char *Args[4]; Args[0] = "/bin/sh"; |