|
@@ -17,6 +17,7 @@ import * as path from 'path'
|
|
|
|
|
|
import { analytics, id } from './telemetry'
|
|
|
import { installed } from './install'
|
|
|
+import { MenuItem } from '@electron/remote'
|
|
|
|
|
|
require('@electron/remote/main').initialize()
|
|
|
|
|
@@ -74,21 +75,17 @@ function firstRunWindow() {
|
|
|
let tray: Tray | null = null
|
|
|
|
|
|
function setTray(updateAvailable: boolean) {
|
|
|
- const menuItemAvailable: MenuItemConstructorOptions = {
|
|
|
- label: 'Restart to update',
|
|
|
- click: () => autoUpdater.quitAndInstall(),
|
|
|
- }
|
|
|
-
|
|
|
- const menuItemUpToDate: MenuItemConstructorOptions = {
|
|
|
- label: 'Ollama is up to date',
|
|
|
- enabled: false,
|
|
|
- }
|
|
|
+ const updateItems: MenuItemConstructorOptions[] = [
|
|
|
+ { label: 'An update is available', enabled: false },
|
|
|
+ {
|
|
|
+ label: 'Restart to update',
|
|
|
+ click: () => autoUpdater.quitAndInstall(),
|
|
|
+ },
|
|
|
+ { type: 'separator' },
|
|
|
+ ]
|
|
|
|
|
|
const menu = Menu.buildFromTemplate([
|
|
|
- ...(updateAvailable
|
|
|
- ? [{ label: 'An update is available', enabled: false }, menuItemAvailable]
|
|
|
- : [menuItemUpToDate]),
|
|
|
- { type: 'separator' },
|
|
|
+ ...(updateAvailable ? updateItems : []),
|
|
|
{ role: 'quit', label: 'Quit Ollama', accelerator: 'Command+Q' },
|
|
|
])
|
|
|
|
|
@@ -145,8 +142,6 @@ if (process.platform === 'darwin') {
|
|
|
}
|
|
|
|
|
|
app.on('ready', () => {
|
|
|
- setTray(false)
|
|
|
-
|
|
|
if (app.isPackaged) {
|
|
|
heartbeat()
|
|
|
autoUpdater.checkForUpdates()
|
|
@@ -156,6 +151,8 @@ app.on('ready', () => {
|
|
|
}, 60 * 60 * 1000)
|
|
|
}
|
|
|
|
|
|
+ setTray(false)
|
|
|
+
|
|
|
if (process.platform === 'darwin') {
|
|
|
if (app.isPackaged) {
|
|
|
if (!app.isInApplicationsFolder()) {
|