From 9b6bb38532c8d25bc9a91df76aaa52a32434bf55 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Wed, 12 Dec 2018 01:09:42 -0500 Subject: [PATCH 1/3] Remove submodule update from Debian build Packinging should not maniuplate one's source code like this. --- debian/rules | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/rules b/debian/rules index ef697f173a..edad725292 100755 --- a/debian/rules +++ b/debian/rules @@ -14,7 +14,6 @@ override_dh_auto_test: override_dh_clistrip: override_dh_auto_build: - git submodule update --init dotnet build --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/jellyfin/bin' dotnet publish --configuration $(CONFIG) $(CURDIR)/MediaBrowser.sln --output='$(CURDIR)/usr/lib/jellyfin/bin' From cb3616ac8c2f19bd02dd56c09cece7ea731cea05 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Wed, 12 Dec 2018 01:10:38 -0500 Subject: [PATCH 2/3] Update to dotnet-sdk-2.2 --- README.md | 6 +++--- debian/control | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index c267ffd636..6fa050f8d3 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ The Jellyfin package is in the AUR at https://aur.archlinux.org/packages/jellyfi A package repository is available at https://repo.jellyfin.org. To use it: -0. Install the `dotnet-runtime-2.1` package via [Microsoft's repositories](https://dotnet.microsoft.com/download/dotnet-core/2.1). +0. Install the `dotnet-runtime-2.2` package via [Microsoft's repositories](https://dotnet.microsoft.com/download/dotnet-core/2.2). 0. Import the GPG signing key (signed by Joshua): ``` wget -O - https://repo.jellyfin.org/debian/jellyfin-signing-key-joshua.gpg.key | sudo apt-key add - @@ -65,7 +65,7 @@ NOTE: When building from source, only cloning the full Git repository is support Debian build facilities are integrated into the repo at `debian/`. -0. Install the `dotnet-sdk-2.1` package via [Microsoft's repositories](https://dotnet.microsoft.com/download/dotnet-core/2.1). +0. Install the `dotnet-sdk-2.2` package via [Microsoft's repositories](https://dotnet.microsoft.com/download/dotnet-core/2.2). 0. Run `dpkg-buildpackage -us -uc`. 0. Install the resulting `jellyfin_*.deb` file on your system. @@ -75,7 +75,7 @@ A huge thanks to Carlos Hernandez who created the original Debian build configur A pre-built windows installer will be available soon. Until then it isn't too hard to install Jellyfin from Source. -0. Install the dotnet core SDK 2.1 from [Microsoft's Webpage](https://dotnet.microsoft.com/download/dotnet-core/2.1) and [install Git for Windows](https://gitforwindows.org/) +0. Install the dotnet core SDK 2.2 from [Microsoft's Webpage](https://dotnet.microsoft.com/download/dotnet-core/2.2) and [install Git for Windows](https://gitforwindows.org/) 0. Clone Jellyfin into a directory of your choice. ``` git clone https://github.com/jellyfin/jellyfin.git C:\Jellyfin diff --git a/debian/control b/debian/control index 41a491c08e..bc5e05daa7 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: misc Priority: optional Maintainer: Vasily Build-Depends: debhelper (>= 9), - dotnet-sdk-2.1, + dotnet-sdk-2.2, libc6-dev Standards-Version: 3.9.4 @@ -12,6 +12,6 @@ Replaces: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server Breaks: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server Conflicts: mediabrowser, emby, emby-server-beta, jellyfin-dev, emby-server Architecture: all -Depends: ${shlibs:Depends}, ${misc:Depends}, at, libsqlite3-0, dotnet-runtime-2.1, ffmpeg +Depends: ${shlibs:Depends}, ${misc:Depends}, at, libsqlite3-0, dotnet-runtime-2.2, ffmpeg Description: Jellyfin is a home media server. It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development. From a2fee0dde26622584e0fc83df29f71ed4dec7b9e Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Wed, 12 Dec 2018 01:14:05 -0500 Subject: [PATCH 3/3] Add Dockerfile for building Debian package --- Dockerfile.debian_package | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 Dockerfile.debian_package diff --git a/Dockerfile.debian_package b/Dockerfile.debian_package new file mode 100644 index 0000000000..31505b978b --- /dev/null +++ b/Dockerfile.debian_package @@ -0,0 +1,22 @@ +FROM debian:9 + +# https://dotnet.microsoft.com/download/linux-package-manager/debian9/sdk-current +RUN apt-get update \ + && apt-get install -y apt-transport-https debhelper gnupg wget \ + && wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg \ + && mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ \ + && wget -q https://packages.microsoft.com/config/debian/9/prod.list \ + && mv prod.list /etc/apt/sources.list.d/microsoft-prod.list \ + && chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg \ + && chown root:root /etc/apt/sources.list.d/microsoft-prod.list \ + && apt-get update \ + && apt-get install -y dotnet-sdk-2.2 + +WORKDIR /repo +COPY . . + +RUN dpkg-buildpackage -us -uc \ + && mkdir /dist \ + && mv /jellyfin*deb /dist + +WORKDIR /dist