Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build MudletBootstrap
name: Build MudletInstaller
on:
push:
branches: [master, development]
Expand Down Expand Up @@ -244,7 +244,7 @@ jobs:

# Start building the release body
cat > release-body.md << 'EOF'
## MudletBootstrap Release ${{ github.ref_name }}
## MudletInstaller Release ${{ github.ref_name }}

Choose your game below and download the appropriate file for your operating system:

Expand Down Expand Up @@ -289,19 +289,19 @@ jobs:

### Windows
1. Download the `.exe` file for your game
2. Run MudletBootstrap - it'll download & install Mudlet for you
3. You can delete MudletBootstrap after - Mudlet is all set up to play your favourite game.
2. Run MudletInstaller - it'll download & install Mudlet for you
3. You can delete MudletInstaller after - Mudlet is all set up to play your favourite game.

### macOS
1. Download the `.dmg` file for your game
2. Open the DMG file
3. Runt he MudletBootstrap app from within the mounted DMG
3. Run the MudletInstaller app from within the mounted DMG

### Linux
1. Download the `.AppImage.tar` file for your game
2. Extract it: `tar -xf MudletBootstrap-[game]-Linux.AppImage.tar`
2. Extract and run the AppImage within: `MudletBootstrap-[game].AppImage`
3. You can delete MudletBootstrap after - Mudlet is all set up to play your favourite
2. Extract it: `tar -xf MudletInstaller-[game]-Linux.AppImage.tar`
2. Extract and run the AppImage within: `MudletInstaller-[game].AppImage`
3. You can delete MudletInstaller after - Mudlet is all set up to play your favourite
EOF

