[InfoBarGenerics] avoid possible BSoD if self.servicelist is None #3213
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Enigma2 Python 3 | |
on: | |
push: | |
branches: [ Release, Developer, FCC, dm9x0 ] | |
paths-ignore: | |
- '**/README' | |
- '**/DOCS' | |
pull_request: | |
branches: [Release, Developer, FCC, dm9x0 ] | |
paths-ignore: | |
- '**/README' | |
- '**/DOCS' | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
gcc: [13] | |
python: ['3.12'] | |
steps: | |
- name: install dev packages | |
run: | | |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
sudo apt-get -q update | |
sudo apt remove -y libunwind-14-dev | |
sudo apt-get install g++-${{ matrix.gcc }} | |
sudo apt-get install linux-libc-dev | |
sudo apt-get install git | |
sudo apt-get install build-essential | |
sudo apt-get install automake | |
sudo apt-get install libtool | |
sudo apt-get install python3-dev | |
sudo apt-get install zlib1g-dev | |
sudo apt-get install gettext | |
sudo apt-get install swig | |
sudo apt-get install libgstreamer1.0-dev | |
sudo apt-get install libgstreamer-plugins-base1.0-dev | |
sudo apt-get install libfreetype6-dev | |
sudo apt-get install libfribidi-dev | |
sudo apt-get install libssl-dev | |
sudo apt-get install libavahi-client-dev | |
sudo apt-get install libjpeg-turbo8-dev | |
sudo apt-get install libgif-dev | |
sudo apt-get install mm-common | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install python ${{ matrix.python }} packages | |
run: | | |
pip3 install flake8 | |
- name: Check format PEP8 | |
run: | | |
echo "checking locale format..." | |
find . -type f -name "*.po" -exec msgfmt {} -o {}.mo \; | |
echo "checking PEP8 validation..." | |
flake8 --builtins="_,ngettext,pgettext" --ignore=W191,W503,W504,E123,E126,E128,E501,E722 . --exit-zero | |
echo "check format PEP8 completed!" | |
# PEP8 :- IGNORE CODES | |
# W191 : indentation contains tabs | |
# W503 : line break before binary operator | |
# W504 : line break after binary operator | |
# E128 : continuation line under-indented for visual indent | |
# E501 : line too long (> 79 characters) | |
# E722 : do not use bare 'except' | |
- name: Build enigma2 dependencies, gcc-${{ matrix.gcc }} | |
env: | |
CC: "gcc-${{ matrix.gcc }}" | |
CXX: "g++-${{ matrix.gcc }}" | |
run: | | |
echo "installing libdvbsi++" | |
pushd . | |
cd /tmp | |
git clone --depth 1 https://github.com/oe-alliance/libdvbsi.git | |
cd libdvbsi | |
autoreconf -i | |
./configure | |
make | |
sudo make install | |
popd | |
echo "installing libsigc++-3" | |
pushd . | |
cd /tmp | |
git clone --depth 1 https://github.com/TwolDE2/libsigc--3.0.git | |
cd libsigc--3.0 | |
autoreconf -i | |
./configure | |
make | |
sudo make install | |
popd | |
echo "installing tuxbox" | |
pushd . | |
cd /tmp | |
git clone --depth 1 https://github.com/OpenPLi/tuxtxt.git | |
cd tuxtxt/libtuxtxt | |
autoreconf -i | |
./configure --with-boxtype=generic DVB_API_VERSION=5 | |
make | |
sudo make install | |
cd ../tuxtxt | |
autoreconf -i | |
./configure --with-boxtype=generic DVB_API_VERSION=5 | |
make | |
sudo make install | |
popd | |
- name: build enigma2 | |
env: | |
CC: "gcc-${{ matrix.gcc }}" | |
CXX: "g++-${{ matrix.gcc }}" | |
run: | | |
echo "compiling enigma2" | |
autoreconf -i | |
./configure --with-libsdl=no --with-boxtype=nobox --enable-dependency-tracking ac_cv_prog_c_openmp=-fopenmp --with-gstversion=1.0 --with-textlcd | |
make | |
python -m compileall . | |
echo "checking enigma2 compiles completed" | |