diff options
author | Joshua M. Boniface <joshua@boniface.me> | 2024-02-03 16:08:56 -0500 |
---|---|---|
committer | Joshua M. Boniface <joshua@boniface.me> | 2024-02-03 16:09:29 -0500 |
commit | 9a2248e1d20ebc1826d246bf5bcb194e3499408e (patch) | |
tree | 87fbcfa2325e85797ad68d172208a4427aa470fb /debian/rules | |
parent | Add submodule checkout tool (diff) | |
download | jellyfin-packaging-9a2248e1d20ebc1826d246bf5bcb194e3499408e.tar.gz jellyfin-packaging-9a2248e1d20ebc1826d246bf5bcb194e3499408e.tar.bz2 jellyfin-packaging-9a2248e1d20ebc1826d246bf5bcb194e3499408e.zip |
Add combined Debian build
Diffstat (limited to 'debian/rules')
-rwxr-xr-x | debian/rules | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..8c52b29 --- /dev/null +++ b/debian/rules @@ -0,0 +1,57 @@ +#! /usr/bin/make -f +CONFIG := Release +TERM := xterm +SHELL := /bin/bash + +HOST_ARCH := $(shell arch) +BUILD_ARCH := ${DEB_HOST_MULTIARCH} +ifeq ($(HOST_ARCH),x86_64) + # Building AMD64 + DOTNETRUNTIME := linux-x64 + ifeq ($(BUILD_ARCH),arm-linux-gnueabihf) + # Cross-building ARM on AMD64 + DOTNETRUNTIME := linux-arm + endif + ifeq ($(BUILD_ARCH),aarch64-linux-gnu) + # Cross-building ARM on AMD64 + DOTNETRUNTIME := linux-arm64 + endif +endif +ifeq ($(HOST_ARCH),armv7l) + # Building ARM + DOTNETRUNTIME := linux-arm +endif +ifeq ($(HOST_ARCH),arm64) + # Building ARM + DOTNETRUNTIME := linux-arm64 +endif + +export DH_VERBOSE=1 +export DOTNET_CLI_TELEMETRY_OPTOUT=1 + +%: + dh $@ + +override_dh_auto_test: + +override_dh_clistrip: + +override_dh_auto_build: + cd jellyfin-server && dotnet publish -maxcpucount:1 --configuration $(CONFIG) \ + --output='$(CURDIR)/build/usr/lib/jellyfin/bin' --self-contained --runtime $(DOTNETRUNTIME) \ + -p:DebugSymbols=false -p:DebugType=none Jellyfin.Server + cd jellyfin-web && npm ci --no-audit --unsafe-perm && \ + npm run build:production && mv $(CURDIR)/jellyfin-web/dist $(CURDIR)/build/web + +override_dh_auto_clean: + cd jellyfin-server && dotnet clean -maxcpucount:1 --configuration $(CONFIG) Jellyfin.Server || true + test -d $(CURDIR)/jellyfin-web/dist && \ + rm -rf '$(CURDIR)/jellyfin-web/dist' || true + test -d $(CURDIR)/jellyfin-web/web && \ + rm -rf '$(CURDIR)/jellyfin-web/web' || true + test -d $(CURDIR)/jellyfin-web/node_modules && \ + rm -rf '$(CURDIR)/jellyfin-web/node_modules' || true + rm -rf '$(CURDIR)/build' + +override_dh_installinit: + dh_installinit --name=jellyfin |