diff --git a/app/src/app.tsx b/app/src/app.tsx
index fd20bee8..c44049c9 100644
--- a/app/src/app.tsx
+++ b/app/src/app.tsx
@@ -1,32 +1,13 @@
import { useState } from 'react'
import copy from 'copy-to-clipboard'
-import { exec as cbExec } from 'child_process'
-import * as path from 'path'
-import * as fs from 'fs'
import { DocumentDuplicateIcon } from '@heroicons/react/24/outline'
-import { app } from '@electron/remote'
+import Store from 'electron-store'
+import { getCurrentWindow } from '@electron/remote'
+
+import { install } from './install'
import OllamaIcon from './ollama.svg'
-import { promisify } from 'util'
-const ollama = app.isPackaged ? path.join(process.resourcesPath, 'ollama') : path.resolve(process.cwd(), '..', 'ollama')
-const exec = promisify(cbExec)
-
-async function installCLI() {
- const symlinkPath = '/usr/local/bin/ollama'
-
- if (fs.existsSync(symlinkPath) && fs.readlinkSync(symlinkPath) === ollama) {
- return
- }
-
- const command = `do shell script "ln -F -s ${ollama} /usr/local/bin/ollama" with administrator privileges`
-
- try {
- await exec(`osascript -e '${command}'`)
- } catch (error) {
- console.error(`cli: failed to install cli: ${error.message}`)
- return
- }
-}
+const store = new Store()
enum Step {
WELCOME = 0,
@@ -40,7 +21,7 @@ export default function () {
const command = 'ollama run orca'
return (
-
+
{step === Step.WELCOME && (
<>
@@ -49,9 +30,7 @@ export default function () {
Let's get you up and running with your own large language models.