mirror of
https://github.com/Drop-OSS/drop.git
synced 2026-06-22 04:11:32 +10:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 40be0ae461 | |||
| cbecd1161d |
@@ -6,6 +6,7 @@ on:
|
||||
branches: [develop]
|
||||
paths:
|
||||
- "sites/promo/**"
|
||||
- "sites/docs/**"
|
||||
- "package.json"
|
||||
- "pnpm-lock.yaml"
|
||||
- "pnpm-workspace.yaml"
|
||||
@@ -43,10 +44,11 @@ jobs:
|
||||
node-version: "22"
|
||||
cache: "pnpm"
|
||||
|
||||
# Only install the promo site (radiant) and its dependencies so the public
|
||||
# website deploy stays decoupled from the server/desktop build pipelines.
|
||||
# Only install the promo site (radiant) and docs site (docs-next) and their
|
||||
# dependencies so the public website deploy stays decoupled from the
|
||||
# server/desktop build pipelines.
|
||||
- name: Install dependencies
|
||||
run: pnpm install --filter radiant...
|
||||
run: pnpm install --filter radiant... --filter docs-next...
|
||||
|
||||
- name: Setup Pages
|
||||
id: setup_pages
|
||||
@@ -63,12 +65,24 @@ jobs:
|
||||
restore-keys: |
|
||||
${{ runner.os }}-nextjs-${{ hashFiles('pnpm-lock.yaml') }}-
|
||||
|
||||
- name: Build with Next.js
|
||||
- name: Build promo site with Next.js
|
||||
working-directory: sites/promo
|
||||
run: pnpm run build
|
||||
env:
|
||||
PAGES_BASE_PATH: ${{ steps.setup_pages.outputs.base_path }}
|
||||
|
||||
- name: Build docs site with Astro
|
||||
working-directory: sites/docs
|
||||
run: pnpm run build
|
||||
|
||||
# Nest the Starlight docs (built with base: "/docs") inside the promo export
|
||||
# so both ship from a single GitHub Pages deployment at /docs.
|
||||
- name: Assemble docs into /docs
|
||||
run: |
|
||||
rm -rf sites/promo/out/docs
|
||||
mkdir -p sites/promo/out/docs
|
||||
cp -r sites/docs/dist/. sites/promo/out/docs/
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-pages-artifact@v3
|
||||
with:
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
# Drop
|
||||
|
||||
[](https://droposs.org)
|
||||
[](https://docs.droposs.org/)
|
||||
[](https://droposs.org/docs)
|
||||
[](https://forum.droposs.org)
|
||||
[](LICENSE)
|
||||
[](https://discord.gg/ACq4qZp4a9)
|
||||
@@ -28,7 +28,7 @@ Drop is an open-source game distribution platform, similar to GameVault or Steam
|
||||
|
||||
## Deployment
|
||||
|
||||
See our documentation on how to [deploy Drop](https://docs.droposs.org/docs/guides/quickstart) for more information.
|
||||
See our documentation on how to [deploy Drop](https://droposs.org/docs/admin/quickstart) for more information.
|
||||
|
||||
## Contributing
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
"devDependencies": {
|
||||
"@nuxt/eslint": "latest",
|
||||
"eslint": "^9.17.0",
|
||||
"nuxt": "^3.21.6",
|
||||
"nuxt": "^3.21.7",
|
||||
"typescript": "^5.7.2",
|
||||
"vue": "latest"
|
||||
},
|
||||
|
||||
Generated
+2836
-1419
File diff suppressed because it is too large
Load Diff
@@ -19,7 +19,7 @@
|
||||
</p>
|
||||
<NuxtLink
|
||||
class="mt-4 rounded-md inline-flex items-center text-sm font-semibold text-blue-500 hover:text-blue-600 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-500"
|
||||
href="https://docs.droposs.org/docs/authentication/simple"
|
||||
href="https://droposs.org/docs/admin/authentication/simple"
|
||||
target="_blank"
|
||||
>
|
||||
<i18n-t
|
||||
@@ -74,7 +74,7 @@
|
||||
</p>
|
||||
<NuxtLink
|
||||
class="mt-4 rounded-md inline-flex items-center text-sm font-semibold text-blue-500 hover:text-blue-600 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-500"
|
||||
href="https://docs.droposs.org/docs/authentication/oidc"
|
||||
href="https://droposs.org/docs/admin/authentication/oidc"
|
||||
target="_blank"
|
||||
>
|
||||
<i18n-t
|
||||
|
||||
@@ -174,13 +174,14 @@ const optionsMetadata: {
|
||||
Filesystem: {
|
||||
title: t("library.admin.sources.fsTitle"),
|
||||
description: t("library.admin.sources.fsDesc"),
|
||||
docsLink: "https://docs.droposs.org/docs/library#drop-style",
|
||||
docsLink: "https://droposs.org/docs/reference/library-sources#drop-style",
|
||||
icon: DropLogo,
|
||||
},
|
||||
FlatFilesystem: {
|
||||
title: t("library.admin.sources.fsFlatTitle"),
|
||||
description: t("library.admin.sources.fsFlatDesc"),
|
||||
docsLink: "https://docs.droposs.org/docs/library#flat-style-or-compat",
|
||||
docsLink:
|
||||
"https://droposs.org/docs/reference/library-sources#compatibility-flat-style",
|
||||
icon: BackwardIcon,
|
||||
},
|
||||
};
|
||||
|
||||
@@ -134,11 +134,11 @@ const navigation = computed(() => ({
|
||||
// { name: t("footer.api"), href: "https://api.droposs.org/" },
|
||||
{
|
||||
name: t("footer.docs.server"),
|
||||
href: "https://docs.droposs.org/docs/guides/quickstart",
|
||||
href: "https://droposs.org/docs/admin/quickstart",
|
||||
},
|
||||
{
|
||||
name: t("footer.docs.client"),
|
||||
href: "https://docs.droposs.org/docs/guides/client",
|
||||
href: "https://droposs.org/docs/user",
|
||||
},
|
||||
],
|
||||
about: [
|
||||
|
||||
+1
-1
@@ -52,7 +52,7 @@
|
||||
"luxon": "^3.6.1",
|
||||
"micromark": "^4.0.1",
|
||||
"normalize-url": "^8.0.2",
|
||||
"nuxt": "^3.21.6",
|
||||
"nuxt": "^3.21.7",
|
||||
"nuxt-security": "2.2.0",
|
||||
"otp-io": "^1.2.7",
|
||||
"parse-cosekey": "^1.0.2",
|
||||
|
||||
@@ -438,7 +438,7 @@
|
||||
|
||||
<NuxtLink
|
||||
class="transition text-xs text-zinc-600 hover:underline hover:text-zinc-400"
|
||||
href="https://docs.droposs.org/docs/library"
|
||||
href="https://droposs.org/docs/reference/library-sources"
|
||||
target="_blank"
|
||||
>
|
||||
<i18n-t
|
||||
|
||||
@@ -279,13 +279,14 @@ const optionsMetadata: {
|
||||
Filesystem: {
|
||||
title: t("library.admin.sources.fsTitle"),
|
||||
description: t("library.admin.sources.fsDesc"),
|
||||
docsLink: "https://docs.droposs.org/docs/library#drop-style",
|
||||
docsLink: "https://droposs.org/docs/reference/library-sources#drop-style",
|
||||
icon: DropLogo,
|
||||
},
|
||||
FlatFilesystem: {
|
||||
title: t("library.admin.sources.fsFlatTitle"),
|
||||
description: t("library.admin.sources.fsFlatDesc"),
|
||||
docsLink: "https://docs.droposs.org/docs/library#flat-style-or-compat",
|
||||
docsLink:
|
||||
"https://droposs.org/docs/reference/library-sources#compatibility-flat-style",
|
||||
icon: BackwardIcon,
|
||||
},
|
||||
};
|
||||
|
||||
@@ -41,7 +41,7 @@ export default defineConfig({
|
||||
{ slug: "user" },
|
||||
{
|
||||
label: "Install",
|
||||
autogenerate: { directory: "user/install" },
|
||||
items: [{ autogenerate: { directory: "user/install" } }],
|
||||
},
|
||||
{
|
||||
label: "Usage",
|
||||
@@ -65,25 +65,26 @@ export default defineConfig({
|
||||
},
|
||||
{
|
||||
label: "Going further",
|
||||
autogenerate: { directory: "admin/going-further" },
|
||||
items: [{ autogenerate: { directory: "admin/going-further" } }],
|
||||
},
|
||||
{
|
||||
label: "Metadata",
|
||||
autogenerate: { directory: "admin/metadata" },
|
||||
items: [{ autogenerate: { directory: "admin/metadata" } }],
|
||||
},
|
||||
{
|
||||
label: "Authentication",
|
||||
autogenerate: { directory: "admin/authentication" },
|
||||
items: [{ autogenerate: { directory: "admin/authentication" } }],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: "Reference",
|
||||
autogenerate: { directory: "reference" },
|
||||
items: [{ autogenerate: { directory: "reference" } }],
|
||||
},
|
||||
],
|
||||
customCss: ["./src/styles/drop.css"],
|
||||
}),
|
||||
],
|
||||
site: "https://docs-next.droposs.org/",
|
||||
site: "https://droposs.org",
|
||||
base: "/docs",
|
||||
});
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
"astro": "astro"
|
||||
},
|
||||
"dependencies": {
|
||||
"@astrojs/starlight": "^0.37.4",
|
||||
"astro": "^5.6.1",
|
||||
"sharp": "^0.34.2",
|
||||
"starlight-image-zoom": "^0.13.2",
|
||||
"starlight-links-validator": "^0.19.2",
|
||||
"@astrojs/starlight": "^0.40.0",
|
||||
"astro": "^6.4.8",
|
||||
"sharp": "^0.35.2",
|
||||
"starlight-image-zoom": "^0.14.2",
|
||||
"starlight-links-validator": "^0.24.1",
|
||||
"starlight-theme-rapide": "^0.5.2"
|
||||
}
|
||||
}
|
||||
@@ -28,7 +28,7 @@ For convenience's sake, we can also specify file extensions for Drop's auto-dete
|
||||
|
||||
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.
|
||||
Read the [Command Parsing](/docs/reference/command-parsing/) article to understand how it's parsed and substituted.
|
||||
|
||||
3. ## Import your game
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ If you're using a library source that supports versioning, you can add and impor
|
||||
|
||||
2. ### Follow the import guide again
|
||||
|
||||
Follow the [import guide again](/admin/guides/import-version/), but this time for your new version folder.
|
||||
Follow the [import guide again](/docs/admin/guides/import-version/), but this time for your new version folder.
|
||||
|
||||
</Steps>
|
||||
|
||||
@@ -39,7 +39,7 @@ You can stack many "update mode" versions on top of each other, and they will pi
|
||||
|
||||
2. ### Follow the import guide again
|
||||
|
||||
Follow the [import guide again](/admin/guides/import-version/), but this time for your new version folder.
|
||||
Follow the [import guide again](/docs/admin/guides/import-version/), but this time for your new version folder.
|
||||
|
||||
3. ### Before import, enable update mode
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ title: Setting up OIDC
|
||||
---
|
||||
|
||||
:::note
|
||||
You can find reference information in the [OIDC authentication docs](/admin/authentication/oidc/).
|
||||
You can find reference information in the [OIDC authentication docs](/docs/admin/authentication/oidc/).
|
||||
:::
|
||||
|
||||
## Authentik
|
||||
|
||||
@@ -10,7 +10,7 @@ To import games and start using Drop, you must first create a library to import
|
||||
|
||||
1. **Decide on a library layout.**
|
||||
|
||||
Drop supports different layouts for your files on disk, you can read more about them in the [Library Sources](/reference/library-sources) reference section.
|
||||
Drop supports different layouts for your files on disk, you can read more about them in the [Library Sources](/docs/reference/library-sources) reference section.
|
||||
|
||||
2. **Mount your library in the Docker container.**
|
||||
|
||||
@@ -28,7 +28,7 @@ To import games and start using Drop, you must first create a library to import
|
||||
- `/mnt/media/my-drop-library` is the path to your library.
|
||||
- `/library` is a **unique** path inside the container. **Use something else if another volume mounts to `/library`**.
|
||||
|
||||
If you followed the [Quickstart](/admin/quickstart/) guide, you'll have already set up a library at `./library` pointing to `/library` within the container. You may want to instead edit that line in the `volumes` section to point to where your library is located.
|
||||
If you followed the [Quickstart](/docs/admin/quickstart/) guide, you'll have already set up a library at `./library` pointing to `/library` within the container. You may want to instead edit that line in the `volumes` section to point to where your library is located.
|
||||
|
||||
3. **Open library source interface in Admin Dashboard.**
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ Drop automatically parses and formats the URL, so there are no requirements on t
|
||||
|
||||
## LAN
|
||||
|
||||
The `compose.yaml` provided in the [Quickstart guide](/admin/quickstart/) already exposes the Drop instance on port 3000. If you're on the same LAN as your Drop instance, you can find it's IP and then use:
|
||||
The `compose.yaml` provided in the [Quickstart guide](/docs/admin/quickstart/) already exposes the Drop instance on port 3000. If you're on the same LAN as your Drop instance, you can find it's IP and then use:
|
||||
|
||||
```
|
||||
http://[instance IP]:3000
|
||||
|
||||
@@ -60,7 +60,7 @@ Once you've got a library set up, and have imported a game, you can import a ver
|
||||
A installer version uses "setup mode". Enable the option, and then add the installer executable in setup commands.
|
||||
|
||||
:::note
|
||||
Setup and launch commands are parsed in a cross-platform, POSIX style. It's not relevant for simple setups, but useful to know. Read more about it in [Command Parsing](/reference/command-parsing/).
|
||||
Setup and launch commands are parsed in a cross-platform, POSIX style. It's not relevant for simple setups, but useful to know. Read more about it in [Command Parsing](/docs/reference/command-parsing/).
|
||||
:::
|
||||
|
||||
6. ### **Wait for import.**
|
||||
|
||||
@@ -40,7 +40,7 @@ services:
|
||||
|
||||
**The main things in this `compose.yaml` is the volumes attached to the `drop` service:**
|
||||
|
||||
1. `./library` is where you will put your games to be imported into Drop. See '[Creating a library](/admin/guides/creating-library/)' once you're set up.
|
||||
1. `./library` is where you will put your games to be imported into Drop. See '[Creating a library](/docs/admin/guides/creating-library/)' once you're set up.
|
||||
2. `./data` is where Drop will store anything that's using the default file-system backed storage system. Typically, these are objects.
|
||||
|
||||
:::tip
|
||||
|
||||
@@ -7,7 +7,7 @@ hero:
|
||||
file: ../../assets/drop.svg
|
||||
actions:
|
||||
- text: Quickstart
|
||||
link: /admin/quickstart
|
||||
link: /docs/admin/quickstart
|
||||
icon: right-arrow
|
||||
- text: Download client
|
||||
link: https://droposs.org/download
|
||||
|
||||
@@ -49,8 +49,8 @@ Only methods supported by your current platform (and the game's target platform)
|
||||
| Method | Description |
|
||||
| ------ | ----------- |
|
||||
| **Native (direct)** *(default for Linux games)* | Runs the native Linux game directly on the host. |
|
||||
| **Steam Linux Runtime (umu-run)** | Runs the native Linux game inside `umu-run`'s Steam Linux Runtime. Requires [UMU launcher](/user/usage/proton/). |
|
||||
| **Proton (umu-run)** *(default for Windows games)* | Runs a Windows game through Proton, using `umu-run`. Requires [Proton](/user/usage/proton/). |
|
||||
| **Steam Linux Runtime (umu-run)** | Runs the native Linux game inside `umu-run`'s Steam Linux Runtime. Requires [UMU launcher](/docs/user/usage/proton/). |
|
||||
| **Proton (umu-run)** *(default for Windows games)* | Runs a Windows game through Proton, using `umu-run`. Requires [Proton](/docs/user/usage/proton/). |
|
||||
| **Proton + muvm (Asahi)** | Runs a Windows game through Proton inside a muvm microVM, for Apple Silicon / Asahi Linux. |
|
||||
|
||||
On macOS, games are always launched directly.
|
||||
|
||||
@@ -48,7 +48,7 @@ In the UI, you'll be prompted to "import" each folder separately:
|
||||
|
||||
So your game has gotten an update and you've got new files. All you need to do is create a new version folder inside the game folder, and move all the files you have into that folder. Then, import it within the Drop admin UI.
|
||||
|
||||
If you have files that you're supposed to **paste over the previous version**, Drop supports that! Read [Update mode](/reference/update-mode/) to find out more.
|
||||
If you have files that you're supposed to **paste over the previous version**, Drop supports that! Read [Update mode](/docs/reference/update-mode/) to find out more.
|
||||
|
||||
# Compatibility (flat-style)
|
||||
|
||||
|
||||
@@ -4,4 +4,4 @@ title: Getting Started
|
||||
|
||||
Drop clients are available for download from [our website](https://droposs.org/download), or follow one of our installation guides on the sidebar. Download the correct version for your platform, and open it up.
|
||||
|
||||
The client will walk you through the setup and sign-in process to get started. You'll need a Drop instance you can connect to, and an account on the server. If you don't have one, you can follow the [Quickstart](/admin/quickstart/) guide to set up your own.
|
||||
The client will walk you through the setup and sign-in process to get started. You'll need a Drop instance you can connect to, and an account on the server. If you don't have one, you can follow the [Quickstart](/docs/admin/quickstart/) guide to set up your own.
|
||||
|
||||
@@ -59,4 +59,4 @@ Drop uses a global default Proton version to launch games by default. You can ov
|
||||
|
||||
## Choosing a launch method
|
||||
|
||||
Proton isn't the only thing you can change per-game. If a game won't start, you can also try a different **launch method** from the same **Game Options → Launch** menu — for example, forcing a Windows game through Proton, or running a native Linux game inside the Steam Linux Runtime. See [Launch methods](/reference/command-parsing/#launch-methods) for the full list.
|
||||
Proton isn't the only thing you can change per-game. If a game won't start, you can also try a different **launch method** from the same **Game Options → Launch** menu — for example, forcing a Windows game through Proton, or running a native Linux game inside the Steam Linux Runtime. See [Launch methods](/docs/reference/command-parsing/#launch-methods) for the full list.
|
||||
@@ -46,7 +46,7 @@ function Header() {
|
||||
<div className="flex flex-col gap-y-2 border-b border-dotted border-zinc-800 pb-4">
|
||||
<dt className="text-sm/6 text-zinc-400">Lines of code</dt>
|
||||
<dd className="order-first text-6xl font-medium tracking-tight">
|
||||
<AnimatedNumber start={10} end={40} />k
|
||||
<AnimatedNumber start={0} end={75} />k
|
||||
</dd>
|
||||
</div>
|
||||
<div className="flex flex-col gap-y-2 border-b border-dotted border-zinc-800 pb-4">
|
||||
@@ -61,7 +61,7 @@ function Header() {
|
||||
<div className="flex flex-col gap-y-2 max-sm:border-b max-sm:border-dotted max-sm:border-gray-200 max-sm:pb-4">
|
||||
<dt className="text-sm/6 text-zinc-400">Docker pulls</dt>
|
||||
<dd className="order-first text-6xl font-medium tracking-tight">
|
||||
<AnimatedNumber start={0} end={48.8} decimals={1} />k
|
||||
<AnimatedNumber start={0} end={210} decimals={1} />k
|
||||
</dd>
|
||||
</div>
|
||||
<div className="flex flex-col gap-y-2">
|
||||
|
||||
@@ -36,7 +36,7 @@ function Hero() {
|
||||
Steam and Epic.
|
||||
</p>
|
||||
<div className="mt-12 flex flex-col gap-x-6 gap-y-4 sm:flex-row">
|
||||
<Button href="https://docs.droposs.org/docs/guides/quickstart">
|
||||
<Button href="/docs/admin/quickstart">
|
||||
Get started
|
||||
</Button>
|
||||
<Button variant="outline" href="/about">
|
||||
|
||||
@@ -23,7 +23,7 @@ function CallToAction() {
|
||||
<div className="mt-6">
|
||||
<Button
|
||||
className="w-full sm:w-auto"
|
||||
href="https://docs.droposs.org/docs/guides/quickstart"
|
||||
href="/docs/admin/quickstart"
|
||||
>
|
||||
Quickstart →
|
||||
</Button>
|
||||
@@ -65,7 +65,7 @@ function Sitemap() {
|
||||
<div>
|
||||
<SitemapHeading>Documentation</SitemapHeading>
|
||||
<SitemapLinks>
|
||||
<SitemapLink href="https://docs.droposs.org/">
|
||||
<SitemapLink href="/docs">
|
||||
Self-hosters
|
||||
</SitemapLink>
|
||||
<SitemapLink href="https://developer.droposs.org/">
|
||||
|
||||
@@ -80,11 +80,11 @@ export function Gallery() {
|
||||
)
|
||||
.map((file) => (
|
||||
<div key={file.url} className="relative w-full">
|
||||
<div className="group overflow-hidden rounded-lg bg-gray-100 focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-blue-600">
|
||||
<div className="group relative block w-full overflow-hidden rounded-lg bg-gray-100 focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-blue-600">
|
||||
<img
|
||||
alt=""
|
||||
src={file.url}
|
||||
className="pointer-events-none aspect-10/7 aspect-auto rounded-lg object-cover outline -outline-offset-1 outline-black/5 group-hover:opacity-75"
|
||||
className="pointer-events-none block w-full rounded-lg object-cover outline -outline-offset-1 outline-black/5 group-hover:opacity-75"
|
||||
/>
|
||||
<button
|
||||
type="button"
|
||||
@@ -96,10 +96,10 @@ export function Gallery() {
|
||||
</span>
|
||||
</button>
|
||||
</div>
|
||||
<p className="pointer-events-none mt-2 block truncate text-sm font-medium text-gray-900">
|
||||
<p className="pointer-events-none mt-2 block truncate text-sm font-medium text-zinc-100">
|
||||
{file.name}
|
||||
</p>
|
||||
<p className="pointer-events-none block text-xs font-medium text-gray-500">
|
||||
<p className="pointer-events-none block text-xs font-medium text-zinc-400">
|
||||
{file.description}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user