It's been over a year in the making, but the first public preview build of v2.0.0 is finally here!
V2 Highlights
New User Interface
V2 brings a whole new mobile friendly UI, as well as an overhaul of the underlying database structures which brings the basis of multiple metadata sources (v2 supports IGDB and TheGamesDB, with more to follow in v2.1).
Metadata and signatures
Importantly for new and existing users, v2 brings support for the sister project Hasheous (see https://hasheous.org if you're unfamiliar with this project).
Hasheous support allows new and existing installations of Gaseous to identify and download metadata for a ROM image without needing to supply and maintain signatures or even a metadata key such as an IGDB client id. This should erase one of the largest barriers to entry for new users, as well as make life easier for existing users.
Signature updates are now part of the standard metadata refresh process, so as DATs are updated in Hasheous, Gaseous will reflect those changes.
User accounts
Gaseous now supports Google, Microsoft and OIDC logins, as well as two factor authentication for password based logins.
Users can now customise their profile with animated GIF's for the avatar and background image, as well as customising their display name and quip.
Saved Games
In addition to the existing state storage support, Gaseous now supports static RAM (SRM) saving support for those games and platforms that support it. This implements the battery backed memory in cartridges, allowing the storage of saved games, high scores, etc.
When playing a game in the emulator, Gaseous will periodically capture the SRM file and store it, allowing the player to roll back to any time. The latest SRM is always loaded when starting the emulator.
Upgrading
Before upgrading:
ensure that you are on version 1.7.14
perform a full backup of all data and databases attached to Gaseous
if you're using Docker, ensure that the home path has been updated to the new path /home/gaseous/.gaseous-server (see https://github.com/gaseous-project/gaseous-server/wiki/Installation for updated compose files)
replace the image tag from latest to v2.0.0-preview.1
When the server is started for the first time, you will be taken through the setup wizard which will allow you to configure the default datasources for signatures and metadata.
Important
On the first start of Gaseous, the database upgrade process will begin. This is a background process, but depending on the size of your database may take a significant amount of time to complete. This is essentially a full rescan and refresh of metadata.
Note that during this time some features may be unavailable, including saved games and favourites. This process is also a one way process. You will need to restore from a back up if you want to return to v1.7.14.
Optimising this upgrade process is something we hope to have completed by official full release of v2.
Warning
This software is preview software, and as such may contain bugs that may result in data loss.
Always ensure you have backed up your system before upgrading.
What's New
UI overhaul
All docker images now support rootless
Added a command line tool for user management
Revamp of BIOS handling
Update to profile cards to display now-playing
Update README.MD
Refactored user preferences code
Use selectable location for localised Game names
Game manuals courtesy of the vimm's lair manual project
Database performance enhancements and UI improvements
All new Game display page
Upload form and background task enhancements
Implement Automatic SRM Saving
Add FBNeo DAT support
Library performance enhancements
Update all displays, controls and panels to be mobile friendly
Update PlatformMap.json by @HcNguyen111
Implement upgrade process from 1.7 series
Improve login options - now supports Google, Microsoft, and OIDC
Enhance user authentication with two-factor support and username changes
Update EJS to version 4.2.3 and enhance emulator functionality
Support for manually modifying metadata matches
Refactor Docker build workflows for improved efficiency and clarity
Fix GBA core value by @devdouglasonofre
Enhance content management and screenshot functionality
Enhance logging and navigation features
Enhance emulator exit functionality and add pause mask styles
Add localisation support - Note: Language files other than English were generated using AI (see https://github.com/gaseous-project/gaseous-server/wiki/Localisation for information on creating your own language files)
Refactor file signature processing and enhance task management
Add support for multiple metadata data sources
Notes
This build contains a pre-release version of EmulatorJS and is itself a work in progress - there are some issues with multi-disk and some platforms such as Amiga and C64
Still to come: support for EmulatorJS's new DOSBOX core
Experimental Features
EXPERIMENTAL: Provide Windows Service support and introduce MSI installer
New Contributors
@HcNguyen111 made their first contribution in https://github.com/gaseous-project/gaseous-server/pull/566
@devdouglasonofre made their first contribution in https://github.com/gaseous-project/gaseous-server/pull/612
Full Changelog: https://github.com/gaseous-project/gaseous-server/compare/v1.7.14...v2.0.0-preview.1