1 Commits

Author SHA1 Message Date
github-actions[bot]
8f61a926c1 Automated documentation update [skip ci] 2023-09-20 17:08:54 +00:00
16 changed files with 25 additions and 62 deletions

View File

@@ -16,7 +16,6 @@ jobs:
- wine
baseImage:
- mcr.microsoft.com/devcontainers/base:debian
- mcr.microsoft.com/devcontainers/base:ubuntu
steps:
- uses: actions/checkout@v3

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,7 +1,7 @@
{
"name": "Wine",
"id": "wine",
"version": "0.0.5",
"version": "0.0.3",
"description": "Installs Wine.",
"documentationURL": "https://github.com/Maks1mS/devcontainers-features/tree/main/src/wine",
"options": {
@@ -14,4 +14,4 @@
"installsAfter": [
"ghcr.io/devcontainers/features/common-utils"
]
}
}

View File

@@ -5,25 +5,8 @@ WINEVERSION="${VERSION:-"latest"}"
WINEHOME=$_REMOTE_USER_HOME
WINEPREFIX="$WINEHOME/.wine32"
# WINEARCH="win32"
# WINEDEBUG="-all"
COREFONTS_BASE_URL="https://raw.githubusercontent.com/Maks1mS/devcontainers-features/main/src/wine/corefonts/"
COREFONTS_FILES=(
"andale32.exe"
"arial32.exe"
"arialb32.exe"
"courie32.exe"
"georgi32.exe"
"impact32.exe"
"times32.exe"
"trebuc32.exe"
"verdan32.exe"
"wd97vwr32.exe"
"webdin32.exe"
"comic32.exe"
)
COREFONTS_CACHE_DIR="\$HOME/.cache/winetricks/corefonts/"
WINEARCH="win32"
WINEDEBUG="-all"
update_rc_file() {
# see if folder containing file exists
@@ -36,12 +19,21 @@ update_rc_file() {
fi
}
add_wine_repo() {
wget -nv https://dl.winehq.org/wine-builds/winehq.key -O- | apt-key add -
echo "deb https://dl.winehq.org/wine-builds/$1 $VERSION_CODENAME main" >/etc/apt/sources.list.d/winehq.list
}
install_debian() {
export DEBIAN_FRONTEND=noninteractive
dpkg --add-architecture i386
apt-get update
apt-get install -y --no-install-recommends \
apt-transport-https \
ca-certificates \
telnet \
cabextract \
gnupg2 \
wget
wget https://dl.winehq.org/wine-builds/winehq.key -O - | apt-key add -
echo "deb https://dl.winehq.org/wine-builds/debian $VERSION_CODENAME main" >/etc/apt/sources.list.d/winehq.list
set_wine_version_preference() {
if [ "${WINEVERSION}" != "latest" ]; then
{
echo "Package: *wine* *wine*:i386"
@@ -49,13 +41,11 @@ set_wine_version_preference() {
echo "Pin-Priority: 1001"
} >/etc/apt/preferences.d/winehq.pref
fi
}
install_wine() {
apt-get update
apt-get install -y --install-recommends winehq-staging
wget -nv https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks -O /usr/bin/winetricks
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks -O /usr/bin/winetricks
chmod +rx /usr/bin/winetricks
snippet="export WINEHOME=\"$_REMOTE_USER_HOME\"
@@ -67,15 +57,10 @@ export WINEDEBUG=-all"
update_rc_file "$_REMOTE_USER_HOME/.profile" "${snippet}"
update_rc_file "$_REMOTE_USER_HOME/.bashrc" "${snippet}"
su -l $_REMOTE_USER <<EOF
mkdir -p "\$WINEPREFIX"
wine wineboot --init
mkdir -p "$COREFONTS_CACHE_DIR"
for filename in ${COREFONTS_FILES[@]}; do
wget -nv -P "$COREFONTS_CACHE_DIR" "$COREFONTS_BASE_URL\$filename"
done
winetricks corefonts
EOF
su -l "$_REMOTE_USER" -c "mkdir -p $WINEPREFIX && wine wineboot --init"
su -l "$_REMOTE_USER" -c "echo \"check-certificate = off\" >> ~/.wgetrc"
su -l "$_REMOTE_USER" -c "echo \"check_certificate = off\" >> ~/.wgetrc"
su -l "$_REMOTE_USER" -c "winetricks corefonts"
# Cleanup
apt purge --auto-remove -y
@@ -85,27 +70,7 @@ EOF
. /etc/os-release
if [ "${ID}" = "ubuntu" ]; then
install_ubuntu() {
export DEBIAN_FRONTEND=noninteractive
dpkg --add-architecture i386
apt-get update
apt-get install -y apt-transport-https ca-certificates telnet cabextract gnupg2 wget
add_wine_repo "ubuntu"
set_wine_version_preference
install_wine
}
install_ubuntu
elif [ "${ID}" = "debian" ] || [ "${ID_LIKE}" = "debian" ]; then
install_debian() {
export DEBIAN_FRONTEND=noninteractive
dpkg --add-architecture i386
apt-get update
apt-get install -y apt-transport-https ca-certificates telnet cabextract gnupg2 wget
add_wine_repo "debian"
set_wine_version_preference
install_wine
}
if [ "${ID}" = "debian" ]; then
install_debian
else
echo "Linux distro ${ID} not supported."

View File

@@ -3,7 +3,6 @@ set -e
source dev-container-features-test-lib
check "wine exists" bash -c "wine --version"
check "wine version is same" bash -c "[[ "$(wine --version | tr -d -c 0-9.)" == *"8.5"* ]]"
reportResults
reportResults