echo "Generated release body:"
Expand All @@ -312,7 +312,7 @@ jobs:
with:
files: organized-releases/**/*
tag_name: ${{ github.ref_name }}
name: MudletBootstrap ${{ github.ref_name }}
name: MudletInstaller ${{ github.ref_name }}
body_path: release-body.md
draft: false
prerelease: false
Expand Down
14 changes: 7 additions & 7 deletions CI/deploy-win.sh
Original file line number Diff line number Diff line change
Expand Up @@ -92,19 +92,19 @@ while IFS= read -r line || [[ -n "$line" ]]; do
# Remove specific file types from the directory
rm ./*.cpp ./*.o

mv "$PACKAGE_DIR/MudletBootstrap.exe" "MudletBootstrap-${gameName}.exe"
mv "$PACKAGE_DIR/MudletInstaller.exe" "MudletInstaller-${gameName}.exe"

# Sign the executable if Azure token is available
if [ -n "${AZURE_ACCESS_TOKEN}" ]; then
echo "=== Signing MudletBootstrap-${gameName}.exe ==="
EXECUTABLE_WINPATH="$(cygpath -aw "${PACKAGE_DIR}/MudletBootstrap-${gameName}.exe")"
echo "=== Signing MudletInstaller-${gameName}.exe ==="
EXECUTABLE_WINPATH="$(cygpath -aw "${PACKAGE_DIR}/MudletInstaller-${gameName}.exe")"
java.exe -jar "${JAVA_JAR_WINPATHFILE}" \
--storetype TRUSTEDSIGNING \
--keystore eus.codesigning.azure.net \
--storepass "${AZURE_ACCESS_TOKEN}" \
--alias Mudlet/Mudlet \
"${EXECUTABLE_WINPATH}"
echo "Signing completed for MudletBootstrap-${gameName}.exe"
echo "Signing completed for MudletInstaller-${gameName}.exe"
fi

# Move packaged files to the upload directory
Expand All @@ -116,8 +116,8 @@ while IFS= read -r line || [[ -n "$line" ]]; do
if [ "$IS_RELEASE" = true ]; then
echo "Creating release version for $gameName"
mkdir -p "${GITHUB_WORKSPACE_UNIX_PATH}/extracted-games/$gameName"
cp "${PACKAGE_DIR}/MudletBootstrap-${gameName}.exe" \
"${GITHUB_WORKSPACE_UNIX_PATH}/extracted-games/$gameName/MudletBootstrap-$gameName-Windows.exe"
cp "${PACKAGE_DIR}/MudletInstaller-${gameName}.exe" \
"${GITHUB_WORKSPACE_UNIX_PATH}/extracted-games/$gameName/MudletInstaller-$gameName-Windows.exe"
fi

cd "$GITHUB_WORKSPACE" || exit 1
Expand All @@ -132,5 +132,5 @@ fi
# Append these variables to the GITHUB_ENV to make them available in subsequent steps
{
echo "FOLDER_TO_UPLOAD=${uploadDir}\\"
echo "UPLOAD_FILENAME=MudletBootstrap-${MSYSTEM}"
echo "UPLOAD_FILENAME=MudletInstaller-${MSYSTEM}"
} >> "$GITHUB_ENV"
18 changes: 9 additions & 9 deletions CI/organize-launchers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,12 @@ if [ ! "$(ls -A organized-releases 2>/dev/null)" ]; then
if [ -f "$launcher" ]; then
filename=$(basename "$launcher")
echo " Found Windows launcher: $filename"
# Extract game name (format: MudletBootstrap-GameName.exe)
if [[ "$filename" =~ MudletBootstrap-(.+)\.exe$ ]]; then
# Extract game name (format: MudletInstaller-GameName.exe)
if [[ "$filename" =~ MudletInstaller-(.+)\.exe$ ]]; then
gameName="${BASH_REMATCH[1]}"
echo " Game: $gameName"
mkdir -p "organized-releases/$gameName"
cp "$launcher" "organized-releases/$gameName/MudletBootstrap-$gameName-Windows.exe"
cp "$launcher" "organized-releases/$gameName/MudletInstaller-$gameName-Windows.exe"
fi
fi
done
Expand All @@ -52,12 +52,12 @@ if [ ! "$(ls -A organized-releases 2>/dev/null)" ]; then
if [ -f "$launcher" ]; then
filename=$(basename "$launcher")
echo " Found macOS launcher: $filename"
# Extract game name (format: MudletBootstrap-GameName.dmg)
if [[ "$filename" =~ MudletBootstrap-(.+)\.dmg$ ]]; then
# Extract game name (format: MudletInstaller-GameName.dmg)
if [[ "$filename" =~ MudletInstaller-(.+)\.dmg$ ]]; then
gameName="${BASH_REMATCH[1]}"
echo " Game: $gameName"
mkdir -p "organized-releases/$gameName"
cp "$launcher" "organized-releases/$gameName/MudletBootstrap-$gameName-macOS.dmg"
cp "$launcher" "organized-releases/$gameName/MudletInstaller-$gameName-macOS.dmg"
fi
fi
done
Expand All @@ -68,12 +68,12 @@ if [ ! "$(ls -A organized-releases 2>/dev/null)" ]; then
if [ -f "$launcher" ]; then
filename=$(basename "$launcher")
echo " Found Linux launcher: $filename"
# Extract game name (format: MudletBootstrap-linux-x64-GameName.AppImage.tar)
if [[ "$filename" =~ MudletBootstrap-linux-x64-(.+)\.AppImage\.tar$ ]]; then
# Extract game name (format: MudletInstaller-linux-x64-GameName.AppImage.tar)
if [[ "$filename" =~ MudletInstaller-linux-x64-(.+)\.AppImage\.tar$ ]]; then
gameName="${BASH_REMATCH[1]}"
echo " Game: $gameName"
mkdir -p "organized-releases/$gameName"
cp "$launcher" "organized-releases/$gameName/MudletBootstrap-$gameName-Linux.AppImage.tar"
cp "$launcher" "organized-releases/$gameName/MudletInstaller-$gameName-Linux.AppImage.tar"
fi
fi
done
Expand Down
20 changes: 10 additions & 10 deletions CI/package-linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,10 @@ while IFS= read -r line || [[ -n "$line" ]]; do
mkdir app
mkdir app/lib

cp build-${gameName}/MudletBootstrap app/
cp build-${gameName}/MudletInstaller app/

cp "$SOURCE_DIR"/mudlet{.png,.svg} app/
cp "$SOURCE_DIR"/mudletbootstrap.desktop app/
cp "$SOURCE_DIR"/mudletinstaller.desktop app/

./linuxdeployqt.AppImage --appimage-extract

Expand All @@ -62,7 +62,7 @@ while IFS= read -r line || [[ -n "$line" ]]; do
echo "No OpenSSL libraries to copy found. Aborting..."
fi

./squashfs-root/AppRun ./app/MudletBootstrap -appimage \
./squashfs-root/AppRun ./app/MudletInstaller -appimage \
-executable=app/lib/libssl.so.1.1 \
-executable=app/lib/libssl.so.1.0.0

Expand All @@ -71,18 +71,18 @@ while IFS= read -r line || [[ -n "$line" ]]; do

BUILD_COMMIT=$(git rev-parse --short HEAD)

mv MudletBootstrap-${BUILD_COMMIT}-x86_64.AppImage MudletBootstrap.AppImage
chmod +x "MudletBootstrap.AppImage"
tar -cvf "MudletBootstrap-linux-x64.AppImage.tar" "MudletBootstrap.AppImage"
mv MudletInstaller-${BUILD_COMMIT}-x86_64.AppImage MudletInstaller.AppImage
chmod +x "MudletInstaller.AppImage"
tar -cvf "MudletInstaller-linux-x64.AppImage.tar" "MudletInstaller.AppImage"

mv "MudletBootstrap-linux-x64.AppImage.tar" "${GITHUB_WORKSPACE}/upload/MudletBootstrap-linux-x64-${gameName}.AppImage.tar"
mv "MudletInstaller-linux-x64.AppImage.tar" "${GITHUB_WORKSPACE}/upload/MudletInstaller-linux-x64-${gameName}.AppImage.tar"

# If this is a release, also copy to extracted-games with standardized naming
if [ "$IS_RELEASE" = true ]; then
echo "Creating release version for $gameName"
mkdir -p "${GITHUB_WORKSPACE}/extracted-games/$gameName"
cp "${GITHUB_WORKSPACE}/upload/MudletBootstrap-linux-x64-${gameName}.AppImage.tar" \
"${GITHUB_WORKSPACE}/extracted-games/$gameName/MudletBootstrap-$gameName-Linux.AppImage.tar"
cp "${GITHUB_WORKSPACE}/upload/MudletInstaller-linux-x64-${gameName}.AppImage.tar" \
"${GITHUB_WORKSPACE}/extracted-games/$gameName/MudletInstaller-$gameName-Linux.AppImage.tar"
fi

rm -rf app/
Expand All @@ -100,7 +100,7 @@ fi

{
echo "FOLDER_TO_UPLOAD=${GITHUB_WORKSPACE}/upload"
echo "UPLOAD_FILENAME=MudletBootstrap-linux-x64"
echo "UPLOAD_FILENAME=MudletInstaller-linux-x64"
} >> "$GITHUB_ENV"
DEPLOY_URL="Github artifact, see https://github.com/$GITHUB_REPOSITORY/runs/$GITHUB_RUN_ID"

Expand Down
30 changes: 15 additions & 15 deletions CI/package-mac.sh
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ fi


#if [ -n "${GITHUB_REPOSITORY}" ]; then
# mv "${BUILD_DIR}/mudletbootstrap.app" "${BUILD_DIR}/${appBaseName}.app"
# mv "${BUILD_DIR}/mudletinstaller.app" "${BUILD_DIR}/${appBaseName}.app"
#else
# mv "${BUILD_DIR}/MudletBootstrap.app" "${BUILD_DIR}/${appBaseName}.app"
# mv "${BUILD_DIR}/MudletInstaller.app" "${BUILD_DIR}/${appBaseName}.app"
#fi

#./make-installer.sh "${appBaseName}.app"
Expand Down Expand Up @@ -113,7 +113,7 @@ fi

while IFS= read -r line || [[ -n "$line" ]]; do
gameName=$(echo "$line" | tr -cd '[:alnum:]_-')
appBaseName="MudletBootstrap"
appBaseName="MudletInstaller"
BUILD_DIR="${GITHUB_WORKSPACE}/build-${gameName}"

cd "${BUILD_DIR}"
Expand All @@ -122,8 +122,8 @@ while IFS= read -r line || [[ -n "$line" ]]; do
app=$(basename "${appBaseName}.app")

if [ -z "$app" ]; then
echo "No MudletBootstrap app folder to package given."
echo "Usage: $pgm <MudletBootstrap app folder to package>"
echo "No MudletInstaller app folder to package given."
echo "Usage: $(basename "$0") <MudletInstaller app folder to package>"
exit 2
fi
find . -iname "${app}" -type d
Expand All @@ -143,11 +143,11 @@ while IFS= read -r line || [[ -n "$line" ]]; do

# fix unfinished deployment of macdeployqt
echo "Running macdeployqtfix"
python ${GITHUB_WORKSPACE}/macdeployqtfix.py "${app}/Contents/MacOS/MudletBootstrap" "${QT_DIR}" $( [ -n "$DEBUG" ] && echo "--verbose" )
python ${GITHUB_WORKSPACE}/macdeployqtfix.py "${app}/Contents/MacOS/MudletInstaller" "${QT_DIR}" $( [ -n "$DEBUG" ] && echo "--verbose" )

echo "Fixing plist entries..."
/usr/libexec/PlistBuddy -c "Add CFBundleName string MudletBootstrap" "${app}/Contents/Info.plist" || true
/usr/libexec/PlistBuddy -c "Add CFBundleDisplayName string MudletBootstrap" "${app}/Contents/Info.plist" || true
/usr/libexec/PlistBuddy -c "Add CFBundleName string MudletInstaller" "${app}/Contents/Info.plist" || true
/usr/libexec/PlistBuddy -c "Add CFBundleDisplayName string MudletInstaller" "${app}/Contents/Info.plist" || true

/usr/libexec/PlistBuddy -c "Add CFBundleShortVersionString string ${shortVersion}" "${app}/Contents/Info.plist" || true
/usr/libexec/PlistBuddy -c "Add CFBundleVersion string ${version}" "${app}/Contents/Info.plist" || true
Expand All @@ -161,7 +161,7 @@ while IFS= read -r line || [[ -n "$line" ]]; do

# Generate final .dmg
cd ../../
rm -f ~/Desktop/[mM]udletBootstrap-${gameName}*.dmg
rm -f ~/Desktop/[mM]udletInstaller-${gameName}*.dmg

echo "PWD:"
pwd
Expand All @@ -170,19 +170,19 @@ while IFS= read -r line || [[ -n "$line" ]]; do
echo "SOURCE_DIR: ${SOURCE_DIR}"

echo "Modifying config file..."
cp ${SOURCE_DIR}/mudletbootstrap-appdmg.json ${BUILD_DIR}
cp ${SOURCE_DIR}/mudletinstaller-appdmg.json ${BUILD_DIR}

# Modify appdmg config file according to the app file to package
perl -pi -e "s|../source/build/.*MudletBootstrap.*\\.app|${BUILD_DIR}/${app}|i" "${BUILD_DIR}/mudletbootstrap-appdmg.json"
perl -pi -e "s|../source/build/.*MudletInstaller.*\\.app|${BUILD_DIR}/${app}|i" "${BUILD_DIR}/mudletinstaller-appdmg.json"
# Update icons to the correct type
perl -pi -e "s|../source/src/icons/.*\\.icns|${SOURCE_DIR}/mudlet.icns|i" "${BUILD_DIR}/mudletbootstrap-appdmg.json"
perl -pi -e "s|../source/src/icons/.*\\.icns|${SOURCE_DIR}/mudlet.icns|i" "${BUILD_DIR}/mudletinstaller-appdmg.json"

echo "Listing config file:"
cat ${BUILD_DIR}/mudletbootstrap-appdmg.json
cat ${BUILD_DIR}/mudletinstaller-appdmg.json

echo "Creating appdmg..."
# Last: build *.dmg file
appdmg "${BUILD_DIR}/mudletbootstrap-appdmg.json" "${HOME}/Desktop/$(basename "${app%.*}").dmg"
appdmg "${BUILD_DIR}/mudletinstaller-appdmg.json" "${HOME}/Desktop/$(basename "${app%.*}").dmg"

if [ -n "$MACOS_SIGNING_PASS" ]; then
sign_and_notarize "${HOME}/Desktop/${appBaseName}.dmg"
Expand All @@ -195,7 +195,7 @@ while IFS= read -r line || [[ -n "$line" ]]; do
echo "Creating release version for $gameName"
mkdir -p "${GITHUB_WORKSPACE}/extracted-games/$gameName"
cp "${GITHUB_WORKSPACE}/upload/${appBaseName}-${gameName}.dmg" \
"${GITHUB_WORKSPACE}/extracted-games/$gameName/MudletBootstrap-$gameName-macOS.dmg"
"${GITHUB_WORKSPACE}/extracted-games/$gameName/MudletInstaller-$gameName-macOS.dmg"
fi

done < "${GITHUB_WORKSPACE}/GameList.txt"
Expand Down
18 changes: 8 additions & 10 deletions CI/package-win.sh
Original file line number Diff line number Diff line change
Expand Up @@ -102,21 +102,19 @@ while IFS= read -r line || [[ -n "$line" ]]; do
echo "Copying wanted compiled files from ${GITHUB_WORKSPACE}/build-${gameName} to ${GITHUB_WORKSPACE}/package-${gameName} ..."
echo ""

if [ ! -f "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletBootstrap.exe" ]; then
echo "ERROR: no MudletBootstrap executable found - did the previous build"
if [ ! -f "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletInstaller.exe" ]; then
echo "ERROR: no MudletInstaller executable found - did the previous build"
echo "complete sucessfully?"
exit 6
fi

cp "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletBootstrap.exe" "${PACKAGE_DIR}/"
if [ -f "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletBootstrap.exe.debug" ]; then
cp "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletBootstrap.exe.debug" "${PACKAGE_DIR}/"
cp "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletInstaller.exe" "${PACKAGE_DIR}/"
if [ -f "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletInstaller.exe.debug" ]; then
cp "${GITHUB_WORKSPACE_UNIX_PATH}/build-${gameName}/MudletInstaller.exe.debug" "${PACKAGE_DIR}/"
fi


"${RUNNER_WORKSPACE}/qt-static-install/bin/windeployqt6" ./MudletBootstrap.exe

ZIP_FILE_NAME="MudletBootstrap"
"${RUNNER_WORKSPACE}/qt-static-install/bin/windeployqt6" ./MudletInstaller.exe

# To determine which system libraries have to be copied in it requires
# continually trying to run the executable on the target type system
Expand All @@ -132,9 +130,9 @@ while IFS= read -r line || [[ -n "$line" ]]; do
# "luasql/sqlite3.dll" needed "libsqlite3-0.dll"!
#
echo ""
#echo "Examining MudletBootstrap application to identify other needed libraries..."
#echo "Examining MudletInstaller application to identify other needed libraries..."

# NEEDED_LIBS=$("${MINGW_INTERNAL_BASE_DIR}/bin/ntldd" --recursive ./MudletBootstrap.exe \
# NEEDED_LIBS=$("${MINGW_INTERNAL_BASE_DIR}/bin/ntldd" --recursive ./MudletInstaller.exe \
# | /usr/bin/grep -v "Qt6" \
# | /usr/bin/grep -i "mingw" \
# | /usr/bin/cut -d ">" -f2 \
Expand Down
Loading
Loading