1- FROM ubuntu:20.04
1+ FROM fedora:rawhide
22
33LABEL org.opencontainers.image.authors
"Jack Greiner <[email protected] >" 44LABEL org.opencontainers.image.source "https://github.com/ProjectSynchro/synchros-sexy-docker-containers"
55LABEL org.opencontainers.image.description "Naev Linux (Latest) development/testing environment for Naev (For CI and testing)"
66
7- # Add stable git PPA, deadsnakes ppa for python builds, and llvm apt repository (no building from source yay!)
8- RUN apt-get update && apt-get install -y software-properties-common curl apt-transport-https && \
9- apt-add-repository ppa:git-core/ppa && add-apt-repository ppa:deadsnakes/ppa && \
10- curl -sL https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - && \
11- curl -sL https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null && \
12- add-apt-repository -s 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal main' && \
13- apt-add-repository 'deb https://apt.kitware.com/ubuntu/ focal main' && \
14- apt-get update
7+ # Enable RPMFusion for additional up-to-date tools.
8+ RUN dnf -y --nogpgcheck install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
159
1610# Install Build dependencies and utilities.
17- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y autopoint autoconf-archive binutils-dev \
18- build-essential doxygen clang cmake ffmpeg git graphviz intltool lldb lld libfreetype6-dev libluajit-5.1-dev \
19- libopenal-dev libpng-dev libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsuitesparse-dev libvorbis-dev \
20- libxml2-dev lua-ldoc nano ninja-build vim wget xvfb
21-
22- # Install Python 3.9.* from deadsnakes PPA.
23- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python3.9-dev python3.9-venv python3-pip
24- RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1 && \
25- python3 -m pip install --upgrade pip && \
26- echo "Verifying python install" && \
11+ RUN dnf -y --nogpgcheck groupinstall "Development Tools"
12+
13+ RUN dnf -y --nogpgcheck install gettext-devel autoconf-archive binutils-devel \
14+ doxygen clang cmake ffmpeg git graphviz intltool lldb llvm freetype-devel luajit-devel \
15+ openal-soft-devel libpng-devel lua-ldoc SDL2-devel SDL2_image-devel SDL2_mixer-devel libvorbis-devel \
16+ libxml2-devel meson nano ninja-build physfs-devel python-mutagen suitesparse-devel tidy vim wget xorg-x11-server-Xvfb
17+
18+ # Install Ruby and Rubygems packages
19+ RUN dnf -y --nogpgcheck install redhat-rpm-config ruby-devel rubygem-bundler rubygem-json rubygem-ffi rubygem-racc
20+
21+ # Verify python version and install location.
22+ RUN echo "Verifying python install" && \
2723 which python3 && \
28- python3 --version && \
29- echo "Verifying pip install" && \
30- python3 -m pip --version
31-
32- # Install Mutagen for soundtrack generation via pip.
33- RUN python3 -m pip install mutagen
34-
35- # Install meson via pip.
36- RUN python3 -m pip install meson && \
37- echo "Verifying meson install" && \
24+ python3 --version
25+
26+ # Verify ruby version and install location.
27+ RUN echo "Verifying ruby install" && \
28+ which ruby && \
29+ ruby --version
30+
31+ # Verify bundler version and install location.
32+ RUN echo "Verifying bundler install" && \
33+ which bundle && \
34+ bundle --version
35+
36+ # Verify meson version and installation.
37+ RUN echo "Verifying meson install" && \
3838 which meson && \
3939 meson --version
4040
@@ -44,12 +44,10 @@ RUN git clone https://github.com/naev/naev-website.git
4444
4545# Install Website Build dependencies and gems.
4646WORKDIR /tmp/naev-website
47- RUN DEBIAN_FRONTEND=noninteractive apt-get install -y ruby ruby-dev tidy && \
48- gem install bundler && bundle install -j"$(nproc --all)"
47+ RUN bundle install -j"$(nproc --all)"
4948
50- # Cleanup apt cache, remove APT lists, and temporary git repo.
51- RUN apt-get clean && \
52- rm -rf /var/lib/apt/lists/* && \
49+ # Cleanup dnf cache
50+ RUN dnf clean all && \
5351 rm -rf /tmp/naev-website
5452
5553# Force appimages to run in extract mode since FUSE is not available
0 commit comments