Re: [qubes-users] Q4 qube-manager broke after dom0 software update yesterday (resolved)
On 12/6/18 1:11 PM, Steve Coleman wrote: On 12/6/18 11:38 AM, donoban wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 12/4/18 8:07 PM, Steve Coleman wrote: I was away for a week and dutifully did all my software updates upon returning. After updating Dom0 the qube-manager that was running started having problems, so I restarted it, but it then refused to run. RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap the QtObject class The problem appears to be qube-manager/python3 is first picking up references to PyQt5 when first launching, and later it is picking up some PyQt4 references via /usr/lib64/python3.5/site-packages/qubesadmin/__pycache__/*.pyc files, which then load files from /usr/lib64/python3.5/site-packages/PyQt4/__pycache__/* , and thus PyQt4/QtGui.so gets loaded. It looks like the qubes-manager-4.0.22-1.noarch is the latest, though I can't help but think this is a case of cache poisoning or some Qt4/Qt5 environment issue. If so, can the __pycache__/*.pyc files be removed and regenerated, or is there another way to avoid the mixing of PyQt versions? I think that PyQt5 is not installed on dom0 by default so this problem is not very likely to happen. Also it seems that all imports from Qube Manager source specify version 4. Ok, thanks. At least I now know which direction to go to debug this problem. There must be some tool installed that pulled in PyQt5 then. I'll check the dependencies and see what that might be, or otherwise remove that package. One would think that python would have a way to control this as a dynamic PATH configuration. If they do have control of this dynamic loading I have not found that feature yet. Just to document the outcome, removing the python3-pyqt5 package and its dependencies did the trick, and the qubes-qube-manager now runs with no problem. Why pyqt4 and pyqt5 can not both be installed I have no clue, but somehow this application was using a little of each (Qt4,Qt5) and failed miserably. There should be a mechanism to prevent python from mixing incompatible resources. I'm just glad that this same bug did not break the command line update tools at the same time. Please tell if you know some reliable steps for reproduce it. -BEGIN PGP SIGNATURE- iQIzBAEBCAAdFiEEznLCgPSfWTT+LPrmFBMQ2OPtCKUFAlwJUHsACgkQFBMQ2OPt CKWr+A//Qx8jQ3xuZDNGTmIKUvVBLJNau01wHdRVF+bBW0S7RxfjiwHXjTJ5DLTU L/ne1fCjGDPG7kV3fqy2sXq0Lfl1brPiIQpcU82f/LpHBsIGb6Uz33vfDGF8hNkC ZEaK76KHxoA9Z3OVwic/x56kwbLuvXDX8d6M8K37ZOfOxgsgoY7WbGQDf/0dBK6Y auAnPxQ8K3vhS/prJi2u+DWASBnEkM9d94tCeOFhpVHYkpv/6F1PMhx5CSTy/lwN aSOy1IUkL54WJ4QwT3NNoIKkd+vhxHHOjvvSeKCQcAANoYkgtkhwEJDD/AQn9bE4 EDAZ8yV3QfHElg64x9SIbQJh5rrlLJpKOLnMMslzQl1zIrAzy5V5YcInXiic6VK8 cNDX+FT07kz5+PoqZ5eUMrnbFjbCE4t53sGRuTS+Zd1QdVIEHTvHd2ToMUfeEBX+ tnLTbqg+rhh/F6oirI+L/jx5oSrye5vNvx5kcg4Q0y4AbEWPY0DVZWuemuMVBQGl 4TqG8zQN7CNU6yW8GRHBf3dLi9DtJVS9LUVe+HlC0AYZw2JDUFGxpo6Jb4LxZ791 V9k/FFzH4CLeRs9nh2aoQDFnjK4PcEEifJep9Grbi+z4wGHxN/VB/+aVU4acKJ/I 9Kdr+D4lvlYV6hGY0qxYugj7L26itILsEBPqeGpomsR+2NgKOus= =NNXh -END PGP SIGNATURE- -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/6d82eaf3-7e97-7fb1-86fc-ff9b6dd93ba4%40jhuapl.edu. For more options, visit https://groups.google.com/d/optout.
Re: [qubes-users] Q4 qube-manager broke after dom0 software update yesterday
On 12/6/18 11:38 AM, donoban wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 12/4/18 8:07 PM, Steve Coleman wrote: I was away for a week and dutifully did all my software updates upon returning. After updating Dom0 the qube-manager that was running started having problems, so I restarted it, but it then refused to run. RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap the QtObject class The problem appears to be qube-manager/python3 is first picking up references to PyQt5 when first launching, and later it is picking up some PyQt4 references via /usr/lib64/python3.5/site-packages/qubesadmin/__pycache__/*.pyc files, which then load files from /usr/lib64/python3.5/site-packages/PyQt4/__pycache__/* , and thus PyQt4/QtGui.so gets loaded. It looks like the qubes-manager-4.0.22-1.noarch is the latest, though I can't help but think this is a case of cache poisoning or some Qt4/Qt5 environment issue. If so, can the __pycache__/*.pyc files be removed and regenerated, or is there another way to avoid the mixing of PyQt versions? I think that PyQt5 is not installed on dom0 by default so this problem is not very likely to happen. Also it seems that all imports from Qube Manager source specify version 4. Ok, thanks. At least I now know which direction to go to debug this problem. There must be some tool installed that pulled in PyQt5 then. I'll check the dependencies and see what that might be, or otherwise remove that package. One would think that python would have a way to control this as a dynamic PATH configuration. If they do have control of this dynamic loading I have not found that feature yet. Please tell if you know some reliable steps for reproduce it. -BEGIN PGP SIGNATURE- iQIzBAEBCAAdFiEEznLCgPSfWTT+LPrmFBMQ2OPtCKUFAlwJUHsACgkQFBMQ2OPt CKWr+A//Qx8jQ3xuZDNGTmIKUvVBLJNau01wHdRVF+bBW0S7RxfjiwHXjTJ5DLTU L/ne1fCjGDPG7kV3fqy2sXq0Lfl1brPiIQpcU82f/LpHBsIGb6Uz33vfDGF8hNkC ZEaK76KHxoA9Z3OVwic/x56kwbLuvXDX8d6M8K37ZOfOxgsgoY7WbGQDf/0dBK6Y auAnPxQ8K3vhS/prJi2u+DWASBnEkM9d94tCeOFhpVHYkpv/6F1PMhx5CSTy/lwN aSOy1IUkL54WJ4QwT3NNoIKkd+vhxHHOjvvSeKCQcAANoYkgtkhwEJDD/AQn9bE4 EDAZ8yV3QfHElg64x9SIbQJh5rrlLJpKOLnMMslzQl1zIrAzy5V5YcInXiic6VK8 cNDX+FT07kz5+PoqZ5eUMrnbFjbCE4t53sGRuTS+Zd1QdVIEHTvHd2ToMUfeEBX+ tnLTbqg+rhh/F6oirI+L/jx5oSrye5vNvx5kcg4Q0y4AbEWPY0DVZWuemuMVBQGl 4TqG8zQN7CNU6yW8GRHBf3dLi9DtJVS9LUVe+HlC0AYZw2JDUFGxpo6Jb4LxZ791 V9k/FFzH4CLeRs9nh2aoQDFnjK4PcEEifJep9Grbi+z4wGHxN/VB/+aVU4acKJ/I 9Kdr+D4lvlYV6hGY0qxYugj7L26itILsEBPqeGpomsR+2NgKOus= =NNXh -END PGP SIGNATURE- -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/b456beb0-be3a-6019-282c-23e0cdfbcef7%40jhuapl.edu. For more options, visit https://groups.google.com/d/optout.
Re: [qubes-users] Q4 qube-manager broke after dom0 software update yesterday
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 On 12/4/18 8:07 PM, Steve Coleman wrote: > I was away for a week and dutifully did all my software updates > upon returning. After updating Dom0 the qube-manager that was > running started having problems, so I restarted it, but it then > refused to run. > > RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap > the QtObject class > > The problem appears to be qube-manager/python3 is first picking up > references to PyQt5 when first launching, and later it is picking > up some PyQt4 references via > /usr/lib64/python3.5/site-packages/qubesadmin/__pycache__/*.pyc > files, which then load files from > /usr/lib64/python3.5/site-packages/PyQt4/__pycache__/* , and thus > PyQt4/QtGui.so gets loaded. > > It looks like the qubes-manager-4.0.22-1.noarch is the latest, > though I can't help but think this is a case of cache poisoning or > some Qt4/Qt5 environment issue. If so, can the __pycache__/*.pyc > files be removed and regenerated, or is there another way to avoid > the mixing of PyQt versions? > I think that PyQt5 is not installed on dom0 by default so this problem is not very likely to happen. Also it seems that all imports from Qube Manager source specify version 4. Please tell if you know some reliable steps for reproduce it. -BEGIN PGP SIGNATURE- iQIzBAEBCAAdFiEEznLCgPSfWTT+LPrmFBMQ2OPtCKUFAlwJUHsACgkQFBMQ2OPt CKWr+A//Qx8jQ3xuZDNGTmIKUvVBLJNau01wHdRVF+bBW0S7RxfjiwHXjTJ5DLTU L/ne1fCjGDPG7kV3fqy2sXq0Lfl1brPiIQpcU82f/LpHBsIGb6Uz33vfDGF8hNkC ZEaK76KHxoA9Z3OVwic/x56kwbLuvXDX8d6M8K37ZOfOxgsgoY7WbGQDf/0dBK6Y auAnPxQ8K3vhS/prJi2u+DWASBnEkM9d94tCeOFhpVHYkpv/6F1PMhx5CSTy/lwN aSOy1IUkL54WJ4QwT3NNoIKkd+vhxHHOjvvSeKCQcAANoYkgtkhwEJDD/AQn9bE4 EDAZ8yV3QfHElg64x9SIbQJh5rrlLJpKOLnMMslzQl1zIrAzy5V5YcInXiic6VK8 cNDX+FT07kz5+PoqZ5eUMrnbFjbCE4t53sGRuTS+Zd1QdVIEHTvHd2ToMUfeEBX+ tnLTbqg+rhh/F6oirI+L/jx5oSrye5vNvx5kcg4Q0y4AbEWPY0DVZWuemuMVBQGl 4TqG8zQN7CNU6yW8GRHBf3dLi9DtJVS9LUVe+HlC0AYZw2JDUFGxpo6Jb4LxZ791 V9k/FFzH4CLeRs9nh2aoQDFnjK4PcEEifJep9Grbi+z4wGHxN/VB/+aVU4acKJ/I 9Kdr+D4lvlYV6hGY0qxYugj7L26itILsEBPqeGpomsR+2NgKOus= =NNXh -END PGP SIGNATURE- -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/ce0c19d5-8414-e8be-80df-a4f843f5a4b1%40riseup.net. For more options, visit https://groups.google.com/d/optout.
[qubes-users] Q4 qube-manager broke after dom0 software update yesterday
I was away for a week and dutifully did all my software updates upon returning. After updating Dom0 the qube-manager that was running started having problems, so I restarted it, but it then refused to run. RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap the QtObject class The problem appears to be qube-manager/python3 is first picking up references to PyQt5 when first launching, and later it is picking up some PyQt4 references via /usr/lib64/python3.5/site-packages/qubesadmin/__pycache__/*.pyc files, which then load files from /usr/lib64/python3.5/site-packages/PyQt4/__pycache__/* , and thus PyQt4/QtGui.so gets loaded. It looks like the qubes-manager-4.0.22-1.noarch is the latest, though I can't help but think this is a case of cache poisoning or some Qt4/Qt5 environment issue. If so, can the __pycache__/*.pyc files be removed and regenerated, or is there another way to avoid the mixing of PyQt versions? thanks, Steve -- You received this message because you are subscribed to the Google Groups "qubes-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to qubes-users+unsubscr...@googlegroups.com. To post to this group, send email to qubes-users@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/qubes-users/a6de8368-4610-3aad-22f8-41654217fc73%40jhuapl.edu. For more options, visit https://groups.google.com/d/optout. dom0> qube-manager Traceback (most recent call last): File "/bin/qubes-qube-manager", line 9, in load_entry_point('qubesmanager==4.0.22', 'console_scripts', 'qubes-qube-manager')() File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 542, in load_entry_point return get_distribution(dist).load_entry_point(group, name) File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2575, in load_entry_point return ep.load() File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2235, in load return self.resolve() File "/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", line 2241, in resolve module = __import__(self.module_name, fromlist=['__name__'], level=0) File "/usr/lib/python3.5/site-packages/qubesmanager/qube_manager.py", line 41, in from PyQt4 import QtGui # pylint: disable=import-error RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap the QObject class dom0> sudo strace qube-manager ... open("/usr/lib64/python3.5/asyncio/__pycache__/sslproto.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt5/__pycache__/__init__.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt5", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt5/QtCore.so", O_RDONLY|O_CLOEXEC) = 3 ... open("/usr/lib64/python3.5/site-packages/sip.so", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt5/QtGui.so", O_RDONLY|O_CLOEXEC) = 3 ... open("/lib64/libXau.so.6", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt5/QtWidgets.so", O_RDONLY|O_CLOEXEC) = 3 ... open("/usr/lib/python3.5/site-packages/qubesadmin/__pycache__/tags.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib/python3.5/site-packages/qubesadmin/events/__pycache__/__init__.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt4/__pycache__/__init__.cpython-35.pyc", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt4", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt4/QtGui.so", O_RDONLY|O_CLOEXEC) = 3 ... open("/lib64/libuuid.so.1", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib64/python3.5/site-packages/PyQt4/QtCore.so", O_RDONLY|O_CLOEXEC) = 3 open("/bin/qubes-qube-manager", O_RDONLY|O_CLOEXEC) = 3 ... open("/usr/lib/python3.5/site-packages/pkg_resources/__init__.py", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib/python3.5/site-packages/qubesmanager/qube_manager.py", O_RDONLY|O_CLOEXEC) = 3 /usr/lib/python3.5/site-packages/qubesadmin/label.py: :py:meth:`PyQt4.QtGui.QIcon.fromTheme`''' dom0> find /usr/lib/python3.5/site-packages/qubesadmin -type f -exec grep -Hi Qt4 {} \; Binary file /usr/lib/python3.5/site-packages/qubesadmin/__pycache__/label.cpython-35.pyc matches Binary file /usr/lib/python3.5/site-packages/qubesadmin/__pycache__/label.cpython-35.opt-1.pyc matches