Commit d6b87a93 authored by nanahira's avatar nanahira

dockerfile

parent 797bfbe6
# data files
/beta
/expansions
/specials
# build files
/bin
build
/obj
# dependencies
/event
/freetype
/sqlite3
/irrklang
/irrlicht*
# gframe additionals
/gframe/ygopro.ico
/gframe/ygopro.rc
/gframe/ygopro.aps
/gframe/ygopro.icns
/gframe/dirent.h
# git repos
/CustomTools
/DataEditorX
/Magic*
/pics
/Printer
/ygopro-*
/*-Cards
# libs
/*.dll
/*.so
/*.dylib
# windbot related files
/[Bb]ot
/[Bb]ot.conf
/[Bb]ot.exe
/[Bb]ot.sh
/[Ww]ind[Bb]ot
# ygopro config file
/system_user.conf
# ygopro folders
/deck
/pack
/fonts
/replay
/single
/screenshots
/sound/*.wav
/sound/custom
/sound/BGM
/sound/README.md
/sound/LICENSE
/sound/,*
/update
/update*
/locales
# ygopro main program
/ygopro
/ygopro_*
/ygopro.exe
/ygopro_*.exe
/ygopro.app
/ygopro_*.app
/premake4
/premake4.exe
/premake5
/premake5.exe
# others
*.log
.vscode
core*
/bak/
/.vs
/bug.txt
/output
/temp
[Tt]humbs.cdb
/PrinterData.txt
/*.bat
/*.sh
/*.sql
/patch.exe.manifest
/patch.exe
/diff.exe
*.mp4
/.git*
/.dockerignore
/Dockerfile
FROM nvidia/cudagl:10.2-devel-ubuntu18.04
LABEL Author="Nanahira <nanahira@momobako.com>"
RUN rm -rf /etc/apt/sources.list.d/* && \
apt update && \
env DEBIAN_FRONTEND=noninteractive apt -y install wget tar git autoconf automake build-essential libfreetype6-dev libevent-dev libsqlite3-dev libgl1-mesa-dev libglu-dev liblua5.3-dev libxxf86vm-dev p7zip-full mono-complete && \
rm -rf /var/tmp/* /tmp/* /var/lib/apt/lists/*
WORKDIR /usr/src/app
COPY . ./
# irrlicht
RUN git clone --depth=1 https://code.mycard.moe/mycard/irrlicht irrlicht_linux && \
# irrklang
wget -O irrKlang.zip https://www.ambiera.at/downloads/irrKlang-64bit-1.6.0.zip && \
7z x -y irrKlang.zip && \
mv irrKlang-64bit-1.6.0 irrklang && \
cp -rf irrklang/bin/linux-gcc-64/libIrrKlang.so . && \
# premake
wget -O - https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-linux.tar.gz | tar zfx - && \
env USE_IRRKLANG=1 ./premake5 gmake && \
# build
cd build && make config=release -j$(nproc) && cd .. && \
cp -rf bin/release/ygopro . && \
strip ygopro && \
# images
wget -O ygopro-images-zh-CN.zip https://cdn01.moecube.com/images/ygopro-images-zh-CN.zip && \
7z x -y -opics ygopro-images-zh-CN.zip && \
rm -rf ygopro-images-zh-CN.zip && \
# sound
wget -O - https://code.mycard.moe/mycard/ygopro-sounds/-/archive/master/ygopro-sounds-master.tar.gz | tar zfx - && \
mv ygopro-sounds-master/sound/* sound && \
rm -rf ygopro-sounds-master && \
# fonts
mkdir fonts && \
cd fonts && \
wget -O - https://cdn01.moecube.com/ygopro-fonts.tar.gz | tar zfx - && \
cd .. && \
# windbot
wget -O - https://cdn01.moecube.com/windbot/windbot.tar.gz | tar zfx - && \
# starter pack
wget -O - https://code.mycard.moe/mycard/ygopro-starter-pack/-/archive/master/ygopro-starter-pack-master.tar.gz | tar zfx - && \
mv ygopro-starter-pack-master/* . && \
rm -rf ygopro-starter-pack-master && \
# locales
git clone --depth=1 https://github.com/purerosefallen/ygopro-database && \
mv -f ygopro-database/locales . && \
rm -rf ygopro-database && \
# cleanup
cp -rf system.conf system_user.conf && \
rm -rf bin obj build premake5 irrlicht_linux irrklang irrKlang.zip
# RUN ln -s /usr/local/cuda/compat/libcuda.so.1 /usr/lib/x86_64-linux-gnu/libcuda.so.1
ENV DISPLAY ":0"
CMD ["./ygopro"]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment