diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:33 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:33 +0000 |
commit | 086c044dc34dfc0f74fbe41f4ecb402b2cd34884 (patch) | |
tree | a4f824bd33cb075dd5aa3eb5a0a94af221bbe83a /python/mozboot/mozboot/debian.py | |
parent | Adding debian version 124.0.1-1. (diff) | |
download | firefox-086c044dc34dfc0f74fbe41f4ecb402b2cd34884.tar.xz firefox-086c044dc34dfc0f74fbe41f4ecb402b2cd34884.zip |
Merging upstream version 125.0.1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'python/mozboot/mozboot/debian.py')
-rw-r--r-- | python/mozboot/mozboot/debian.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/python/mozboot/mozboot/debian.py b/python/mozboot/mozboot/debian.py index 63b47a2f03..9553800bf7 100644 --- a/python/mozboot/mozboot/debian.py +++ b/python/mozboot/mozboot/debian.py @@ -2,6 +2,7 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. +import subprocess import sys from mozboot.base import MERCURIAL_INSTALL_PROMPT, BaseBootstrapper @@ -60,7 +61,20 @@ class DebianBootstrapper(LinuxBootstrapper, BaseBootstrapper): assert res == 1 self.run_as_root(["pip3", "install", "--upgrade", "Mercurial"]) + def _check_packages_installed(self, *packages): + command = ["dpkg-query", "-W"] + command.extend(packages) + return ( + subprocess.run( + command, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL + ).returncode + == 0 + ) + def apt_install(self, *packages): + if self._check_packages_installed(*packages): + # Packages already installed + return command = ["apt-get", "install"] if self.no_interactive: command.append("-y") |