Hi, OpenLP doesn't work on Ubuntu 22.02.
I tried to download and install the newest version I could find (2.9.5.-1-all), but it crashed.
Any suggestions?
******************
Terminal output:
/usr/share/openlp/openlp/core/utils/languagemanager.py:96: FutureWarning: Possible nested set at position 1
if re.match(r'[[].*[]]', language):
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QTextDocument(0x7f3ebc0193e0), parent's thread is ImageThread(0x55cac7fb37f0), current thread is QThread(0x55cac69978a0)
QObject::connect: Cannot queue arguments of type 'QTextCursor'
(Make sure 'QTextCursor' is registered using qRegisterMetaType().)
QBasicTimer::start: Timers cannot be started from another thread
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/share/openlp/openlp/core/ui/mainwindow.py", line 823, in paintEvent
self.preview_controller.preview_size_changed()
File "/usr/share/openlp/openlp/core/ui/slidecontroller.py", line 625, in preview_size_changed
max_width = self.preview_frame.width() - self.grid.contentsMargins().top() * 2
AttributeError: 'PreviewController' object has no attribute 'grid'
The above exception was the direct cause of the following exception:
SystemError: <class 'PyQt5.QtGui.QPaintEvent'> returned a result with an exception set
The above exception was the direct cause of the following exception:
SystemError: <class 'PyQt5.QtGui.QPaintEvent'> returned a result with an exception set
The above exception was the direct cause of the following exception:
SystemError: <class 'PyQt5.QtCore.QEvent'> returned a result with an exception set
The above exception was the direct cause of the following exception:
SystemError: <class 'PyQt5.QtCore.QEvent'> returned a result with an exception set
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/share/openlp/openlp/core/__init__.py", line 226, in hook_exception
self.set_normal_cursor()
File "/usr/share/openlp/openlp/core/__init__.py", line 292, in set_normal_cursor
self.processEvents()
SystemError: <built-in method processEvents of OpenLP object at 0x7f3f80ad70a0> returned a result with an exception set
Original exception was:
Traceback (most recent call last):
File "/usr/bin/openlp", line 44, in <module>
main()
File "/usr/share/openlp/openlp/core/__init__.py", line 437, in main
sys.exit(application.run(qt_args))
File "/usr/share/openlp/openlp/core/__init__.py", line 145, in run
self.main_window.show()
File "/usr/share/openlp/openlp/core/ui/mainwindow.py", line 632, in show
if self.live_controller.display.isVisible():
AttributeError: 'NoneType' object has no attribute 'isVisible'
Speicherzugriffsfehler (Speicherabzug geschrieben)
Comments
I found the solution here: https://forums.openlp.org/discussion/5813/openlp-not-working-on-linux-mint-21-ubuntu-22-04# It works for me.
I can't find there a solution, what do you mean?
They mean go here:
https://openlp.org/blog/2022/08/14/new-release-openlp-30-rc2-295-helpful-hadassah
download the 2.9.5-1 version and install that. Just reinstalled on my Ubuntu 22 system and it works well.
To install in Ubuntu: apt install ./openlp_2.9.5.-1_all
I startet this thread because openlp_2.9.5.-1_all crashes on my system. (Ubuntu 22.04)
It looks like that bug might have been fixed since 2.9.5, as I cannot find the line of code referenced in your error message. I do remember seeing something like that, and I may have fixed it.
So what can I do?
@Theophilus Another version of OpenLP will be released soon that will hopefully resolve this issue.
Now I installed 3.0.0.0-1. But I doesn't work either. :-(
openlp
/usr/share/openlp/openlp/core/utils/languagemanager.py:96: FutureWarning: Possible nested set at position 1
if re.match(r'[[].*[]]', language):
QBasicTimer::start: Timers cannot be started from another thread
QObject: Cannot create children for a parent that is in a different thread.
(Parent is QTextDocument(0x7fbb08019260), parent's thread is ImageThread(0x560ba3fc5e70), current thread is QThread(0x560ba2858320)
QObject::connect: Cannot queue arguments of type 'QTextCursor'
(Make sure 'QTextCursor' is registered using qRegisterMetaType().)
Speicherzugriffsfehler (Speicherabzug geschrieben)
I tried to install openlp in an fresh installation of xubuntu 22.04 in a virtual machine.
The same problem:
Traceback (most recent call last):
File "/usr/bin/openlp", line 27, in <module>
from openlp.core.common import is_win, is_macosx
File "/usr/share/openlp/openlp/__init__.py", line 26, in <module>
from openlp import core, plugins
File "/usr/share/openlp/openlp/core/__init__.py", line 43, in <module>
from openlp.core.ui.mainwindow import MainWindow
File "/usr/share/openlp/openlp/core/ui/mainwindow.py", line 29, in <module>
from distutils import dir_util
ImportError: cannot import name 'dir_util' from 'distutils' (/usr/lib/python3.10/distutils/__init__.py)
@Theophilus did you do any of the steps in this forum post?
There is a dependency issue with installing 3.0+ version of open LP on the 22.04 LTS version of Ubuntu-based distributions. The dependency in question is python3-websockets. The dependency needed is version 10+; however, the version shipped with 22.04 is version 9. You can manually install the 22.10 version of the package here: https://packages.ubuntu.com/kinetic/python3-websockets by clicking on the "all" link and selecting a download source.
Once downloaded, you can install it by using 'sudo dpkg -i [filename]' command.
Once python3-websockits is installed, you can download version 3 of Openlp from https://get.openlp.org/ and install it using the dpkg command.
This is a workaround, but it seems to work for now.
Finally it works. Thank you so much!
I am happy to help!
I upgraded to Ubuntu 22.10 and it ships with that version of python3-websockets. Then OpenLP 3.0.1 installed successfully and seems to work fine (for now). I'll give it a good workout on Wednesday at Kids' Club.
I was going to try that after I discovered the dependency issue. But since it was one library with no dependencies, I figured the best option, in my use case, was to use the new library in the LTS version of Ubuntu. It is good to know that 22.10 works as an alternative.
@raoul @ninjakiwi Is there a feature in python3-websockets version 10 that is needed for the functionality of OpenLP, or will it work with version 9? Is this dependency something that can be resolved for compatibility with the LTS version of Ubuntu? If not can you include the current version 10 in the OpenLP repository so that it can be installed without this workaround?
@AndrewCCSGM version 9 of the websockets is broken, and no, we're not going to ship a package that we don't maintain. We have very little time as it is.
@AndrewCCSGM Thank you so much. With your post, I was able to update to OpenLP 3.0.1 on my Linux Mint machine. And it works!
God bless you and all the devs of this wonderful software!