name: Modern Linux Release on: push: tags: - v* workflow_dispatch: jobs: release: runs-on: ubuntu-22.04 steps: - name: Checkout repository uses: actions/checkout@v3 with: fetch-depth: 0 - name: Install python run: | sudo add-apt-repository ppa:deadsnakes/ppa sudo apt-get update sudo apt install -y python3.11 python3-pip python3.11-venv \ python3.11-dev \ '^libxcb.*-dev' libx11-xcb-dev \ libglu1-mesa-dev libxrender-dev libxi-dev \ libxkbcommon-dev libxkbcommon-x11-dev - name: Install dependencies and pyinstall run: | python3.11 -m venv build . build/bin/activate python -m pip install pip==23.2.1 setuptools==68.0.0 pip install -r requirements.txt pip install PyInstaller==5.13.0 - name: Build binary run: | . build/bin/activate python setup.py -V pyinstaller --onefile -p src -n nanovna-saver nanovna-saver.py - name: Archive production artifacts uses: actions/upload-artifact@v1 with: name: NanoVNASaver.linux_modern path: dist/nanovna-saver