diff --git a/app/package-lock.json b/app/package-lock.json index 6803a185e..e04600cf1 100644 --- a/app/package-lock.json +++ b/app/package-lock.json @@ -48,7 +48,6 @@ "electron": "25.2.0", "eslint": "^8.43.0", "eslint-plugin-import": "^2.27.5", - "file-loader": "^6.2.0", "fork-ts-checker-webpack-plugin": "^7.3.0", "node-loader": "^2.0.0", "postcss": "^8.4.24", @@ -8655,6 +8654,8 @@ "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", "dev": true, + "optional": true, + "peer": true, "dependencies": { "loader-utils": "^2.0.0", "schema-utils": "^3.0.0" diff --git a/app/src/app.tsx b/app/src/app.tsx index 59f650ae7..eca8bdb57 100644 --- a/app/src/app.tsx +++ b/app/src/app.tsx @@ -11,25 +11,27 @@ const ollama = app.isPackaged ? path.join(process.resourcesPath, 'ollama') : path.resolve(process.cwd(), '..', 'ollama') -function installCLI() { +function installCLI(callback: () => void) { const symlinkPath = '/usr/local/bin/ollama' if (fs.existsSync(symlinkPath) && fs.readlinkSync(symlinkPath) === ollama) { + callback && callback() return } - const command = ` do shell script "ln -F -s ${ollama} /usr/local/bin/ollama" with administrator privileges ` exec(`osascript -e '${command}'`, (error: Error | null, stdout: string, stderr: string) => { if (error) { console.error(`cli: failed to install cli: ${error.message}`) + callback && callback() return } console.info(stdout) console.error(stderr) + callback && callback() }) } @@ -72,8 +74,10 @@ export default function () {