← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1796808] [NEW] frontend locking regression: dpkg::post-invoke scripts can't install packages

 

Public bug reported:

[Impact]
The switch to frontend locking in 1.2.28/1.6.5/1.7~ caused scripts registered in

DPkg::Pre-Install-Pkgs
DPkg::Pre-Invoke
DPkg::Post-Invoke

To be run with the frontend lock held. This caused problems with some
installer packages like libdvd-pkg which install a locally built package
in such a hook.

To reduce the impact, a fix has been applied in 1.7.0 which exports the
DPKG_FRONTEND_LOCKED variable when running those scripts, allowing dpkg
to be run from those scripts.

[Test case]
Make sure that the test-frontend-lock test run by autopkgtest succeeds. This checks that:

(1) the variable is correctly exported to those scripts
(2) the frontend lock is still held
(3) dpkg can be run from the post-invoke script

[Regression potential]
Depending on the script (for example, if the script starts a daemon manually or something like that), DPKG_FRONTEND_LOCKED might leak to other processes which might survive the apt call and thus revert surviving process to not using frontend locking.

[Other info]
This fix is for backwards compatibility only. Starting with the dd cycle, it will be dropped for the Pre-Install-Pkgs and Pre-Invoke scripts. Potentially for post-invoke as well, if we find a better solution for it.

** Affects: apt (Ubuntu)
     Importance: Undecided
         Status: Fix Released

** Affects: apt (Ubuntu Xenial)
     Importance: Undecided
         Status: Triaged

** Affects: apt (Ubuntu Bionic)
     Importance: Undecided
         Status: Triaged

** Affects: apt (Ubuntu Cosmic)
     Importance: Undecided
         Status: Fix Released

** Also affects: apt (Ubuntu Cosmic)
   Importance: Undecided
       Status: New

** Also affects: apt (Ubuntu Bionic)
   Importance: Undecided
       Status: New

** Also affects: apt (Ubuntu Xenial)
   Importance: Undecided
       Status: New

** Changed in: apt (Ubuntu Xenial)
       Status: New => Triaged

** Changed in: apt (Ubuntu Bionic)
       Status: New => Triaged

** Changed in: apt (Ubuntu Cosmic)
       Status: New => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1796808

Title:
  frontend locking regression: dpkg::post-invoke scripts can't install
  packages

Status in apt package in Ubuntu:
  Fix Released
Status in apt source package in Xenial:
  Triaged
Status in apt source package in Bionic:
  Triaged
Status in apt source package in Cosmic:
  Fix Released

Bug description:
  [Impact]
  The switch to frontend locking in 1.2.28/1.6.5/1.7~ caused scripts registered in

  DPkg::Pre-Install-Pkgs
  DPkg::Pre-Invoke
  DPkg::Post-Invoke

  To be run with the frontend lock held. This caused problems with some
  installer packages like libdvd-pkg which install a locally built
  package in such a hook.

  To reduce the impact, a fix has been applied in 1.7.0 which exports
  the DPKG_FRONTEND_LOCKED variable when running those scripts, allowing
  dpkg to be run from those scripts.

  [Test case]
  Make sure that the test-frontend-lock test run by autopkgtest succeeds. This checks that:

  (1) the variable is correctly exported to those scripts
  (2) the frontend lock is still held
  (3) dpkg can be run from the post-invoke script

  [Regression potential]
  Depending on the script (for example, if the script starts a daemon manually or something like that), DPKG_FRONTEND_LOCKED might leak to other processes which might survive the apt call and thus revert surviving process to not using frontend locking.

  [Other info]
  This fix is for backwards compatibility only. Starting with the dd cycle, it will be dropped for the Pre-Install-Pkgs and Pre-Invoke scripts. Potentially for post-invoke as well, if we find a better solution for it.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1796808/+subscriptions


Follow ups