Here is a bash script to simplify the MKwii install.

𝚁𝚢𝚊𝚗 🏴☠️🎶
npub1m64hnkh6rs47fd9x6wk2zdtmdj4qkazt734d22d94ery9zzhne5qw9uaks
hex
0000056f5a109fa9118370c9139e3a4ad8e5ef710ad81969e81466ce4c6cdfb5nevent
nevent1qqsqqqq9dadpp8afzxphpjgnncay4k89aacs4kqed85pgekwf3kdldgprpmhxue69uhhyetvv9ujuem4d36kwatvw5hx6mm9qgsda2memtapc2lykjnd8t9px4ake2stw39lg6k49xj6u3jz3pteu6qk94lfcKind-1 (TextNote)
Here is a bash script to simplify the MKwii install.
#!/bin/bash
set -e
# Setup directories
DOWNLOAD_DIR="$HOME/Downloads/MKWii_Setup"
mkdir -p "$DOWNLOAD_DIR"
cd "$DOWNLOAD_DIR"
echo "=== Mario Kart Wii Retro Rewind Installer & Updater ==="
echo "Working directory: $DOWNLOAD_DIR"
# 1. Fetch latest WiiCompiled AppImage release from GitHub API
echo "Checking GitHub for the latest WiiCompiled release..."
LATEST_TAG=$(curl -s https://api.github.com/repos/patchzyy/Wiicompiled/releases/latest | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')
if [ -z "$LATEST_TAG" ]; then
echo "Warning: Failed to fetch the latest tag from GitHub. Defaulting to local version check."
else
echo "Latest version on GitHub: $LATEST_TAG"
fi
VERSION_FILE="installed_version.txt"
INSTALLED_TAG=""
if [ -f "$VERSION_FILE" ]; then
INSTALLED_TAG=$(cat "$VERSION_FILE")
fi
APPIMAGE="WiiCompiled-Setup-x86_64.AppImage"
# Download AppImage if missing or if a newer GitHub release exists
if [ ! -f "$APPIMAGE" ] || [ "$LATEST_TAG" != "$INSTALLED_TAG" ]; then
echo "Downloading latest WiiCompiled AppImage ($LATEST_TAG)..."
APPIMAGE_URL="https://github.com/patchzyy/Wiicompiled/releases/download/${LATEST_TAG}/WiiCompiled-Setup-x86_64.AppImage"
curl -L -f -o "$APPIMAGE" "$APPIMAGE_URL"
chmod +x "$APPIMAGE"
echo "$LATEST_TAG" > "$VERSION_FILE"
else
echo "WiiCompiled AppImage is already up to date ($INSTALLED_TAG)."
fi
# 2. Smart check & download for Retro Rewind Zip
ZIP_FILE="RetroRewind.zip"
ZIP_URL="https://update.rwfc.net/RetroRewind/zip/RetroRewind.zip"
# Function to test if the zip file is valid
is_valid_zip() {
[ -f "$1" ] && unzip -tq "$1" >/dev/null 2>&1
}
# Remove corrupted zip if previous run failed
if [ -f "$ZIP_FILE" ] && ! is_valid_zip "$ZIP_FILE"; then
echo "Detected corrupted $ZIP_FILE. Removing..."
rm -f "$ZIP_FILE"
fi
if [ -f "$ZIP_FILE" ]; then
echo "Checking server if a newer Retro Rewind patch zip exists..."
curl -L -s -f -z "$ZIP_FILE" -o "$ZIP_FILE" "$ZIP_URL"
else
echo "Downloading Retro Rewind patch..."
curl -L -f -o "$ZIP_FILE" "$ZIP_URL"
fi
# Final check before extracting
if ! is_valid_zip "$ZIP_FILE"; then
echo "Error: Downloaded $ZIP_FILE is invalid or incomplete. Retrying full download..."
rm -f "$ZIP_FILE"
curl -L -f -o "$ZIP_FILE" "$ZIP_URL"
fi
# Extract or sync extracted patch contents
echo "Syncing patch files..."
unzip -uoq "$ZIP_FILE"
# 3. Download MKWii ROM if missing
ROM_FILE="RMCP01.wbfs"
if [ ! -f "$ROM_FILE" ]; then
echo "Downloading Mario Kart Wii ROM..."
curl -L -f -o "$ROM_FILE" "https://archive.org/download/mario-kart-wii-pal/RMCP01.wbfs"
else
echo "$ROM_FILE already exists, skipping download."
fi
# 4. Execute Installation / Update Command
echo "=== Running WiiCompiled Setup ==="
./"$APPIMAGE" --game "$DOWNLOAD_DIR/$ROM_FILE" install --profile base --retro-dir "$DOWNLOAD_DIR/RetroRewind6" --download-retro-wfc-payload
echo "=== Setup Complete! ==="
nostr:nevent1qqsqqqqq8250878qy5chwgf259hr27wyjlhmd2jzkypffz39r9p7l0cpr4mhxue69uhksctkv4hzuer0wahxjum0de6xset4wqhxxcf0qgsda2memtapc2lykjnd8t9px4ake2stw39lg6k49xj6u3jz3pteu6qrqsqqqqqp2lu6kp
原始 JSON
{
"kind": 1,
"id": "0000056f5a109fa9118370c9139e3a4ad8e5ef710ad81969e81466ce4c6cdfb5",
"pubkey": "deab79dafa1c2be4b4a6d3aca1357b6caa0b744bf46ad529a5ae464288579e68",
"created_at": 1788844749,
"tags": [
[
"p",
"deab79dafa1c2be4b4a6d3aca1357b6caa0b744bf46ad529a5ae464288579e68",
"wss://nostr.wine/"
],
[
"r",
"https://github.com/patchzyy/Wiicompiled/releases/download/${LATEST_TAG}/WiiCompiled-Setup-x86_64.AppImage"
],
[
"r",
"https://update.rwfc.net/RetroRewind/zip/RetroRewind.zip"
],
[
"r",
"https://api.github.com/repos/patchzyy/Wiicompiled/releases/latest"
],
[
"r",
"https://archive.org/download/mario-kart-wii-pal/RMCP01.wbfs"
],
[
"q",
"0000003aa8f3f8e0253177212aa16e3579c497efb6aa42b102948a251943efbf",
"wss://haven.downisontheup.ca/",
"deab79dafa1c2be4b4a6d3aca1357b6caa0b744bf46ad529a5ae464288579e68"
],
[
"client",
"Amethyst"
],
[
"nonce",
"000cei",
"20"
]
],
"content": "Here is a bash script to simplify the MKwii install.\n```\n#!/bin/bash\nset -e\n\n# Setup directories\nDOWNLOAD_DIR=\"$HOME/Downloads/MKWii_Setup\"\nmkdir -p \"$DOWNLOAD_DIR\"\ncd \"$DOWNLOAD_DIR\"\n\necho \"=== Mario Kart Wii Retro Rewind Installer \u0026 Updater ===\"\necho \"Working directory: $DOWNLOAD_DIR\"\n\n# 1. Fetch latest WiiCompiled AppImage release from GitHub API\necho \"Checking GitHub for the latest WiiCompiled release...\"\nLATEST_TAG=$(curl -s https://api.github.com/repos/patchzyy/Wiicompiled/releases/latest | grep '\"tag_name\":' | sed -E 's/.*\"([^\"]+)\".*/\\1/')\n\nif [ -z \"$LATEST_TAG\" ]; then\n echo \"Warning: Failed to fetch the latest tag from GitHub. Defaulting to local version check.\"\nelse\n echo \"Latest version on GitHub: $LATEST_TAG\"\nfi\n\nVERSION_FILE=\"installed_version.txt\"\nINSTALLED_TAG=\"\"\nif [ -f \"$VERSION_FILE\" ]; then\n INSTALLED_TAG=$(cat \"$VERSION_FILE\")\nfi\n\nAPPIMAGE=\"WiiCompiled-Setup-x86_64.AppImage\"\n\n# Download AppImage if missing or if a newer GitHub release exists\nif [ ! -f \"$APPIMAGE\" ] || [ \"$LATEST_TAG\" != \"$INSTALLED_TAG\" ]; then\n echo \"Downloading latest WiiCompiled AppImage ($LATEST_TAG)...\"\n APPIMAGE_URL=\"https://github.com/patchzyy/Wiicompiled/releases/download/${LATEST_TAG}/WiiCompiled-Setup-x86_64.AppImage\"\n curl -L -f -o \"$APPIMAGE\" \"$APPIMAGE_URL\"\n chmod +x \"$APPIMAGE\"\n echo \"$LATEST_TAG\" \u003e \"$VERSION_FILE\"\nelse\n echo \"WiiCompiled AppImage is already up to date ($INSTALLED_TAG).\"\nfi\n\n# 2. Smart check \u0026 download for Retro Rewind Zip\nZIP_FILE=\"RetroRewind.zip\"\nZIP_URL=\"https://update.rwfc.net/RetroRewind/zip/RetroRewind.zip\"\n\n# Function to test if the zip file is valid\nis_valid_zip() {\n [ -f \"$1\" ] \u0026\u0026 unzip -tq \"$1\" \u003e/dev/null 2\u003e\u00261\n}\n\n# Remove corrupted zip if previous run failed\nif [ -f \"$ZIP_FILE\" ] \u0026\u0026 ! is_valid_zip \"$ZIP_FILE\"; then\n echo \"Detected corrupted $ZIP_FILE. Removing...\"\n rm -f \"$ZIP_FILE\"\nfi\n\nif [ -f \"$ZIP_FILE\" ]; then\n echo \"Checking server if a newer Retro Rewind patch zip exists...\"\n curl -L -s -f -z \"$ZIP_FILE\" -o \"$ZIP_FILE\" \"$ZIP_URL\"\nelse\n echo \"Downloading Retro Rewind patch...\"\n curl -L -f -o \"$ZIP_FILE\" \"$ZIP_URL\"\nfi\n\n# Final check before extracting\nif ! is_valid_zip \"$ZIP_FILE\"; then\n echo \"Error: Downloaded $ZIP_FILE is invalid or incomplete. Retrying full download...\"\n rm -f \"$ZIP_FILE\"\n curl -L -f -o \"$ZIP_FILE\" \"$ZIP_URL\"\nfi\n\n# Extract or sync extracted patch contents\necho \"Syncing patch files...\"\nunzip -uoq \"$ZIP_FILE\"\n\n# 3. Download MKWii ROM if missing\nROM_FILE=\"RMCP01.wbfs\"\nif [ ! -f \"$ROM_FILE\" ]; then\n echo \"Downloading Mario Kart Wii ROM...\"\n curl -L -f -o \"$ROM_FILE\" \"https://archive.org/download/mario-kart-wii-pal/RMCP01.wbfs\"\nelse\n echo \"$ROM_FILE already exists, skipping download.\"\nfi\n\n# 4. Execute Installation / Update Command\necho \"=== Running WiiCompiled Setup ===\"\n./\"$APPIMAGE\" --game \"$DOWNLOAD_DIR/$ROM_FILE\" install --profile base --retro-dir \"$DOWNLOAD_DIR/RetroRewind6\" --download-retro-wfc-payload\n\necho \"=== Setup Complete! ===\"\n```\n\nnostr:nevent1qqsqqqqq8250878qy5chwgf259hr27wyjlhmd2jzkypffz39r9p7l0cpr4mhxue69uhksctkv4hzuer0wahxjum0de6xset4wqhxxcf0qgsda2memtapc2lykjnd8t9px4ake2stw39lg6k49xj6u3jz3pteu6qrqsqqqqqp2lu6kp",
"sig": "dbbca858c906a734a882c917531455fa37a5c4e68d16770110eb4dd33c24976e6220f65769e1487841b31ae9536adfe8872c368458dc4d674f4040a46eeb8047"
}