Merge branch 'master' into misc-changes

This commit is contained in:
DecDuck
2026-03-01 10:16:45 +00:00
committed by GitHub
4 changed files with 101 additions and 1 deletions
+1
View File
@@ -53,6 +53,7 @@ export default defineConfig({
label: "Admin",
items: [
{ slug: "admin/quickstart" },
{ slug: "admin/guides/migrating" },
{
label: "Guides",
items: [
@@ -0,0 +1,51 @@
---
title: Emulators
---
import { Steps } from "@astrojs/starlight/components";
Emulation, broadly speaking, is launching one game with another executable, instead of directly as a native game. For Drop, we have to import at minimum, two versions:
- Our emulator (referred to as MyEmulator)
- Our game (referred to as MyGame)
For convenience's sake, we can also specify file extensions for Drop's auto-detect features. For this guide, we'll use `.rom`
<Steps>
1. ## Import the emulator
When importing a game, you can now select it as an "emulator". This enables other configuration options for emulators later down the line, and **hides it from the store.**
Your metadata providers are unlikely to be able to find it. You might have to use the manual import option.
2. ## Import the emulator version
Once you've imported your emulator, open the version importer for your game.
:::caution
The client currently will panic with a `todo!()` marker if you set the setup executable.
:::
Add a launch executable for every platform you want to support. The options are fairly self-explanatory, but make sure to use the `{rom}` placeholder, and optionally add the file extensions.
Read the [Command Parsing](/reference/command-parsing/) article to understand how it's parsed and substituted.
3. ## Import your game
Import your emulated game as usual.
4. ## Import your version (auto-suggest)
If you set your file extension above, simply select the ROM from the dropdown in one of your launch executables. It'll auto-fill the configuration needed.
5. ## Import your version (manually)
If you didn't set your file extension, enter the name of your ROM in the launch executable field. Then, click "Select new emulator", and search for your emulator game, select the version, and launch command.
It'll automatically pre-fill the platform field with the platform of your emulator.
</Steps>
:::note
Setup executables cannot be configured to be executed through the emulator.
:::
@@ -0,0 +1,48 @@
---
title: Migrating from v0.3.x
description: A guide on how to migrate to v0.4.0 from v0.3.X
---
:::caution
Because of the new manifest format and configuration, all your imported versions will be deleted.
:::
## Updating the `compose.yaml`
To get started, simply update the tag in your `compose.yaml` to the tag you're using:
```diff compose.yaml
services:
postgres:
image: postgres:14-alpine
healthcheck:
test: pg_isready -d drop -U drop
interval: 30s
timeout: 60s
retries: 5
start_period: 10s
volumes:
- ./db:/var/lib/postgresql/data
environment:
- POSTGRES_PASSWORD=drop
- POSTGRES_USER=drop
- POSTGRES_DB=drop
drop:
- image: ghcr.io/drop-oss/drop:latest
+ image: ghcr.io/drop-oss/drop:0.4.0-rc-3
depends_on:
postgres:
condition: service_healthy
ports:
- 3000:3000
volumes:
- ./library:/library
- ./data:/data
environment:
- DATABASE_URL=postgres://drop:drop@postgres:5432/drop
- EXTERNAL_URL=http://localhost:3000 # default, customise if accessing from another computer or behind a reverse proxy
```
## Re-importing all your versions
Head to the admin library and re-import your versions one at a time. Optionally, you can use the new "Mass Import Tool", but keep in mind you can't configure many of the fancy new features with it.
+1 -1
View File
@@ -24,7 +24,7 @@ services:
- POSTGRES_USER=drop
- POSTGRES_DB=drop
drop:
image: ghcr.io/drop-oss/drop:latest
image: ghcr.io/drop-oss/drop:0.4.0-rc-3
depends_on:
postgres:
condition: service_healthy