Skip to content

Commit

Permalink
Mask PackageKit on SUSE
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
jimis committed Feb 15, 2020
1 parent db23c64 commit 5dda5f3
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 3 deletions.
2 changes: 2 additions & 0 deletions coin/provisioning/qtci-linux-SLES-15-x86_64/01-systemsetup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down

0 comments on commit 5dda5f3

Please sign in to comment.