<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle">
    <channel>
        <title>NostalgiApp Updates</title>
        <link>https://nostalgi.app/</link>
        <description>Most recent updates to NostalgiApp</description>
        <language>en</language>
        <item>
            <title>Version 1.2.1.2 (Build 191)</title>
            <sparkle:version>191</sparkle:version>
            <sparkle:shortVersionString>1.2.1.2</sparkle:shortVersionString>
            <pubDate>Thu, 01 Oct 2026 09:42:15 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.1.2</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Scrape Metadata from the right-click menu</strong>, for one game or every selected game &mdash; it replaces artwork and details even for games that already have art.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>ROM import finds many more file types</strong>: GameCube .ciso, 3DS .cci, Wii U .wux/.wud/.wua/.rpx, Dreamcast .gdi/.cdi, Vita .vpk, PS3 .pkg, multi-disc .m3u playlists, .ccd/.mds disc images, Wii .wia and more. Previously these were skipped and Scan seemed to do nothing.</li>
                    <li><strong>ROM import picks the right console more often</strong> &mdash; PSP .iso, Atari 2600 .bin, PS2 .cso and zipped handheld games, using the folder name when a file type is shared.</li>
                    <li><strong>Multi-disc and multi-track games import once</strong> instead of once per disc or track file.</li>
                    <li>ROM import tells you when it finds nothing, or when macOS won&rsquo;t let it read a folder on an external drive.</li>
                    <li><strong>Cmd+A selects all in Shelf and Timeline views</strong>, with Cmd-click and Shift-click multi-select like Grid and List.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.1.2-b191.dmg"
                sparkle:version="191"
                sparkle:shortVersionString="1.2.1.2"
                length="333010691"
                type="application/octet-stream"
                sparkle:edSignature="xNjwfxMCqBRZopUMGHG4wBL3iq/TPAriet6ASxf7r/EBy7Ud/tlf5LurU7c4kB5p4lxOuNlonI0HL0VEpk9mBw=="
            />
        </item>
        <item>
            <title>Version 1.2.1.1 (Build 190)</title>
            <sparkle:version>190</sparkle:version>
            <sparkle:shortVersionString>1.2.1.1</sparkle:shortVersionString>
            <pubDate>Wed, 30 Sep 2026 08:38:11 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.1.1</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>PS3 games in folder form import as one game each</strong>, with their real title and region, and launch in RPCS3.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Settings no longer crashes on the Emulators tab.</strong></li>
                    <li><strong>Windows 3.x games</strong> no longer quit straight away when DOSBox Staging from Homebrew is installed &mdash; they now always start in the built-in DOSBox-X.</li>
                    <li><strong>Importing ROMs no longer adds a second sidebar entry</strong> for a console whose name differs only in capitals (&ldquo;PlayStation&rdquo; vs &ldquo;Playstation&rdquo;).</li>
                    <li>Removing a console&rsquo;s last game also removes the console from the sidebar.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.1.1-b190.dmg"
                sparkle:version="190"
                sparkle:shortVersionString="1.2.1.1"
                length="332989894"
                type="application/octet-stream"
                sparkle:edSignature="AvLrz/VEZBPAgYdRB9fKuhvIsu1sfUS/cgwbnp3/MFpu9PbChQUECpxwLNMcjsccdJOGYLkDxd7oGG+smvD+DQ=="
            />
        </item>
        <item>
            <title>Version 1.2.1 (Build 189)</title>
            <sparkle:version>189</sparkle:version>
            <sparkle:shortVersionString>1.2.1</sparkle:shortVersionString>
            <pubDate>Tue, 29 Sep 2026 15:39:45 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.1</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>The eXo Media Pack reading room.</strong> Magazines, books and videos open straight from the Media Pack zips &mdash; or stream from the Media Pack torrent if you don&rsquo;t have them.</li>
                    <li><strong>NostalgiApp Wine</strong> &mdash; our own Windows runtime with DXVK for Direct3D 10/11 games.</li>
                    <li><strong>Ubisoft Connect games</strong> from CrossOver or Wine bottles, and <strong>eXo&rsquo;s version menu</strong> for ScummVM games shipped in several versions.</li>
                    <li><strong>Quick Start.</strong> Browse the whole eXoDOS catalogue &mdash; 7,600+ games with covers &mdash; after a 40&nbsp;MB download that opens in seconds, download games one at a time, and get newer game lists as they&rsquo;re published.</li>
                    <li><strong>Play on your TV.</strong> Settings &rarr; Streaming sets up Sunshine so the free Moonlight app can stream NostalgiApp&rsquo;s TV mode to a TV, phone, tablet or Steam Deck. Keyboard and mouse work right away; to use a game controller through Moonlight, macOS also needs LizardByte&rsquo;s Virtual HID Broker (a separate, licensed install &mdash; the Streaming page links to it).</li>
                    <li><strong>German, Spanish and Polish versions</strong> of eXoDOS games, from the eXo language packs (Settings &rarr; General).</li>
                    <li><strong>The ScummVM version eXo tested.</strong> Games pinned to an older or newer ScummVM offer that version as a one-click download.</li>
                    <li><strong>Windows games get a health check</strong> &mdash; graphics API and copy protection are read from the .exe, with advice before you play and a per-game Wine runtime choice.</li>
                    <li><strong>Windows-only Steam games</strong> install through Windows Steam in CrossOver and launch from NostalgiApp, including bottles on other drives.</li>
                    <li><strong>Manual &amp; Extras on demand</strong>, and <strong>saves kept on uninstall</strong>.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>No more freezes in big libraries</strong> when searching, filtering or while storefront games refresh &mdash; the List view is now a native table.</li>
                    <li><strong>Multi-disk DOS games</strong> now show the Mac keys for swapping disks (Cmd+F4).</li>
                    <li>CrossOver launches of your own Windows games work again, and Windows runtime downloads are verified before they&rsquo;re installed.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.1-b189.dmg"
                sparkle:version="189"
                sparkle:shortVersionString="1.2.1"
                length="332871249"
                type="application/octet-stream"
                sparkle:edSignature="gFskefU9mR8C237v+ff1VDi6iDy+3AwLLGVb1BxdXu+LxZC7zF+WscaJOm32UECFJzT1hzX2Q0arB2fP2lH1BQ=="
            />
        </item>
        <item>
            <title>Version 1.2.0.18 (Build 188)</title>
            <sparkle:version>188</sparkle:version>
            <sparkle:shortVersionString>1.2.0.18</sparkle:shortVersionString>
            <pubDate>Mon, 22 Sep 2026 21:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.18</h2>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Downloading a game could fetch the wrong game.</strong> With more than one eXo collection installed (eXoDOS alongside eXoWin3x or eXoWin9x), downloading a game on demand could download a completely different game. The download and extraction appeared to succeed, but the game never installed. This affected around 100 titles that ship in several collections &mdash; Phantasmagoria, King&rsquo;s Quest VII, Quest for Glory IV, Police Quest 4, Freddy Pharkas, EcoQuest 2, Putt-Putt, Quake, Command &amp; Conquer: Red Alert, Rayman and others.</li>
                    <li><strong>Silent failures now report an error.</strong> Failed downloads and failed extractions now show a real error instead of quietly doing nothing.</li>
                </ul>
                <h3>Improved</h3>
                <ul>
                    <li><strong>More reliable downloads.</strong> The download index is now rebuilt from your local torrent file, so it can&rsquo;t drift out of sync with it.</li>
                    <li><strong>Better DOSBox ECE support.</strong> Games that need DOSBox ECE are now offered DOSBox-X, with a per-game emulator override. Wine is now self-managed and no longer needs Homebrew.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.18-b188.dmg"
                sparkle:version="188"
                sparkle:shortVersionString="1.2.0.18"
                length="327040209"
                type="application/octet-stream"
                sparkle:edSignature="Yovvc2/wOV0apDKVzgQqRrkDQnU9S4UacyBJEbzh7KHuRmulgx626eufsMCM6ueShQMUu/+9HV/qG/05jBQtCw=="
            />
        </item>
        <item>
            <title>Version 1.2.0.17 (Build 184)</title>
            <sparkle:version>184</sparkle:version>
            <sparkle:shortVersionString>1.2.0.17</sparkle:shortVersionString>
            <pubDate>Fri, 19 Sep 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.17</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Box art only when scraping.</strong> A new preference lets you download just the cover/box art during scraping and ROM import, instead of every image type.</li>
                    <li><strong>&ldquo;Needs Review&rdquo; playlist.</strong> ROM imports whose match wasn&rsquo;t a confident hit are now collected into a <em>Needs Review</em> playlist, so you can quickly check and fix the uncertain ones.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Your chosen PSP emulator is now used.</strong> If you set <strong>PPSSPP</strong> for Sony PSP in <em>Settings &rarr; Emulators</em>, PSP games now launch in PPSSPP instead of falling back to RetroArch.</li>
                    <li><strong>DOS games launch even if you already use DOSBox.</strong> If you run your own DOSBox on the side, its personal configuration no longer conflicts with NostalgiApp&rsquo;s &mdash; eXoDOS games that quit instantly now start correctly.</li>
                    <li><strong>TV mode paging.</strong> Page up/down now moves by exactly one screen of games so nothing gets skipped, and the <em>Page&nbsp;Up/Down</em> and <em>Home/End</em> keys now work in TV mode too.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.17-b184.dmg"
                sparkle:version="184"
                sparkle:shortVersionString="1.2.0.17"
                length="327011414"
                type="application/octet-stream"
                sparkle:edSignature="9sL+cTec5fBHrwAdjJbPs47eJJHuYOM6a3V6oY7QJMEIDW7CDmWiI9/IJaKWfb9QwjD1KxZ9JNOro5w75pu2AA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.16 (Build 183)</title>
            <sparkle:version>183</sparkle:version>
            <sparkle:shortVersionString>1.2.0.16</sparkle:shortVersionString>
            <pubDate>Sun, 14 Sep 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.16</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Smarter search results.</strong> When you search, games whose <em>title</em> matches now sort to the top &mdash; ahead of games that only matched on developer, genre, or description.</li>
                    <li><strong>Gameplay videos during ROM import.</strong> If you have gameplay-video downloading turned on (<em>Settings &rarr; Services &rarr; ScreenScraper</em>), imports now grab the video alongside the artwork &mdash; no separate pass needed.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Better artwork &amp; metadata matching.</strong> Scraping now finds games with apostrophes or long subtitles that previously came back empty (e.g. &ldquo;Luigi&rsquo;s Mansion 3&rdquo;, &ldquo;The Legend of Zelda: Tears of the Kingdom&rdquo;).</li>
                    <li>Updated the pricing shown on the in-app purchase screen.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.16-b183.dmg"
                sparkle:version="183"
                sparkle:shortVersionString="1.2.0.16"
                length="327124211"
                type="application/octet-stream"
                sparkle:edSignature="I/u4uKXe7PLmw83qkhpFcnqomgD5DyRZrvWrAyn/RsZF0uOzMNlY+8HsZKTei2qBhX3m4A7RYNjiW8fbCs0kCA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.15 (Build 182)</title>
            <sparkle:version>182</sparkle:version>
            <sparkle:shortVersionString>1.2.0.15</sparkle:shortVersionString>
            <pubDate>Fri, 12 Sep 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.15</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Custom TV mode artwork.</strong> You can now set your own hero art for each platform in TV / couch mode &mdash; the bundled art stays as the default. Also added built-in art for <strong>Apple&nbsp;II</strong>, <strong>Super&nbsp;Nintendo</strong>, <strong>PlayStation&nbsp;2</strong>, and <strong>TurboGrafx-16</strong>.</li>
                    <li><strong>Scrape by ScreenScraper ID or URL.</strong> When a game can&rsquo;t be found by name, you can now paste its ScreenScraper ID or URL to fetch artwork and details directly.</li>
                    <li><strong>Download eXoDOS Lite without wiping your library.</strong> Downloading an eXo pack now offers to <em>merge it into</em> your existing library instead of replacing it, and opens in an in-app window rather than the browser.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Fixed a crash</strong> when choosing an emulator core for PSP games in Emulator settings.</li>
                    <li><strong>Fixed &ldquo;Choose Match&rdquo; for many console titles.</strong> A platform-name mismatch stopped ScreenScraper matching from working on NEC, SNK, and PlayStation games &mdash; it now works.</li>
                    <li><strong>Re-scraping box art updates the grid right away</strong> instead of showing the old thumbnail until the next launch.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.15-b182.dmg"
                sparkle:version="182"
                sparkle:shortVersionString="1.2.0.15"
                length="327051602"
                type="application/octet-stream"
                sparkle:edSignature="vZMO7diIQjskc8TjO6WtialP50/zHmZ++g4xnB9ERq+3JhXUeLy68/LeTXUHOrSf/797k/mMqpRAmsuCYzyjBw=="
            />
        </item>
        <item>
            <title>Version 1.2.0.14 (Build 181)</title>
            <sparkle:version>181</sparkle:version>
            <sparkle:shortVersionString>1.2.0.14</sparkle:shortVersionString>
            <pubDate>Tue, 09 Sep 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.14</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Generic USB controller support (experimental).</strong> Many third-party and retro USB gamepads that macOS doesn&rsquo;t recognize on its own now work for TV / couch-mode navigation &mdash; turn it on in <em>Settings &rarr; Controller / TV Mode</em>. (Xbox, PlayStation, and Switch&nbsp;Pro controllers already work without it.)</li>
                    <li><strong>Easier to find and add game packs.</strong> The Collection settings now always show how to get <strong>eXoDOS</strong> and add other eXo packs (this used to disappear once you had any games), and the folder is now clearly labeled &ldquo;Collection Folder&rdquo; since it holds your whole library &mdash; ROMs and eXo collections alike.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>ROM import no longer makes you wait on artwork.</strong> Your games are added right away and playable immediately; cover art and screenshots fill in afterward in the background.</li>
                    <li><strong>ROM import respects your image-type choices.</strong> It now downloads only the artwork types you tick in the import wizard, instead of grabbing every type (which made big imports slower).</li>
                    <li><strong>Fixed an intermittent crash</strong> when clicking &ldquo;Auto-Detect&rdquo; under DOSBox in Emulator settings.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.14-b181.dmg"
                sparkle:version="181"
                sparkle:shortVersionString="1.2.0.14"
                length="319820106"
                type="application/octet-stream"
                sparkle:edSignature="AXYBRIgrN2XHNTS9bNwUd2l9qxuBIh36c4CUsGRSPHQ1ZF87UN/QiPJ4kknOLO3Zp+zHL3CVmgBN7kwn7+urCA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.12 (Build 179)</title>
            <sparkle:version>179</sparkle:version>
            <sparkle:shortVersionString>1.2.0.12</sparkle:shortVersionString>
            <pubDate>Mon, 08 Sep 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.12</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>One-click ScummVM &amp; MAME.</strong> ScummVM and MAME now download on demand right from <em>Settings &rarr; Emulators</em> &mdash; a single click, no Homebrew required. (Previously, installing them could silently do nothing if Homebrew wasn&rsquo;t present.)</li>
                    <li><strong>More TV mode artwork.</strong> Platform hero art for PlayStation&nbsp;3, PSP, Sega&nbsp;Master&nbsp;System, and Sega&nbsp;Saturn.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Emulator download errors are now visible.</strong> If an emulator download fails, you get a clear message instead of a silent no-op.</li>
                    <li><strong>ROM import.</strong> Fixed a stale &ldquo;Import Complete&rdquo; state that could block a second import in the same session until the app was restarted.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.12-b179.dmg"
                sparkle:version="179"
                sparkle:shortVersionString="1.2.0.12"
                length="318346016"
                type="application/octet-stream"
                sparkle:edSignature="MleL04FFpZJlCg7o1czE6XwX2Wl2dgGdigKX9M9e1kjG4+/+FEsCDJo9YrKWm4tbFFRh4lcF/bgs4mS4myK+AA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.11 (Build 178)</title>
            <sparkle:version>178</sparkle:version>
            <sparkle:shortVersionString>1.2.0.11</sparkle:shortVersionString>
            <pubDate>Sun, 30 Aug 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.11</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Remove a collection.</strong> Right-click any eXo collection in the sidebar and choose <em>Remove Collection&hellip;</em> &mdash; take it out of your library, or also delete its game files to free space.</li>
                    <li><strong>More TV mode artwork.</strong> Platform hero art for MS-DOS, Windows&nbsp;3x/9x, ScummVM, Apple&nbsp;IIGS, Commodore&nbsp;64, Arcade, Neo&nbsp;Geo, and Sinclair&nbsp;ZX&nbsp;Spectrum.</li>
                    <li><strong>Keyboard-aware TV mode hints.</strong> With no controller connected, the on-screen prompts now show keyboard shortcuts instead of controller buttons &mdash; and switch the instant you plug a controller in or out.</li>
                    <li><strong>Remove imported games from the library.</strong> ROM and Apple&nbsp;II/IIGS imports now have a <em>Remove from Library&hellip;</em> option (right-click, or the game&rsquo;s Setup panel). The ROM files on disk are left untouched.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Apple&nbsp;IIGS games launch correctly.</strong> Imported <code>.2mg</code>/<code>.do</code> disk images now boot (they were being loaded into the wrong emulated drive), zipped disk images launch too, and the in-game keyboard works. Collection games also load on case-sensitive drives and network shares.</li>
                    <li><strong>Per-platform emulator picker.</strong> Choosing a standalone emulator (Dolphin, PPSSPP, DuckStation, melonDS&hellip;) no longer crashes on some Macs or silently ignores your choice.</li>
                    <li><strong>DREAMM display mode.</strong> DREAMM manages its own window mode, so the fullscreen/windowed control now explains how to switch (&#8984;&#8617; in-game) instead of doing nothing.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.11-b178.dmg"
                sparkle:version="178"
                sparkle:shortVersionString="1.2.0.11"
                length="311488865"
                type="application/octet-stream"
                sparkle:edSignature="WeR4U09O16KZGuHbdPKz8do6tyQaIUUzZNJV9egDcO4dKgMJSSbN+wEfJEPSFUB1Iu1gdCvt2ab7PVIAAPDPBQ=="
            />
        </item>
        <item>
            <title>Version 1.2.0.10 (Build 176)</title>
            <sparkle:version>176</sparkle:version>
            <sparkle:shortVersionString>1.2.0.10</sparkle:shortVersionString>
            <pubDate>Fri, 28 Aug 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.10</h2>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Games launch from network-share collections.</strong> If your collection lives on a network share (or any drive that blocks running scripts), Windows&nbsp;9x games flashed a Terminal window with a &ldquo;permission denied&rdquo; error and never started. Launching no longer needs execute permission on the drive.</li>
                    <li><strong>Windows&nbsp;9x discs mount on case-sensitive drives and network shares.</strong> A game could boot to the Windows desktop but its shortcut reported &ldquo;the drive &hellip; is unavailable&rdquo; because the CD image was matched with the wrong letter casing. The game&rsquo;s disc and hard-disk images are now found regardless of casing &mdash; including the file references inside a <code>.cue</code>.</li>
                    <li><strong>Better Win9x troubleshooting.</strong> &ldquo;Upload Logs for Analysis&rdquo; now includes the Win9x launch capture files, so launch problems are quicker to diagnose.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.10-b176.dmg"
                sparkle:version="176"
                sparkle:shortVersionString="1.2.0.10"
                length="294821356"
                type="application/octet-stream"
                sparkle:edSignature="hb6lZg5v74tpw5Tgv0ELCvnVF79+9dCWLlKU4H608eVhjB27wjX74lMHVbHxI/zuXIXIHe7XCqCMX7kMH965Aw=="
            />
        </item>
        <item>
            <title>Version 1.2.0.9 (Build 175)</title>
            <sparkle:version>175</sparkle:version>
            <sparkle:shortVersionString>1.2.0.9</sparkle:shortVersionString>
            <pubDate>Thu, 27 Aug 2026 21:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.9</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>More platform artwork in TV mode</strong> &mdash; Nintendo&nbsp;DS, Game&nbsp;Boy, GameCube, Switch, Wii&nbsp;U, and Sega&nbsp;Dreamcast.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Windows&nbsp;3.x / 9x games launch on case-sensitive drives and network shares.</strong> On those setups every Win3x/Win9x game failed with &ldquo;No dosbox.conf found&rdquo; because of a folder-name casing mismatch; the game folder and its config are now found regardless of casing.</li>
                    <li><strong>Windows&nbsp;9x games start reliably again.</strong> The launch helper could be cleaned up a moment too early on some Macs &mdash; the Terminal window flashed open with a &ldquo;no such file&rdquo; error and the game never started. It now stays put until it has run.</li>
                    <li><strong>Emulators no longer get stranded after an unexpected quit.</strong> If NostalgiApp crashed or the Mac logged out mid-game, a fullscreen emulator could keep running &mdash; and playing audio &mdash; with nothing left to close it. Any such leftover emulator is now cleaned up on the next launch.</li>
                    <li><strong>ScummVM games are more robust</strong> on case-sensitive drives and network shares (same folder-casing hardening).</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.9-b175.dmg"
                sparkle:version="175"
                sparkle:shortVersionString="1.2.0.9"
                length="294839139"
                type="application/octet-stream"
                sparkle:edSignature="6Q6Kfj1sdwEiZy38wbHZdGltdXJYCgHjPzdvnwnjF+WJmGhPrw8GdCYoXcQW+Hgs2tfcyHZMLnGxy0uuuJC1CQ=="
            />
        </item>
        <item>
            <title>Version 1.2.0.8 (Build 173)</title>
            <sparkle:version>173</sparkle:version>
            <sparkle:shortVersionString>1.2.0.8</sparkle:shortVersionString>
            <pubDate>Tue, 25 Aug 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.8</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Couch mode sends Switch games to your TV.</strong> Nintendo&nbsp;Switch games now open on the same display as NostalgiApp (your TV in couch mode), instead of the main monitor.</li>
                    <li><strong>Quit from the couch.</strong> Press <strong>Select&nbsp;+&nbsp;Start</strong> on your controller to close the running emulator and drop straight back to your library.</li>
                    <li><strong>More platform artwork in TV mode</strong> &mdash; NES, Sega&nbsp;Genesis, and Nintendo&nbsp;3DS.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Much lower CPU use.</strong> A background artwork pre-cache could work the CPU hard for a long time on large libraries &mdash; it&rsquo;s now near-instant.</li>
                    <li><strong>TV mode no longer freezes on a bad preview clip.</strong> A missing or unplayable gameplay video could freeze the hero image; it now falls back to screenshots and art.</li>
                    <li><strong>Screensaver preview audio fully stops</strong> when the screensaver is dismissed by a controller or after idle.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.8-b173.dmg"
                sparkle:version="173"
                sparkle:shortVersionString="1.2.0.8"
                length="286283185"
                type="application/octet-stream"
                sparkle:edSignature="v8CcsETCxG1MQOaKmMjh2PoCBLWbzhv7v+q/WXExCykR5V8GV6WMX65/VjlU3g6BaRv87GIIEET418mZoc2LBg=="
            />
        </item>
        <item>
            <title>Version 1.2.0.7 (Build 172)</title>
            <sparkle:version>172</sparkle:version>
            <sparkle:shortVersionString>1.2.0.7</sparkle:shortVersionString>
            <pubDate>Mon, 24 Aug 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.7</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Apple II &amp; Apple IIgs games.</strong> Import loose Apple&nbsp;II / IIgs disk images (.dsk, .po, .2mg, .woz&hellip;) and play them through MAME &mdash; the required system ROMs are bundled, so there&rsquo;s nothing extra to download.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>iCloud save sync now reaches iCloud.</strong> A missing entitlement stopped the iCloud Drive container from being created, so emulator saves quietly fell back to a local-only backup. Saves now sync to iCloud Drive, and your existing local backups are moved across automatically.</li>
                    <li><strong>Saves sync right after you exit a game.</strong> Just that game&rsquo;s saves upload as you quit, instead of only when you open the Cloud Sync screen.</li>
                    <li><strong>More save formats recognised.</strong> Sierra adventure saves (King&rsquo;s Quest, Space Quest, Gabriel Knight and more) are now detected and synced.</li>
                    <li><strong>Preview video pauses with the screensaver.</strong> A game&rsquo;s gameplay video no longer keeps playing &mdash; and making sound &mdash; behind the screensaver.</li>
                </ul>
                <h3>Improved</h3>
                <ul>
                    <li><strong>Smoother ROM importing.</strong> Importing ROMs no longer reloads your whole library, the sidebar repairs mis-filed platforms on its own, and <strong>Choose Match</strong> now also fills in the game&rsquo;s description.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.7-b172.dmg"
                sparkle:version="172"
                sparkle:shortVersionString="1.2.0.7"
                length="281753261"
                type="application/octet-stream"
                sparkle:edSignature="2wLvXiMNjNTIPPGKOezgmbp9I7jDGkMr72sP+ral7SgKH+XxSwxHN9FejyyDLmTK07V4JaNHpNy5bRkaGK6PCw=="
            />
        </item>
        <item>
            <title>Version 1.2.0.6 (Build 171)</title>
            <sparkle:version>171</sparkle:version>
            <sparkle:shortVersionString>1.2.0.6</sparkle:shortVersionString>
            <pubDate>Sun, 23 Aug 2026 20:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.6</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Fill in missing descriptions.</strong> Right-click a console/ROM platform and choose <strong>Fill in Missing Descriptions</strong> to fetch descriptions for games you&rsquo;ve already scraped &mdash; just the text, no artwork re-downloaded.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Scraped descriptions are kept.</strong> ScreenScraper descriptions were being fetched but not saved for ROM games. New scrapes now store them (use the backfill above for ones scraped before).</li>
                    <li><strong>Black-screen preview videos.</strong> Some scraped clips &mdash; common on arcade games &mdash; used a pixel format macOS can&rsquo;t display, so the video was black with sound. <strong>Settings &rarr; Services &rarr; Fix Broken Videos</strong> now repairs these too.</li>
                    <li><strong>Cloud-save Scan no longer freezes the app</strong> on large libraries, shows accurate progress, and no longer mistakes game data for save files. The Cloud Sync screen now says whether saves are going to iCloud or a local backup.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.6-b171.dmg"
                sparkle:version="171"
                sparkle:shortVersionString="1.2.0.6"
                length="280940593"
                type="application/octet-stream"
                sparkle:edSignature="45noU/3IGzz+dSuU9zLm2Dtr5GCkM13T/A8Jbv1SzVGXKeEbUUt0Bwv3tr8jKLvg6pmOeDSM+psYdQ8tUznLBQ=="
            />
        </item>
        <item>
            <title>Version 1.2.0.5 (Build 170)</title>
            <sparkle:version>170</sparkle:version>
            <sparkle:shortVersionString>1.2.0.5</sparkle:shortVersionString>
            <pubDate>Sun, 23 Aug 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.5</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>Rotate game boxes in 3D.</strong> Click the <strong>rotate icon</strong> (next to a game&rsquo;s title in the details panel) to spin its box in 3D. In <strong>Museum Mode</strong> the box sits on a lit pedestal and slowly turns like an exhibit. Built from the game&rsquo;s own cover art.</li>
                    <li><strong>Museum Mode shortcut.</strong> Press <strong>&#8984;&#8679;M</strong> to open the selected game as a full-screen exhibit.</li>
                    <li><strong>Screensaver: focus the Game Showcase.</strong> Two new options &mdash; show only the platform selected in the sidebar, and show only games that have a preview video.</li>
                    <li><strong>Random Game, by platform.</strong> The Random Game button can now be limited to the platform you have selected.</li>
                    <li><strong>Share your whole library.</strong> Upload your entire collection to WorthyPunks with a progress bar and a public/private toggle.</li>
                    <li><strong>&#8984;F</strong> jumps straight to the library search box.</li>
                </ul>
                <h3>Improved</h3>
                <ul>
                    <li><strong>Correct box art on the Shelf &amp; Coverflow.</strong> When a game has no 3D box &mdash; or shares one with other games &mdash; NostalgiApp now builds a 3D box from that game&rsquo;s own cover, so each version shows the right art (for example, the 2001 King&rsquo;s Quest remake no longer shows the original&rsquo;s box).</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Missing box art and screenshots</strong> for some games (whose image files carry a catalogue ID in the filename) now appear.</li>
                    <li><strong>Settings &rsaquo; About</strong> content that could be cut off now scrolls.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.5-b170.dmg"
                sparkle:version="170"
                sparkle:shortVersionString="1.2.0.5"
                length="280429836"
                type="application/octet-stream"
                sparkle:edSignature="kY2hvfQ/Y2LyejG3u2XQpcyCmbuuVZ188WmHO+6KkrkY2jBHjn+VM3mV4SV7GH62ARz2bkwJ9BW97pDH9BWgBg=="
            />
        </item>
        <item>
            <title>Version 1.2.0.4 (Build 169)</title>
            <sparkle:version>169</sparkle:version>
            <sparkle:shortVersionString>1.2.0.4</sparkle:shortVersionString>
            <pubDate>Sat, 22 Aug 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.4</h2>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Sierra adventure games launch again.</strong> Titles whose sound or graphics option swaps a config file on launch &mdash; including <strong>EcoQuest&nbsp;I &amp; II</strong>, <strong>King&rsquo;s Quest&nbsp;VI</strong> and around two dozen others &mdash; stopped starting after a recent update. They now launch correctly.</li>
                    <li><strong>King&rsquo;s Quest&nbsp;VI CD</strong> now launches with music <em>and</em> speech, and the CD and floppy versions are clearly labelled in the launch menu.</li>
                    <li><strong>Sound Canvas &amp; General MIDI music plays again.</strong> Some games set up for Roland Sound Canvas were playing sound effects but no music. Their music now plays correctly.</li>
                    <li><strong>CD adventure games no longer freeze at the Sierra logo.</strong> They now run from the installed copy with the CD mounted for audio, instead of the read-only disc image.</li>
                    <li><strong>Fewer launch failures</strong> from mis-resolved game folders (no more &ldquo;Not a directory&rdquo; errors).</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.4-b169.dmg"
                sparkle:version="169"
                sparkle:shortVersionString="1.2.0.4"
                length="280228602"
                type="application/octet-stream"
                sparkle:edSignature="R3RkarIjYwJxkIWyXuuN3DQkQ8ZllTMP5DhvE+df5o5odc1YReEje9uZqcrEi5IFovFcFOE6HdVpWpvuy/j4AA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.3 (Build 168)</title>
            <sparkle:version>168</sparkle:version>
            <sparkle:shortVersionString>1.2.0.3</sparkle:shortVersionString>
            <pubDate>Thu, 21 Aug 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.3</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>CD-game speech &amp; music restored.</strong> Audio-heavy CD games such as Inherit the Earth compress their large sound and speech files; NostalgiApp now decompresses them during install, so you hear the voices and music instead of a &ldquo;can&rsquo;t open&rdquo; error.</li>
                    <li><strong>DOSBox ECE games.</strong> Wing Commander III and other titles that call for DOSBox ECE now offer the ECE (Wine) launch option instead of silently falling back to Staging.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Faster, freeze-free startup.</strong> Large libraries on an external drive no longer hang the app at launch while search indexing runs.</li>
                    <li><strong>More DOS games launch correctly</strong> &mdash; Castle of Dr.&nbsp;Brain, Toonstruck, Wolfenstein&nbsp;3D, Privateer&nbsp;2, TIE&nbsp;Fighter, X-Wing and Ripper.</li>
                    <li><strong>Sierra CD games</strong> that stopped launching in the previous update now launch again.</li>
                    <li><strong>Console &amp; ROM emulators.</strong> Pick your standalone emulator per platform (Dolphin, PPSSPP, DuckStation, melonDS); Ryubing is now the recommended Switch default; plus a standalone-launch fix.</li>
                    <li><strong>Game preview videos</strong> no longer occasionally show a clip from a similarly-named game.</li>
                    <li><strong>Fixed an install hang</strong> on some large game archives.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.3-b168.dmg"
                sparkle:version="168"
                sparkle:shortVersionString="1.2.0.3"
                length="280221966"
                type="application/octet-stream"
                sparkle:edSignature="8f1TAZyzhVZVDGOzKMxWzNtSWcvOiFjcXwidr7hX6wv4POfE845g9WfO7VGls66SoJB49vCu9Eb5mPQqiJS4BA=="
            />
        </item>
        <item>
            <title>Version 1.2.0.2 (Build 167)</title>
            <sparkle:version>167</sparkle:version>
            <sparkle:shortVersionString>1.2.0.2</sparkle:shortVersionString>
            <pubDate>Wed, 20 Aug 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.2</h2>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>More Sierra games play MT-32 correctly.</strong> The 256-colour (VGA) option on several Sierra games &mdash; Leisure Suit Larry 5, Castle of Dr.&nbsp;Brain, Conquests of the Longbow, Police Quest 3 and others &mdash; was playing SoundBlaster music instead of MT-32 even when the MT-32 option was chosen. They now use MT-32 (and CM-32L, if your ROMs support it).</li>
                    <li><strong>TV mode audio while playing.</strong> Launching a game from TV / Couch Mode no longer leaves the preview video playing in the background &mdash; its sound no longer bleeds over the game.</li>
                </ul>
                <h3>New</h3>
                <ul>
                    <li><strong>Game fixes update automatically.</strong> NostalgiApp now downloads game-launch data updates from the server in the background, so many compatibility fixes arrive on their own &mdash; no app update required.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.2-b167.dmg"
                sparkle:version="167"
                sparkle:shortVersionString="1.2.0.2"
                length="280025221"
                type="application/octet-stream"
                sparkle:edSignature="wY4s9+/mE/hXFrSHBqx40hGlRJyiRr8BKnAvOmip7+BVfj4iIhvW3FgPV8SSep2Cw5Jjx/KAggEiAZLPDZ8OAg=="
            />
        </item>
        <item>
            <title>Version 1.2.0.1 (Build 165)</title>
            <sparkle:version>165</sparkle:version>
            <sparkle:shortVersionString>1.2.0.1</sparkle:shortVersionString>
            <pubDate>Wed, 20 Aug 2026 02:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0.1</h2>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>MT-32 music now plays.</strong> Sierra SCI games (King&#8217;s Quest, Space Quest, Conquests of Camelot and more) could stay silent on MT-32 even with the ROMs correctly installed &mdash; the emulator was being pointed at the wrong ROM folder. Your MT-32 music now plays. Colonel&#8217;s Bequest and other games that played AdLib instead of MT-32 are fixed too.</li>
                </ul>
                <h3>New</h3>
                <ul>
                    <li><strong>Fix silent gameplay videos.</strong> Some downloaded gameplay videos (mostly console games) used an audio format macOS can&#8217;t play, so they appeared to have no sound. Open <strong>Settings &rarr; Services &rarr; Fix Silent Videos</strong> to repair your whole library at once, or right-click a game and choose <strong>Fix Video Audio</strong>. New downloads are fixed automatically.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0.1-b165.dmg"
                sparkle:version="165"
                sparkle:shortVersionString="1.2.0.1"
                length="280028361"
                type="application/octet-stream"
                sparkle:edSignature="v0aYS0uUQf8PdRulLKB6NliAxID+XzF9WlgEG0C1iva26QW+OwHB61LsQ4N8/Meblqc8h9CqYYIP4C6kLW+bBg=="
            />
        </item>
        <item>
            <title>Version 1.2.0 (Build 164)</title>
            <sparkle:version>164</sparkle:version>
            <sparkle:shortVersionString>1.2.0</sparkle:shortVersionString>
            <pubDate>Tue, 19 Aug 2026 22:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.2.0 &mdash; The Couch Update</h2>
                <p>Play from the sofa. A full controller-driven big-picture mode &mdash; and a lot more.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>TV / Couch Mode.</strong> A full-screen, controller-driven experience for the living room. Browse your whole library from the sofa with a gamepad &mdash; art-forward covers, gameplay videos and screenshots, a soundtrack that plays as you browse, on-screen search, and a per-game menu to install, choose a version, favourite, hide, add to a playlist and more. Press &#8984;&#8679;T or the TV button to enter. Games open on the same screen as NostalgiApp, so it just works on a TV or second display.</li>
                    <li><strong>Soundtracks on the couch.</strong> Play your imported soundtracks &mdash; and any game&#8217;s music &mdash; from TV mode, with Play/Pause, Next, Previous and Stop on the controller. Find them under the <strong>My Soundtracks</strong> tile.</li>
                    <li><strong>Manuals &amp; maps on the couch.</strong> Open a game&#8217;s manuals, maps and documents (images, PDFs and text) right in TV mode, without leaving the sofa.</li>
                    <li><strong>Hide games.</strong> Right-click any game (or use the couch menu) to hide it from your library, and toggle <strong>Show Hidden Games</strong> to bring them back. Your hidden list syncs across your Macs.</li>
                    <li><strong>Per-game display settings.</strong> Override CRT scan-lines, fullscreen and aspect ratio for individual games from the right-click menu or the couch options. These sync across your Macs too.</li>
                    <li><strong>Choose a scraping match.</strong> When automatic scraping can&#8217;t identify a game &mdash; common with oddly-named ROMs &mdash; use <strong>Choose Match&#8230;</strong> to search by name and pick the right game yourself.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>More games launch correctly.</strong> Quest for Glory IV (CD), King&#8217;s Quest V (CD) and several other Sierra CD games that stalled right after launch now start properly.</li>
                    <li><strong>Scan-lines everywhere.</strong> CRT scan-lines now appear on King&#8217;s Quest 1 &amp; 2 (SCI) and other games that previously ignored the setting.</li>
                    <li><strong>More versions to choose from.</strong> The version picker no longer hides distinct versions of a game (graphics modes, single vs multiplayer and more), and recovers missing sound-card options for some Sierra games.</li>
                    <li><strong>Right-click everywhere.</strong> The right-click menu now works in every view &mdash; Shelf, Timeline and Coverflow, not just Grid and List.</li>
                    <li><strong>Games open on the right screen.</strong> ScummVM and DREAMM games now open on the same display as NostalgiApp, matching DOS games.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.2.0-b164.dmg"
                sparkle:version="164"
                sparkle:shortVersionString="1.2.0"
                length="277818321"
                type="application/octet-stream"
                sparkle:edSignature="DryJZnuKB9kp4xOE7K73H/Fk75yQO9LAKqc4Fsj3RG+Y/vMVTtfA64f94cK+gtTUbDWAVAi2dcoN1jIqTSvZAQ=="
            />
        </item>
        <item>
            <title>Version 1.1.1.1 (Build 162)</title>
            <sparkle:version>162</sparkle:version>
            <sparkle:shortVersionString>1.1.1.1</sparkle:shortVersionString>
            <pubDate>Mon, 17 Aug 2026 22:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.1.1</h2>
                <h3>New</h3>
                <ul>
                    <li><strong>General MIDI music, built in.</strong> Games that support Roland Sound Canvas / General MIDI — like Freddy Pharkas — can now play their proper music. Open <strong>Settings → Emulators → General MIDI Audio</strong> and click <strong>Install</strong>; there are no files to hunt down. Pick the &#8220;Sound Canvas&#8221; option at launch to hear it. You can still drop in your own SoundFont if you prefer.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Some CD games wouldn&#8217;t start.</strong> A few multi-folder CD games — such as Leisure Suit Larry 6 (CD) — could stop at an &#8220;Illegal command&#8221; message right after launch instead of starting. They now launch correctly.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.1.1-b162.dmg"
                sparkle:version="162"
                sparkle:shortVersionString="1.1.1.1"
                length="274101042"
                type="application/octet-stream"
                sparkle:edSignature="VpdlVgT5Mwh6aJadbObjXRAmUVl7xdpM2bHz0lwt6qCqJmiml7g1d4OPz2lhrKfb31JYW7XR1/5Eu+NEtnqPDA=="
            />
        </item>
        <item>
            <title>Version 1.1.1 (Build 161)</title>
            <sparkle:version>161</sparkle:version>
            <sparkle:shortVersionString>1.1.1</sparkle:shortVersionString>
            <pubDate>Sat, 15 Aug 2026 22:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.1 — The Video Update</h2>
                <p>Bring your library to life with gameplay videos.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>Gameplay videos.</strong> Download a gameplay video for your console, arcade and computer games straight from ScreenScraper. Turn it on while scraping, grab one game from its right-click menu, or select a batch and download them all at once. A big download runs in the background so you can keep browsing and playing, skips games that already have a video, and tells you why any game came up empty. Choose where videos are stored — including an external drive — and see how much space they use in Settings.</li>
                    <li><strong>Select All.</strong> Press &#8984;A to select every game currently shown, then favourite, add to a playlist, or download videos for the whole selection at once. &#8984;&#8679;A clears the selection.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Favourites stay put.</strong> Removed favourites could reappear a few seconds later; they now stick, and removing several selected games at once removes all of them.</li>
                    <li><strong>Screensaver dismisses on a click.</strong> Clicking could leave you stuck on a black screen until you quit the app; a click now closes it cleanly.</li>
                    <li><strong>Soundtrack screensaver now covers eXo soundtracks.</strong> Playing a soundtrack from a game's Extras brings up the vinyl-and-visualiser screensaver — the same one imported soundtracks already used — instead of the standard screensaver.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.1-b161.dmg"
                sparkle:version="161"
                sparkle:shortVersionString="1.1.1"
                length="270245292"
                type="application/octet-stream"
                sparkle:edSignature="ffXdwZ6O3nCbIfvgq2rzNDzWrmyM+leSeJmtxFZF1OK17dM/WWiqqxyyjFVQhjjp0mNP7/eOXGqJDiIfVDMjDg=="
            />
        </item>
        <item>
            <title>Version 1.1.0.14 (Build 160)</title>
            <sparkle:version>160</sparkle:version>
            <sparkle:shortVersionString>1.1.0.14</sparkle:shortVersionString>
            <pubDate>Thu, 13 Aug 2026 02:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.14</h2>
                <p>You can now check whether a game's files are intact — and fix them when they aren't.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>Verify Game Files.</strong> Check a game's archive for damage from its menu. Works across every eXo collection, and names the damaged files inside rather than just saying something is wrong.</li>
                    <li><strong>Repair a damaged game.</strong> When your collection can supply a fresh copy, NostalgiApp offers to delete the damaged archive and fetch it again. When it can't, it says plainly what's needed instead of leaving you guessing.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Multi-disc DOS games start correctly.</strong> Games whose discs mount on a drive letter other than D: were switching to the wrong drive and failing to start.</li>
                    <li><strong>Games no longer show as "Not Available" by mistake.</strong> When a folder couldn't be read during a scan, its games were wrongly marked missing.</li>
                    <li><strong>The screensaver always closes.</strong> It could get stuck on screen with no way to dismiss it, and its music or video could keep playing after it closed.</li>
                    <li>Progress is now shown while a game is being verified, and while one is downloading.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.14-b160.dmg"
                sparkle:version="160"
                sparkle:shortVersionString="1.1.0.14"
                length="270130639"
                type="application/octet-stream"
                sparkle:edSignature="ybI3qSn5T/4Xd/9jr4kmx5sdXH9KCGQh4GQvHnzzH5mCze2a7980VoP+sAqVI39dWF0PnTb1H3QvsnKJM0+SCQ=="
            />
        </item>
        <item>
            <title>Version 1.1.0.13 (Build 159)</title>
            <sparkle:version>159</sparkle:version>
            <sparkle:shortVersionString>1.1.0.13</sparkle:shortVersionString>
            <pubDate>Wed, 12 Aug 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.13</h2>
                <p>A Gabriel Knight fix.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>The Beast Within: A Gabriel Knight Mystery now launches.</strong> The game was starting and then closing again within a couple of seconds. It now boots into the game properly, with your chosen sound option.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.13-b159.dmg"
                sparkle:version="159"
                sparkle:shortVersionString="1.1.0.13"
                length="270052179"
                type="application/octet-stream"
                sparkle:edSignature="tcusEAXc+MYkG+49YWbYnuTFb2rTV+ieg1o5s1AAhrGxxN1qNrkbPHd0DQ6W3NJ2R15QvynseEPhiPFU0iAxCQ=="
            />
        </item>
        <item>
            <title>Version 1.1.0.12 (Build 158)</title>
            <sparkle:version>158</sparkle:version>
            <sparkle:shortVersionString>1.1.0.12</sparkle:shortVersionString>
            <pubDate>Tue, 11 Aug 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.12</h2>
                <p>Collection setup is far more reliable on long, overnight runs.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Setup can no longer freeze forever.</strong> A rare stall could leave setup sitting on one file indefinitely with no way forward. It now detects the stall, recovers, and carries on.</li>
                    <li><strong>Your Mac stays awake during setup.</strong> Setting up a large collection used to be interrupted when the Mac went to sleep, wedging progress against external drives. Setup now keeps the Mac awake until it finishes. (Your display can still sleep.)</li>
                    <li><strong>Game extras show real progress and pick up where they left off.</strong> The step that unpacks thousands of per-game extras now shows a running count, and re-running setup skips everything already unpacked instead of redoing hours of work.</li>
                    <li><strong>Setup copes with a nearly full Mac.</strong> If your startup disk is short on space, files are now unpacked next to your collection instead of failing partway through.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.12-b158.dmg"
                sparkle:version="158"
                sparkle:shortVersionString="1.1.0.12"
                length="270029959"
                type="application/octet-stream"
                sparkle:edSignature="2UVp3GZH1rXDX7XmSH4GPqSB/EDj+EwoLWBwBJeTVp5M4Oamo4AWiY0YIOILYtpAmg1qkLpKCWM8GXZZfMmoAg=="
            />
        </item>
        <item>
            <title>Version 1.1.0.11 (Build 157)</title>
            <sparkle:version>157</sparkle:version>
            <sparkle:shortVersionString>1.1.0.11</sparkle:shortVersionString>
            <pubDate>Sun, 09 Aug 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.11</h2>
                <p>Classic Sierra adventures now launch correctly.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Sierra games no longer quit right after launch.</strong> Phantasmagoria, the Leisure Suit Larry series, Police Quest 2 and 3, Quest for Glory II, Codename ICEMAN, Laura Bow, Conquests of Camelot and the Longbow, the Hoyle games, Mixed-Up Mother Goose and more were closing within seconds of starting. They now boot into the game with your chosen sound option, just like they should.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.11-b157.dmg"
                sparkle:version="157"
                sparkle:shortVersionString="1.1.0.11"
                length="270020253"
                type="application/octet-stream"
                sparkle:edSignature="m3MwnEoVWyYs/9ylPGAysW+njFbcGwAGkLrjazPoKBla2oCDkU6VnW8UuerG7+5bfkKNoYhqxOS65EtF3pm1DA=="
            />
        </item>
        <item>
            <title>Version 1.1.0.10 (Build 156)</title>
            <sparkle:version>156</sparkle:version>
            <sparkle:shortVersionString>1.1.0.10</sparkle:shortVersionString>
            <pubDate>Mon, 03 Aug 2026 08:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.10</h2>
                <p>The ROM import wizard&#8217;s final step no longer hides the Import button.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>The Import button is always reachable.</strong> On the final &#8220;Ready to Import&#8221; step, the summary and options could grow taller than the window, pushing the Import button off-screen with no scrollbar &#8212; a dead end. The summary now scrolls and the Import button stays pinned at the bottom.</li>
                    <li><strong>The import window uses your screen.</strong> It opens as tall as your display comfortably allows and can now actually be resized by dragging its edges &#8212; previously the resize handle was nearly impossible to grab.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.10-b156.dmg"
                sparkle:version="156"
                sparkle:shortVersionString="1.1.0.10"
                length="270030911"
                type="application/octet-stream"
                sparkle:edSignature="R0r1Ff0RrtAbyy4d6u6GI/K0U9eZs3S9y9lLaG+uh33CpV2xNzzCDiEN0QKviQQwbkNLVR2G71iUjZ9tw/7OAw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.9 (Build 155)</title>
            <sparkle:version>155</sparkle:version>
            <sparkle:shortVersionString>1.1.0.9</sparkle:shortVersionString>
            <pubDate>Thu, 31 Jul 2026 09:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.9</h2>
                <p>A focused update for adding games &#8212; no more dead ends in ROM import.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Unrecognized files can now be given a platform.</strong> If the scanner didn&#8217;t recognize some of your files during ROM import, there was no way to tell the app what platform they belonged to &#8212; they now always get a platform picker so nothing is left behind.</li>
                    <li><strong>The import screen explains itself.</strong> The final Import button now tells you why it&#8217;s unavailable instead of staying silently greyed out, and the last step warns you up front about any games that would be skipped.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.9-b155.dmg"
                sparkle:version="155"
                sparkle:shortVersionString="1.1.0.9"
                length="270000024"
                type="application/octet-stream"
                sparkle:edSignature="PCvAqrQ/TreriKlvD2J4Uv+na2FmP2wRgKqY4IM6KC5XF1qjOgzsgQWGcPPK4lfUyM/8ky2NsQdSedZHAt3SAQ=="
            />
        </item>
        <item>
            <title>Version 1.1.0.8 (Build 154)</title>
            <sparkle:version>154</sparkle:version>
            <sparkle:shortVersionString>1.1.0.8</sparkle:shortVersionString>
            <pubDate>Sun, 27 Jul 2026 02:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.8</h2>
                <p>Smoother game launches &#8212; RetroArch games start unpaused, Nintendo 64 and DS fixes, 3DS games from zip files, and relocatable soundtracks.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>RetroArch games no longer start paused.</strong> Games used to open behind NostalgiApp with a pause icon until you clicked their window &#8212; they now come to the front and play immediately.</li>
                    <li><strong>Nintendo 64 black screen fixed.</strong> If RetroArch is set to the Vulkan video driver, N64 games showed a black screen with sound. NostalgiApp now selects the matching N64 renderer automatically.</li>
                    <li><strong>Nintendo DS games load again after moving to a new Mac.</strong> A leftover RetroArch setting from the old machine silently broke systems whose games ship as zip files &#8212; it&#8217;s now detected and repaired before launch.</li>
                    <li><strong>Music player behaves.</strong> Pausing the music no longer un-pauses itself moments later, and launching a game now pauses background music instead of playing over it.</li>
                </ul>
                <h3>New</h3>
                <ul>
                    <li><strong>Nintendo 3DS games launch straight from zip files.</strong> The app extracts the ROM automatically on first launch. It also finds 3DS support files (boot9.bin, aes_keys.txt, seeddb.bin) stored near your ROMs and installs them for the emulator.</li>
                    <li><strong>Soundtracks can move with you.</strong> If your music folders moved to a new drive or location, the new &#8220;Relocate Missing Folders&#8221; button in Soundtracks re-links every album in one go. Albums also get Replace Folder / Locate Folder options for fixing a single album.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.8-b154.dmg"
                sparkle:version="154"
                sparkle:shortVersionString="1.1.0.8"
                length="270023708"
                type="application/octet-stream"
                sparkle:edSignature="Yq77S19mhSyeBP7974mKnKzJdtjJOzaILGZtLAep6ldU40NkhgQuEQSrYSPBbhhQI2kBjjbw/2OFlOXDkMWwAg=="
            />
        </item>
        <item>
            <title>Version 1.1.0.7 (Build 153)</title>
            <sparkle:version>153</sparkle:version>
            <sparkle:shortVersionString>1.1.0.7</sparkle:shortVersionString>
            <pubDate>Sun, 19 Jul 2026 10:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.7</h2>
                <p>Hide stores you don&#8217;t use, organize imports by folder, MSX support, and better keyboard browsing.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>Hide store sources you don&#8217;t use.</strong> Settings &#8594; Game Sources has a new &#8220;Show in Library&#8221; section with toggles for Steam, GOG, Epic, Amazon, and the Mac App Store &#8212; your library only shows the storefronts you care about.</li>
                    <li><strong>Your ROM folders become categories.</strong> ROM import can now read your subfolder names (like &#8220;RPG&#8221; or &#8220;Shooters&#8221;) and file games under matching genres automatically &#8212; and optionally create a sidebar playlist for each folder, so your hand-sorted structure stays visible in the app.</li>
                    <li><strong>MSX games can now be imported.</strong> ROM import recognizes MSX and MSX2 files (.rom, .mx1, .mx2, .dsk, .cas &#8212; and zipped games), so they show up as importable platforms as intended. Thanks to the user report that caught this!</li>
                    <li><strong>Experimental PlayStation 2 and Nintendo 3DS support.</strong> Opt-in RetroArch cores (Play! and Panda3DS) are now available for these systems.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Shelf view follows the keyboard.</strong> Arrow-key navigation now scrolls the shelves to keep the selected game in view, just like the grid.</li>
                    <li><strong>Timeline view navigates what&#8217;s on screen.</strong> Arrow keys now move through the displayed year (left/right roll over into the previous/next year, up/down move by row) instead of jumping to games from other years.</li>
                    <li><strong>Apple IIGS launches explain themselves.</strong> If MAME or GSplus can&#8217;t start a game, NostalgiApp now tells you what went wrong instead of silently doing nothing.</li>
                    <li>If the app&#8217;s installation is damaged (for example after an incomplete copy), it now shows a clear message instead of quietly refusing to work &#8212; so you know to reinstall.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.7-b153.dmg"
                sparkle:version="153"
                sparkle:shortVersionString="1.1.0.7"
                length="269925374"
                type="application/octet-stream"
                sparkle:edSignature="OK0jsyxDbAxr0TZ8I4G+FUA+ufsvHuF7puHuCXz68Hf6hB64+hVeZOpnM9lFxcp9l5ccE2o0d0cPL6eu4f10Aw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.6 (Build 152)</title>
            <sparkle:version>152</sparkle:version>
            <sparkle:shortVersionString>1.1.0.6</sparkle:shortVersionString>
            <pubDate>Tue, 07 Jul 2026 09:45:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.6</h2>
                <p>Two fixes: ROM import for brand-new libraries, and honest setup progress on network drives.</p>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>ROM import no longer stalls without a library folder.</strong> If you hadn&#8217;t pointed NostalgiApp at a collection folder yet, the final Import button silently did nothing. The app now asks you to choose (or create) a library folder right there and carries on with the import &#8212; your ROM files stay where they are.</li>
                    <li><strong>Real setup progress on network shares and external drives.</strong> The copy phase of collection setup used to sit at 99% for long stretches even though everything was working. The bar now tracks the actual copy, so setting up on a NAS no longer looks stuck.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.6-b152.dmg"
                sparkle:version="152"
                sparkle:shortVersionString="1.1.0.6"
                length="269889304"
                type="application/octet-stream"
                sparkle:edSignature="gsDTFzjad9mkuRRIBoahxnv1rYFUOc0LOJ5C1zN/rlWueWkqqvv+oatokZ1vTxhXIbXdRpvp26/szb+WewzIBw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.5 (Build 151)</title>
            <sparkle:version>151</sparkle:version>
            <sparkle:shortVersionString>1.1.0.5</sparkle:shortVersionString>
            <pubDate>Sun, 05 Jul 2026 22:55:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.5</h2>
                <p>Make your ROM library movable.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>Portable ROM imports.</strong> When importing ROMs you can now choose <em>relative paths</em>: keep your ROM files inside your collection folder and the whole collection can move to a new drive or Mac without breaking your library &#8212; no re-import needed. Absolute paths remain the default.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.5-b151.dmg"
                sparkle:version="151"
                sparkle:shortVersionString="1.1.0.5"
                length="269883457"
                type="application/octet-stream"
                sparkle:edSignature="OifkYgdq7BW+13LGYspf2FbBjHovE9wB1vrUU1ulqSQZKNli4UfuytBLSKgfmufwdWiWoWUf9iiQCYPBoyUpBg=="
            />
        </item>
        <item>
            <title>Version 1.1.0.4 (Build 150)</title>
            <sparkle:version>150</sparkle:version>
            <sparkle:shortVersionString>1.1.0.4</sparkle:shortVersionString>
            <pubDate>Sat, 27 Jun 2026 12:38:24 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.4</h2>
                <p>Smarter library search, plus a fix for a rare activation hiccup.</p>
                <h3>Improved</h3>
                <ul>
                    <li><strong>Sharper search results.</strong> Searching by genre or series now matches whole words, so typing &#8220;myst&#8221; no longer pulls in every game tagged <em>Mystery</em>. Titles, developers and publishers still match as you type.</li>
                    <li><strong>Search inside game descriptions.</strong> You can now opt in to having search look through each game&#8217;s description text, not just its title &#8212; handy for finding a game when you only remember a detail about it.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li>Fixed a rare case where a valid licence could be asked to re-activate.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.4-b150.dmg"
                sparkle:version="150"
                sparkle:shortVersionString="1.1.0.4"
                length="269880274"
                type="application/octet-stream"
                sparkle:edSignature="qEwAHts2r3JcMBB5f2dZbw9vaK5T3US3fBFctTmYj7UKnreyn3QYAXdngWSa/0AqtF6No/yOj9AvspnzBZWhBw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.3 (Build 149)</title>
            <sparkle:version>149</sparkle:version>
            <sparkle:shortVersionString>1.1.0.3</sparkle:shortVersionString>
            <pubDate>Tue, 23 Jun 2026 23:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.3</h2>
                <p>Bring your own artwork, plus fixes for Steam-via-Wine launching.</p>
                <h3>New</h3>
                <ul>
                    <li><strong>Import artwork you already have.</strong> Point NostalgiApp at a folder of screenshots or box art &#8212; like a MAME <code>snap</code> folder &#8212; via <strong>Library &#8594; Import Local Artwork</strong>. Images are matched to your games automatically by file name, so there&#8217;s no renaming and no waiting on a scrape.</li>
                </ul>
                <h3>Fixes</h3>
                <ul>
                    <li><strong>Steam (via Wine) games launching again after a hung Steam.</strong> If you force-quit an unresponsive Steam, clicking Play used to do nothing. NostalgiApp now detects the stuck session and restarts it automatically.</li>
                    <li>Fixed a rotation glitch in the vinyl record screensaver.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.3-b149.dmg"
                sparkle:version="149"
                sparkle:shortVersionString="1.1.0.3"
                length="269822260"
                type="application/octet-stream"
                sparkle:edSignature="cJQPxCshbXnhsAmmd7Y4ENTFoTVR/iu18SLwP59lM3q4wg1uOlAMbf6SfS2Z6eEPp2Z65CFMzDe/NlvAmXMWDw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.2 (Build 148)</title>
            <sparkle:version>148</sparkle:version>
            <sparkle:shortVersionString>1.1.0.2</sparkle:shortVersionString>
            <pubDate>Wed, 17 Jun 2026 10:21:21 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.2</h2>
                <p>Polish for game stores and a more reliable collection setup.</p>
                <h3>Game stores</h3>
                <ul>
                    <li><strong>Installing GOG, Epic, and Amazon games now works reliably.</strong> Choosing &#8220;Install&#8221; opens the game in Heroic ready to download, and once it&#8217;s installed the button switches to Play on its own &#8212; no restart needed. Uninstalling in Heroic updates NostalgiApp too.</li>
                    <li><strong>Amazon Games</strong> libraries now appear alongside your Steam, GOG, and Epic games.</li>
                </ul>
                <h3>Collection setup &amp; repair</h3>
                <ul>
                    <li><strong>No more false &#8220;needs repair&#8221; prompts.</strong> The check that decides whether your DOS game files are complete is now accurate.</li>
                    <li>Setup and repair show live progress with a Cancel button, can no longer hang on a damaged download or a disconnected drive, and now warn you clearly when an archive needs re-downloading.</li>
                    <li>Repairing is much faster &#8212; it copies only the missing game folders instead of re-scanning your whole collection.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.2-b148.dmg"
                sparkle:version="148"
                sparkle:shortVersionString="1.1.0.2"
                length="269680063"
                type="application/octet-stream"
                sparkle:edSignature="u9D7gxDb04UUzvFJpTydFOKlhT1S0wLQuhV26xiLayreXoVq2xIFCsDV8olLUlr59nVPX55xuAiFyuR1ZZlsAw=="
            />
        </item>
        <item>
            <title>Version 1.1.0.1 (Build 147)</title>
            <sparkle:version>147</sparkle:version>
            <sparkle:shortVersionString>1.1.0.1</sparkle:shortVersionString>
            <pubDate>Mon, 15 Jun 2026 16:26:44 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0.1</h2>
                <p>A quick fix on top of 1.1.0.</p>
                <ul>
                    <li><strong>Fixed an Uninstall issue for store games.</strong> Uninstalling a Steam game now hands off to Steam itself, and games from GOG, Epic, the Mac App Store, and Windows/Wine are managed by their own apps — NostalgiApp no longer tries to remove their files directly.</li>
                    <li>Tidied up the storefront &#8220;Windows&#8221; label so it no longer overlaps with eXo Windows titles in the sidebar.</li>
                </ul>
                <p><em>Your eXo and ROM collections are untouched.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0.1-b147.dmg"
                sparkle:version="147"
                sparkle:shortVersionString="1.1.0.1"
                length="269608801"
                type="application/octet-stream"
                sparkle:edSignature="sfRFh+HfY7mc1O5vgCesJbvCcMmCOks5uFSTqinfUHlRcakGnFCFGEmdAlstgdXr26Zeo/RUBVctkwYsJw+SAA=="
            />
        </item>
        <item>
            <title>Version 1.1.0 (Build 146)</title>
            <sparkle:version>146</sparkle:version>
            <sparkle:shortVersionString>1.1.0</sparkle:shortVersionString>
            <pubDate>Mon, 15 Jun 2026 10:53:09 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.1.0 — The Everything Library</h2>
                <p><strong>Your whole game collection — retro and modern — finally in one place.</strong></p>
                <h3>All your libraries, one app</h3>
                <ul>
                    <li><strong>Steam, GOG, Epic, and Mac App Store</strong> games now appear right alongside your eXo and ROM collections — installed <em>and</em> owned-but-not-installed.</li>
                    <li>Uninstalled games show an <strong>&#8220;Install via Steam/GOG/Epic&#8221;</strong> button that hands off to the right store. Hide them anytime with the &#8220;Installed only&#8221; filter.</li>
                    <li>Cover art for storefront games is fetched and cached locally, so browsing stays fast.</li>
                </ul>
                <h3>Run Windows games</h3>
                <ul>
                    <li>NostalgiApp can launch Windows games through the <strong>Game Porting Toolkit / Wine</strong>, with DirectX accelerated to Metal where available.</li>
                    <li><strong>No extra software required:</strong> in Settings &#8594; Windows Games, tap <strong>Download built-in Windows runtime</strong> and NostalgiApp fetches Apple's Game Porting Toolkit for you. Already have CrossOver, Whisky, or Heroic? It uses those automatically.</li>
                    <li>Point at any Windows <code>.exe</code> to add it to your library, each in its own isolated prefix.</li>
                </ul>
                <h3>A friendlier start</h3>
                <ul>
                    <li><strong>First launch no longer requires an eXo collection.</strong> A new welcome hub lets you jump straight in with your eXo games, ROMs, or store libraries — whatever you have. Re-open it anytime from Help &#8594; Getting Started.</li>
                </ul>
                <h3>Good to know</h3>
                <ul>
                    <li>NostalgiApp works <em>with</em> your existing launchers — it reads your installed games and launches them through Steam and Heroic, so your accounts, saves, and downloads stay where they are.</li>
                    <li><strong>GOG and Epic</strong> libraries come from <strong>Heroic</strong> — install Heroic and they'll appear automatically.</li>
                    <li>Want your <em>entire</em> owned Steam library (not just installed games)? Connect it with a free Steam key in Settings &#8594; Stores — see the <a href="https://www.nostalgi.app/guide">guide</a> for the quick steps.</li>
                    <li>Games with kernel-level anti-cheat (many online shooters) can't run under this kind of translation.</li>
                </ul>
                <p><em>Your existing eXo and ROM collections are untouched — everything you have keeps working exactly as before.</em></p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.1.0-b146.dmg"
                sparkle:version="146"
                sparkle:shortVersionString="1.1.0"
                length="269593997"
                type="application/octet-stream"
                sparkle:edSignature="xjcx+kfGe1R5aNiXcOToKGsQ/5U8dtD0O1oYTRZ2wj9pnMSc5QSae7kLgdEk6W7yrMeiFO2xdACAotrWi8xqCQ=="
            />
        </item>
        <item>
            <title>Version 1.0.9.1 (Build 145)</title>
            <sparkle:version>145</sparkle:version>
            <sparkle:shortVersionString>1.0.9.1</sparkle:shortVersionString>
            <pubDate>Sun, 07 Jun 2026 14:43:37 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.9.1</h2>
                <ul>
                    <li><strong>New Timeline view.</strong> Browse your library by release year — a histogram shows how many games shipped each year; drag the playhead through the decades to see what came out when.</li>
                    <li><strong>Polish:</strong> the library toolbar now blends with the dynamic per-game background instead of a separate opaque bar.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.9.1-b145.dmg"
                sparkle:version="145"
                sparkle:shortVersionString="1.0.9.1"
                length="269153218"
                type="application/octet-stream"
                sparkle:edSignature="mbfvXcx6qp96SKfylwACQnUQZDAycxw4qRh0gRemfLqiQpD3soFeA5IcoNhttE5bqLMjiYEqkLRT066Ihxv2Dw=="
            />
        </item>
        <item>
            <title>Version 1.0.9 (Build 144)</title>
            <sparkle:version>144</sparkle:version>
            <sparkle:shortVersionString>1.0.9</sparkle:shortVersionString>
            <pubDate>Sun, 07 Jun 2026 02:57:28 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.9 — The Visual Update</h2>
                <ul>
                    <li><strong>Museum Mode.</strong> A full-screen exhibit for any game — box front and back (tap to flip), screenshots, the manual, cart and disc art, developer history, and the soundtrack with a clickable track list.</li>
                    <li><strong>Shelf Mode.</strong> A new view that stands your boxes upright on wooden shelves, like a real collection.</li>
                    <li><strong>Nocturne theme.</strong> A calm, dark theme that puts a soft spotlight on your artwork.</li>
                    <li><strong>Dynamic backgrounds.</strong> The window glows with a soft, blurred wash of the selected game's art. Turn it on or off in Settings &#8594; Theme.</li>
                    <li><strong>Platform accent colours.</strong> The interface tints to match what you're browsing — amber for DOS, red for Nintendo, cyan for Sega, and more. Toggle it in Settings &#8594; Theme.</li>
                    <li><strong>Coverflow spotlight.</strong> The focused cover stays in full colour while the rest fade to black &amp; white.</li>
                    <li><strong>Redesigned, tabbed game details</strong>, a <strong>now-playing mini player</strong> with cover art, and polish throughout.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.9-b144.dmg"
                sparkle:version="144"
                sparkle:shortVersionString="1.0.9"
                length="269068211"
                type="application/octet-stream"
                sparkle:edSignature="3J6EA9VGDJ1Yd09Dlv6z1A3bzPQOggzNRqt2ahSdjaasG829eCjT8on8JD99wRMQLa4fYuaFNAHYgW1Et4xQCA=="
            />
        </item>
        <item>
            <title>Version 1.0.8.9.4 (Build 143)</title>
            <sparkle:version>143</sparkle:version>
            <sparkle:shortVersionString>1.0.8.9.4</sparkle:shortVersionString>
            <pubDate>Sun, 24 May 2026 17:17:31 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.9.4</h2>
                <ul>
                    <li><strong>Scraping a ROM now fills in genre, developer, publisher and release year</strong> — not just the box art. Your console and arcade games show full details and appear under the sidebar filters automatically. Works for a single game or a whole platform at once.</li>
                    <li><strong>No more freezing when you select a game.</strong> Picking a game from a large library — especially on an external drive — is now instant.</li>
                    <li><strong>Smoother iCloud sync.</strong> Fixed the periodic slowdowns that could happen while your favorites and play data synced between Macs.</li>
                    <li><strong>Faster launch after scraping.</strong> Adding artwork or details no longer makes the next launch reload your whole library.</li>
                    <li><strong>More reliable license activation.</strong></li>
                    <li><strong>TNM 7 and Next Manager 7 now launch correctly.</strong></li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.9.4-b143.dmg"
                sparkle:version="143"
                sparkle:shortVersionString="1.0.8.9.4"
                length="268706083"
                type="application/octet-stream"
                sparkle:edSignature="mf3Z9HXIQfEYnc+21S+F4Llq1XEx8E/ayL9tdUnu5Dp4hgEsImpDgELuH9rCmWrzHYW3Y8IzsXJOgWSSQKTXCA=="
            />
        </item>
        <item>
            <title>Version 1.0.8.9.3 (Build 142)</title>
            <sparkle:version>142</sparkle:version>
            <sparkle:shortVersionString>1.0.8.9.3</sparkle:shortVersionString>
            <pubDate>Mon, 18 May 2026 04:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.9.3</h2>
                <ul>
                    <li><strong>Many DOS games no longer freeze DOSBox on launch.</strong> Doom, Indiana Jones LC, Star Trek TNG and others.</li>
                    <li><strong>Indiana Jones LC launches with the right variant again.</strong></li>
                    <li><strong>Wine-only eXoDOS games show a clean message instead of hanging</strong> (Descent to Undermountain, TNM 7, Cosmic Sheriff, Sierra Network).</li>
                    <li><strong>Play menu opens instantly on large libraries.</strong></li>
                    <li><strong>Detail view paints faster.</strong></li>
                    <li><strong>Loom CD variant is labeled correctly.</strong></li>
                    <li><strong>Log upload errors are clearer.</strong></li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.9.3-b142.dmg"
                sparkle:version="142"
                sparkle:shortVersionString="1.0.8.9.3"
                length="268651212"
                type="application/octet-stream"
                sparkle:edSignature="KLHXw5iYxOE0/ODa1pbWx/YWOP9scxmCPLtgMgwhlilPyX5RJoysvUdiXQUrqdECZy3oPZvGZvxyXyT1xk8UCw=="
            />
        </item>
        <item>
            <title>Version 1.0.8.9.2 (Build 141)</title>
            <sparkle:version>141</sparkle:version>
            <sparkle:shortVersionString>1.0.8.9.2</sparkle:shortVersionString>
            <pubDate>Sat, 16 May 2026 15:50:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.9.2</h2>
                <p>Many more Windows 3.x games show as Available, plus a working Discord invite. Build 141 reverts the Build 140 Dock-icon change.</p>
                <ul>
                    <li><strong>Windows 3.x library: ~160 more games now show as Available.</strong> Around 14% of eXoWin3x titles were stuck on &ldquo;Not Available&rdquo; even when the archive was sitting right next to them. The Win3x archives are named after the launcher .bat inside the script folder (not after the game folder), and the same was true for eXoWin9x, eXoIF, eXoDemoScene and eXoAppleIIGS &mdash; we now match that pattern. After updating, a silent background rescan flips affected games to Available automatically.</li>
                    <li><strong>Discord invite link refreshed.</strong> The previous Discord link in the Help menu and on the website had expired. New permanent invite: <a href="https://discord.gg/RGy5uc23MG">discord.gg/RGy5uc23MG</a>.</li>
                    <li><strong>Build 141: Dock icon restored.</strong> The Build 140 attempt to inset the icon for Dock magnification caused a white border around it. Reverted &mdash; icon now looks the way it did before.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.9.2-b141.dmg"
                sparkle:version="141"
                sparkle:shortVersionString="1.0.8.9.2"
                length="268616502"
                type="application/octet-stream"
                sparkle:edSignature="15acLQS64OJD4WYR4eI0TPqewbeZvNUxmhWMha3s/Ex3hLlnCFgh2wNY5FUEadLfzrvcYQIm61EUHhJjbJZtDg=="
            />
        </item>
        <item>
            <title>Version 1.0.8.9.1 (Build 139)</title>
            <sparkle:version>139</sparkle:version>
            <sparkle:shortVersionString>1.0.8.9.1</sparkle:shortVersionString>
            <pubDate>Thu, 14 May 2026 00:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.9.1</h2>
                <p>Sound Canvas MIDI music + playlist screensaver fixes.</p>
                <ul>
                    <li><strong>Sound Canvas music plays again.</strong> Games launched with a Sound Canvas variant (Descent, Lands of Lore, and many others) were running silent for some eXoDOS layouts &mdash; DOSBox Staging was set to use the fluidsynth Sound Canvas emulator, but we were looking in the wrong place for the SoundFont file. We now check the standard eXoDOS torrent location (<code>eXo/mt32/</code>), the older alternate location, and DOSBox Staging's own soundfonts folder. MT-32 ROM lookup benefits from the same fix.</li>
                    <li><strong>Soundtrack screensaver works for playlists too.</strong> Playing a playlist used to fall through to your default screensaver instead of the soundtrack slideshow. Now the mosaic gathers covers + linked-game art across every album in the playlist (albums without linked games no longer disappear), and the spinning vinyl label tracks whatever song is currently playing rather than staying pinned to the first album.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.9.1-b139.dmg"
                sparkle:version="139"
                sparkle:shortVersionString="1.0.8.9.1"
                length="268617724"
                type="application/octet-stream"
                sparkle:edSignature="29aFSyYaFx1j/LGNYi4TqJh1N8j8+OFbYU5C6fDy6rG8ARQKq7fePULkL7sO8HPBf6am9nUlRd86ZDCQUZ7GDA=="
            />
        </item>
        <item>
            <title>Version 1.0.8.9 (Build 138)</title>
            <sparkle:version>138</sparkle:version>
            <sparkle:shortVersionString>1.0.8.9</sparkle:shortVersionString>
            <pubDate>Mon, 11 May 2026 14:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.9</h2>
                <p>Build your own playlists from any imported soundtrack, plus two long-standing fixes for DOS games.</p>
                <ul>
                    <li><strong>New: Music playlists.</strong> A new Playlists section under Soundtracks lets you build playlists from tracks across any of your imported albums. Right-click any track in an album and choose &ldquo;Add to Playlist&hellip;&rdquo; to drop it into an existing playlist or create a new one. The playlist detail view has Play All, reorder via the per-track menu, a cover collage built from up to four of the included albums, missing-track handling for albums that have moved, and Export as M3U if you want to take the playlist elsewhere.</li>
                    <li><strong>Genewars (and other absolute-path DOS games) launch correctly.</strong> Around 80% of eXoDOS games mount C: at the game's own folder; we were always mounting at the eXoDOS root and changing in. Most titles got away with it because they only used relative paths. Genewars and similar 1990s games hardcode <code>C:\GENEWARS\</code> in their config files &mdash; with the wrong mount, those references pointed nowhere and the game silently sat at a black screen. We now read the original config and mirror its mount level.</li>
                    <li><strong>Lands of Lore: Guardians of Destiny audio variants play.</strong> The SoundBlaster, MT-32, Sound Canvas, and CD Audio versions had no working directory recorded in our database, so the launcher couldn't find <code>LOLG.EXE</code> and assumed it was on the disc. All six variants now correctly launch from <code>WESTWOOD\LOLG3D</code>.</li>
                    <li><strong>Launch picker no longer shows duplicate versions.</strong> King's Quest VI and similar Sierra titles were listing the same launch option twice in the version chooser. Cleaned up.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.9-b138.dmg"
                sparkle:version="138"
                sparkle:shortVersionString="1.0.8.9"
                length="268629279"
                type="application/octet-stream"
                sparkle:edSignature="DXjjNjNnXdSzByaZXhAl+fGDcRjTsOVLQE+W/Nlzk6avj8IBoAHyHG9GZRxpuOeK7YeLporXJy9NCYbh8objDA=="
            />
        </item>
        <item>
            <title>Version 1.0.8.8.10 (Build 137)</title>
            <sparkle:version>137</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.10</sparkle:shortVersionString>
            <pubDate>Sat, 09 May 2026 04:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.10</h2>
                <p>Three fixes for art, CD games, and first-time eXoDOS setup.</p>
                <ul>
                    <li><strong>CD-mounted DOS games launch again.</strong> Titles whose <code>dosbox.conf</code> mounts a CD image with a quoted path (Metal Slug DOS port and likely a long tail of others) were quitting back to your Mac in three seconds. The path-rewriter now handles quoted CUE/ISO mounts cleanly.</li>
                    <li><strong>Cover art lines up with the right game.</strong> Series like Mega Man and Super Mario Bros sometimes showed a different game's box art &mdash; picked at random across launches. Image lookup is now an exact match instead of substring, with deterministic iteration order, so &ldquo;Mega Man&rdquo; gets Mega Man's art (not Mega Man 2's), and &ldquo;Mega Man 5&rdquo; doesn't get poached by lookalike titles.</li>
                    <li><strong>First-time eXoDOS setup runs reliably.</strong> Pointing NostalgiApp at a freshly-extracted eXoDOS torrent (with the metadata zips waiting in <code>Content/</code>) was being rejected as &ldquo;Missing required folders&rdquo; instead of triggering setup. And on network/NAS shares a stale internal &ldquo;already extracted&rdquo; marker would silently skip the actual extraction step, leaving the library permanently empty. Both fixed &mdash; first-time setup now Just Works on local drives, external drives, and NAS shares.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.10-b137.dmg"
                sparkle:version="137"
                sparkle:shortVersionString="1.0.8.8.10"
                length="268339718"
                type="application/octet-stream"
                sparkle:edSignature="ZfaNceJxe6dAZPua/J2FNBl6azZzL1UaHBtiwSgigzUym59Ob7a7gUhadhYRN0htow7L+uvIsXDq6Hh0Cl2YDg=="
            />
        </item>
        <item>
            <title>Version 1.0.8.8.9 (Build 135)</title>
            <sparkle:version>135</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.9</sparkle:shortVersionString>
            <pubDate>Fri, 08 May 2026 17:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.9</h2>
                <p>A new screensaver for your soundtracks, search across albums and songs, and proper macOS media-key support.</p>
                <ul>
                    <li><strong>New: Soundtrack screensaver.</strong> Whenever you're playing an imported album, the screensaver switches into a dedicated soundtrack mode &mdash; a slow mosaic of artwork from games linked to that album, a spinning vinyl with the album cover as the label, marquee track title, LED-style time readout, and a Winamp-style visualizer with peak-hold caps and a mirrored reflection. NostalgiApp branding cycles between the four corners. Auto-activates while a soundtrack is playing, regardless of your configured screensaver mode.</li>
                    <li><strong>Search now works in Soundtracks.</strong> The search bar was inert on the Soundtracks tab. Typing now filters the album grid by title and surfaces individual matching songs in a separate list &mdash; cover thumbnail, track title, parent album, and a play button per row. Click the album name on a song row to jump to its details.</li>
                    <li><strong>Media keys + macOS Now Playing.</strong> Play/pause, next, previous, and the scrubber on the Touch Bar / function-key row now control NostalgiApp playback. Control Center's Now Playing widget shows the current track, album, elapsed time, and album cover.</li>
                    <li><strong>Selecting a game autoplays its linked album.</strong> If you've linked an imported soundtrack to a game, picking that game now plays your linked album instead of only the eXoDOS-bundled music. The choice respects the existing &ldquo;autoplay on select&rdquo; toggle in Settings.</li>
                    <li><strong>Performance: soundtrack scanning is off the main thread.</strong> First-launch scans on slow drives were causing brief 300ms hangs. Bookmark resolution + folder enumeration now run in the background; the UI stays responsive throughout.</li>
                    <li><strong>Screensaver polish.</strong> Pausing playback via media keys no longer dismisses the soundtrack screensaver &mdash; only stopping or unloading the playlist does. Killing and relaunching the app while the screensaver was already up no longer flashes the screensaver briefly on top of the splash.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.9-b135.dmg"
                sparkle:version="135"
                sparkle:shortVersionString="1.0.8.8.9"
                length="268334271"
                type="application/octet-stream"
                sparkle:edSignature="BSViaa7scorGUS5pP9gDNf82RB0YcZz/rtueKVImXGPmtJENYZcAhcKEKSxSk3BvN53Wk3jGFH9KTmqhwZHKBA=="
            />
        </item>
        <item>
            <title>Version 1.0.8.8.8 (Build 131)</title>
            <sparkle:version>131</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.8</sparkle:shortVersionString>
            <pubDate>Thu, 07 May 2026 12:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.8</h2>
                <p>Performance, polish, and a fix for cover-disk magazines.</p>
                <ul>
                    <li><strong>Search no longer beachballs.</strong> Typing in the search bar on large libraries was occasionally locking the UI for a second or two. Group rebuilds now skip a redundant title-normalisation pass — the lag is gone.</li>
                    <li><strong>Library scans don't freeze the app on slow drives.</strong> The background &ldquo;is this game installed?&rdquo; check used to read folders one-by-one on the main thread. On external USB drives this could stall the whole window for 10+ seconds. Moved fully off-main.</li>
                    <li><strong>Music player gets a seek bar.</strong> Drag through the empty space in the player to jump to any point in the current track. Tooltips on every button explain what they do (including the cryptic Autoplay one).</li>
                    <li><strong>Cover-disk magazines now play.</strong> Hitting Play on an interactive issue (PC Gamer, Big Blue Disk, etc.) used to drop you in Finder. Now it boots DOSBox Staging into the magazine's cover disk — Windows&nbsp;3.1 launchers, mounted CD images, and all.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.8-b131.dmg"
                sparkle:version="131"
                sparkle:shortVersionString="1.0.8.8.8"
                length="268064634"
                type="application/octet-stream"
                sparkle:edSignature="ws9sglpowsMj2CVpxC0AC+cqobyjb16GoOZO0hAizB/4o6lyfGd6SjlHlILzXtIgFD4DBkx3rACBDX08U7n9BQ=="
            />
        </item>
        <item>
            <title>Version 1.0.8.8.7 (Build 130)</title>
            <sparkle:version>130</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.7</sparkle:shortVersionString>
            <pubDate>Thu, 07 May 2026 00:45:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.7</h2>
                <p>Two follow-ups to the Music Update.</p>
                <ul>
                    <li><strong>Soundtracks: tracks refresh when switching between albums.</strong> Clicking from one album to another in the Soundtracks pane sometimes showed &ldquo;No audio files found in this folder.&rdquo; Fixed &mdash; each album now mounts cleanly with its own track list. The previous workaround (clicking another sidebar item and coming back) is no longer needed.</li>
                    <li><strong>Drag-and-drop knows when you mean music.</strong> Dropping a folder of audio files onto the window opens the Soundtrack import sheet pre-filled with the folder and a default title (used to always open the ROM import wizard). Dropping any folder onto the Soundtracks sidebar item or the Soundtracks grid does the same, regardless of contents.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.7-b130.dmg"
                sparkle:version="130"
                sparkle:shortVersionString="1.0.8.8.7"
                length="268096796"
                type="application/octet-stream"
                sparkle:edSignature="wLsL75n06UvPkpV6IsYWVTmGQ2z9CeZ+prz/Tu0XDHCBLE/l2j8n73d8ZQoXJu6q4QTaoP5ielpztTlmup/hDw=="
            />
        </item>
        <item>
            <title>Version 1.0.8.8.6 (Build 128) — The Music Update</title>
            <sparkle:version>128</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.6</sparkle:shortVersionString>
            <pubDate>Wed, 06 May 2026 21:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.6 — The Music Update</h2>
                <p>A whole new place in the sidebar for the music you bring yourself. Pair your favorite OSTs, CD rips, or fan remixes with games and listen as you browse.</p>
                <ul>
                    <li><strong>New: Soundtracks library.</strong> Click <em>Soundtracks</em> in the sidebar and import a folder of music. Multi-disc albums via <em>Add Disc&hellip;</em>. Your audio files stay where they are — NostalgiApp keeps a reference, never copies them.</li>
                    <li><strong>Link albums to games.</strong> An imported album can be tied to one or more games. The game's music button then plays your album instead of any eXoDOS-bundled track. Unlink from either side, with confirmation.</li>
                    <li><strong>Cover art auto-fills from your audio.</strong> Skip the cover-image picker and NostalgiApp checks the audio metadata (ID3, iTunes, FLAC) for embedded album art and uses it automatically. Override anytime.</li>
                    <li><strong>Imported albums in the ambient shuffle.</strong> The random 20-track background mix pulls from both the eXo Media Pack and your imported albums. Add a new album mid-session and the rotation refreshes — no restart needed.</li>
                    <li><strong>Faster startup on Lite collections.</strong> The download-size index parse now runs off the main thread, removing a 300–700ms stall during library loading.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.6.dmg"
                sparkle:version="128"
                sparkle:shortVersionString="1.0.8.8.6"
                length="268032118"
                type="application/octet-stream"
                sparkle:edSignature="P5AOUa85I0Kn5H7hnJrftaYmg6mZ8JQWeWNijAcblK159ERU0Q/aBMVGqRWy6IbfSMP6h+WXCgZiL9rNSyp1Dw==" />
        </item>

        <item>
            <title>Version 1.0.8.8.5 (Build 127)</title>
            <sparkle:version>127</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.5</sparkle:shortVersionString>
            <pubDate>Mon, 04 May 2026 09:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.5 (Build 127)</h2>
                <ul>
                    <li><strong>Copy-protected Windows 9x games now launch.</strong> Titles like <em>The Unexplained</em> that use C-Dilla CD protection now boot through to gameplay instead of erroring out at launch.</li>
                    <li><strong>Each Windows 9x game launches in a clean state.</strong> Desktop shortcuts and display settings from a previous game no longer carry over into the next — every launch starts with a fresh Windows 98 environment.</li>
                    <li><strong>Setup → Uninstall works on Windows 9x titles.</strong> Previously the uninstall would silently fail with "Game folder not found" for some games whose release year on disk didn't match the catalog year.</li>
                    <li><strong>Smoother window resizing.</strong> Resizing the main window after scrolling through the grid is back to being smooth instead of sluggish.</li>
                    <li>Plus a few smaller Windows 9x cleanup tweaks under the hood.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.5.dmg"
                sparkle:version="127"
                sparkle:shortVersionString="1.0.8.8.5"
                length="267547998"
                type="application/octet-stream"
                sparkle:edSignature="MPowx+yEysVt/suY0ja9olvjSiX9jhyBRm7dO5tHQqAW6ABU0GdMEZNuNV+Nhbs6FPNmfXzD/IZdD8p0smYFAg==" />
        </item>

        <item>
            <title>Version 1.0.8.8.4 (Build 126) — The Speed Update</title>
            <sparkle:version>126</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.4</sparkle:shortVersionString>
            <pubDate>Fri, 02 May 2026 01:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.4 — The Speed Update</h2>
                <p>Top-to-bottom performance pass focused on huge libraries and slower drives. If you've been on a 50,000+ game collection or running off an external drive and felt scrolling get sticky lately, this release is for you.</p>
                <ul>
                    <li><strong>Smooth scrolling at any library size.</strong> Tested on a 55,000-game collection on an external drive: roughly <em>10× less main-thread stalling</em> in a hard scroll session. The grid, list, and Coverflow views all benefit.</li>
                    <li><strong>Image lookups now happen in the background.</strong> Cover art is fetched off the main thread, so disk reads never block scrolling — even when the thumbnail cache is cold or the collection lives on slow storage.</li>
                    <li><strong>Right-click menus stay snappy.</strong> The <em>Delete All Images</em> dialog and <em>View Images</em> sheet no longer scan the disk on every redraw — they only do the work when you actually open them.</li>
                    <li><strong>Faster startup status check.</strong> The post-launch installation check that scans your eXoDOS folder no longer fires hundreds of UI updates while it runs; the library settles in one update at the end.</li>
                    <li><strong>Lighter sidebar.</strong> The Favorites count uses a direct counter instead of filtering the whole library on every render.</li>
                    <li><strong>Caches kept warmer.</strong> Image folder listings, per-game image sets, and platform-category checks are all memoized now, so the same lookup never pays the same cost twice.</li>
                </ul>
                <p>No feature changes — just speed.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.4.dmg"
                sparkle:version="126"
                sparkle:shortVersionString="1.0.8.8.4"
                length="267532574"
                type="application/octet-stream"
                sparkle:edSignature="Mx8V8VVIqOgArV07EpBGxOmL0mLpP/U1mST1CnRxbxKrg0IMDXLhMGcdIoWIOysZ2hTijyv3JPB0Rs0WpGrZDQ==" />
        </item>

        <item>
            <title>Version 1.0.8.8.3 (Build 125)</title>
            <sparkle:version>125</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.3</sparkle:shortVersionString>
            <pubDate>Thu, 30 Apr 2026 23:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.3 (Build 125)</h2>
                <ul>
                    <li><strong>Box art shows whole, not cropped.</strong> The grid and Coverflow now display the entire box image inside its platform-shaped frame instead of clipping the parts that don't match. Portrait DOS jewel cases stopped losing their top edges, landscape SNES close-ups stopped losing their sides. Letterbox/pillarbox space is transparent so the card material shows through.</li>
                    <li><strong>Hover doesn't shove the box upward.</strong> The frosted-glass overlay used when you hover a grid card was inflating the cell and pushing the box art to the top of an oversized stack. The overlay is now pinned to the box-art frame, so hovering just frosts the image in place.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.3.dmg"
                sparkle:version="125"
                sparkle:shortVersionString="1.0.8.8.3"
                length="267511180"
                type="application/octet-stream"
                sparkle:edSignature="9P+T5UCurPxG/26bdTSaZmrR/9LmNsd6JT1Tmx4jpU+KujeJOjXXtWaUsuZHpYcxy/zRrcoZ/l628iSzHnv0CA==" />
        </item>

        <item>
            <title>Version 1.0.8.8.2 (Build 124)</title>
            <sparkle:version>124</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.2</sparkle:shortVersionString>
            <pubDate>Thu, 30 Apr 2026 19:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.2 (Build 124)</h2>
                <ul>
                    <li><strong>iCloud Sync now works in the published release.</strong> The previous DMG could turn the toggle on but every iCloud action would silently fail in the background. Sync your favorites, play stats, notes, ratings, progress, custom playlists, ROM metadata edits, and emulator save games across every Mac signed into your Apple ID.</li>
                    <li><strong>ROM scrapes pick the right title.</strong> Some sequels (e.g. <em>Super Mario Bros. 3</em>, <em>Mega Man 4</em>) were silently scraping the original game in the series. The matcher now respects punctuation differences and trailing sequel numbers, and applies to both ROM Import and the per-game <em>Scrape Metadata</em> button.</li>
                    <li><strong>Delete All Images &rarr; Scrape Metadata actually refreshes everything.</strong> Previously the new art only showed in the side panel — the grid tile and the gallery thumbnails kept the old art until you restarted the app. Now all three update together.</li>
                    <li><strong>Spotlight launches the game.</strong> Selecting a NostalgiApp result from Spotlight now actually opens the matching game instead of just bringing the app to the foreground.</li>
                    <li><strong>Menu bar refreshes correctly.</strong> Recently Played and Favorites in the status-bar menu now reflect the current state every time you open the menu, and Favorites are sorted alphabetically. <em>Settings…</em> from the status-bar menu opens reliably.</li>
                    <li><strong>Genre sort button is clickable again.</strong> The Alphabetical / Most Games sort menu in the sidebar's Genres header was being overlapped by the macOS scroll-bar gutter, so clicks landed on the scrollbar instead of the menu.</li>
                    <li><strong>Manual RetroAchievements match.</strong> If automatic matching picked the wrong game, the game detail view now has a per-game RetroAchievements ID override editor. The override syncs via iCloud.</li>
                    <li><strong>Edit Metadata wizard step lives up to its name.</strong> ROM Import's <em>Edit Metadata</em> step now covers Title, Publisher, Developer, Year, and Genre — both per-row (pencil button on each ROM) and as a batch sheet via <em>Edit Selected</em>. Imported ROMs write the values into the platform XML so they survive without scraping.</li>
                    <li><strong>Drag &amp; drop ROMs and multi-select files.</strong> Drop ROMs (or whole folders) onto the main window and the ROM Import wizard picks up automatically. The folder picker now also accepts files, folders, or any combination of both.</li>
                    <li><strong>Box art aspect ratios.</strong> SNES, Game Boy, NES, Genesis, jewel cases, big-box DOS, and Apple II all draw with their natural shape now instead of being squished into a one-size-fits-all portrait frame.</li>
                    <li><strong>Toolbar adapts to narrow windows.</strong> Resizing the window narrower used to clip the title count, sort picker, and grid-size button past the left and right edges. The view-mode tabs now jump to their own row when there isn't enough horizontal space.</li>
                    <li><strong>Drag-to-install DMG.</strong> The disk image now opens with the app on the left and an Applications shortcut on the right, so installation is one drag.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.2.dmg"
                sparkle:version="124"
                sparkle:shortVersionString="1.0.8.8.2"
                length="267512791"
                type="application/octet-stream"
                sparkle:edSignature="gxT3zHXpy1W05wmejpSO40kzaTmu8m6m/hZipdJzHDq4ZG2tzDZ1Y+XzH+rhI4LTN2IyRnMJdGHpc+EP8rFcBg==" />
        </item>

        <item>
            <title>Version 1.0.8.8.1 (Build 120)</title>
            <sparkle:version>120</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8.1</sparkle:shortVersionString>
            <pubDate>Mon, 27 Apr 2026 20:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8.1 (Build 120)</h2>
                <ul>
                    <li><strong>Fixed:</strong> eXoWin9x games now launch correctly on external drives formatted with case-sensitive filesystems. If Windows booted but stopped with a <em>Path not found</em> error from <code>Setup.vbs</code> before the game appeared, this update resolves it.</li>
                    <li>The same case-sensitivity fix applied to eXoWin3x DOSBox Staging launches and the ScummVM game database lookup.</li>
                    <li><strong>New:</strong> opt-in <em>Win9x launch debug capture</em> toggle under <em>Settings &rarr; Diagnostic Logging</em>. When on, captures the source DOSBox-X config, the generated config, the launch script, and intermediate variables to <code>~/Library/Logs/NostalgiApp/</code> and pauses Terminal before and after launch so you can inspect output. Off by default — enable only if support asks.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.1.dmg"
                sparkle:version="120"
                sparkle:shortVersionString="1.0.8.8.1"
                length="295866337"
                type="application/octet-stream"
                sparkle:edSignature="R8VheJzTtxhMoMqBbFN16HOB1nDAz62cjwEaEDGyCxNR+uoResUOqarZ2YSc499+TWvAexIvPy86XqCgBkBaCw==" />
        </item>

        <item>
            <title>Version 1.0.8.8 (Build 119)</title>
            <sparkle:version>119</sparkle:version>
            <sparkle:shortVersionString>1.0.8.8</sparkle:shortVersionString>
            <pubDate>Mon, 27 Apr 2026 14:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.8 (Build 119)</h2>
                <ul>
                    <li><strong>iCloud Sync.</strong> Your favorites, play counts, play time, last-played dates, notes, star ratings, progress, custom playlists, ROM metadata edits, and emulator save games now sync across every Mac signed into your Apple ID. Turn it on in <em>Settings &rarr; General &rarr; iCloud Sync</em>. Game files, images, and emulator settings stay local.</li>
                    <li><strong>Edit Metadata in Batch Operations.</strong> Set Genre, Publisher, or Developer on many ROM games at once: <em>Library &rarr; Batch Operations&hellip;</em> &rarr; pick <em>Edit Metadata (ROMs only)</em>, fill any of the three fields, hit Execute. Leaving a field blank leaves it alone.</li>
                    <li><strong>Sortable Genres sidebar.</strong> The old split between eight featured genres and a "More genres" disclosure is gone. Genres are now one consolidated list, with a sort toggle in the section header — Alphabetical (default) or Most Games.</li>
                    <li><strong>Batch Operations menu moved.</strong> Now under <em>Library</em> (was under <em>Game</em>). Keyboard shortcut is unchanged: <span class="kbd">⌘</span>+<span class="kbd">⇧</span>+<span class="kbd">B</span>.</li>
                    <li><strong>Fixed:</strong> right-clicking a ROM game and choosing <em>Delete All Images&hellip;</em> or <em>View Images</em> no longer silently does nothing. The confirmation dialog and image viewer now appear as expected.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.8.dmg"
                sparkle:version="119"
                sparkle:shortVersionString="1.0.8.8"
                length="297199883"
                type="application/octet-stream"
                sparkle:edSignature="d7uO6dhZAOKWLwhYXsqnPLcp9neWWPZR52GCQXG+Gz17J5gaRaJSTheLYnkb/AHG922cVagUS2sCWp7I2E5oBA==" />
        </item>

        <item>
            <title>Version 1.0.8.7.14 (Build 118)</title>
            <sparkle:version>118</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.14</sparkle:shortVersionString>
            <pubDate>Sun, 26 Apr 2026 10:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.14 (Build 118)</h2>
                <ul>
                    <li>Sierra-style CD reissues like <em>Jones in the Fast Lane (Enhanced CD-ROM)</em> now launch correctly when the game's wrapper batch lives in a disk subfolder rather than on the CD.</li>
                    <li>Picking a specific audio variant (Game Blaster, Sound Blaster, MT-32, etc.) from a game's launch menu now respects that choice. The launcher follows the game's own <code>run.bat</code> menu options, including the in-DOSBox audio configuration the eXo authors set up for that variant.</li>
                    <li>Sierra SCI and LucasArts SCUMM games now respect your explicit version pick from the eXoDOS launch menu instead of always rerouting to ScummVM. The recommendation is informational only — install eXoScummVM as a separate collection if you want the ScummVM versions.</li>
                    <li>Screensaver auto-fires after the configured idle timeout. The setting (1 / 2 / 5 / 10 / 15 / 30 minutes) is in <em>Settings &rarr; Screensaver</em> and now actually does something.</li>
                    <li>Cleaned up two sources of misleading log spam: cancelled RetroAchievements lookups (when you scroll past a game before its lookup finishes) and 30-second "no emulator process found" warnings after playing a soundtrack or video extra.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.14.dmg"
                sparkle:version="118"
                sparkle:shortVersionString="1.0.8.7.14"
                length="297478880"
                type="application/octet-stream"
                sparkle:edSignature="C5xf3wVIyukADd6Or8TDDZ+QMPxUeZ0WkSOe6CukcPTGuj9IJgydaUvLGqUup1nydA7rABkE2OYvuhwqNW1xCw==" />
        </item>

        <item>
            <title>Version 1.0.8.7.13 (Build 117)</title>
            <sparkle:version>117</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.13</sparkle:shortVersionString>
            <pubDate>Sat, 25 Apr 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.13 (Build 117)</h2>
                <ul>
                    <li>Arrow-key navigation in the grid and Coverflow views now works reliably. Previously, focusing the search bar, sidebar, or any sheet could leave arrow keys silently dead until the app was relaunched.</li>
                    <li>Coverflow: more 3D box covers render with their proper transparent silhouette. The fix in 1.0.8.7.12 only healed one image type per game, so games whose grid view used Box-Front kept the older flattened Box-3D in the cache. Existing covers will heal the first time you scroll past them in Coverflow — for an immediate one-shot fix, open Settings &rarr; Storage and click <em>Rebuild 3D Box Thumbnails</em>.</li>
                    <li>RetroAchievements points and rank now refresh after a play session and persist across app launches. (#60)</li>
                    <li>ROM import: importing a folder that contains multiple regional or revision dumps of the same game (Amiga, console No-Intro/TOSEC sets) no longer fires off a separate ScreenScraper request per variant — siblings share a single metadata fetch. New optional <em>Import one version per game</em> toggle on the import wizard's final step keeps just the best dump (USA &gt; World &gt; Europe &gt; Japan, prefers later revisions and verified-good dumps); multi-disc / multi-tape releases are exempt so e.g. Final Fantasy VII Disc 2 is never silently dropped.</li>
                    <li>New <em>Reset Play Stats</em> action, both per-game (right-click on a game) and global (Settings &rarr; General). Wipes play count, total play time, last-played date, and the Recently Played list. Notes, ratings, favorites, and progress are untouched.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.13.dmg"
                sparkle:version="117"
                sparkle:shortVersionString="1.0.8.7.13"
                length="293385723"
                type="application/octet-stream"
                sparkle:edSignature="9n6Tpm/Sx8g9waCChy/qgX2KE0FlB6bu8/Q0gum9N06chIL/46mAHkBV+JGFZSmGYNATIhAm4DniAYX5bYZFAQ==" />
        </item>

        <item>
            <title>Version 1.0.8.7.12 (Build 116)</title>
            <sparkle:version>116</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.12</sparkle:shortVersionString>
            <pubDate>Thu, 23 Apr 2026 00:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.12 (Build 116)</h2>
                <ul>
                    <li>Coverflow: 3D box art renders with its proper transparent silhouette instead of a white rectangle behind it. Existing cached covers fix themselves the first time they appear on screen — no need to clear your thumbnail cache.</li>
                    <li>Smart Collection editor labels are readable when a dark theme is active on macOS Light mode.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.12.dmg"
                sparkle:version="116"
                sparkle:shortVersionString="1.0.8.7.12"
                length="297242414"
                type="application/octet-stream"
                sparkle:edSignature="ZuQS1PSxE3Cueb67hj0R1yOHFjTS2hT88nxvYmJmEDSF/aKjRkFk0LhSgAK6SeuJCZrSwycJ0HQE5tozezgdAA==" />
        </item>

        <item>
            <title>Version 1.0.8.7.11 (Build 115)</title>
            <sparkle:version>115</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.11</sparkle:shortVersionString>
            <pubDate>Wed, 22 Apr 2026 22:50:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.11 (Build 115)</h2>
                <ul>
                    <li>Windows 9x and Windows 3.x games now launch correctly with the bundled DOSBox-X. Previously the launcher could print "DOSBox-X not found" in Terminal even though Settings showed it as detected.</li>
                    <li>Playlists section now appears for eXoDOS Lite installs with a partially-set-up playlists folder. (#51 follow-up)</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.11.dmg"
                sparkle:version="115"
                sparkle:shortVersionString="1.0.8.7.11"
                length="294048468"
                type="application/octet-stream"
                sparkle:edSignature="41NLxVP7EHRxnqCHGWn9Pt30GiQyVMJeQLDgifeKD+UAfBSbJkc+qbI8bQK7wkxzaxjukfgZueVXdkWUEzsyAA==" />
        </item>

        <item>
            <title>Version 1.0.8.7.10 (Build 114)</title>
            <sparkle:version>114</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.10</sparkle:shortVersionString>
            <pubDate>Wed, 22 Apr 2026 20:55:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.10 (Build 114)</h2>
                <ul>
                    <li>Settings &rarr; Emulators &rarr; BIOS now separates required and optional missing files, so the counts match the per-platform indicators. (#59)</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.10-b114.dmg"
                sparkle:version="114"
                sparkle:shortVersionString="1.0.8.7.10"
                length="294050746"
                type="application/octet-stream"
                sparkle:edSignature="fiQdvMDnV4hET8TKu+MjOIQLeIMoZdtMRphI7rtK2YiOyn5m/rFx9sjPpoNBTWot5iBsLDqkgCANXYf1agiGAQ==" />
        </item>

        <item>
            <title>Version 1.0.8.7.10 (Build 113)</title>
            <sparkle:version>113</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.10</sparkle:shortVersionString>
            <pubDate>Wed, 22 Apr 2026 20:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.10 (Build 113)</h2>
                <p>Smart Collections and Playlists feedback sweep.</p>
                <ul>
                    <li>Playlists section now appears for eXoDOS Lite users. (#51)</li>
                    <li>Strategy genre shows its icon in the sidebar. (#52)</li>
                    <li>Smart collections can combine multiple values of the same field &mdash; pick several developers, genres, or decades at once, and they're matched as "any of these". (#53)</li>
                    <li>New "Title contains" smart-collection filter &mdash; e.g. every game whose title includes "Castle". (#55)</li>
                    <li>Create your own playlists: tap <code>+</code> on the Playlists section header, then right-click any game (or a selection) &rarr; <em>Add to Playlist</em>. Right-click a game inside one of your playlists to remove it, and right-click the playlist itself to rename or delete. (#56)</li>
                    <li>Smart Collection editor labels are readable in Light mode. (#57)</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.10.dmg"
                sparkle:version="113"
                sparkle:shortVersionString="1.0.8.7.10"
                length="294624248"
                type="application/octet-stream"
                sparkle:edSignature="W9qQxQe2AxCJvOLH+xAp8nyc4ozJEeO++7qZxoaxSGCywaz8yaie01lsZ7bpE56wCtlgCdzmG2XTBa06QtGGDw==" />
        </item>

        <item>
            <title>Version 1.0.8.7.9 (Build 112)</title>
            <sparkle:version>112</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.9</sparkle:shortVersionString>
            <pubDate>Wed, 22 Apr 2026 08:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.9 (Build 112)</h2>
                <p>Responsiveness + BIOS data + media-playback polish sweep (feedback #48–#50 + Firecraft).</p>
                <ul>
                    <li><strong>No more beach-ball opening the detail view for games on slow external drives.</strong> Two main-thread blockers identified from diagnostic traces: (a) the gallery's video-thumbnail generator called <code>AVAssetImageGenerator.copyCGImage</code> synchronously from a SwiftUI Task that inherited MainActor context — on a slow drive this stalled the UI for 30–100+ seconds; (b) the Play Music button's "does this game have music?" check ran a synchronous filesystem enumeration on every body re-render. Both now run off the main thread via <code>Task.detached</code> and the music check is cached per-game. (reported as Alone in the Dark on Seagate 5TB)</li>
                    <li><strong>Pause media when NostalgiApp is in the background — new Settings toggles.</strong> Detail-view preview video pauses by default when you switch to another app (so the looped clip doesn't keep playing under DOSBox); background music stays playing by default (so the soundtrack keeps going while you're reading in Safari). Both are togglable independently in <em>Settings → Music → Playback behavior</em>.</li>
                    <li><strong>Sidebar section collapse is responsive again.</strong> Previously the chevron required multiple clicks because <code>Button</code> nested inside a macOS <code>List</code> Section header gets its first one or two taps absorbed by the List's row/selection machinery. Replaced with a content-shaped tap region covering the whole chevron + title, and bumped the hit target from 10pt to 12pt.</li>
                    <li><strong>BIOS MD5 corrections matching Libretro.</strong> <code>bios7.bin</code> (Nintendo DS) corrected to <code>df692a80a5b1bc90728bc3dfc76cd948</code> (#49). <code>dc_flash.bin</code> (Sega Dreamcast) corrected to <code>0a93f7940c455905bea6e392dfde92a4</code> and flipped to optional since flycast_libretro doesn't actually require it — only the gles2 variant does, which isn't available on macOS RetroArch (#50). Full audit cross-referenced every MD5 in the database against Libretro's canonical <code>.info</code> files; the other 10 entries that map to libretro docs all match exactly.</li>
                    <li><strong>Install no longer errors out on archives with truncated central directories.</strong> A subset of eXoDOS zips (Stargunner, Bubble Bobble in the wild) ship with partial central directories after interrupted bulk copies on exFAT. 7z can still recover the local-file-header payload but exits non-zero. If the destination folder ended up with real game files, install now accepts it as soft-success and surfaces a warning instead of failing outright.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.9.dmg"
                sparkle:version="112"
                sparkle:shortVersionString="1.0.8.7.9"
                length="296065661"
                type="application/octet-stream"
                sparkle:edSignature="EzIov2sHReKxnj5wHDXlRBWoYISBaratxUeckNNOXdPtzzafyKFS2iyFbVz3x5b8hxpl9BtmhRulsuyIgL+ZBg==" />
        </item>

        <item>
            <title>Version 1.0.8.7.8 (Build 111)</title>
            <sparkle:version>111</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.8</sparkle:shortVersionString>
            <pubDate>Wed, 22 Apr 2026 17:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.8 (Build 111)</h2>
                <p>Feedback sweep from GitHub issues #41–#48.</p>
                <ul>
                    <li><strong>Gameplay preview videos now play in the detail-view gallery for Lite collections.</strong> The matcher wasn't handling LaunchBox's filesystem conventions (colons rewritten to " - ", articles moved to the end, year-in-parens) or negative caches from pre-install lookups. Filenames are now indexed case-insensitively, LaunchBox rewrites are tried, and a tolerant fuzzy fallback (strips year parens + leading/trailing articles) catches the remaining edge cases like <em>"Bugs Bunny Hare-Brained Adventure, The (1990).mp4"</em>. (#41)</li>
                    <li><strong>Customize Sidebar…</strong> Each top-level sidebar section now has a chevron to collapse/expand, and a footer button opens a Customize sheet where you can drag to reorder sections and hide ones you don't use. Persists across launches. (#43)</li>
                    <li><strong>Achievements settings dialog</strong> — removed the blank band at the top and fixed clipped long captions. (#42, #45)</li>
                    <li><strong>About panel</strong> now uses the proper tagline and no longer truncates. (#44)</li>
                    <li><strong>Sidebar "+" button</strong> no longer sits under the scrollbar. (#46)</li>
                    <li><strong>Decade counts fixed.</strong> Top "80s/90s/2000s" tiles disagreed with the bottom "1980s/1990s/2000s" rows because one path respected Hide Adult Games and the other didn't. Counts now agree. Also removed the duplicate decade tiles from Smart Collections — decades live solely in the Decades section at the bottom now. (#47)</li>
                    <li><strong>RetroArch BIOS detection</strong> — <code>retroarch.cfg</code> parser now resolves <code>:\</code> / <code>:/</code> (config-relative) paths and expands <code>$HOME</code>. Added a manual BIOS directory override in <em>Settings → Emulators → BIOS</em> for when auto-detection picks the wrong path. (#48)</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.8.dmg"
                sparkle:version="111"
                sparkle:shortVersionString="1.0.8.7.8"
                length="296170379"
                type="application/octet-stream"
                sparkle:edSignature="VfyO9CI7QLK6sk9u2iSo4o5cDxJbL0brgHMSBBNnbMkyZWVmdCOQat8ipI8yQu7IRM0PutAwqaEYivY1kB1cBA==" />
        </item>

        <item>
            <title>Version 1.0.8.7.7 (Build 109)</title>
            <sparkle:version>109</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.7</sparkle:shortVersionString>
            <pubDate>Mon, 20 Apr 2026 17:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.7 (Build 109)</h2>
                <p>Hotfix for two install-flow issues.</p>
                <ul>
                    <li><strong>Install no longer extracts over an already-installed game.</strong> The installed-games cache is loaded eagerly at launch and verified against the filesystem in the background — on slow USB / external drives the user could hit Install during the gap on a game whose folder is already on disk, triggering an extract that could fail on a corrupt source archive. Install now checks the actual data folder first; if it already has content, it refreshes the cache and skips the extract.</li>
                    <li><strong>Truncated/corrupt ZIPs now show a human-readable error.</strong> Instead of the raw 7-Zip diagnostic output, the error pane now reads "The archive on disk is incomplete or corrupt — re-copy the .zip from your eXoDOS source and try again."</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.7.dmg"
                sparkle:version="109"
                sparkle:shortVersionString="1.0.8.7.7"
                length="290749090"
                type="application/octet-stream"
                sparkle:edSignature="hqfYZ/Y0gFqBTwtm2s+VW3g0/+p2CK6RDPSMB9HGJ5wRHj7CwtlaqYBJAr+PhcXcajm8S6BvG7QJSl91IfeiAw==" />
        </item>

        <item>
            <title>Version 1.0.8.7.6 (Build 108)</title>
            <sparkle:version>108</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.6</sparkle:shortVersionString>
            <pubDate>Mon, 20 Apr 2026 13:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.6 (Build 108)</h2>
                <p>Big polish release.</p>

                <h3>Art viewer &amp; playtime tracking (from issues #39 and #40)</h3>
                <ul>
                    <li><strong>Full-size art viewer</strong> — default zoom bumped from 100% to 175% (eXoDOS and NES art now readable on open), and the 3-second auto-hide on the on-screen controls is gone. Tap or press space to hide the controls yourself when you want them out of the way.</li>
                    <li><strong>Accurate playtime tracking</strong> — direct-launch paths (DOSBox, RetroArch, MAME) now pin session lifetime to the actual emulator <code>Process</code> handle via <code>terminationHandler</code>, so playtime stops the moment the emulator quits. No more 30-second <code>ps</code>-scan windows, no more runaway "infinite wait" fallbacks that could inflate times by hours. Quitting NostalgiApp mid-session now synchronously credits the in-progress game before exit.</li>
                </ul>

                <h3>Reddit feedback sweep</h3>
                <ul>
                    <li><strong>ROM uninstall actually uninstalls</strong> — the previous flow pointed at <code>eXo/eXoDOS/</code> as a fallback folder path and could silently fail (or worse). ROM games now get their <code>&lt;Game&gt;</code> entry removed from the platform XML directly; the ROM file on disk is left untouched so you can re-import later.</li>
                    <li><strong>No more duplicate entries on re-import</strong> — dedup now matches by normalized title, not just file path. Re-importing a ROM from a moved folder no longer doubles up.</li>
                    <li><strong>Region-tag cleanup in titles</strong> — the filename parser now strips every parens group that looks like a region/language tag, not just the first. <code>Game (USA) (En, Fr, Es).nes</code> imports as <strong>Game</strong>, not <strong>Game (En, Fr, Es)</strong>.</li>
                    <li><strong>Metadata editor</strong> — pencil icon next to the title of any ROM game opens a sheet for title, release year, developer, publisher, and genre. eXo-style games stay read-only (titles feed into archive fuzzy-matching and renaming can break reinstalls).</li>
                    <li><strong>Bulk selection in the grid</strong> — cmd-click to toggle, shift-click to range-select. When multiple games are selected, the right-click menu offers "Uninstall N Games" and "Toggle Favorite on N Games".</li>
                    <li><strong>Display Mode actually works for RetroArch</strong> — the per-game "Fullscreen / Windowed" picker now passes <code>-f</code> to RetroArch and <code>-window</code> to MAME. Previously the setting was silently ignored on ROM games.</li>
                    <li><strong>Coverflow resizes with the window</strong> — cover art scales to ~72% of available height instead of the old fixed 200×280, so it's actually usable on larger windows. Trackpad 2-finger horizontal swipe now navigates through the carousel.</li>
                    <li><strong>Detected RetroArch cores stick around</strong> — Settings re-scans the cores directory when the panel appears, so you don't see "No cores found" on every relaunch until you click Check.</li>
                    <li><strong>Vita3K firmware detection</strong> — checks four candidate <code>vs0</code> paths plus a user-overridable <code>vita3kFirmwarePath</code> key instead of one hard-coded location.</li>
                    <li><strong>Other polish</strong> — view-mode tabs (List/Grid/Coverflow) recognize clicks on first tap; gallery thumbnails letterbox to preserve aspect ratio instead of cropping; first-click selection shows a loading spinner for the image gallery instead of a misleading "No images available"; ROM import wizard remembers the last folder you picked; the "Play the Quiz" menu item is gone.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.6.dmg"
                sparkle:version="108"
                sparkle:shortVersionString="1.0.8.7.6"
                length="294711844"
                type="application/octet-stream"
                sparkle:edSignature="0Rmz3K8cw02y3v2CBJ8jvmuLGZZ92kRZvrNEKBluMOdalf//kWNPrlmCceJr+TVpbtAp5C0v9qn0Ej52w6d+BQ==" />
        </item>

        <item>
            <title>Version 1.0.8.7.5 (Build 107)</title>
            <sparkle:version>107</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.5</sparkle:shortVersionString>
            <pubDate>Sun, 19 Apr 2026 22:55:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.5 (Build 107)</h2>
                <p>Two fixes caught by user reports.</p>

                <h3>Bug fixes</h3>
                <ul>
                    <li><strong>Detail view platform tags now match the grid</strong> — a stale-closure bug in <code>GameDetailView</code> caused the variant selector to render one selection behind, so a game like <em>Loom</em> would show the previously-selected game's platforms in the header and information panel, and clicking a variant tag would jump to the wrong game. Selection now always recomputes the group against the current game.</li>
                </ul>

                <h3>Settings cleanup</h3>
                <ul>
                    <li><strong>Dependencies panel simplified</strong> — removed <code>GNU sed</code>, <code>wget</code>, and <code>Bash 5+</code> rows. These were holdovers from the legacy shell-script launcher and haven't been needed since the independent launch path shipped. Only <strong>aria2</strong> (bundled) and <strong>Python 3</strong> (optional) remain. If you had those flagged on your Mac, you can safely ignore them — the app doesn't shell out to them at runtime.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.5.dmg"
                sparkle:version="107"
                sparkle:shortVersionString="1.0.8.7.5"
                length="295205385"
                type="application/octet-stream"
                sparkle:edSignature="Kipgld6NpdGm1ATR4On5POHXVGjjmil5mayNPq7b9EJVVQMnGhfVRzeT0SI0V1RjgRolEWBGsBO6rM+lHQZ2Aw==" />
        </item>

        <item>
            <title>Version 1.0.8.7.4 (Build 106)</title>
            <sparkle:version>106</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.4</sparkle:shortVersionString>
            <pubDate>Sun, 19 Apr 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.4 (Build 106)</h2>
                <p>Sidebar UX refresh, a new Synthwave theme, an in-app user guide, and a batch of "state change doesn't redraw" fixes caught in user reports.</p>

                <h3>Sidebar</h3>
                <ul>
                    <li><strong>Custom smart collections</strong> — new "My Collections" section. Click the <code>+</code> to build a filter by developer, publisher, genre, or decade (e.g. <em>Studio = Capcom</em>). Right-click any row to edit or delete.</li>
                    <li><strong>Genres consolidated</strong> — the curated 8 genres and the "All genres" disclosure are now one section: icons at the top, everything else behind a "More genres" disclosure.</li>
                    <li><strong>Playlists collapsible</strong> — matches Decades and More genres; defaults collapsed.</li>
                    <li><strong>"Studios" → "Top Studios"</strong> — the auto-generated top-25 developer list now advertises what it actually is.</li>
                </ul>

                <h3>Appearance</h3>
                <ul>
                    <li><strong>New Synthwave '84 theme</strong> — deep indigo sky, magenta/amber horizon glow, vanishing-point grid; applied to the main window and Coverflow backdrop. Switch from Settings → Appearance.</li>
                    <li><strong>CRT scanline overlay</strong> — optional non-interactive overlay toggle in Settings → Appearance for users who want that old-monitor look.</li>
                </ul>

                <h3>Help → User Guide is now in-app</h3>
                <ul>
                    <li>Opens a proper in-app window backed by the live guide at <a href="https://www.nostalgi.app/guide">nostalgi.app/guide</a>, with a persistent HTTP cache for offline reading and a retry card if the network is down. External links still open in your default browser.</li>
                </ul>

                <h3>State changes now update the grid and sidebar live</h3>
                <ul>
                    <li><strong>No more flicker to "All Games"</strong> — marking progress, toggling Favorite, or editing notes while viewing Favorites / a Smart Collection / a search filter no longer flashes the full library for a frame before snapping back.</li>
                    <li><strong>Favorites count updates on toggle</strong> — previously required an app relaunch.</li>
                    <li><strong>With Notes / Highly Rated / Progress counts update live</strong> — adding a note, rating a game, or marking progress now refreshes sidebar badges immediately instead of waiting for the next selection change.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.4.dmg"
                sparkle:version="106"
                sparkle:shortVersionString="1.0.8.7.4"
                length="295899450"
                type="application/octet-stream"
                sparkle:edSignature="VKQuzK4oZPNC7CnYfVgxOlF19fmLawYJN2ep/y1oB80QhhnAF/0b4JB8MLqY+v31uw0v4msaV1qxpizpzz/vCA==" />
        </item>
        <item>
            <title>Version 1.0.8.7.3 (Build 105)</title>
            <sparkle:version>105</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.3</sparkle:shortVersionString>
            <pubDate>Fri, 17 Apr 2026 09:03:30 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.3 (Build 105)</h2>
                <p>Small polish release with two hang fixes caught by the diagnostic logger, plus a requested UX tweak for soundtracks and a feature expansion for RetroArch users.</p>

                <h3>Per-game RetroArch core override</h3>
                <p>The <em>Core</em> picker that previously only appeared for Arcade games now shows up for any ROM platform where you have two or more compatible cores installed — NES, SNES, Genesis, PlayStation, Game Boy, and so on. Pick a specific core for one game without changing the platform default. The picker hides itself when only one compatible core is installed; install a second from RetroArch's Online Updater to surface it. Also fixes a duplicate &ldquo;Arcade&rdquo; tag that rendered twice in the game detail header.</p>

                <h3>Sidebar / Settings hang fixes</h3>
                <ul>
                    <li><strong>Sidebar installed count</strong> — the installed-games filter used to iterate all 55k games on every SwiftUI body re-eval of the sidebar, settings, and statistics views, triggering sub-second hangs on large libraries. The count is now cached and refreshed only when the games array actually changes.</li>
                    <li><strong>Settings → General disk-cache size</strong> — scanning the thumbnail cache directory was happening synchronously while the Settings pane loaded, for up to 1.4 seconds on bigger caches. Moved off the main thread; the row now briefly shows &ldquo;calculating…&rdquo; before the size lands.</li>
                </ul>

                <h3>Hitting Play on a soundtrack now works when music is disabled</h3>
                <p>Previously, if you had background music turned off in Settings, clicking Play on a soundtrack would extract the archive, load the playlist, and then silently bail on the <em>music disabled</em> guard. The explicit Play action is now treated as consent — music is auto-enabled so the soundtrack actually starts playing. Same fix applies to soundtrack archives in Extras and the Screensaver music loader.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.3.dmg"
                sparkle:version="105"
                sparkle:shortVersionString="1.0.8.7.3"
                length="290912251"
                type="application/octet-stream"
                sparkle:edSignature="9EAvE1VC59lcL8Q/n6HRzNB7Iw9cb11zCYW2TGo240/HN/hYI1Xy/c0TItj3wPcCWHxMKT/tMmwdeeQGdH+RAQ==" />
        </item>
        <item>
            <title>Version 1.0.8.7.2 (Build 104)</title>
            <sparkle:version>104</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.2</sparkle:shortVersionString>
            <pubDate>Thu, 16 Apr 2026 22:40:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.2 (Build 104)</h2>
                <p>Same scope as Build 103 with one addition: a <strong>Settings → General → Collection Setup → Extract Media Packs</strong> button so users who drop a Media Pack (<code>*Soundtracks.zip</code>, <code>*Videos.zip</code>, <code>*Magazines.zip</code>, etc.) into their collection's <code>Content/</code> folder after initial setup can run the extraction on demand. Previously this relied on the setup modal auto-firing, which b103 disabled to stop the false &ldquo;setup required&rdquo; loop.</p>
                <p>The rest of the 1.0.8.7.2 change set is unchanged from Build 103 — favorite-toggle beach-ball fix, media-pack setup-prompt fix, faster first filtered-groups read, LazyVStack in <code>GameDetailView</code>, and clearer needsSetup diagnostics.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.2.dmg"
                sparkle:version="104"
                sparkle:shortVersionString="1.0.8.7.2"
                length="296714100"
                type="application/octet-stream"
                sparkle:edSignature="3EuEhZ1Fg6TR9Yn3XX5YMr8X+b8wSLYEaUgV7kn8DmRzICxdco7O4+iQrMGKrD+0pwNsqijyyc/BYWTXt8wzCA==" />
        </item>
        <item>
            <title>Version 1.0.8.7.2 (Build 103)</title>
            <sparkle:version>103</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.2</sparkle:shortVersionString>
            <pubDate>Thu, 16 Apr 2026 22:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.2</h2>
                <p>Follow-up to 1.0.8.7.1 targeting the beach-ball some users hit when toggling favorites on large libraries, plus the stray &ldquo;setup required&rdquo; prompt that fired on legitimately extracted media packs.</p>

                <h3>Favorite toggle no longer beach-balls on large libraries</h3>
                <p>Toggling a favorite used to re-publish the entire in-memory game array, triggering a SwiftUI cascade that on big libraries overflowed AttributeGraph and either hung the app for many seconds or crashed it outright. <code>toggleFavorite</code> now only updates the authoritative <code>favoriteIds</code> set; list rows pull favorite state from that set and are marked <code>.equatable()</code> so SwiftUI can dedupe unchanged rows across selection and filter updates. The detail-view star reads from the same set so it stays in sync.</p>

                <h3>Setup prompt</h3>
                <ul>
                    <li><strong>Fix:</strong> &ldquo;Setup required&rdquo; no longer fires every launch on users whose Content folder holds media-pack archives (<code>DOSMagazines.zip</code>, <code>DOSSoundtracks.zip</code>, <code>Mag!AppleIIGS.zip</code>, etc.) — these archives ship with heterogeneous root layouts (some <code>eXo/...</code>, some <code>Images/...</code>, some <code>Magazines/...</code>) which made the old path-inspection grandfather check unreliable. Media packs are now treated as optional extras: they don't drive the setup modal.</li>
                    <li><strong>Improved:</strong> <code>computeSetupStatus</code> now emits a single summary log line (<code>needsSetup=YES — reasons: ...</code>) naming the exact trigger, so future setup-prompt reports are trivial to diagnose.</li>
                    <li><strong>Improved:</strong> Silent <code>try?</code> on marker-file writes replaced with explicit error logging so read-only / SMB-weird-permission volumes surface in logs instead of causing an infinite setup-prompt loop.</li>
                    <li><strong>Fix:</strong> Linux-specific variants (<code>DOS_linux_*.zip</code>) excluded from media-pack detection, matching the non-linux preference the XO metadata check already had.</li>
                </ul>

                <h3>Startup smoothness</h3>
                <p>The <code>GameGroupManager</code> title normalization cache is now pre-warmed off the main thread right after library load, so the first <code>GameListToolbar</code> / filtered-groups access doesn't block the main thread on collections with several thousand games.</p>

                <h3>GameDetailView</h3>
                <p>The scroll content uses <code>LazyVStack</code> so off-screen sections no longer create AttributeGraph nodes until scrolled to — reducing per-selection-change AG pressure on users with very large libraries.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.2.dmg"
                sparkle:version="103"
                sparkle:shortVersionString="1.0.8.7.2"
                length="296983803"
                type="application/octet-stream"
                sparkle:edSignature="nztjkMCgqCf7TOP5v7CKxM46TmXtmE13Yopd+uOV9VcDFmQNbpSsuLaiSCG/uyVVaygi/6HOKZkgxF54ManfCA==" />
        </item>
        <item>
            <title>Version 1.0.8.7.1 (Build 102)</title>
            <sparkle:version>102</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7.1</sparkle:shortVersionString>
            <pubDate>Thu, 16 Apr 2026 20:55:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7.1</h2>
                <p>Hotfix for a persistent &ldquo;setup required&rdquo; prompt that appeared on every launch for users with an AppleIIGS magazine pack (<code>Mag!AppleIIGS.zip</code>) in their Content folder.</p>
                <ul>
                    <li><strong>Fix:</strong> The &ldquo;setup required&rdquo; prompt no longer returns on every launch when a <code>Mag!*.zip</code> magazine archive is present. The grandfather check was looking for extracted files at <code>&lt;collection&gt;/Magazines/</code>, but this archive&rsquo;s actual extraction destination is <code>&lt;collection&gt;/eXo/Magazines/</code> — so the app never found what it had already extracted and re-flagged the archive as needing setup forever.</li>
                    <li><strong>Fix:</strong> Setup now writes a <code>.&lt;zipname&gt;.extracted</code> marker file after each successful media-pack extraction (Soundtracks, Videos, Magazines, Books, Catalogs, Mag!*). Previously the app only wrote this marker via a retroactive grandfather check — if grandfather failed, even a successful setup didn&rsquo;t stop the next launch from re-prompting.</li>
                    <li><strong>Fix:</strong> Marker-write failures (e.g., read-only volumes, SMB permission quirks) now log a clear warning instead of silently swallowing the error.</li>
                </ul>
                <p>If you were hit by the loop, update to 1.0.8.7.1 and you&rsquo;ll stop seeing the prompt.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.1.dmg"
                sparkle:version="102"
                sparkle:shortVersionString="1.0.8.7.1"
                length="296008644"
                type="application/octet-stream"
                sparkle:edSignature="1uekhRqjTRp+Ur78knv/jw8SKxN26Hgsmbx6HbBwP4REaPrwiLUCPUcXgrE0pE6aBM+olmVg7mWqLMsrKinGCw==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 101)</title>
            <sparkle:version>101</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Thu, 16 Apr 2026 15:45:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7</h2>
                <p>This is the public 1.0.8.7 release, rolling up the fixes and additions accumulated since 1.0.8.6 (Build 93).</p>

                <h3>Beachball fix on the game details view</h3>
                <p>On large libraries with "Group duplicate games" enabled, opening a game with many platform variants could stall the main thread for tens of seconds. The variant-detection code was re-running a full normalize+scan of the filtered game list on every SwiftUI layout pass. It's now computed once per selection and cached, so switching between games is instant even on multi-collection setups.</p>

                <h3>Details pane width</h3>
                <p>The details pane no longer snaps narrower (or blows out to a single-column grid) when the search field engages. It keeps the width you set and stays within a sensible range.</p>

                <h3>DOSBox &amp; install handling</h3>
                <ul>
                    <li>No more hard requirement for <code>gsed</code> — the app now falls back cleanly when GNU sed isn't installed, so fresh Macs without Homebrew extras can still run games.</li>
                    <li>Authored <code>dosbox.conf</code> files in game folders are now trusted as-is instead of being partially rewritten, which fixes launch failures for games with hand-tuned configs.</li>
                    <li>New Media Pack archive layouts (the ones eXo started shipping in early 2026) are auto-detected during collection setup.</li>
                    <li>Community game-fix lookups are hardened against malformed server responses.</li>
                </ul>

                <h3>RetroAchievements</h3>
                <ul>
                    <li>Login UI moved to the correct Settings tab and the "Connect" button now reliably opens Settings.</li>
                    <li>ROM hash matching improved, so more games are recognised by the RA server on first launch.</li>
                    <li>Play-time tracking fixes (#36) — sessions are now credited to the right game and variant.</li>
                </ul>

                <h3>Performance &amp; stability</h3>
                <ul>
                    <li>Large remote/iCloud Drive collections no longer stall the UI during initial indexing — heavy I/O is deferred and batched (#35).</li>
                    <li>Sidebar badge counts are accurate when platform filters change.</li>
                    <li>New opt-in diagnostic logging under <strong>Help → Diagnostics</strong>: a main-thread hang watchdog with mach-based live stack capture. If you ever hit a beachball, enable it, reproduce, and upload — the logs now include the exact blocking call instead of just the idle runloop.</li>
                </ul>

                <h3>Other</h3>
                <ul>
                    <li>ScreenScraper: added region preference and fixed region fallback.</li>
                    <li>"Delete all images" action and a parental "Hide adult games" toggle with a PIN lock.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="101"
                sparkle:shortVersionString="1.0.8.7"
                length="297724985"
                type="application/octet-stream"
                sparkle:edSignature="JyiKrXqOK9yXjAOCxDFn/lYhF98eVThhsfOAVQ11Ok9HbsG03MQQDyeRmXn7UkAVSLD0bth0tdiVzoWEZePKDA==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 100)</title>
            <sparkle:version>100</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Thu, 16 Apr 2026 07:40:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7 Build 100</h2>
                <h3>Diagnostic Logging — mach-based stack capture</h3>
                <p>The hang detector now uses Mach APIs (<code>thread_get_state</code>) to read the main thread's registers <em>while it's blocked</em>, then walks the frame pointer chain in-process to reconstruct a real stack trace. Previous builds used a Timer-based sampler that couldn't fire during a hang — so the "last sample before hang" stack was always just the idle runloop, not the actual blocking call.</p>
                <p>What you'll now see in <code>diagnostic.log</code> when a hang fires:</p>
                <ul>
                    <li>The live main-thread stack at the moment of the hang (with symbols via <code>dladdr</code>).</li>
                    <li>Additional re-samples at 1s, 5s, 15s, and 45s into a long hang — so if the blocking site shifts mid-hang we still catch it.</li>
                    <li>Handles ARM64 pointer authentication (PAC) stripping automatically.</li>
                </ul>
                <p>If you're diagnosing a stubborn beachball and your last log only showed idle-runloop frames, please re-run on Build 100 — the new capture should name the blocking call directly.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="100"
                sparkle:shortVersionString="1.0.8.7"
                length="295581244"
                type="application/octet-stream"
                sparkle:edSignature="F5kyIYKa2HQklTd5Z2oSeJihUc0qq47ek7iLkxKVAyQ8QXN9YImAM9vFQRtnoAmhPyD9EaaGpnRVa9/9eO52CA==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 99)</title>
            <sparkle:version>99</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Wed, 15 Apr 2026 23:30:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7 Build 99</h2>
                <h3>Diagnostic Logging (fixes)</h3>
                <ul>
                    <li>Fixed a false positive where enabling diagnostic logging mid-session could immediately report a multi-second "hang" — it was really just the watchdog reading a stale heartbeat from when the logger was first instantiated.</li>
                    <li>The main-thread sampler now captures only raw return addresses (microseconds) and symbolicates them off the main thread when a hang is detected. Previously <code>Thread.callStackSymbols</code> was being called every 100&nbsp;ms, which on large app binaries could itself be slow enough to trip the 250&nbsp;ms hang detector — so the tool was partly measuring its own overhead.</li>
                    <li>Sampler's own frames are now stripped from the reported stack so you see what was actually running underneath.</li>
                </ul>
                <p>If you had diagnostic logging on in Build 97/98 and saw mysterious sub-second hangs, try again on Build 99 — they'll either disappear (tool overhead) or remain with a more honest stack trace.</p>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="99"
                sparkle:shortVersionString="1.0.8.7"
                length="296621066"
                type="application/octet-stream"
                sparkle:edSignature="pvga93OfcHnubLCh1i8zM9+utWi792FLDoy9RbuL2l2Fg7Nb6c0gDDXUQ8zoafsMKTeCVPco9E9Z4MbfCvKZCw==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 98)</title>
            <sparkle:version>98</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Wed, 15 Apr 2026 22:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7 Build 98</h2>
                <h3>Game launching</h3>
                <ul>
                    <li>The launcher now trusts each game's authored <code>dosbox.conf</code> autoexec verbatim when one is present — fixes games like <em>Ultima II</em> that mount a subfolder as C:\ and rely on their own run.bat for graphics-mode selection.</li>
                    <li>Fixed a bug where <code>exit</code> could appear before the auto-detected launch command in the generated config, causing DOSBox to quit immediately at a blinking cursor.</li>
                    <li>Auto-detection now resolves against the DOSBox-effective directory (following mount + cd commands) instead of always starting at the game root.</li>
                </ul>
                <h3>Community Fix system</h3>
                <ul>
                    <li>The self-healing parser no longer extracts <code>mount</code> / <code>imgmount</code> / drive-change commands as "executables". Both the parser and the upload step now validate candidates before anything is saved or submitted to the community fix server.</li>
                    <li><code>run.bat</code> lookup for a failed launch now also checks the game data folder and first-level subfolders (not just <code>!dos/GAMENAME/</code>).</li>
                </ul>
                <h3>Diagnostics</h3>
                <ul>
                    <li>New <strong>Diagnostic Logging</strong> toggle in Settings → General. When enabled, records main-thread hangs (&gt;250ms) with call-stack samples to help diagnose beachballing. Output goes to a separate <code>diagnostic.log</code> and is automatically included when you use <em>Help → Upload Logs for Analysis</em>.</li>
                    <li>Added timing instrumentation around the slow phases of collection loading (writable-check, ExoPack setup probes, ScummVM/Aria/DOSBox database loads) to localize startup stalls.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="98"
                sparkle:shortVersionString="1.0.8.7"
                length="296086911"
                type="application/octet-stream"
                sparkle:edSignature="JWzRkUq+7hrQWrBHR2kNgYOcUIdR5/jfjQWVlBZvClrO7MApNMEaLo9Gv7IAW/eQkvFq0evl5znFHKQkf/wRDA==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 97)</title>
            <sparkle:version>97</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Wed, 15 Apr 2026 20:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7 Build 97</h2>
                <h3>Diagnostics</h3>
                <ul>
                    <li>New <strong>Diagnostic Logging</strong> toggle in Settings → General. When enabled, the app records main-thread hangs (&gt;250ms) with call-stack samples to help diagnose beachballing on specific machines.</li>
                    <li>Diagnostic output is captured to a separate <code>diagnostic.log</code> and automatically included when you use <em>Help → Upload Logs for Analysis</em>.</li>
                    <li>Leave the toggle off unless support asks for it — there's a small runtime cost when active.</li>
                </ul>
            ]]></description>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="97"
                sparkle:shortVersionString="1.0.8.7"
                length="295433782"
                type="application/octet-stream"
                sparkle:edSignature="S8/rfoXAk0F/QdjhuNDejEPVZsrP4MuKhrFFHTGXioEarBL4vcxxXFUHS46+9qF41lNzxWZjimnFe1y05WSSBQ==" />
        </item>
        <item>
            <title>Version 1.0.8.7 (Build 96)</title>
            <sparkle:version>96</sparkle:version>
            <sparkle:shortVersionString>1.0.8.7</sparkle:shortVersionString>
            <pubDate>Wed, 15 Apr 2026 16:15:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.7</h2>
                <h3>RetroAchievements</h3>
                <ul>
                    <li>Hash-based ROM matching — NES, SNES, PC Engine, Atari 7800, and many other consoles now match RA's database by content hash (with header-stripping where needed) instead of loose title matching. Fewer mismatches, fewer misses.</li>
                    <li>"Connect to RetroAchievements" card in the game detail view now opens Settings → Services → Achievements directly.</li>
                </ul>
                <h3>Play Tracking</h3>
                <ul>
                    <li>ROM play time now tracked for RetroArch sessions. The emulator-process monitor now matches on the ROM filename in argv (robust against multiple running emulators) and logs a warning if it can't find the process.</li>
                    <li>Sessions interrupted by quitting NostalgiApp while the emulator is still running are now recovered on next launch (capped at 4 hours).</li>
                    <li>Game detail view always shows Total Time alongside Times Played / Last Played, including short (&lt;1 min) sessions.</li>
                </ul>
                <h3>Performance (large libraries)</h3>
                <ul>
                    <li>Search filter + sort now runs on a background queue. Typing stays responsive on 50K+ game libraries instead of beach-balling.</li>
                    <li>External USB / Thunderbolt drives now get the same low-priority, delayed background install check that network volumes already received. No more fighting the main thread for bandwidth at launch.</li>
                    <li>Sidebar smart-collection / studio / genre counts now compute on a background queue.</li>
                </ul>
                <h3>UI</h3>
                <ul>
                    <li>Sidebar order: Platforms now appear between Smart Collections and Studios.</li>
                    <li>Studios section is now dynamically generated — top 25 developers in your library by game count, replacing the hand-curated 8.</li>
                    <li>"All Genres" disclosure list is no longer truncated after A-C — sorted by game count descending, no cap.</li>
                    <li>"Installed" no longer duplicated between Library section and Smart Collections.</li>
                </ul>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Sidebar smart-collection badges (Most Played, With Notes, Highly Rated, Unplayed) now show correct counts. Previously they read LaunchBox XML fields (e.g., the XML &lt;Notes&gt; field is populated on ~22K DOS games) instead of the user's own notes/ratings, and the snapshot was taken before play data was loaded.</li>
                    <li>Sidebar badges now update live within a session when you play a game, rate one, or add a note — no restart needed.</li>
                    <li>eXoIF and eXoDemoScene collections no longer prompt for setup on every launch (their games can't be launched yet; setup detection suppressed until launch support is added).</li>
                    <li>ROM games: the folder icon in the detail view now reveals the ROM file in Finder instead of complaining about "no configured launch path".</li>
                    <li>Silenced "updateGameStatus: No config path" warning for ROM games (spurious — ROM games don't have a configuration path).</li>
                </ul>
                <h3>Features</h3>
                <ul>
                    <li>Right-click a game or platform in the sidebar to "Delete All Images…" — wipes stale ScreenScraper artwork so the next re-scrape starts fresh.</li>
                    <li>Settings → Appearance → Content → "Hide adult games" — non-destructive filter with optional password lock (CryptoKit salted SHA-256, plaintext never stored).</li>
                </ul>
                <h3>Onboarding &amp; setup</h3>
                <ul>
                    <li>First-run wizard no longer hard-requires Homebrew and GNU sed. NostalgiApp bundles the <code>aria2</code> download manager, and the legacy <code>gsed</code>-dependent scripts aren't used by the independent launch path. Clean Macs no longer see a scary "required dependencies missing" wall.</li>
                    <li>Newly-added eXo Media Pack archives in a collection's <code>Content/</code> folder are now auto-detected. Drop <em>DOSSoundtracks.zip</em> / <em>DOSVideos.zip</em> / <em>DOSCatalogs.zip</em> in at any time — the setup banner will offer to extract them. A marker file prevents re-extraction on subsequent launches, and a grandfathering heuristic avoids false prompts for users with a pre-populated <code>Music/</code> tree from a Windows setup.</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.7.dmg"
                sparkle:version="96"
                sparkle:shortVersionString="1.0.8.7"
                length="294919315"
                type="application/octet-stream"
                sparkle:edSignature="nJQJ3JeS/CI0RYA6ifHLHQrrO7J6xNoJa4q9lmvUwx2UOjjWOMfrAwtjTijFpdRfDkakOOumiIGbWu6j4mQFCg=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.6 (Build 93)</title>
            <sparkle:version>93</sparkle:version>
            <sparkle:shortVersionString>1.0.8.6</sparkle:shortVersionString>
            <pubDate>Mon, 14 Apr 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.6</h2>
                <h3>New</h3>
                <ul>
                    <li>RetroAchievements login in Settings → Services → Achievements. Once connected, achievements appear in the detail view for supported ROM games (NES, SNES, N64, Genesis, PSX, etc.)</li>
                </ul>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>ScreenScraper now prefers English/US box art, screenshots, and logos over German/French/Japanese versions</li>
                    <li>Fix empty space in Settings → Services layout</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.6.dmg"
                sparkle:version="93"
                sparkle:shortVersionString="1.0.8.6"
                length="297396888"
                type="application/octet-stream"
                sparkle:edSignature="QiapWJ0H7yAmf1nohgHqjMYCI1dKI+Dc0UGjcGWmzfKRJkxuCD6xwY8z7yIHicis2Ow9KyeqwxKG1YKNuTCZAA=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.5 (Build 92)</title>
            <sparkle:version>92</sparkle:version>
            <sparkle:shortVersionString>1.0.8.5</sparkle:shortVersionString>
            <pubDate>Mon, 14 Apr 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.5</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix games that failed to launch because their executable was on the mounted CD drive (e.g., Syndicate Plus)</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.5.dmg"
                sparkle:version="92"
                sparkle:shortVersionString="1.0.8.5"
                length="293914881"
                type="application/octet-stream"
                sparkle:edSignature="0Nc/DWyGSjkyJRKIa5KjqRC8xbUQQZ3uNe62xkudj4Qd7eYDnUPp4z0FHanZCeRNABfUNwQPtP3HXDm94VIGDA=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.4 (Build 91)</title>
            <sparkle:version>91</sparkle:version>
            <sparkle:shortVersionString>1.0.8.4</sparkle:shortVersionString>
            <pubDate>Sun, 13 Apr 2026 21:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.4</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix "Download Full" button leading to a 404 page — now downloads the torrent file and opens it in your torrent client directly</li>
                    <li>Fix folder picker reopening after cancelling a Lite download</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.4.dmg"
                sparkle:version="91"
                sparkle:shortVersionString="1.0.8.4"
                length="298012484"
                type="application/octet-stream"
                sparkle:edSignature="fcl9CJ/6WwzPUeapOANTotmlxzWhCqJB/9Ox2DrTgWEh71iqPivF+lHXcImaPwyvkA2YP3rYISOX+R0Rc6oQAg=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.3 (Build 90)</title>
            <sparkle:version>90</sparkle:version>
            <sparkle:shortVersionString>1.0.8.3</sparkle:shortVersionString>
            <pubDate>Sun, 13 Apr 2026 19:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.3</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix CRT shader not working — was using DOSBox-X shader name (crt-lottes) for DOSBox Staging, which silently ignored it. Now uses Staging's native crt/vga-1080p shaders with machine-type awareness</li>
                    <li>Fix CRT setting being overridden by game's own glshader config</li>
                    <li>Fixed multiple games from not installing with "Archive not found"</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.3.dmg"
                sparkle:version="90"
                sparkle:shortVersionString="1.0.8.3"
                length="296321447"
                type="application/octet-stream"
                sparkle:edSignature="pRrkYRCB3LV0CYAtoDO1X948lIfDga+tR3eOQroyO859MN6WtGvDGX1dbaSdO+qd28l1PVT0FPr1PjQUYtkVCQ=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.2 (Build 89)</title>
            <sparkle:version>89</sparkle:version>
            <sparkle:shortVersionString>1.0.8.2</sparkle:shortVersionString>
            <pubDate>Sun, 13 Apr 2026 14:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.2 — SMB Fixes + Polish</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix collection setup failing on SMB/network volumes — archive extraction no longer fails with "Resource busy" when Spotlight locks shared files</li>
                    <li>Fix false "setup required" prompt appearing after update for pure eXoDOS collections without Win9x</li>
                    <li>Fix progress bar stuck at 0% during setup on slow volumes — now shows per-archive progress and current filename</li>
                    <li>Fix variant selector not appearing when a platform is selected in the sidebar</li>
                </ul>
                <h3>Improvements</h3>
                <ul>
                    <li>SMB/network volume optimization — detect network volumes and reduce filesystem I/O (cached setup status, batched directory scans, lower-priority background checks)</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.2.dmg"
                sparkle:version="89"
                sparkle:shortVersionString="1.0.8.2"
                length="293898235"
                type="application/octet-stream"
                sparkle:edSignature="2jB3T+IUdXbG0VWvcANp4zRtCUiJUi2Rf/pUpYuOloUyocBZwVJkqOh8K+uGJwThCeCOIw8w59irbDFFZL7rBQ=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8.1 (Build 84)</title>
            <sparkle:version>84</sparkle:version>
            <sparkle:shortVersionString>1.0.8.1</sparkle:shortVersionString>
            <pubDate>Sat, 12 Apr 2026 18:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8.1 — 86Box Support + Fixes</h2>
                <h3>New Features</h3>
                <ul>
                    <li>Native 86Box emulator support — Win9x games requiring 86Box (Quake, CyberSpeed, etc.) now launch directly instead of showing "not yet supported"</li>
                    <li>86Box 5.3 (universal) bundled inside the app — no manual install needed</li>
                    <li>VHD differencing disks created natively in Swift, replacing the Windows-only makevhd.exe</li>
                    <li>DOS games with ScummVM exceptions (LSL3, Sierra SCI, LucasArts SCUMM) now reroute to ScummVM automatically</li>
                    <li>Same-platform game variants (e.g., "Standard" vs "DVD Edition") now group together with a version selector</li>
                </ul>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix Win9x game install extracting the wrong game when title doesn't match folder name (e.g., Wing Commander IV DVD Edition)</li>
                    <li>Fix variant selector not appearing in game detail view</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.1.dmg"
                sparkle:version="84"
                sparkle:shortVersionString="1.0.8.1"
                length="294541930"
                type="application/octet-stream"
                sparkle:edSignature="bVz0ZBcEhiaKlRt7XydEZsRHpe+w5HiNOHkPlEU1gyk7Mt7E9/mZqUPE/W0gNZqAjBeZHjBj0y1SPJDojdCADw=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.8 (Build 83)</title>
            <sparkle:version>83</sparkle:version>
            <sparkle:shortVersionString>1.0.8</sparkle:shortVersionString>
            <pubDate>Sat, 12 Apr 2026 12:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.8 — Bundled Emulators + eXoWin9x</h2>
                <p><strong>Three emulators are now bundled inside the app, eXoWin9x is fully supported, and collection setup is more robust than ever.</strong></p>
                <h3>New Features</h3>
                <ul>
                    <li>eXoWin9x collection support — 665 Windows 9x games now playable. Special thanks to Retro eXo and TaraLonger for their work on the Win9x project</li>
                    <li>DOSBox Staging 0.82.2 (universal) bundled — covers eXoDOS</li>
                    <li>DOSBox-X 2026.03.29 (universal, lipo-merged) bundled — covers eXoWin3x and eXoWin9x</li>
                    <li>DREAMM 4.0 bundled with permission from Aaron Giles — no more manual download</li>
                    <li>Settings → Emulators rows now show which install is currently in effect (custom path, Applications folder, Homebrew, or bundled)</li>
                    <li>ScummVM and GZDoom now have user-configurable custom paths</li>
                    <li>Win9x fullscreen support with proper scaling (fullresolution=desktop)</li>
                    <li>Multi-disc CD swapping for Win9x games (F11+D)</li>
                    <li>Win9x games requiring 86Box or PCBox are now detected and show a clear "not yet supported" message instead of booting into an empty desktop</li>
                </ul>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix standalone eXoWin9x collection import — XML fragments are now properly merged and util archives detected regardless of filename</li>
                    <li>Fix collection setup silently skipping EXT/OPT archive extraction when dosbox.txt was already present from a prior setup</li>
                    <li>Fix self-heal game fixes stripping the "call" batch prefix from executable names (affected 3-D Dinosaur Adventure and others)</li>
                    <li>Fix working directory resolution for DOS games with nested paths like .\Wolf3D\wolf3d</li>
                    <li>Fix bundled DOSBox-X not being detected — the app now falls back to the bundled emulator before Homebrew</li>
                    <li>Fix collection merge dropping the eXo/emulators folder (required for Win9x base VHDs)</li>
                    <li>Show a clear repair alert when Win9x base VHD is missing instead of a cryptic DOSBox-X error</li>
                    <li>DREAMM custom path setting was being saved but never read by the launcher</li>
                    <li>Win9x launch scripts now regenerated each launch to pick up current display settings</li>
                    <li>Fix grid view scroll position jumping when selecting a game</li>
                </ul>
                <h3>Notes</h3>
                <ul>
                    <li>The detection chain still prefers user-configured paths and existing /Applications installs over the bundled versions</li>
                    <li>Download size grew from ~25 MB to ~105 MB to make room for the bundled emulators</li>
                    <li>86Box and PCBox emulator support is planned for a future release</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.8.dmg"
                sparkle:version="83"
                sparkle:shortVersionString="1.0.8"
                length="110288789"
                type="application/octet-stream"
                sparkle:edSignature="McR0c3JCHVm1TBZWzqIroZDmivFbY8a79acnh2ubC8DLvO5duHV4LrgjCyoERKGiMyr5zEbU1T9xY7wCirxbAA=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.8 (Build 80)</title>
            <sparkle:version>80</sparkle:version>
            <sparkle:shortVersionString>1.0.7.8</sparkle:shortVersionString>
            <pubDate>Sun, 06 Apr 2026 18:00:00 +0300</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.8 Build 80</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix download matching wrong game when multiple games share the same base title (e.g., "Deadline" 1982 vs 1996)</li>
                    <li>Fix archive not found for games with Roman numeral I in title (e.g., "Sentinel Worlds I")</li>
                </ul>
                <h3>Other</h3>
                <ul>
                    <li>Replace Help menu item with Discord Community link</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.8.dmg"
                sparkle:version="80"
                sparkle:shortVersionString="1.0.7.8"
                length="26546062"
                type="application/octet-stream"
                sparkle:edSignature="hmef0J0Lv+iZTkMo2AIkDmrprpDhCEqUmfdJ55X1aphX4V+p/ehqy+J+Dd/MhHvGmRa9CnwGoKO4wvGZdjWrCw=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.7 (Build 79)</title>
            <sparkle:version>79</sparkle:version>
            <sparkle:shortVersionString>1.0.7.7</sparkle:shortVersionString>
            <pubDate>Fri, 28 Mar 2026 18:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.7 Build 79</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix games with nested subfolder executables failing to launch (e.g., Pinball Fantasies) - intermediate cd paths from dosbox.conf are now preserved</li>
                    <li>Fix Wine+ECE games launching in a tiny window in fullscreen mode - switched from surface to overlay rendering for proper scaling</li>
                    <li>Fix Wine+ECE games ignoring the app's fullscreen setting</li>
                    <li>Fix window frame not persisting across reboots</li>
                </ul>
                <h3>Improvements</h3>
                <ul>
                    <li>Show informative alert when a game requires Wine+ECE but it's not installed, instead of silently falling back to DOSBox Staging</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.7.dmg"
                sparkle:version="79"
                sparkle:shortVersionString="1.0.7.7"
                length="26521847"
                type="application/octet-stream"
                sparkle:edSignature="+c2IEdsyDCxniqL2qMfoXqGbR7jA7rHQbc/TB/bVZmuHPpKs76G0SZreCTTp6niBxFy/Ei7ahPHDbSpdi4aRCg=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.6 (Build 78)</title>
            <sparkle:version>78</sparkle:version>
            <sparkle:shortVersionString>1.0.7.6</sparkle:shortVersionString>
            <pubDate>Wed, 26 Mar 2026 18:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.6 Build 78</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix Star Control II launching with copy protection (now uses .COM instead of .EXE)</li>
                    <li>Fix BIOS scan searching wrong directory (system/system/ instead of system/)</li>
                    <li>Improve window size persistence across app restarts</li>
                </ul>
                <h3>Improvements</h3>
                <ul>
                    <li>BIOS scan now shows detailed diagnostics: expected vs actual MD5, file sizes, searched directories, and checked filenames</li>
                    <li>Add PS2 (PCSX2) to BIOS database</li>
                    <li>BIOS platform status shows gray instead of green when no files are present</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.6.dmg"
                sparkle:version="78"
                sparkle:shortVersionString="1.0.7.6"
                length="26517190"
                type="application/octet-stream"
                sparkle:edSignature="EpxqwDU/90U0a3V89O/j2G6oKgK1S3piFIRpdLF9cuxmQqPZDahAqvcTp/uUYUInsE84wDNdMfqvoobw7NoLDQ=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.5 (Build 77)</title>
            <sparkle:version>77</sparkle:version>
            <sparkle:shortVersionString>1.0.7.5</sparkle:shortVersionString>
            <pubDate>Sun, 23 Mar 2026 18:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.5 Build 77</h2>
                <h3>New Features</h3>
                <ul>
                    <li>WorthyPunks gaming stats sync integration</li>
                </ul>
                <h3>Improvements</h3>
                <ul>
                    <li>RetroArch: Detect custom folder settings from retroarch.cfg (cores, system/BIOS, saves, states, shaders)</li>
                    <li>Support Mag! prefixed archives and strip quarantine xattrs from extracted media</li>
                </ul>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Improve window size persistence across app restarts</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.5.dmg"
                sparkle:version="77"
                sparkle:shortVersionString="1.0.7.5"
                length="26497216"
                type="application/octet-stream"
                sparkle:edSignature="+WIHcREwMzA6yfP7RGIDUqV5I+hp3vVmD3SgBk1XuihDCpS61R4myEO2zFKRRBaNWlOt9MmvOz5j8+vByj0hDQ=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.4 (Build 76)</title>
            <sparkle:version>76</sparkle:version>
            <sparkle:shortVersionString>1.0.7.4</sparkle:shortVersionString>
            <pubDate>Wed, 12 Mar 2026 18:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.4 Build 76</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix GSplus installation failing due to dead Homebrew cask URL (apple2.gs server returns 404)</li>
                    <li>GSplus is now downloaded directly instead of relying on Homebrew</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.4.dmg"
                sparkle:version="76"
                sparkle:shortVersionString="1.0.7.4"
                length="26411571"
                type="application/octet-stream"
                sparkle:edSignature="eIaEpmhUNE0XTOkqZbARMmC1wM0GTZjdj92mmbQS0y7PNsO/PfQAUw0PUOwfScFL6MoBTKXnjCPZIwWm21RjBw=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.3 (Build 75)</title>
            <sparkle:version>75</sparkle:version>
            <sparkle:shortVersionString>1.0.7.3</sparkle:shortVersionString>
            <pubDate>Thu, 12 Mar 2026 12:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.3 Build 75</h2>
                <h3>Improvements</h3>
                <ul>
                    <li>Apple IIGS: MAME now uses the user-configured path from Settings instead of only checking hardcoded locations</li>
                    <li>Apple IIGS: MAME path changes in Settings take effect immediately (cache invalidation)</li>
                    <li>Warn users when their game collection is on a read-only volume</li>
                    <li>Added detailed logging to GSplus installation flow for better diagnostics</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.3.dmg"
                sparkle:version="75"
                sparkle:shortVersionString="1.0.7.3"
                length="26414405"
                type="application/octet-stream"
                sparkle:edSignature="/6jB2mcVJY42UXMLEbHnEUGxU3oRzrLKQlCJGGxcw9y+dkJBHmdxokW1/ya8M42ksL9kLnQEgGFb9m+ld9GaBQ=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.2 (Build 73)</title>
            <sparkle:version>73</sparkle:version>
            <sparkle:shortVersionString>1.0.7.2</sparkle:shortVersionString>
            <pubDate>Fri, 07 Mar 2026 22:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.2 Build 73</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix Ultima Underworld 1 &amp; 2 not launching (SoundBlaster and MT32 versions)</li>
                    <li>Fix game archive search failing for titles with Roman numerals (e.g., "II" vs "2")</li>
                    <li>Fix ZIP extraction failing for some eXoDOS archives by adding 7z fallback</li>
                    <li>Fix Apple IIGS magazine index PDFs not opening individual issues</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.2.dmg"
                sparkle:version="73"
                sparkle:shortVersionString="1.0.7.2"
                length="26397733"
                type="application/octet-stream"
                sparkle:edSignature="5qHL80GOlm43itsEcQMxUy/2vzEZvlQRxEzqL9JtlpvZGvZ2zZSx0mIfnc9xslNeHZvrl8YUAAzKVXiujrsnAw=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7.1 (Build 72)</title>
            <sparkle:version>72</sparkle:version>
            <sparkle:shortVersionString>1.0.7.1</sparkle:shortVersionString>
            <pubDate>Fri, 07 Mar 2026 14:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7.1 Build 72</h2>
                <h3>Bug Fixes</h3>
                <ul>
                    <li>Fix incorrect cover art showing for some games due to fuzzy image matching false positives</li>
                    <li>Fix image cache poisoning causing missing thumbnails after scrolling</li>
                    <li>Fix images not loading after adding a new collection</li>
                </ul>
            ]]></description>
            <enclosure
                url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.1.dmg"
                sparkle:version="72"
                sparkle:shortVersionString="1.0.7.1"
                length="26389117"
                type="application/octet-stream"
                sparkle:edSignature="ec7rTE9jyWYlKCJw+telGe9xGJcMNimNJ7dIc7Az4o1b9c5ulpGLe4OrA6fN3Q0q0+F2mqaVMZeFv64s5Y3UDg=="
            />
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
        <item>
            <title>Version 1.0.7 (Build 71)</title>
            <sparkle:version>71</sparkle:version>
            <sparkle:shortVersionString>1.0.7</sparkle:shortVersionString>
            <pubDate>Fri, 07 Mar 2026 12:00:00 +0200</pubDate>
            <description><![CDATA[
                <h2>NostalgiApp 1.0.7 Build 71</h2>
                <h3>eXoAppleIIGS Collection Support</h3>
                <ul>
                    <li><b>New:</b> Play 460 Apple IIGS games from the eXoAppleIIGS collection via MAME</li>
                    <li><b>New:</b> One-click install and launch — game archives are extracted and configured automatically</li>
                    <li><b>New:</b> Automatic MAME ROM extraction and patching for modern MAME (0.250+) compatibility</li>
                    <li><b>New:</b> MAME install prompt with Homebrew command and brew.sh link for users without Homebrew</li>
                    <li><b>New:</b> macOS keyboard hints for games that reference numpad keys (Fn+Return tip, Tab to remap)</li>
                </ul>
                <h3>GSplus Emulator Support</h3>
                <ul>
                    <li><b>New:</b> GSplus as alternative Apple IIGS emulator — install and switch in Settings</li>
                    <li><b>New:</b> MAME/GSplus picker in Settings to choose default Apple IIGS emulator</li>
                    <li><b>New:</b> Automatic GSplus installation via Homebrew (lifepillar/appleii tap)</li>
                </ul>
                <h3>DOSBox-X Fixes</h3>
                <ul>
                    <li>Fix: DOSBox-X games now launch correctly (fixed working directory for relative mount paths)</li>
                    <li>Fix: Added SDL2 OpenGL crash workaround for DOSBox-X on macOS (dosbox-x #6036)</li>
                    <li>Fix: MAME now quits properly with Escape key</li>
                    <li>Fix: Collection merge no longer re-triggers setup when metadata is already extracted</li>
                </ul>
            ]]></description>
            <enclosure url="https://www.nostalgi.app/downloads/NostalgiApp-1.0.7.dmg"
                       length="26387441"
                       sparkle:edSignature="B/Diz5d15wAuyRfIYd+msjzVg8YuQHOLIgaIjGNAijcU78GGpNti1EyYv/L7pueS0mrz2XeXYV+WPZOe4DvpCg=="
                       type="application/octet-stream"/>
            <sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
        </item>
    </channel>
</rss>
