Clean up and fix Fedora/CentOS builds

This performs a lot of bugfixing and general cleanup to the
Fedora/CentOS builds, including moving the create_tarball into the
docker-build.sh script, remove some old long versions from the spec
file, correcting several bugs with the Docker environment including
splitting them into more discrete layers, and finally making sure
jellyfin-web is included properly in the RPM.
This commit is contained in:
Joshua Boniface
2019-09-25 14:23:17 -04:00
parent 56a879e148
commit 15b83f8b55
8 changed files with 133 additions and 334 deletions

View File

@@ -8,22 +8,28 @@ ARG SDK_VERSION=2.2
ENV SOURCE_DIR=/jellyfin
ENV ARTIFACT_DIR=/dist
# Prepare Fedora build environment
RUN dnf update -y \
&& dnf install -y @buildsys-build rpmdevtools dnf-plugins-core libcurl-devel fontconfig-devel freetype-devel openssl-devel glibc-devel libicu-devel nodejs \
&& dnf copr enable -y @dotnet-sig/dotnet \
# Prepare Fedora environment
RUN dnf update -y
# Install build dependencies
RUN dnf install -y @buildsys-build rpmdevtools dnf-plugins-core libcurl-devel fontconfig-devel freetype-devel openssl-devel glibc-devel libicu-devel nodejs wget git
# Install DotNET SDK
RUN dnf copr enable -y @dotnet-sig/dotnet \
&& rpmdev-setuptree \
&& dnf install -y dotnet-sdk-${SDK_VERSION} dotnet-runtime-${SDK_VERSION} \
&& ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
&& dnf install -y dotnet-sdk-${SDK_VERSION} dotnet-runtime-${SDK_VERSION}
# Install yarn package manager
RUN wget -q -O /etc/yum.repos.d/yarn.repo https://dl.yarnpkg.com/rpm/yarn.repo \
&& dnf install -y yarn
# Create symlinks and directories
RUN ln -sf ${PLATFORM_DIR}/docker-build.sh /docker-build.sh \
&& mkdir -p ${SOURCE_DIR}/SPECS \
&& ln -s ${PLATFORM_DIR}/pkg-src/jellyfin.spec ${SOURCE_DIR}/SPECS/jellyfin.spec \
&& mkdir -p ${SOURCE_DIR}/SOURCES \
&& ln -s ${PLATFORM_DIR}/pkg-src ${SOURCE_DIR}/SOURCES
# Install yarn package manager
RUN wget -q -O- https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo \
&& dnf install -y yarn
VOLUME ${ARTIFACT_DIR}/
COPY . ${SOURCE_DIR}/