diff --git a/packages/desktop/src/context/global-sync.tsx b/packages/desktop/src/context/global-sync.tsx index 2a24a845c..39e0fd34a 100644 --- a/packages/desktop/src/context/global-sync.tsx +++ b/packages/desktop/src/context/global-sync.tsx @@ -55,12 +55,14 @@ export const { use: useGlobalSync, provider: GlobalSyncProvider } = createSimple const globalSDK = useGlobalSDK() const [globalStore, setGlobalStore] = createStore<{ ready: boolean + path: Path project: Project[] provider: ProviderListResponse provider_auth: ProviderAuthResponse children: Record }>({ ready: false, + path: { state: "", config: "", worktree: "", directory: "", home: "" }, project: [], provider: { all: [], connected: [], default: {} }, provider_auth: {}, @@ -224,6 +226,9 @@ export const { use: useGlobalSync, provider: GlobalSyncProvider } = createSimple async function bootstrap() { return Promise.all([ + globalSDK.client.path.get().then((x) => { + setGlobalStore("path", x.data!) + }), globalSDK.client.project.list().then(async (x) => { setGlobalStore( "project", diff --git a/packages/desktop/src/pages/home.tsx b/packages/desktop/src/pages/home.tsx index 205ffd815..7cd2916e8 100644 --- a/packages/desktop/src/pages/home.tsx +++ b/packages/desktop/src/pages/home.tsx @@ -1,5 +1,5 @@ import { useGlobalSync } from "@/context/global-sync" -import { For, Match, Show, Switch } from "solid-js" +import { createMemo, For, Match, Show, Switch } from "solid-js" import { Button } from "@opencode-ai/ui/button" import { Logo } from "@opencode-ai/ui/logo" import { useLayout } from "@/context/layout" @@ -14,6 +14,7 @@ export default function Home() { const layout = useLayout() const platform = usePlatform() const navigate = useNavigate() + const homedir = createMemo(() => sync.data.path.home) function openProject(directory: string) { layout.projects.open(directory) @@ -61,7 +62,7 @@ export default function Home() { class="text-14-mono text-left justify-between px-3" onClick={() => openProject(project.worktree)} > - {project.worktree} + {project.worktree.replace(homedir(), "~")}
{DateTime.fromMillis(project.time.updated ?? project.time.created).toRelative()}