diff --git a/apps/desktop/package.json b/apps/desktop/package.json
index 1526965427f..32d47a3d30f 100644
--- a/apps/desktop/package.json
+++ b/apps/desktop/package.json
@@ -35,5 +35,5 @@
"tailwindcss": "^4.0.0",
"vite-plus": "catalog:"
},
- "productName": "T3 Code (Alpha)"
+ "productName": "T3 Code (incognitojam Alpha)"
}
diff --git a/apps/desktop/scripts/electron-launcher.mjs b/apps/desktop/scripts/electron-launcher.mjs
index 929afeeabe9..c334dad829b 100644
--- a/apps/desktop/scripts/electron-launcher.mjs
+++ b/apps/desktop/scripts/electron-launcher.mjs
@@ -15,10 +15,11 @@ const repoRoot = NodePath.resolve(desktopDir, "..", "..");
const devBundleIdSuffix = NodePath.basename(repoRoot)
.toLowerCase()
.replaceAll(/[^a-z0-9]+/g, "");
-export const APP_DISPLAY_NAME = isDevelopment ? "T3 Code (Dev)" : "T3 Code (Alpha)";
+const appStageLabel = isDevelopment ? "Dev" : "Alpha";
+export const APP_DISPLAY_NAME = `T3 Code (incognitojam ${appStageLabel})`;
export const APP_BUNDLE_ID = isDevelopment
? `com.t3tools.t3code.dev.${devBundleIdSuffix || "local"}`
- : "com.t3tools.t3code";
+ : "dev.incognitojam.t3code";
const APP_PROTOCOL_SCHEMES = isDevelopment ? ["t3code-dev"] : ["t3code"];
const LAUNCHER_VERSION = 14;
const defaultIconPath = NodePath.join(desktopDir, "resources", "icon.icns");
diff --git a/apps/desktop/src/app/DesktopAppIdentity.test.ts b/apps/desktop/src/app/DesktopAppIdentity.test.ts
index de945054c89..aa8b3c0e6fe 100644
--- a/apps/desktop/src/app/DesktopAppIdentity.test.ts
+++ b/apps/desktop/src/app/DesktopAppIdentity.test.ts
@@ -194,8 +194,11 @@ describe("DesktopAppIdentity", () => {
const identity = yield* DesktopAppIdentity.DesktopAppIdentity;
yield* identity.configure;
- assert.deepEqual(calls.setName, ["T3 Code (Alpha)"]);
- assert.equal(calls.setAboutPanelOptions[0]?.applicationName, "T3 Code (Alpha)");
+ assert.deepEqual(calls.setName, ["T3 Code (incognitojam Alpha)"]);
+ assert.equal(
+ calls.setAboutPanelOptions[0]?.applicationName,
+ "T3 Code (incognitojam Alpha)",
+ );
assert.equal(calls.setAboutPanelOptions[0]?.applicationVersion, "1.2.3");
assert.equal(calls.setAboutPanelOptions[0]?.version, "0123456789ab");
assert.deepEqual(calls.setDockIcon, ["/icon.png"]);
diff --git a/apps/desktop/src/app/DesktopEnvironment.ts b/apps/desktop/src/app/DesktopEnvironment.ts
index 1806289a08d..0de5be3c3e0 100644
--- a/apps/desktop/src/app/DesktopEnvironment.ts
+++ b/apps/desktop/src/app/DesktopEnvironment.ts
@@ -100,7 +100,7 @@ function resolveDesktopAppBranding(input: {
return {
baseName: APP_BASE_NAME,
stageLabel,
- displayName: `${APP_BASE_NAME} (${stageLabel})`,
+ displayName: `${APP_BASE_NAME} (incognitojam ${stageLabel})`,
};
}
@@ -213,7 +213,7 @@ const make = Effect.fn("desktop.environment.make")(function* (
branding,
displayName,
appUserModelId: Option.getOrElse(config.appUserModelIdOverride, () =>
- isDevelopment ? "com.t3tools.t3code.dev" : "com.t3tools.t3code",
+ isDevelopment ? "com.t3tools.t3code.dev" : "dev.incognitojam.t3code",
),
linuxDesktopEntryName: isDevelopment ? "t3code-dev.desktop" : "t3code.desktop",
linuxWmClass: isDevelopment ? "t3code-dev" : "t3code",
diff --git a/scripts/build-desktop-artifact.test.ts b/scripts/build-desktop-artifact.test.ts
index 7d2b7410a9e..d7fa836e84c 100644
--- a/scripts/build-desktop-artifact.test.ts
+++ b/scripts/build-desktop-artifact.test.ts
@@ -90,9 +90,12 @@ it.layer(NodeServices.layer)("build-desktop-artifact", (it) => {
assert.equal(resolveDesktopUpdateChannel("0.0.17"), "latest");
});
- it("switches desktop packaging product names to nightly for nightly builds", () => {
- assert.equal(resolveDesktopProductName("0.0.17"), "T3 Code (Alpha)");
- assert.equal(resolveDesktopProductName("0.0.17-nightly.20260413.42"), "T3 Code (Nightly)");
+ it("uses the fork identity for desktop packaging", () => {
+ assert.equal(resolveDesktopProductName("0.0.17"), "T3 Code (incognitojam Alpha)");
+ assert.equal(
+ resolveDesktopProductName("0.0.17-nightly.20260413.42"),
+ "T3 Code (incognitojam Nightly)",
+ );
});
it("switches desktop packaging icons to the nightly artwork for nightly versions", () => {
@@ -409,7 +412,7 @@ it.layer(NodeServices.layer)("build-desktop-artifact", (it) => {
});
assert.deepStrictEqual(configuration, {
- appId: "com.t3tools.t3code",
+ appId: "dev.incognitojam.t3code",
teamId: "ABC1234567",
rpDomains: ["example.clerk.accounts.dev"],
provisioningProfilePath: "/tmp/t3code.provisionprofile",
@@ -429,7 +432,7 @@ it.layer(NodeServices.layer)("build-desktop-artifact", (it) => {
"clerk.example.com",
"example.clerk.accounts.dev",
]);
- assert.include(entitlements, "ABC1234567.com.t3tools.t3code");
+ assert.include(entitlements, "ABC1234567.dev.incognitojam.t3code");
assert.include(entitlements, "webcredentials:clerk.example.com");
assert.include(entitlements, "webcredentials:example.clerk.accounts.dev");
assert.include(entitlements, "com.apple.security.cs.allow-jit");
@@ -524,7 +527,7 @@ it.layer(NodeServices.layer)("build-desktop-artifact", (it) => {
});
const mac = config.mac as Record;
- assert.equal(config.appId, "com.t3tools.t3code");
+ assert.equal(config.appId, "dev.incognitojam.t3code");
assert.equal(mac.entitlements, "/tmp/entitlements.mac.plist");
assert.equal(mac.provisioningProfile, "/tmp/t3code.provisionprofile");
assert.deepStrictEqual(mac.protocols, [
diff --git a/scripts/build-desktop-artifact.ts b/scripts/build-desktop-artifact.ts
index a30b6d4a90a..8293e13e4e5 100644
--- a/scripts/build-desktop-artifact.ts
+++ b/scripts/build-desktop-artifact.ts
@@ -35,7 +35,7 @@ import { Command, Flag } from "effect/unstable/cli";
import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
const LINUX_ICON_SIZES = [16, 22, 24, 32, 48, 64, 128, 256, 512] as const;
-const DESKTOP_APP_ID = "com.t3tools.t3code";
+const DESKTOP_APP_ID = "dev.incognitojam.t3code";
const APPLE_TEAM_ID_PATTERN = /^[A-Z0-9]{10}$/u;
const BuildPlatform = Schema.Literals(["mac", "linux", "win"]);
@@ -1517,7 +1517,7 @@ export function resolvePackageManagerUserAgent(packageManager: string): string {
export function resolveDesktopProductName(version: string): string {
return resolveDesktopUpdateChannel(version) === "nightly"
- ? "T3 Code (Nightly)"
+ ? "T3 Code (incognitojam Nightly)"
: (desktopPackageJson.productName ?? "T3 Code");
}