I thought I’d follow up on this. I’ve since switched my Rapsberry Pi 4 to an x64 mini PC running Manjaro. My assumption is that most of what I share here will apply to the RPi4 as well.
A maintainer of the AUR packages for bigscreen shared the following steps to get bigscreen at least loading and not presenting a black screen. (I’ve paraphrased his comment’s contents and modified the first command for Manjaro. You need the AUR enabled, obviously. See also his follow-up comment.)
- pamac install plasma-settings-git
- Add the contents of overlays/bigscreen/etc/xdg · master · Plasma Bigscreen / Plasma Bigscreen Raspberry Pi4 DebOS image · GitLab to /home/$USER/.config/
- Add the following to the user’s .bash_profile
export PLASMA_PLATFORM=mediacenter
export QT_FILE_SELECTORS=mediacenter
As he says:
You can now launch by [logging] in with $USER from sddm by running Plasma-X11 or Plasma-Wayland but not Plasma-Bigscreen-Wayland
These changes have caused bigscreen to load the DE for me (no more black screen!), but the AUR user kihanos, who provided these changes and helps maintain bigscreen, said:
So, I finally got it to run as expected without Mycroft nor CEC support. Things are more complicated than I thought.
I have tried to tackle some CEC stuff, and here’s where I’m at:
This link overlays/bigscreen/etc/skel/.config/autostart-scripts · master · Plasma Bigscreen / Plasma Bigscreen Raspberry Pi4 DebOS image · GitLab provides some necessary setup steps for bigscreen to run automagically.
I ran:
group add uniput
usermod -a -G $USER uinput
mkdir /home/$USER/.config/autostart-scripts
git cone https://invent.kde.org/plasma-bigscreen/bigscreen-debos-image-rpi4.git /home/$USER/.bigscreen
cp /home/$USER/.config{,.bak}
rsync -avhP /home/$USER/.bigscreen/ /home/$USER/.config/
pip3 install wheel
pip3 install python-uinput
pip3 install cec
But the final pip3
command errors with the following:
pip3 install cec error
pip3 install cec
Collecting cec
Using cached cec-0.2.7.tar.gz (17 kB)
Building wheels for collected packages: cec
Building wheel for cec (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"'; __file__='"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-k5p76j95
cwd: /tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/
Complete output (35 lines):
running bdist_wheel
running build
running build_ext
building 'cec' extension
creating build
creating build/temp.linux-x86_64-3.9
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fPIC -Iinclude -I/usr/include/python3.9 -c cec.cpp -o build/temp.linux-x86_64-3.9/cec.o
cec.cpp: In function ‘PyObject* can_persist_config(PyObject*, PyObject*)’:
cec.cpp:615:32: error: ‘class CEC::ICECAdapter’ has no member named ‘CanPersistConfiguration’; did you mean ‘CanSaveConfiguration’?
615 | RETURN_BOOL(CEC_adapter->CanPersistConfiguration());
| ^~~~~~~~~~~~~~~~~~~~~~~
cec.cpp:121:13: note: in definition of macro ‘RETURN_BOOL’
121 | result = (arg); \
| ^~~
cec.cpp: In function ‘PyObject* persist_config(PyObject*, PyObject*)’:
cec.cpp:622:26: error: ‘class CEC::ICECAdapter’ has no member named ‘CanPersistConfiguration’; did you mean ‘CanSaveConfiguration’?
622 | if( ! CEC_adapter->CanPersistConfiguration() ) {
| ^~~~~~~~~~~~~~~~~~~~~~~
| CanSaveConfiguration
cec.cpp:632:32: error: ‘class CEC::ICECAdapter’ has no member named ‘PersistConfiguration’; did you mean ‘SetConfiguration’?
632 | RETURN_BOOL(CEC_adapter->PersistConfiguration(&config));
| ^~~~~~~~~~~~~~~~~~~~
cec.cpp:121:13: note: in definition of macro ‘RETURN_BOOL’
121 | result = (arg); \
| ^~~
cec.cpp: In function ‘PyObject* PyInit_cec()’:
cec.cpp:884:22: warning: ‘void PyEval_InitThreads()’ is deprecated [-Wdeprecated-declarations]
884 | PyEval_InitThreads();
| ~~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/python3.9/Python.h:154,
from cec.cpp:29:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Failed building wheel for cec
Running setup.py clean for cec
Failed to build cec
Installing collected packages: cec
Running setup.py install for cec ... error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"'; __file__='"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qb1e9z74/install-record.txt --single-version-externally-managed --compile --install-headers /usr/include/python3.9/cec
cwd: /tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/
Complete output (35 lines):
running install
running build
running build_ext
building 'cec' extension
creating build
creating build/temp.linux-x86_64-3.9
gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fPIC -Iinclude -I/usr/include/python3.9 -c cec.cpp -o build/temp.linux-x86_64-3.9/cec.o
cec.cpp: In function ‘PyObject* can_persist_config(PyObject*, PyObject*)’:
cec.cpp:615:32: error: ‘class CEC::ICECAdapter’ has no member named ‘CanPersistConfiguration’; did you mean ‘CanSaveConfiguration’?
615 | RETURN_BOOL(CEC_adapter->CanPersistConfiguration());
| ^~~~~~~~~~~~~~~~~~~~~~~
cec.cpp:121:13: note: in definition of macro ‘RETURN_BOOL’
121 | result = (arg); \
| ^~~
cec.cpp: In function ‘PyObject* persist_config(PyObject*, PyObject*)’:
cec.cpp:622:26: error: ‘class CEC::ICECAdapter’ has no member named ‘CanPersistConfiguration’; did you mean ‘CanSaveConfiguration’?
622 | if( ! CEC_adapter->CanPersistConfiguration() ) {
| ^~~~~~~~~~~~~~~~~~~~~~~
| CanSaveConfiguration
cec.cpp:632:32: error: ‘class CEC::ICECAdapter’ has no member named ‘PersistConfiguration’; did you mean ‘SetConfiguration’?
632 | RETURN_BOOL(CEC_adapter->PersistConfiguration(&config));
| ^~~~~~~~~~~~~~~~~~~~
cec.cpp:121:13: note: in definition of macro ‘RETURN_BOOL’
121 | result = (arg); \
| ^~~
cec.cpp: In function ‘PyObject* PyInit_cec()’:
cec.cpp:884:22: warning: ‘void PyEval_InitThreads()’ is deprecated [-Wdeprecated-declarations]
884 | PyEval_InitThreads();
| ~~~~~~~~~~~~~~~~~~^~
In file included from /usr/include/python3.9/Python.h:154,
from cec.cpp:29:
/usr/include/python3.9/ceval.h:130:37: note: declared here
130 | Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
| ^~~~~~~~~~~~~~~~~~
error: command '/usr/bin/gcc' failed with exit code 1
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"'; __file__='"'"'/tmp/pip-install-q7h2n68i/cec_d416155d195c4ae38dd258508c5fbbc5/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-qb1e9z74/install-record.txt --single-version-externally-managed --compile --install-headers /usr/include/python3.9/cec Check the logs for full command output.
I hope to find a solution for this. I would appreciate any help!