Skip to content

Upload Debian Bullseye Package #21

Upload Debian Bullseye Package

Upload Debian Bullseye Package #21

# This workflow will upload a .deb Package
name: Upload Debian Bullseye Package
on:
workflow_dispatch:
jobs:
deploy:
strategy:
matrix:
codename: [buster, bullseye, bookworm, focal, jammy, lunar, mantic]
include:
- codename: buster
container: debian:buster
- codename: bullseye
container: debian:bullseye
- codename: bookworm
container: debian:bookworm
- codename: focal
container: ubuntu:focal
- codename: jammy
container: ubuntu:jammy
- codename: lunar
container: ubuntu:lunar
- codename: mantic
container: ubuntu:mantic
runs-on: ubuntu-latest
container: ${{ matrix.container }}
steps:
- uses: actions/checkout@v4
# Environment Setup
- name: Install system dependencies
run: |
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y build-essential apt-utils libconfig-file-perl python3-pip python3-venv python3-pillow python3-wheel ruby ruby-dev rubygems git libjpeg-dev zlib1g-dev
apt-get install -y dpkg-sig || true
apt-get install -y debdelta || true
gem install dotenv -v 2.8.1 # New versions of dotenv don't support older versions of ruby in older Debian-like releases, we have a >0 constraint so install the last-known-good version.
gem install --no-document fpm
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade setuptools virtualenv-tools3 wheel
deactivate
# Build Debian package
- name: Build debian package
run: |
. .venv/bin/activate
./build_deb_package.sh
deactivate
- name: Build debian package repository
env:
QMK_GPG_PRIVATE_KEY: ${{ secrets.QMK_GPG_PRIVATE_KEY }}
run: |
. .venv/bin/activate
./build_deb_repo.sh
deactivate
- name: Upload Debian Repo
uses: jakejarvis/s3-sync-action@master
with:
args: --acl public-read --follow-symlinks --delete
env:
AWS_S3_BUCKET: qmk-linux
AWS_ACCESS_KEY_ID: ${{ secrets.SPACES_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.SPACES_SECRET_KEY }}
AWS_S3_ENDPOINT: https://nyc3.digitaloceanspaces.com
SOURCE_DIR: 'deb_repo'
DEST_DIR: 'dists/${{ matrix.codename }}'