Showing the changes to scripts (2 of 13 files). Show all
Unified · Split
| @@ -349,6 +349,11 @@ it.layer(NodeServices.layer)("build-desktop-artifact", (it) => { · 348 unmodified lines | ||
| 349 | 349 | assert.notProperty(mac, "asarUnpack"); |
| 350 | 350 | assert.notProperty(linux, "asarUnpack"); |
| 351 | 351 | assert.deepStrictEqual(win.asarUnpack, WINDOWS_ASAR_UNPACK); |
| 352 | + // Linux must register the renderer schemes so the generated .desktop | |
| 353 | + // entry advertises MimeType=x-scheme-handler/t3code; for OAuth deep links. | |
| 354 | + assert.deepStrictEqual((linux.linux as Record<string, unknown>).protocols, [ | |
| 355 | + { name: "T3 Code", schemes: ["t3code", "t3code-dev"] }, | |
| 356 | + ]); | |
| 352 | 357 | for (const config of [mac, linux, win]) { |
| 353 | 358 | assert.deepStrictEqual(config.electronLanguages, DESKTOP_ELECTRON_LANGUAGES); |
| 354 | 359 | assert.deepStrictEqual(config.files, DESKTOP_FILE_EXCLUSIONS); |
| @@ -1589,6 +1589,15 @@ export const createBuildConfig = Effect.fn("createBuildConfig")(function* ( · 1588 unmodified lines | ||
| 1589 | 1589 | executableName: "t3code", |
| 1590 | 1590 | icon: "icons", |
| 1591 | 1591 | category: "Development", |
| 1592 | + // electron-builder turns these into MimeType=x-scheme-handler/<scheme>; | |
| 1593 | + // in the .desktop entry (Exec already gets %U), so browsers can hand | |
| 1594 | + // t3code:// OAuth callbacks to the app. | |
| 1595 | + protocols: [ | |
| 1596 | + { | |
| 1597 | + name: "T3 Code", | |
| 1598 | + schemes: ["t3code", "t3code-dev"], | |
| 1599 | + }, | |
| 1600 | + ], | |
| 1592 | 1601 | desktop: { |
| 1593 | 1602 | entry: { |
| 1594 | 1603 | StartupWMClass: "t3code", |