this is horrid
This commit is contained in:
commit
04caa6edca
20 changed files with 20282 additions and 0 deletions
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
.cache
|
||||||
|
.dockerfiles
|
25
build.sh
Executable file
25
build.sh
Executable file
|
@ -0,0 +1,25 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[ ! -d ".dockerfiles" ] && mkdir .dockerfiles
|
||||||
|
|
||||||
|
COMPOSE=""
|
||||||
|
if command -v podman-compose 2 >&1 >/dev/null; then
|
||||||
|
echo "[*] Using podman-compose"
|
||||||
|
COMPOSE="podman-compose"
|
||||||
|
elif $(docker compose &>/dev/null) && [ $? -eq 0 ]; then
|
||||||
|
echo "[*] Using docker compose (v2)"
|
||||||
|
COMPOSE="docker compose"
|
||||||
|
elif command -v docker-compose 2 >&1 >/dev/null; then
|
||||||
|
echo "[*] Using docker-compose (v1)"
|
||||||
|
COMPOSE="docker-compose"
|
||||||
|
else
|
||||||
|
echo "[!] No compose parser installed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
m4 -D_WINE_=win64 -D_BASE_=alpine -D_APK_=x86_64 segments/base.m4 >.dockerfiles/x64.Dockerfile
|
||||||
|
m4 -D_WINE_=win32 -D_BASE_=i386/alpine -D_APK_=x86 segments/base.m4 >.dockerfiles/x86.Dockerfile
|
||||||
|
m4 -D_WINE_=win64 -D_BASE_=alpine -D_APK_=x86_64 -D_XVFB_=true segments/base.m4 >.dockerfiles/x64-xvfb.Dockerfile
|
||||||
|
m4 -D_WINE_=win32 -D_BASE_=i386/alpine -D_APK_=x86 -D_XVFB_=true segments/base.m4 >.dockerfiles/x86-xvfb.Dockerfile
|
||||||
|
|
||||||
|
$COMPOSE build
|
20
docker-compose.yml
Normal file
20
docker-compose.yml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
services:
|
||||||
|
x86:
|
||||||
|
build:
|
||||||
|
dockerfile: .dockerfiles/x86.Dockerfile
|
||||||
|
image: git.incest.world/ashley/winedows:x86
|
||||||
|
|
||||||
|
x64:
|
||||||
|
build:
|
||||||
|
dockerfile: .dockerfiles/x64.Dockerfile
|
||||||
|
image: git.incest.world/ashley/winedows:x64
|
||||||
|
|
||||||
|
x86-xvfb:
|
||||||
|
build:
|
||||||
|
dockerfile: .dockerfiles/x86-xvfb.Dockerfile
|
||||||
|
image: git.incest.world/ashley/winedows:x86-xvfb
|
||||||
|
|
||||||
|
x64-xvfb:
|
||||||
|
build:
|
||||||
|
dockerfile: .dockerfiles/x64-xvfb.Dockerfile
|
||||||
|
image: git.incest.world/ashley/winedows:x64-xvfb
|
1
files/.xinitrc
Normal file
1
files/.xinitrc
Normal file
|
@ -0,0 +1 @@
|
||||||
|
exec fluxbox
|
8
files/entrypoint.sh
Executable file
8
files/entrypoint.sh
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if command -v xinit 2 >&1 >/dev/null; then
|
||||||
|
xinit -- /usr/bin/Xvfb :1 -screen 0 640x480x24 &>x11.log &
|
||||||
|
x11vnc -nopw -rfbport 5901 -permitfiletransfer -display :1 &>vnc.log &
|
||||||
|
fi
|
||||||
|
|
||||||
|
wine cmd.exe /c $@
|
BIN
files/vcrun/win32/vcrun2010.exe
Normal file
BIN
files/vcrun/win32/vcrun2010.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win32/vcrun2012.exe
Normal file
BIN
files/vcrun/win32/vcrun2012.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win32/vcrun2013.exe
Normal file
BIN
files/vcrun/win32/vcrun2013.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win32/vcrun2015.exe
Normal file
BIN
files/vcrun/win32/vcrun2015.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2010.exe
Normal file
BIN
files/vcrun/win64/vcrun2010.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2012.exe
Normal file
BIN
files/vcrun/win64/vcrun2012.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2012_win64.exe
Normal file
BIN
files/vcrun/win64/vcrun2012_win64.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2013.exe
Normal file
BIN
files/vcrun/win64/vcrun2013.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2013_win64.exe
Normal file
BIN
files/vcrun/win64/vcrun2013_win64.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2015.exe
Normal file
BIN
files/vcrun/win64/vcrun2015.exe
Normal file
Binary file not shown.
BIN
files/vcrun/win64/vcrun2015_win64.exe
Normal file
BIN
files/vcrun/win64/vcrun2015_win64.exe
Normal file
Binary file not shown.
20198
files/winetricks
Executable file
20198
files/winetricks
Executable file
File diff suppressed because it is too large
Load diff
3
readme.md
Normal file
3
readme.md
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# winedows
|
||||||
|
possibly the most cursed action runner container ever made
|
||||||
|
it just runs cmd under wine in an ubuntu host
|
22
segments/base.m4
Normal file
22
segments/base.m4
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
FROM docker.io/_BASE_:latest
|
||||||
|
|
||||||
|
RUN echo -n _APK_ > /etc/apk/arch
|
||||||
|
RUN apk update && apk upgrade
|
||||||
|
RUN apk add bash aria2 cabextract wine
|
||||||
|
|
||||||
|
COPY files/winetricks /usr/local/bin/
|
||||||
|
|
||||||
|
ENV WINEARCH _WINE_
|
||||||
|
ENV WINEDEBUG -all
|
||||||
|
|
||||||
|
WORKDIR /root
|
||||||
|
ADD files/vcrun /root/vcrun
|
||||||
|
RUN find vcrun/_WINE_ -type f -name '*.exe' -exec sh -c "wine {} /q;wineserver -w" \;
|
||||||
|
RUN rm -rf vcrun
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
RUN apk del aria2 cabextract
|
||||||
|
|
||||||
|
ifdef(`_XVFB_', `include(`segments/xvfb.m4')', `')dnl
|
||||||
|
COPY files/entrypoint.sh /
|
||||||
|
ENTRYPOINT ["/entrypoint.sh"]
|
3
segments/xvfb.m4
Normal file
3
segments/xvfb.m4
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
RUN apk add xinit xvfb fluxbox tmux x11vnc st
|
||||||
|
RUN sed -r -i 's/\[exec\] \(xterm\) \{xterm\}/\[exec\] \(st\) \{st\}/' /usr/share/fluxbox/menu
|
||||||
|
RUN echo "exec fluxbox" > ~/.xinitrc
|
Loading…
Reference in a new issue