Hi,
Am 20.06.23 um 23:02 schrieb Mark Rubin via openSUSE Factory:
Ben Greiner wrote:
For python3-pyside2 you have to wait for the next snapshot:
https://build.opensuse.org/request/show/1093899
Thanks for the explanation. I probably will wait but am afraid that it won't fix the many other errors not related to python310 I'm getting, like:
Solution 3: remove lock to allow removal of libQt5DBus5-5.15.9+kde154-1.3.x86_64
You have a lock that you did not mention before. It prevents the
update of Qt5. Probably from a Solution selection "keep" for
python3-pyside2 before.
I'm sorry, but I don't understand. The first mention
of python310-qt5-5.15.9-1.5.x86_64 is in the conflict regarding python310-matplotlib-qt5-3.6.3-2.1.x86_64. The full text is:
```
Problem: the installed python310-matplotlib-qt5-3.6.3-2.1.x86_64 requires 'python310-qt5', but this requirement cannot be provided
deleted providers: python310-qt5-5.15.9-1.5.x86_64
not installable providers: python310-qt5-5.15.9-2.3.x86_64[download.opensuse.org-oss]
Solution 1: Following actions will be done:
remove lock to allow removal of python310-matplotlib-qt5-3.6.3-2.1.x86_64
deinstallation of python310-qt5-5.15.9-1.5.x86_64
deinstallation of cura-4.13.1-2.3.noarch
Solution 2: keep obsolete python310-qt5-5.15.9-1.5.x86_64
Solution 3: remove lock to allow removal of libQt5Core5-5.15.9+kde154-1.3.x86_64
Same. python310-qt5-5.15.9-2.3 requires libQt5Core5 to be updated.
Solution 4: break python310-matplotlib-qt5-3.6.3-2.1.x86_64 by ignoring some of its dependencies
Choose from above solutions by number or skip, retry or cancel [1/2/3/4/s/r/c/d/?] (c): 2
```
I didn't want solution 1 because I don't want to lose "cura". But again, this was a "--dry-run". If I was doing it with "--dry-run" and kept python310-qt5-5.15.9-1.5.x86_64, would some of the other conflicts resolve themselves?
There is your answer. As of now you can only keep the distribution
package for Cura if you stay on the old snapshot. The Cura package
system broke apart with the switch to python311:
Cura requires the libraries libArcus and libSavitar. They need to be
updated first, because the old versions in the distribution still
require obsolete python3-sip < 5 which is not compatible with
python311. Cura upstream did switch to more modern tools months ago,
but the openSUSE Tumbleweed package did not keep up. I suggest
switching to Cura flatpak, appimage or the like.
https://build.opensuse.org/package/show/openSUSE:Factory/cura :
Fails because it cannot find `UM` from uranium in the python311
sitelib, the old package still has it in python310
https://build.opensuse.org/package/show/openSUSE:Factory/uranium:
Fails to build.
https://build.opensuse.org/package/show/openSUSE:Factory/cura-engine
: Unresolvable
https://build.opensuse.org/package/show/openSUSE:Factory/libArcus :
Unresolvable
https://build.opensuse.org/package/show/openSUSE:Factory/libSavitar
: Unresolvable
Again, what's my best way out of this? I'd prefer not to have to remove a large number of packages, do the "dup", and then reinstall them, but if that's the only solution I guess I'll have to. Or, even worse, get the latest ISO and reinstall Tumbleweed from scratch and then add all my desired packages (hundreds) again.
Remove cura and the likes (as well as python3-pyside2) before the
dup. There is no way around it if you want to keep a sane system. Of
course you could force keeping stuff, but that does not mean that
the software keeps running. Cura won't, because there will be a
mixture of python311 and python310.
With a lot of manual intervention, you could reinstall the old
packages after the dup. I get this:
# LANG=C zypper
in cura
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The
following 9 recommended packages were automatically selected:
python310 python310-curses
python310-dbm python310-numpy python310-pip python311-geoip2
python311-hiredis
python311-pylibmc
python311-pymemcache
The
following 57 NEW packages are going to be installed:
cura cura-engine libArcus3 libSavitar0 libmemcached11 libmemcachedutil2
libpolyclipping22
libpython3_10-1_0
python3-Arcus
python3-pynest2d
python310 python310-Shapely
python310-base python310-cffi python310-cryptography
python310-curses
python310-dbm
python310-gobject
python310-gobject-Gdk
python310-gobject-cairo
python310-numpy python310-pip python310-pycairo
python310-pycparser
python310-setuptools
python311-Django
python311-Flask python311-Shapely
python311-Werkzeug
python311-amqp python311-asgiref
python311-bcrypt
python311-billiard
python311-blinker
python311-bottle
python311-cached-property
python311-celery
python311-click-didyoumean
python311-click-plugins
python311-click-repl
python311-falcon
python311-geoip2
python311-hiredis
python311-itsdangerous
python311-kombu python311-maxminddb
python311-pylibmc
python311-pymemcache
python311-pymongo
python311-pyserial
python311-redis python311-rq python311-sentry-sdk
python311-sqlparse
python311-starlette
python311-vine uranium
57 new packages to
install.
Overall download size: 64.8 MiB. Already cached: 0
$ cura
Traceback (most recent call last):
File "/usr/bin/cura", line 24, in <module>
from UM.Platform import Platform
ModuleNotFoundError: No module named 'UM'
That is because the shebang has /usr/bin/python3 which is
pointing to python3.11 now. Instead do:
$
/usr/bin/python3.10 cura
Traceback (most recent call last):
File "/usr/bin/cura", line 22, in <module>
from PyQt5.QtNetwork import QSslConfiguration, QSslSocket
ModuleNotFoundError: No module named 'PyQt5.QtNetwork'
... now install python310-qt5 and everything
python310- that is not found.
If you want to go down that route, good luck.
- Ben