Last active
November 19, 2020 04:20
-
-
Save azyobuzin/896591ee2e246d5f8c94726bd51b98c4 to your computer and use it in GitHub Desktop.
Wine 上で Mono を動かすやつ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM ubuntu:17.04 | |
# apt-get update がクソ遅いので日本サーバーに変更 | |
RUN sed -i 's|//archive\.ubuntu\.com|//jp\.archive\.ubuntu\.com|g' /etc/apt/sources.list | |
RUN dpkg --add-architecture i386 && \ | |
apt-get update -y && \ | |
apt-get install -y wget apt-transport-https software-properties-common && \ | |
wget -O - https://dl.winehq.org/wine-builds/Release.key | apt-key add - && \ | |
apt-add-repository -y https://dl.winehq.org/wine-builds/ubuntu/ && \ | |
apt-get update -y && \ | |
apt-get install -y locales make winehq-devel xvfb && \ | |
rm -rf /var/lib/apt/lists/* | |
RUN locale-gen ja_JP.UTF-8 | |
# 各種環境変数 | |
# WINEDLLOVERRIDES: Wine の初回起動時に Mono と Gecko を入れろダイアログを表示させない | |
# W_OPT_UNATTENDED: winetricks に GUI なしでインストールしてもらう | |
ENV LANG="ja_JP.UTF-8" \ | |
WINEARCH=win32 \ | |
WINEDLLOVERRIDES="mscoree=d;mshtml=d" \ | |
W_OPT_UNATTENDED=1 | |
# パッケージリポジトリの winetricks は古いので直接ダウンロード | |
RUN wget -O - https://github.com/Winetricks/winetricks/archive/20170614.tar.gz | tar -xzf - && \ | |
make -C winetricks-20170614 install && \ | |
rm -rf winetricks-20170614 | |
RUN useradd -m wine | |
USER wine | |
WORKDIR /home/wine | |
# Mono が未実装関数を呼び出して躓くので MS 製 VC++ ランタイムを使っていく | |
RUN xvfb-run -a winetricks wenquanyi vcrun2015 win7 | |
RUN wget -O ~/.wine/drive_c/mono.msi https://download.mono-project.com/archive/5.2.0/windows-installer/mono-5.2.0.215-gtksharp-2.12.45-win32-0.msi && \ | |
wine msiexec /i 'C:\mono.msi' /quiet && \ | |
rm ~/.wine/drive_c/mono.msi | |
# タイムゾーン設定(InvalidTimeZoneException 対策) | |
RUN wine reg add 'HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation' /v TimeZoneKeyName /t REG_SZ /d 'Tokyo Standard Time' /f |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment