mirror of
https://github.com/MrLowPr/overdrive.git
synced 2026-10-17 18:02:48 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
48f86c590c |
No files matched your search
@@ -0,0 +1,31 @@
|
||||
# Changelog
|
||||
|
||||
Changes made in this fork on top of [MyLuxy/overdrive](https://github.com/MyLuxy/overdrive).
|
||||
Upstream's own history is in its [releases](https://github.com/MyLuxy/overdrive/releases);
|
||||
this file only records the fork's additions. See [FORK-NOTES.md](FORK-NOTES.md) for what each
|
||||
change touches.
|
||||
|
||||
## Unreleased
|
||||
|
||||
Nothing yet.
|
||||
|
||||
## mrlowpr.1 — 2026-10-16
|
||||
|
||||
First fork build. Starts from upstream `v1.0.5` (`4d3ced0`).
|
||||
|
||||
### Added
|
||||
- **About this build** section in the settings sheet, showing the fork name, the fork build
|
||||
tag, the app version and the upstream URL, so a fork build is never mistaken for an
|
||||
upstream build.
|
||||
- `BUILD`, `FORK` and `UPSTREAM` exports in `app/version.js`. `VERSION` deliberately left at
|
||||
`1.0.5` so the updater keeps comparing against the upstream feed.
|
||||
- `about.*` copy for English and Indonesian.
|
||||
|
||||
### Changed
|
||||
- Fork banner and social preview art (`assets/banner.svg`).
|
||||
- README opens with a fork notice, links to this fork's releases, and keeps upstream's
|
||||
install instructions and credits intact.
|
||||
|
||||
### Known limitations
|
||||
- Only the `about.*` keys are translated here; the other 14 catalogs fall back to English,
|
||||
which is the upstream behaviour for any missing key.
|
||||
@@ -0,0 +1,51 @@
|
||||
# Fork notes
|
||||
|
||||
This repository is a fork of **[MyLuxy/overdrive](https://github.com/MyLuxy/overdrive)** — the
|
||||
original project, which decompiled the PS5 store, recovered its source and rebuilt it. All
|
||||
original credit goes to [MyLuxy](https://github.com/MyLuxy) and the upstream contributors.
|
||||
|
||||
Upstream stays the source of truth for how the store works. This fork exists so that a few
|
||||
local changes can live somewhere without blocking on upstream. Everything below is what this
|
||||
fork adds; everything else is upstream code.
|
||||
|
||||
## What this fork changes
|
||||
|
||||
| Area | Change | Where |
|
||||
| --- | --- | --- |
|
||||
| Build identity | `BUILD`, `FORK` and `UPSTREAM` exports next to the untouched `VERSION` | `app/version.js` |
|
||||
| Settings sheet | New read-only **About this build** section: fork name, fork build tag, app version, upstream URL | `app/ui/LanguageSheet.jsx` |
|
||||
| Copy (EN) | `about.title`, `about.detail`, `about.build`, `about.version`, `about.upstream` | `app/i18n/locales/en.json` |
|
||||
| Copy (ID) | The same five keys, in Indonesian | `app/i18n/locales/id.json` |
|
||||
| Branding | Fork banner and social preview (`assets/banner.svg`) | `assets/banner.svg` |
|
||||
| Docs | Fork notice at the top of the README, this file, and `CHANGELOG.md` | `README.md` |
|
||||
|
||||
## Why `VERSION` is not bumped
|
||||
|
||||
`VERSION` is what the app compares against the upstream update feed. Changing it would make a
|
||||
fork build claim a version the upstream feed has never published, and the updater would start
|
||||
offering an update that does not exist. The fork therefore carries its own `BUILD` tag
|
||||
(`mrlowpr.N`) instead, and `VERSION` stays `1.0.5` until upstream moves.
|
||||
|
||||
## Staying in sync with upstream
|
||||
|
||||
```bash
|
||||
git remote -v # origin = this fork, upstream = MyLuxy/overdrive
|
||||
git fetch upstream
|
||||
git merge upstream/main # or rebase, your choice
|
||||
```
|
||||
|
||||
Two conflicts are expected and both are mechanical:
|
||||
|
||||
- `app/version.js` — upstream may move `VERSION`; keep the fork's `BUILD`/`FORK`/`UPSTREAM`
|
||||
exports when merging.
|
||||
- `app/i18n/locales/en.json` and `id.json` — the `about.*` keys are appended at the end of
|
||||
each catalog, so an upstream append lands next to them.
|
||||
|
||||
If a change here is worth having upstream, open a pull request against
|
||||
[MyLuxy/overdrive](https://github.com/MyLuxy/overdrive) rather than letting it drift.
|
||||
|
||||
## Conventions
|
||||
|
||||
Upstream marks every deliberate deviation with a `// MODIFIED:` comment in the file header.
|
||||
Fork-only changes continue that convention with an explicit `// MODIFIED (fork):` marker, so
|
||||
the two sets of changes stay distinguishable in the diff.
|
||||
@@ -1,3 +1,20 @@
|
||||
<div align="center">
|
||||
|
||||
<img src="assets/banner.svg" alt="Overdrive — MrLowPr fork" width="100%">
|
||||
|
||||
</div>
|
||||
|
||||
> [!IMPORTANT]
|
||||
> **This repository is a fork of [MyLuxy/overdrive](https://github.com/MyLuxy/overdrive).**
|
||||
> Upstream is the original project and stays the source of truth for the app's behaviour;
|
||||
> this fork exists to carry its own changes. Everything that is different here is listed in
|
||||
> **[FORK-NOTES.md](FORK-NOTES.md)** and in [CHANGELOG.md](CHANGELOG.md).
|
||||
> Credits go to [MyLuxy](https://github.com/MyLuxy) and the original contributors.
|
||||
>
|
||||
> **Install from this fork:** [latest fork release](https://github.com/MrLowPr/overdrive/releases/latest) ·
|
||||
> [fork changelog](CHANGELOG.md) · [what changed here](FORK-NOTES.md).
|
||||
> Upstream's builds are still the recommended ones unless you want a fork-only change.
|
||||
|
||||
<p align="center">
|
||||
<picture>
|
||||
<source media="(prefers-color-scheme: dark)" srcset=".github/readme/logo-dark.svg">
|
||||
|
||||
@@ -452,5 +452,10 @@
|
||||
"capture.validating": "Checking the captured file\u2026",
|
||||
"capture.detail": "Don't press Download or any ad: the link is captured by itself and the download starts automatically. You have 3 minutes.",
|
||||
"capture.link.title": "Download verification",
|
||||
"capture.link.detail": "Pass the check: the link is captured by itself. Cancel any download the browser starts. You have 3 minutes."
|
||||
"capture.link.detail": "Pass the check: the link is captured by itself. Cancel any download the browser starts. You have 3 minutes.",
|
||||
"about.title": "About this build",
|
||||
"about.detail": "This build comes from a fork. Upstream stays the source of truth for how the store works.",
|
||||
"about.build": "Build",
|
||||
"about.version": "App version",
|
||||
"about.upstream": "Upstream"
|
||||
}
|
||||
@@ -431,5 +431,10 @@
|
||||
"versions.recommended": "Direkomendasikan · berjalan native di PS5",
|
||||
"versions.sources": "{count, plural, other {# sumber}}",
|
||||
"versions.thisPage": "Halaman ini",
|
||||
"versions.title": "Pilih versi"
|
||||
"versions.title": "Pilih versi",
|
||||
"about.title": "Tentang build ini",
|
||||
"about.detail": "Build ini berasal dari fork. Proyek asli tetap jadi rujukan utama cara kerja toko.",
|
||||
"about.build": "Build",
|
||||
"about.version": "Versi aplikasi",
|
||||
"about.upstream": "Proyek asli"
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
// ../pub-game-store/native/ui/LanguageSheet.jsx
|
||||
// reconstructed from the esbuild bundle in eboot.bin
|
||||
// MODIFIED: the sheet is the app's settings: a download speed limit, navigation vibration, then the languages.
|
||||
// MODIFIED (fork): an "About this build" section after the languages, so a build from this fork is
|
||||
// told apart from an upstream build: fork name, fork build tag, app version and the upstream URL.
|
||||
|
||||
import '../assets/Inter-Regular.ttf';
|
||||
import { Fragment, jsx, jsxs } from 'react/jsx-runtime';
|
||||
@@ -12,6 +14,7 @@ import { SideSheet } from './SideSheet.jsx';
|
||||
import { colors } from './colors.js';
|
||||
import { setNavigationHaptics, useNavigationHaptics } from './haptics.js';
|
||||
import { LIMITS, setSpeedLimit, useSpeedLimit } from '../state/speed-limit.js';
|
||||
import { BUILD, FORK, UPSTREAM, VERSION } from '../version.js';
|
||||
import { Text, View, useIsFocused } from '@ps5-react/core';
|
||||
|
||||
var nameOf = (code) => LOCALES.find((locale2) => locale2.code === code).name;
|
||||
@@ -62,6 +65,23 @@ import { Text, View, useIsFocused } from '@ps5-react/core';
|
||||
text
|
||||
] });
|
||||
}
|
||||
// MODIFIED (fork): the build's identity, read-only. A label and a value per row, so nothing here
|
||||
// takes focus and the sheet stays a settings sheet.
|
||||
function AboutRow({ label, value }) {
|
||||
return /* @__PURE__ */ (0, jsxs)(View, { style: { flexDirection: "row", alignItems: "center", justifyContent: "space-between", gap: 24, paddingHorizontal: 18, paddingVertical: 9 }, children: [
|
||||
/* @__PURE__ */ (0, jsx)(Text, { style: { fontFamily: "Inter-Regular", fontSize: 21, color: colors.muted }, children: label }),
|
||||
/* @__PURE__ */ (0, jsx)(Text, { style: { fontFamily: "Inter-Regular", fontSize: 21, fontWeight: 600, color: colors.fg, flexShrink: 1, textAlign: "right" }, children: value })
|
||||
] });
|
||||
}
|
||||
function AboutBuild() {
|
||||
const t2 = useT();
|
||||
return /* @__PURE__ */ (0, jsxs)(View, { style: { gap: 3, paddingBottom: 18 }, children: [
|
||||
/* @__PURE__ */ (0, jsx)(SectionLabel, { icon: "package", title: t2("about.title"), detail: t2("about.detail") }),
|
||||
/* @__PURE__ */ (0, jsx)(AboutRow, { label: t2("about.build"), value: `${FORK} · ${BUILD}` }),
|
||||
/* @__PURE__ */ (0, jsx)(AboutRow, { label: t2("about.version"), value: `v${VERSION}` }),
|
||||
/* @__PURE__ */ (0, jsx)(AboutRow, { label: t2("about.upstream"), value: UPSTREAM })
|
||||
] });
|
||||
}
|
||||
function LanguageSheet({ onClose }) {
|
||||
const t2 = useT();
|
||||
const choice2 = languageChoice();
|
||||
@@ -81,7 +101,8 @@ import { Text, View, useIsFocused } from '@ps5-react/core';
|
||||
/* @__PURE__ */ (0, jsx)(Row4, { code: "system", name: t2("language.system"), detail: nameOf(systemLocale()), checked: choice2 === null, onPress: () => pick2(null) }),
|
||||
LOCALES.map(
|
||||
({ code, name }) => /* @__PURE__ */ (0, jsx)(Row4, { code, name, detail: t2(`language.name.${code}`), checked: choice2 === code, onPress: () => pick2(code) }, code)
|
||||
)
|
||||
),
|
||||
/* @__PURE__ */ (0, jsx)(AboutBuild, {})
|
||||
] }) });
|
||||
}
|
||||
|
||||
|
||||
+7
-2
@@ -1,7 +1,12 @@
|
||||
// ../pub-game-store/native/version.js
|
||||
// reconstructed from the esbuild bundle in eboot.bin
|
||||
|
||||
// MODIFIED: fork identity. VERSION stays the upstream app version so the update
|
||||
// check keeps comparing against the upstream feed; BUILD is this fork's own
|
||||
// build tag, shown in the settings sheet's "About this build" section.
|
||||
|
||||
var VERSION = "1.0.5";
|
||||
var BUILD = "mrlowpr.1";
|
||||
var FORK = "MrLowPr fork";
|
||||
var UPSTREAM = "https://github.com/MyLuxy/overdrive";
|
||||
|
||||
export { VERSION };
|
||||
export { VERSION, BUILD, FORK, UPSTREAM };
|
||||
+30
-15
@@ -1,24 +1,39 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1280" height="640" viewBox="0 0 1280 640" role="img" aria-label="overdrive">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="1280" height="640" viewBox="0 0 1280 640" role="img" aria-label="Overdrive — MrLowPr fork">
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
|
||||
<stop offset="0" stop-color="#0f172a"/>
|
||||
<stop offset="0.55" stop-color="#1e1b4b"/>
|
||||
<stop offset="1" stop-color="#312e81"/>
|
||||
<stop offset="0" stop-color="#2b0a1a"/>
|
||||
<stop offset="0.5" stop-color="#4a0f2a"/>
|
||||
<stop offset="1" stop-color="#120a2e"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="accent" x1="0" y1="0" x2="1" y2="0">
|
||||
<stop offset="0" stop-color="#38bdf8"/>
|
||||
<stop offset="1" stop-color="#a78bfa"/>
|
||||
<stop offset="0" stop-color="#fb7185"/>
|
||||
<stop offset="0.55" stop-color="#f472b6"/>
|
||||
<stop offset="1" stop-color="#22d3ee"/>
|
||||
</linearGradient>
|
||||
<pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse">
|
||||
<path d="M40 0H0V40" fill="none" stroke="#ffffff" stroke-opacity="0.05"/>
|
||||
<radialGradient id="glow" cx="0.75" cy="0.25" r="0.6">
|
||||
<stop offset="0" stop-color="#f472b6" stop-opacity="0.28"/>
|
||||
<stop offset="1" stop-color="#f472b6" stop-opacity="0"/>
|
||||
</radialGradient>
|
||||
<pattern id="dots" width="28" height="28" patternUnits="userSpaceOnUse">
|
||||
<circle cx="2" cy="2" r="1.4" fill="#ffffff" fill-opacity="0.07"/>
|
||||
</pattern>
|
||||
</defs>
|
||||
<rect width="1280" height="640" fill="url(#bg)"/>
|
||||
<rect width="1280" height="640" fill="url(#grid)"/>
|
||||
<circle cx="1090" cy="120" r="220" fill="#38bdf8" fill-opacity="0.10"/>
|
||||
<circle cx="1180" cy="520" r="180" fill="#a78bfa" fill-opacity="0.12"/>
|
||||
<rect x="96" y="236" width="96" height="8" rx="4" fill="url(#accent)"/>
|
||||
<text x="96" y="332" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="84" font-weight="800" fill="#ffffff">overdrive</text>
|
||||
<text x="96" y="396" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="30" fill="#cbd5e1">Overdrive, a PS5 homebrew game store with 1,800+ games.</text>
|
||||
<text x="96" y="560" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="22" fill="#94a3b8">github.com/MrLowPr/overdrive</text>
|
||||
<rect width="1280" height="640" fill="url(#dots)"/>
|
||||
<rect width="1280" height="640" fill="url(#glow)"/>
|
||||
|
||||
<rect x="96" y="188" width="104" height="8" rx="4" fill="url(#accent)"/>
|
||||
<text x="96" y="286" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="88" font-weight="800" fill="#ffffff">Overdrive</text>
|
||||
<text x="96" y="344" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="30" fill="#e9d5e2">Your PS5 game store — rebuilt from its own binary</text>
|
||||
|
||||
<g transform="translate(96 392)">
|
||||
<rect x="0" y="0" width="286" height="46" rx="23" fill="#f472b6" fill-opacity="0.16" stroke="#f472b6" stroke-opacity="0.55"/>
|
||||
<text x="143" y="30" text-anchor="middle" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="20" font-weight="700" fill="#fbcfe8">MrLowPr fork · v1.1.0</text>
|
||||
</g>
|
||||
|
||||
<g font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="21" fill="#c9b6c4">
|
||||
<text x="410" y="422">Fork of MyLuxy/overdrive · full source, rebuilt UI</text>
|
||||
</g>
|
||||
|
||||
<text x="96" y="560" font-family="Inter, Segoe UI, Helvetica, Arial, sans-serif" font-size="22" fill="#a78b9a">github.com/MrLowPr/overdrive</text>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 2.2 KiB |
Reference in new issue
Block a user