mirror of
https://github.com/Zagrios/bs-manager.git
synced 2026-07-03 14:08:25 +02:00
Compare commits
15 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 38282dd1e7 | |||
| 9d945cdcfb | |||
| 5ea12c2c3a | |||
| 0a30867a12 | |||
| f46fee7ee7 | |||
| ed5f8fb073 | |||
| dfe63e525e | |||
| 207d3c782e | |||
| 56b462ad8a | |||
| 2e85c62c02 | |||
| 7fcef774a8 | |||
| 5337c4a61f | |||
| ed158f55c5 | |||
| 568ad7d051 | |||
| e1ca8dbf99 |
@@ -847,7 +847,25 @@
|
||||
"ReleaseURL": "https://steamcommunity.com/games/620980/announcements/detail/510702041542166484",
|
||||
"ReleaseImg": "https://clan.fastly.steamstatic.com/images/32055887/c27dac7f96e53672d020d97838cec1d5d28e3180.png",
|
||||
"ReleaseDate": "1743515622",
|
||||
"year": "2025"
|
||||
},
|
||||
{
|
||||
"BSVersion": "1.40.5",
|
||||
"BSManifest": "2447038720841508806",
|
||||
"OculusBinaryId": "9120095564756808",
|
||||
"ReleaseURL": "https://steamcommunity.com/games/620980/announcements/detail/502825275922317447",
|
||||
"ReleaseImg": "https://clan.fastly.steamstatic.com/images/32055887/2b5845893d915902106aaf30b6d1a95f68a4b226.png",
|
||||
"ReleaseDate": "1747321305",
|
||||
"year": "2025"
|
||||
},
|
||||
{
|
||||
"BSVersion": "1.40.6",
|
||||
"BSManifest": "3050696685250334115",
|
||||
"OculusBinaryId": "9315734585192904",
|
||||
"ReleaseURL": "https://steamcommunity.com/games/620980/announcements/detail/510708375093248769",
|
||||
"ReleaseImg": "https://clan.fastly.steamstatic.com/images/32055887/0f658ed39f480446e0dc5807b1591e8a18aef2f5.png",
|
||||
"ReleaseDate": "1749135144",
|
||||
"year": "2025",
|
||||
"recommended": true
|
||||
}
|
||||
]
|
||||
]
|
||||
|
||||
@@ -161,6 +161,14 @@
|
||||
},
|
||||
{
|
||||
"username": "KingCrocman",
|
||||
"type": "diamond",
|
||||
"link": "https://www.youtube.com/KingCrocman"
|
||||
},
|
||||
{
|
||||
"username": "bosspie",
|
||||
"type": "diamond"
|
||||
},
|
||||
{
|
||||
"username": "Camryn Jackson"
|
||||
}
|
||||
]
|
||||
|
||||
+6
-5
@@ -30,11 +30,12 @@
|
||||
In the developer tools:
|
||||
|
||||
1. Open the __`Network`__ tab.
|
||||
2. Filter for __`graph`__.
|
||||
3. Click on the first request that appears.
|
||||
4. Open the __`Payload`__ tab.
|
||||
5. Scroll to the bottom to locate your token. It should start with __`FRL`__.
|
||||
6. Select the token using your mouse and press `Ctrl` + `C` to copy it.
|
||||
2. Press CTRL+R.
|
||||
3. Filter for __`graph`__.
|
||||
4. Click on the first request that appears.
|
||||
5. Open the __`Payload`__ tab.
|
||||
6. Scroll to the bottom to locate your token. It should start with __`FRL`__.
|
||||
7. Select the token using your mouse and press `Ctrl` + `C` to copy it.
|
||||
|
||||
<div align="center">
|
||||
<img src="../wiki/Guides/Login/How-to-obtain-your-Oculus-Token/GetYourOculusToken.png" alt="GetYourOculusToken.png" />
|
||||
|
||||
Generated
+27
-27
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "bs-manager",
|
||||
"version": "1.5.2",
|
||||
"version": "1.5.3",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "bs-manager",
|
||||
"version": "1.5.2",
|
||||
"version": "1.5.3",
|
||||
"hasInstallScript": true,
|
||||
"license": "GPL-3.0-only",
|
||||
"dependencies": {
|
||||
@@ -27,7 +27,7 @@
|
||||
"electron-updater": "^6.3.9",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"format-duration": "^3.0.2",
|
||||
"framer-motion": "^12.6.3",
|
||||
"framer-motion": "^12.17.0",
|
||||
"fs-extra": "^11.3.0",
|
||||
"global-agent": "^3.0.0",
|
||||
"got": "^14.4.7",
|
||||
@@ -37,7 +37,7 @@
|
||||
"node-abi": "^4.2.0",
|
||||
"node-fetch": "^3.3.2",
|
||||
"pako": "^2.1.0",
|
||||
"protobufjs": "^7.4.0",
|
||||
"protobufjs": "^7.5.3",
|
||||
"qrcode.react": "^4.2.0",
|
||||
"query-process": "^0.0.3",
|
||||
"react": "^18.2.0",
|
||||
@@ -52,7 +52,7 @@
|
||||
"rfdc": "^1.4.1",
|
||||
"rxjs": "^7.8.2",
|
||||
"sanitize-filename": "^1.6.3",
|
||||
"semver": "^7.7.1",
|
||||
"semver": "^7.7.2",
|
||||
"serialize-error": "^12.0.0",
|
||||
"striptags": "^4.0.0-alpha.4",
|
||||
"tailwind-merge": "^3.0.2",
|
||||
@@ -105,7 +105,7 @@
|
||||
"css-loader": "^6.10.0",
|
||||
"css-minimizer-webpack-plugin": "^6.0.0",
|
||||
"detect-port": "^1.5.1",
|
||||
"electron": "^35.1.4",
|
||||
"electron": "^36.4.0",
|
||||
"electron-builder": "^25.1.8",
|
||||
"electron-devtools-installer": "^4.0.0",
|
||||
"electronmon": "^2.0.3",
|
||||
@@ -11870,9 +11870,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/electron": {
|
||||
"version": "35.1.4",
|
||||
"resolved": "https://registry.npmjs.org/electron/-/electron-35.1.4.tgz",
|
||||
"integrity": "sha512-8HjE2wqxY//T09Of8k1eTpK/NeTG2FkTyRD+fyKXmec4wZVscGgZcmWFC0HYN4ktyHAjtplpxdFXjtqRnvzBMg==",
|
||||
"version": "36.4.0",
|
||||
"resolved": "https://registry.npmjs.org/electron/-/electron-36.4.0.tgz",
|
||||
"integrity": "sha512-LLOOZEuW5oqvnjC7HBQhIqjIIJAZCIFjQxltQGLfEC7XFsBoZgQ3u3iFj+Kzw68Xj97u1n57Jdt7P98qLvUibQ==",
|
||||
"dev": true,
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
@@ -14433,13 +14433,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/framer-motion": {
|
||||
"version": "12.6.3",
|
||||
"resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.6.3.tgz",
|
||||
"integrity": "sha512-2hsqknz23aloK85bzMc9nSR2/JP+fValQ459ZTVElFQ0xgwR2YqNjYSuDZdFBPOwVCt4Q9jgyTt6hg6sVOALzw==",
|
||||
"version": "12.17.0",
|
||||
"resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.17.0.tgz",
|
||||
"integrity": "sha512-2hISKgDk49yCLStwG1wf4Kdy/D6eBw9/eRNaWFIYoI9vMQ/Mqd1Fz+gzVlEtxJmtQ9y4IWnXm19/+UXD3dAYAA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"motion-dom": "^12.6.3",
|
||||
"motion-utils": "^12.6.3",
|
||||
"motion-dom": "^12.17.0",
|
||||
"motion-utils": "^12.12.1",
|
||||
"tslib": "^2.4.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
@@ -19233,18 +19233,18 @@
|
||||
}
|
||||
},
|
||||
"node_modules/motion-dom": {
|
||||
"version": "12.6.3",
|
||||
"resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.6.3.tgz",
|
||||
"integrity": "sha512-gRY08RjcnzgFYLemUZ1lo/e9RkBxR+6d4BRvoeZDSeArG4XQXERSPapKl3LNQRu22Sndjf1h+iavgY0O4NrYqA==",
|
||||
"version": "12.17.0",
|
||||
"resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.17.0.tgz",
|
||||
"integrity": "sha512-FA6/c70R9NKs3g41XDVONzmUUrEmyaifLVGCWtAmHP0usDnX9W+RN/tmbC4EUl0w6yLGvMTOwnWCFVgA5luhRg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"motion-utils": "^12.6.3"
|
||||
"motion-utils": "^12.12.1"
|
||||
}
|
||||
},
|
||||
"node_modules/motion-utils": {
|
||||
"version": "12.6.3",
|
||||
"resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.6.3.tgz",
|
||||
"integrity": "sha512-R/b3Ia2VxtTNZ4LTEO5pKYau1OUNHOuUfxuP0WFCTDYdHkeTBR9UtxR1cc8mDmKr8PEhmmfnTKGz3rSMjNRoRg==",
|
||||
"version": "12.12.1",
|
||||
"resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.12.1.tgz",
|
||||
"integrity": "sha512-f9qiqUHm7hWSLlNW8gS9pisnsN7CRFRD58vNjptKdsqFLpkVnX00TNeD6Q0d27V9KzT7ySFyK1TZ/DShfVOv6w==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/mrmime": {
|
||||
@@ -21153,9 +21153,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/protobufjs": {
|
||||
"version": "7.4.0",
|
||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz",
|
||||
"integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==",
|
||||
"version": "7.5.3",
|
||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.5.3.tgz",
|
||||
"integrity": "sha512-sildjKwVqOI2kmFDiXQ6aEB0fjYTafpEvIBs8tOR8qI4spuL9OPROLVu2qZqi/xgCfsHIwVqlaF8JBjWFHnKbw==",
|
||||
"hasInstallScript": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"dependencies": {
|
||||
@@ -22470,9 +22470,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "7.7.1",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz",
|
||||
"integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==",
|
||||
"version": "7.7.2",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz",
|
||||
"integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==",
|
||||
"license": "ISC",
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
|
||||
+4
-4
@@ -108,7 +108,7 @@
|
||||
"css-loader": "^6.10.0",
|
||||
"css-minimizer-webpack-plugin": "^6.0.0",
|
||||
"detect-port": "^1.5.1",
|
||||
"electron": "^35.1.4",
|
||||
"electron": "^36.4.0",
|
||||
"electron-builder": "^25.1.8",
|
||||
"electron-devtools-installer": "^4.0.0",
|
||||
"electronmon": "^2.0.3",
|
||||
@@ -170,7 +170,7 @@
|
||||
"electron-updater": "^6.3.9",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"format-duration": "^3.0.2",
|
||||
"framer-motion": "^12.6.3",
|
||||
"framer-motion": "^12.17.0",
|
||||
"fs-extra": "^11.3.0",
|
||||
"global-agent": "^3.0.0",
|
||||
"got": "^14.4.7",
|
||||
@@ -180,7 +180,7 @@
|
||||
"node-abi": "^4.2.0",
|
||||
"node-fetch": "^3.3.2",
|
||||
"pako": "^2.1.0",
|
||||
"protobufjs": "^7.4.0",
|
||||
"protobufjs": "^7.5.3",
|
||||
"qrcode.react": "^4.2.0",
|
||||
"query-process": "^0.0.3",
|
||||
"react": "^18.2.0",
|
||||
@@ -195,7 +195,7 @@
|
||||
"rfdc": "^1.4.1",
|
||||
"rxjs": "^7.8.2",
|
||||
"sanitize-filename": "^1.6.3",
|
||||
"semver": "^7.7.1",
|
||||
"semver": "^7.7.2",
|
||||
"serialize-error": "^12.0.0",
|
||||
"striptags": "^4.0.0-alpha.4",
|
||||
"tailwind-merge": "^3.0.2",
|
||||
|
||||
@@ -359,7 +359,18 @@ export class LocalPlaylistsManagerService {
|
||||
continue;
|
||||
}
|
||||
|
||||
const downloadedMap = await this.maps.downloadMap(mapDetail, version);
|
||||
const downloadedMap = await this.maps.downloadMap(mapDetail, version)
|
||||
.catch(error => {
|
||||
log.error(
|
||||
"Could not download map for playlist",
|
||||
`[${mapDetail.id}] "${mapDetail.name}"`,
|
||||
error
|
||||
);
|
||||
return null;
|
||||
});
|
||||
if (!downloadedMap) {
|
||||
continue;
|
||||
}
|
||||
|
||||
progress.data.downloadedMaps.push(downloadedMap);
|
||||
progress.data.currentDownload = mapDetail;
|
||||
|
||||
@@ -129,12 +129,7 @@ export class LinuxService {
|
||||
return fs.pathExistsSync(protonPath) && fs.pathExistsSync(winePath);
|
||||
}
|
||||
|
||||
public async getWinePath(): Promise<string> {
|
||||
if (await this.isNixOS()) {
|
||||
// Use system wine for nixos
|
||||
return "wine";
|
||||
}
|
||||
|
||||
public getWinePath(): string {
|
||||
if (!this.staticConfig.has("proton-folder")) {
|
||||
throw new Error("proton-folder variable not set");
|
||||
}
|
||||
|
||||
@@ -38,6 +38,7 @@ export class BeatModsApiService {
|
||||
}
|
||||
|
||||
private getVersionModsUrl(version: BSVersion): string {
|
||||
// TODO: This endpoint is now deprecated
|
||||
const platform: BbmPlatform = version.oculus || version.metadata?.store === BsStore.OCULUS ? BbmPlatform.OculusPC : BbmPlatform.SteamPC;
|
||||
return `${this.MODS_REPO_API_URL}/mods?status=verified&gameVersion=${version.BSVersion}&gameName=BeatSaber&platform=${platform}`;
|
||||
}
|
||||
|
||||
@@ -162,18 +162,22 @@ export class BsModsManagerService {
|
||||
let winePath: string = "";
|
||||
if (process.platform === "linux") {
|
||||
const { error: winePathError, result: winePathResult } =
|
||||
await tryit(async () => this.linuxService.getWinePath());
|
||||
tryit(() => this.linuxService.getWinePath());
|
||||
if (winePathError) {
|
||||
log.error(winePathError);
|
||||
return false;
|
||||
}
|
||||
winePath = `"${winePathResult}"`;
|
||||
|
||||
winePath = await this.linuxService.isNixOS()
|
||||
? `steam-run "${winePathResult}"`
|
||||
: `"${winePathResult}"`;
|
||||
|
||||
const winePrefix = this.linuxService.getWinePrefixPath();
|
||||
if (!winePrefix) {
|
||||
throw new CustomError("Could not find BSManager WINEPREFIX path", "no-wineprefix");
|
||||
}
|
||||
env.WINEPREFIX = winePrefix;
|
||||
Object.assign(env, process.env);
|
||||
}
|
||||
|
||||
return new Promise<boolean>(resolve => {
|
||||
|
||||
+1
-1
@@ -249,7 +249,7 @@ export const LocalMapsListPanel = forwardRef<unknown, Props>(({
|
||||
|
||||
return (
|
||||
<VirtualScroll
|
||||
classNames={{ mainDiv: className, rows: "gap-x-2 px-2 py-2" }}
|
||||
classNames={{ mainDiv: className, rows: "gap-x-2 px-2 pt-2 pb-[108px]" }}
|
||||
itemHeight={108}
|
||||
maxColumns={3}
|
||||
minItemWidth={400}
|
||||
|
||||
Reference in New Issue
Block a user