From e777812ef14245fcf223513ab3389eea1d627c4a Mon Sep 17 00:00:00 2001 From: "Joshua M. Boniface" Date: Fri, 16 Feb 2024 02:41:10 -0500 Subject: Move configuration into YAML document Simplifies changes in the future especially for new releases of e.g. Debian/Ubuntu, and makes the definitions easier to read. --- build.yaml | 120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 build.yaml (limited to 'build.yaml') diff --git a/build.yaml b/build.yaml new file mode 100644 index 0000000..e3b0819 --- /dev/null +++ b/build.yaml @@ -0,0 +1,120 @@ +--- +# Build definitions for `build.py` + +# DEB packages +debian: + build_function: build_package_deb + archmaps: + amd64: + PACKAGE_ARCH: amd64 + arm64: + PACKAGE_ARCH: arm64 + armhf: + PACKAGE_ARCH: armhf + cross-gcc: + bookworm: '12' + bullseye: '10' + dockerfile: debian/docker/Dockerfile + imagename: jellyfin-builder-debian + releases: + bookworm: '12' + bullseye: '11' +ubuntu: + build_function: build_package_deb + archmaps: + amd64: + PACKAGE_ARCH: amd64 + arm64: + PACKAGE_ARCH: arm64 + armhf: + PACKAGE_ARCH: armhf + cross-gcc: + focal: '10' + jammy: '12' + noble: '12' + dockerfile: debian/docker/Dockerfile + imagename: jellyfin-builder-ubuntu + releases: + focal: '20.04' + jammy: '22.04' + noble: '24.04' + +# RPM packages (TODO) +centos: + build_function: build_package_rpm +fedora: + build_function: build_package_rpm + +# Portable archives +linux: + build_function: build_linux + archivetypes: tar + archmaps: + amd64: + DOTNET_ARCH: x64 + PACKAGE_ARCH: amd64 + amd64-musl: + DOTNET_ARCH: musl-x64 + PACKAGE_ARCH: amd64-musl + arm64: + DOTNET_ARCH: arm64 + PACKAGE_ARCH: arm64 + arm64-musl: + DOTNET_ARCH: musl-arm64 + PACKAGE_ARCH: arm64-musl + armhf: + DOTNET_ARCH: arm + PACKAGE_ARCH: armhf + dockerfile: portable/Dockerfile + imagename: jellyfin-builder-linux +windows: + build_function: build_windows + archivetypes: zip + archmaps: + amd64: + DOTNET_ARCH: x64 + PACKAGE_ARCH: amd64 + arm64: + DOTNET_ARCH: arm64 + PACKAGE_ARCH: arm64 + dockerfile: portable/Dockerfile + imagename: jellyfin-builder-windows +macos: + build_function: build_macos + archivetypes: tar + archmaps: + amd64: + DOTNET_ARCH: x64 + PACKAGE_ARCH: amd64 + arm64: + DOTNET_ARCH: arm64 + PACKAGE_ARCH: arm64 + dockerfile: portable/Dockerfile + imagename: jellyfin-builder-macos +portable: + build_function: build_portable + archivetypes: tar-gz,zip + dockerfile: portable/Dockerfile + imagename: jellyfin-builder-portable + +# Docker images +docker: + build_function: build_docker + archmaps: + amd64: + DOTNET_ARCH: x64 + IMAGE_ARCH: amd64 + PACKAGE_ARCH: amd64 + QEMU_ARCH: x86_64 + arm64: + DOTNET_ARCH: arm64 + IMAGE_ARCH: arm64v8 + PACKAGE_ARCH: arm64 + QEMU_ARCH: aarch64 + armhf: + DOTNET_ARCH: arm + IMAGE_ARCH: arm32v7 + PACKAGE_ARCH: armhf + QEMU_ARCH: arm + dockerfile: docker/Dockerfile + imagename: jellyfin/jellyfin -- cgit