| ... | @@ -929,6 +929,7 @@ interface StagePackageJson { | ... | @@ -929,6 +929,7 @@ interface StagePackageJson { |
| 929 | readonly private: true; | 929 | readonly private: true; |
| 930 | readonly packageManager: string; | 930 | readonly packageManager: string; |
| 931 | readonly description: string; | 931 | readonly description: string; |
| | 932 | readonly license: string; |
| 932 | readonly homepage: string; | 933 | readonly homepage: string; |
| 933 | readonly author: string; | 934 | readonly author: string; |
| 934 | readonly main: string; | 935 | readonly main: string; |
| ... | @@ -2766,6 +2767,8 @@ export const createBuildConfig = Effect.fn("createBuildConfig")(function* ( | ... | @@ -2766,6 +2767,8 @@ export const createBuildConfig = Effect.fn("createBuildConfig")(function* ( |
| 2766 | // dynamically loads the system libfuse2 library. Pin the static runtime so | 2767 | // dynamically loads the system libfuse2 library. Pin the static runtime so |
| 2767 | // the AppImage also launches on distributions that only provide FUSE 3. | 2768 | // the AppImage also launches on distributions that only provide FUSE 3. |
| 2768 | buildConfig.toolsets = { appimage: "1.0.3" }; | 2769 | buildConfig.toolsets = { appimage: "1.0.3" }; |
| | 2770 | const path = yield* Path.Path; |
| | 2771 | const repoRoot = yield* RepoRoot; |
| 2769 | buildConfig.linux = { | 2772 | buildConfig.linux = { |
| 2770 | // The .deb is built from the same unpacked app after the AppImage. | 2773 | // The .deb is built from the same unpacked app after the AppImage. |
| 2771 | // electron-builder lists both in latest-linux.yml and writes | 2774 | // electron-builder lists both in latest-linux.yml and writes |
| ... | @@ -2794,6 +2797,12 @@ export const createBuildConfig = Effect.fn("createBuildConfig")(function* ( | ... | @@ -2794,6 +2797,12 @@ export const createBuildConfig = Effect.fn("createBuildConfig")(function* ( |
| 2794 | }, | 2797 | }, |
| 2795 | }; | 2798 | }; |
| 2796 | buildConfig.deb = { | 2799 | buildConfig.deb = { |
| | 2800 | // FPM runs outside the staged app directory, so source paths must be absolute. |
| | 2801 | // AppStream consumers associate this metadata with our t3code.desktop entry. |
| | 2802 | fpm: [ |
| | 2803 | `${path.join(repoRoot, "apps/desktop/resources/linux/com.t3tools.t3code.metainfo.xml")}=/usr/share/metainfo/com.t3tools.t3code.metainfo.xml`, |
| | 2804 | `${path.join(repoRoot, "LICENSE")}=/usr/share/doc/t3code/copyright`, |
| | 2805 | ], |
| 2797 | // Electron's runtime libraries. Debian 13 and Ubuntu 24.04 renamed some | 2806 | // Electron's runtime libraries. Debian 13 and Ubuntu 24.04 renamed some |
| 2798 | // for 64-bit time; the old name is the fallback for older releases. | 2807 | // for 64-bit time; the old name is the fallback for older releases. |
| 2799 | depends: [ | 2808 | depends: [ |
| ... | @@ -3702,7 +3711,9 @@ const buildDesktopArtifact = Effect.fn("buildDesktopArtifact")(function* ( | ... | @@ -3702,7 +3711,9 @@ const buildDesktopArtifact = Effect.fn("buildDesktopArtifact")(function* ( |
| 3702 | t3codeCommitHash: commitHash, | 3711 | t3codeCommitHash: commitHash, |
| 3703 | private: true, | 3712 | private: true, |
| 3704 | packageManager: rootPackageJson.packageManager, | 3713 | packageManager: rootPackageJson.packageManager, |
| 3705 | description: "T3 Code desktop build", | 3714 | description: |
| | 3715 | "T3 Code is an open-source desktop app for coding agents. Work with your existing agent subscriptions, review code changes, and run commands in your projects. Connect from desktop, web, or mobile to continue working remotely.", |
| | 3716 | license: "MIT", |
| 3706 | // Required by the .deb control file. | 3717 | // Required by the .deb control file. |
| 3707 | homepage: "https://t3.codes", | 3718 | homepage: "https://t3.codes", |
| 3708 | author: "T3 Tools", | 3719 | author: "T3 Tools", |