Skip to content

Wine Generic

a generic egg to run servers with wine

egg-wine-generic.json

updated

Install

Installer image
ghcr.io/ptero-eggs/installers:debian
Install script
50 lines

Images

New servers use the first image. Users can change it on the Startup page.

  • Wine (Latest) default ghcr.io/ptero-eggs/yolks:wine_latest
  • Wine (Staging) ghcr.io/ptero-eggs/yolks:wine_staging
  • Wine (Devel) ghcr.io/ptero-eggs/yolks:wine_devel

Startup

The Panel runs this command to start the server. It replaces each variable in the command with the value of that variable.

3 variables

Startup command

wine BeamMP-Server.exe
  • URL to use to download a servers files.

    DOWNLOAD_URLUsers cannot see

    required|string

  • The server executable to run.

    SERVER_EXECUTABLEUsers can see

    required|string

  • for example is the server needs to get installed into /home/container/server/bin/ use server/bin/

    INSTALL_DIRUsers cannot see

    nullable|string

Wings

Stop command
^C (SIGINT)
Running when the console shows
change me

Readme

Wine Generic

A generic wine image that can be used to install servers that need wine to run. Downloads compressed server files and extracts them to a specified folder in /mnt/server/

I.E. INSTALL_DIR = server/folder will unpack the server into /mnt/server//server/folder/

Install notes

May require a full custom start command. This is on you to figure out what that is.

Changes

  1. Update egg-wine-generic.json

    路 Bad 路 ba7dd1f

  2. fixie pixie 馃悷

    路 yesBad 路 73a886f

  3. Add standalone games

    路 Daniel Barton 路 74c706a

All changes on GitHub

Problem with this egg?

Open an issue on GitHub. Include your Panel and Wings versions.

Install script 50 lines bash in ghcr.io/ptero-eggs/installers:debian Show
#!/bin/bash
# The wine generic server installer
# This will just pull a download link and unpack it in directory if specified.

apt update -y
apt install -y curl file unzip

if [ ! -d /mnt/server ]; then
    mkdir -p /mnt/server/
fi

cd /mnt/server/

# if an install dir is set then make it and change to it.
if [ ! -z ${INSTALL_DIR} ]; then
    mkdir -p ${INSTALL_DIR}
    cd ${INSTALL_DIR}
fi

# validate server link
if [ ! -z "${DOWNLOAD_URL}" ]; then 
    if curl --output /dev/null --silent --head --fail ${DOWNLOAD_URL}; then
        echo -e "link is valid. setting download link to ${DOWNLOAD_URL}"
        DOWNLOAD_LINK=${DOWNLOAD_URL}
    else        
        echo -e "link is invalid closing out"
        exit 2
    fi
fi

curl -sSL ${DOWNLOAD_LINK} -o ${DOWNLOAD_LINK##*/}

# unpack servver files
FILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*/} | cut -d',' -f2 | cut -d' ' -f2)

if [ "$FILETYPE" == "gzip" ]; then
    tar xzvf ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "Zip" ]; then
    unzip ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "XZ" ]; then
    tar xvf ${DOWNLOAD_LINK##*/}
else
    echo -e "unknown filetype. Exiting"
    exit 2 
fi

## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"