Mask PackageKit on SUSE

Fixes a flaky conflict between zypper and packagekitd.

packagekit is a *static* unit, that means it is missing an [Install] section,
so it can't be enabled or disabled. It is started as a dependency by other
units, or by dbus activation.

We *mask* the unit to make it impossible to start in any way.

For that we had replace a few occurrences of "pkcon" with the native package
manager.

Finally the package "libpython3_4m1_0" is not being installed any longer
because it never was: this package does not exist. It's just that pkcon does
not fail on invalid package names.

Fixes: QTQAINFRA-3523
Change-Id: I6ff580afb05aa508042c444b2ce777c3a9443dfe
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
This commit is contained in:
Dimitrios Apostolou
2020-02-04 13:43:40 +01:00
parent db23c64876
commit 5dda5f374f
3 changed files with 7 additions and 3 deletions

View File

@@ -59,10 +59,12 @@ echo 'export DISPLAY=":0"' >> ~/.bashrc
sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo systemctl mask packagekit
while sudo fuser /usr/lib/packagekitd >/dev/null 2>&1 ; do
echo "Waiting for PackageKit to finish..."
sleep 5
done
sudo zypper -nq remove gnome-software
# shellcheck disable=SC2031
if [ "$http_proxy" != "" ]; then

View File

@@ -23,6 +23,9 @@ echo 'export DISPLAY=":0"' >> ~/.bashrc
echo "Disabling file indexing."
sudo balooctl disable
sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo systemctl mask packagekit
while sudo fuser /usr/lib/packagekitd >/dev/null 2>&1 ; do
echo "Waiting for PackageKit to finish..."
sleep 0.5

View File

@@ -5,11 +5,10 @@
set -ex
sudo pkcon -y refresh
sudo pkcon -y install python-devel python-virtualenv
sudo zypper -nq install python-devel python-virtualenv
# install python3
sudo pkcon -y install libpython3_4m1_0 python3-base python3 python3-pip python3-devel python3-virtualenv python3-wheel
sudo zypper -nq install python3-base python3 python3-pip python3-devel python3-virtualenv python3-wheel
# Install all needed packages in a special wheel cache directory
pip3 wheel --wheel-dir "$HOME/python3-wheels" -r "${BASH_SOURCE%/*}/../common/shared/requirements.txt"