diff --git a/.github/.cspell/project-dictionary.txt b/.github/.cspell/project-dictionary.txt index cadf0fe..ada6da6 100644 --- a/.github/.cspell/project-dictionary.txt +++ b/.github/.cspell/project-dictionary.txt @@ -36,6 +36,7 @@ Icelake INLINES isnan isystem +keyrings keyserver lclang LDFLAGS @@ -134,6 +135,7 @@ virt wasmtime wchar WINEBOOT +winehq WINEPATH WINEPREFIX wineserver diff --git a/docker/windows-gnu.Dockerfile b/docker/windows-gnu.Dockerfile index 8cd79de..63956ca 100644 --- a/docker/windows-gnu.Dockerfile +++ b/docker/windows-gnu.Dockerfile @@ -55,11 +55,19 @@ case "${dpkg_arch##*-}" in ;; *) echo >&2 "unsupported architecture '${dpkg_arch}'" && exit 1 ;; esac -# See https://wiki.winehq.org/Ubuntu when install the latest wine. -apt-get -o Acquire::Retries=10 -qq update && apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends \ - wine-stable \ - wine32 \ - wine64 +# apt-get -o Acquire::Retries=10 -qq update && apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends \ +# wine-stable \ +# wine32 \ +# wine64 +# Install the latest wine: https://wiki.winehq.org/Ubuntu +codename=$(grep '^VERSION_CODENAME=' /etc/os-release | sed 's/^VERSION_CODENAME=//') +sudo mkdir -pm755 /etc/apt/keyrings +curl --proto '=https' --tlsv1.2 -fsSL --retry 10 --retry-connrefused https://dl.winehq.org/wine-builds/winehq.key \ + | sudo tee /etc/apt/keyrings/winehq-archive.key >/dev/null +curl --proto '=https' --tlsv1.2 -fsSLR --retry 10 --retry-connrefused "https://dl.winehq.org/wine-builds/ubuntu/dists/${codename}/winehq-${codename}.sources" \ + | sudo tee "/etc/apt/sources.list.d/winehq-${codename}.sources" >/dev/null +apt-get -o Acquire::Retries=10 update -qq && apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends \ + wine-stable wine --version EOF ARG RUST_TARGET