aboutsummaryrefslogtreecommitdiff
path: root/build.yaml
blob: 8e373f2b066f2e9f219bd49d21fde28eb5fd4455 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
---
# 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:
    bullseye: '10'
    bookworm: '12'
  dockerfile: debian/docker/Dockerfile
  imagename: jellyfin-builder-debian
  releases:
    bullseye: '11'
    bookworm: '12'
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'

# Portable archives
linux:
  build_function: build_linux
  archivetypes: targz,tarxz
  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: targz,tarxz
  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: targz,tarxz,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

# Nuget packages
nuget:
  build_function: build_nuget
  projects:
    - Jellyfin.Data/Jellyfin.Data.csproj
    - MediaBrowser.Common/MediaBrowser.Common.csproj
    - MediaBrowser.Controller/MediaBrowser.Controller.csproj
    - MediaBrowser.Model/MediaBrowser.Model.csproj
    - Emby.Naming/Emby.Naming.csproj
    - src/Jellyfin.Extensions/Jellyfin.Extensions.csproj
  feed_urls:
    stable: https://api.nuget.org/v3/index.json
    unstable: https://nuget.pkg.github.com/jellyfin/index.json
bgstack15