From 99ffdc26fbcbcf725fe5182c9a454d0fdc3c2ab2 Mon Sep 17 00:00:00 2001 From: Egor Date: Sat, 15 Nov 2025 09:46:48 -0800 Subject: [PATCH] upgrade deps, latest electron, update README for macOS users to outline quarantine removal --- README.md | 8 +-- package.json | 16 ++--- yarn.lock | 164 +++++++++++++++++++++++++-------------------------- 3 files changed, 94 insertions(+), 94 deletions(-) diff --git a/README.md b/README.md index 24fba80..e10bdc8 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,10 @@ makepkg -si The AUR package automatically handles installation, desktop integration, and system updates. This is the ideal way to run Gerbil on Linux. +#### Open a Mac app from an unknown developer + +After installing on macOS, you will notice that the app will not run as it was not verified by Apple. You will need to [follow these instructions](https://support.apple.com/en-ca/guide/mac-help/mh40616/mac) to remove it from your system's quarantine to be able to run it. Alternatively you can run `xattr -r -d com.apple.quarantine /Applications/Gerbil.app` in the terminal. + ## Demo & Screenshots https://github.com/user-attachments/assets/9e7ecfb3-3576-443c-8cef-a14e06ab5b60 @@ -199,10 +203,6 @@ You can use the CLI mode on Windows in exactly the same way as in the Linux/macO - Windows ROCm support is... problematic and currently requires for the user to manually add the installed ROCm bin directory to the system PATH. In particular "hipInfo.exe" must be present, which is not always the case for older verions of ROCm. -## Future Considerations - -- transition to using llama.cpp binaries directly instead of running them indirectly through koboldcpp? - ## License AGPL v3 License - see LICENSE file for details diff --git a/package.json b/package.json index 12e7ca0..2de6bb7 100644 --- a/package.json +++ b/package.json @@ -39,15 +39,15 @@ "license": "AGPL-3.0-or-later", "devDependencies": { "@eslint/js": "^9.39.1", - "@types/node": "^24.10.0", - "@types/react": "^19.2.3", - "@types/react-dom": "^19.2.2", + "@types/node": "^24.10.1", + "@types/react": "^19.2.5", + "@types/react-dom": "^19.2.3", "@types/yauzl": "^2.10.3", "@typescript-eslint/eslint-plugin": "^8.46.4", "@typescript-eslint/parser": "^8.46.4", - "@vitejs/plugin-react": "^5.1.0", + "@vitejs/plugin-react": "^5.1.1", "cross-env": "^10.1.0", - "electron": "^38.6.0", + "electron": "^38.7.0", "electron-builder": "^26.0.12", "electron-vite": "^4.0.1", "eslint": "^9.39.1", @@ -67,11 +67,11 @@ "dependencies": { "@codemirror/search": "^6.5.11", "@codemirror/theme-one-dark": "^6.1.3", - "@codemirror/view": "^6.38.6", + "@codemirror/view": "^6.38.7", "@fontsource/inter": "^5.2.8", "@huggingface/gguf": "^0.3.2", - "@mantine/core": "^8.3.7", - "@mantine/hooks": "^8.3.7", + "@mantine/core": "^8.3.8", + "@mantine/hooks": "^8.3.8", "@uiw/react-codemirror": "^4.25.3", "electron-updater": "^6.6.2", "execa": "^9.6.0", diff --git a/yarn.lock b/yarn.lock index cd43b93..203d2b3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -30,39 +30,39 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.24.4, @babel/core@npm:^7.27.7, @babel/core@npm:^7.28.4": - version: 7.28.4 - resolution: "@babel/core@npm:7.28.4" +"@babel/core@npm:^7.24.4, @babel/core@npm:^7.27.7, @babel/core@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/core@npm:7.28.5" dependencies: "@babel/code-frame": "npm:^7.27.1" - "@babel/generator": "npm:^7.28.3" + "@babel/generator": "npm:^7.28.5" "@babel/helper-compilation-targets": "npm:^7.27.2" "@babel/helper-module-transforms": "npm:^7.28.3" "@babel/helpers": "npm:^7.28.4" - "@babel/parser": "npm:^7.28.4" + "@babel/parser": "npm:^7.28.5" "@babel/template": "npm:^7.27.2" - "@babel/traverse": "npm:^7.28.4" - "@babel/types": "npm:^7.28.4" + "@babel/traverse": "npm:^7.28.5" + "@babel/types": "npm:^7.28.5" "@jridgewell/remapping": "npm:^2.3.5" convert-source-map: "npm:^2.0.0" debug: "npm:^4.1.0" gensync: "npm:^1.0.0-beta.2" json5: "npm:^2.2.3" semver: "npm:^6.3.1" - checksum: 10c0/ef5a6c3c6bf40d3589b5593f8118cfe2602ce737412629fb6e26d595be2fcbaae0807b43027a5c42ec4fba5b895ff65891f2503b5918c8a3ea3542ab44d4c278 + checksum: 10c0/535f82238027621da6bdffbdbe896ebad3558b311d6f8abc680637a9859b96edbf929ab010757055381570b29cf66c4a295b5618318d27a4273c0e2033925e72 languageName: node linkType: hard -"@babel/generator@npm:^7.28.3": - version: 7.28.3 - resolution: "@babel/generator@npm:7.28.3" +"@babel/generator@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/generator@npm:7.28.5" dependencies: - "@babel/parser": "npm:^7.28.3" - "@babel/types": "npm:^7.28.2" + "@babel/parser": "npm:^7.28.5" + "@babel/types": "npm:^7.28.5" "@jridgewell/gen-mapping": "npm:^0.3.12" "@jridgewell/trace-mapping": "npm:^0.3.28" jsesc: "npm:^3.0.2" - checksum: 10c0/0ff58bcf04f8803dcc29479b547b43b9b0b828ec1ee0668e92d79f9e90f388c28589056637c5ff2fd7bcf8d153c990d29c448d449d852bf9d1bc64753ca462bc + checksum: 10c0/9f219fe1d5431b6919f1a5c60db8d5d34fe546c0d8f5a8511b32f847569234ffc8032beb9e7404649a143f54e15224ecb53a3d11b6bb85c3203e573d91fca752 languageName: node linkType: hard @@ -123,10 +123,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/helper-validator-identifier@npm:7.27.1" - checksum: 10c0/c558f11c4871d526498e49d07a84752d1800bf72ac0d3dad100309a2eaba24efbf56ea59af5137ff15e3a00280ebe588560534b0e894a4750f8b1411d8f78b84 +"@babel/helper-validator-identifier@npm:^7.27.1, @babel/helper-validator-identifier@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/helper-validator-identifier@npm:7.28.5" + checksum: 10c0/42aaebed91f739a41f3d80b72752d1f95fd7c72394e8e4bd7cdd88817e0774d80a432451bcba17c2c642c257c483bf1d409dd4548883429ea9493a3bc4ab0847 languageName: node linkType: hard @@ -147,14 +147,14 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.24.4, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.28.3, @babel/parser@npm:^7.28.4": - version: 7.28.4 - resolution: "@babel/parser@npm:7.28.4" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.24.4, @babel/parser@npm:^7.27.2, @babel/parser@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/parser@npm:7.28.5" dependencies: - "@babel/types": "npm:^7.28.4" + "@babel/types": "npm:^7.28.5" bin: parser: ./bin/babel-parser.js - checksum: 10c0/58b239a5b1477ac7ed7e29d86d675cc81075ca055424eba6485872626db2dc556ce63c45043e5a679cd925e999471dba8a3ed4864e7ab1dbf64306ab72c52707 + checksum: 10c0/5bbe48bf2c79594ac02b490a41ffde7ef5aa22a9a88ad6bcc78432a6ba8a9d638d531d868bd1f104633f1f6bba9905746e15185b8276a3756c42b765d131b1ef languageName: node linkType: hard @@ -209,28 +209,28 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.28.3, @babel/traverse@npm:^7.28.4": - version: 7.28.4 - resolution: "@babel/traverse@npm:7.28.4" +"@babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.28.3, @babel/traverse@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/traverse@npm:7.28.5" dependencies: "@babel/code-frame": "npm:^7.27.1" - "@babel/generator": "npm:^7.28.3" + "@babel/generator": "npm:^7.28.5" "@babel/helper-globals": "npm:^7.28.0" - "@babel/parser": "npm:^7.28.4" + "@babel/parser": "npm:^7.28.5" "@babel/template": "npm:^7.27.2" - "@babel/types": "npm:^7.28.4" + "@babel/types": "npm:^7.28.5" debug: "npm:^4.3.1" - checksum: 10c0/ee678fdd49c9f54a32e07e8455242390d43ce44887cea6567b233fe13907b89240c377e7633478a32c6cf1be0e17c2f7f3b0c59f0666e39c5074cc47b968489c + checksum: 10c0/f6c4a595993ae2b73f2d4cd9c062f2e232174d293edd4abe1d715bd6281da8d99e47c65857e8d0917d9384c65972f4acdebc6749a7c40a8fcc38b3c7fb3e706f languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.27.1, @babel/types@npm:^7.28.2, @babel/types@npm:^7.28.4": - version: 7.28.4 - resolution: "@babel/types@npm:7.28.4" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.27.1, @babel/types@npm:^7.28.2, @babel/types@npm:^7.28.4, @babel/types@npm:^7.28.5": + version: 7.28.5 + resolution: "@babel/types@npm:7.28.5" dependencies: "@babel/helper-string-parser": "npm:^7.27.1" - "@babel/helper-validator-identifier": "npm:^7.27.1" - checksum: 10c0/ac6f909d6191319e08c80efbfac7bd9a25f80cc83b43cd6d82e7233f7a6b9d6e7b90236f3af7400a3f83b576895bcab9188a22b584eb0f224e80e6d4e95f4517 + "@babel/helper-validator-identifier": "npm:^7.28.5" + checksum: 10c0/a5a483d2100befbf125793640dec26b90b95fd233a94c19573325898a5ce1e52cdfa96e495c7dcc31b5eca5b66ce3e6d4a0f5a4a62daec271455959f208ab08a languageName: node linkType: hard @@ -315,15 +315,15 @@ __metadata: languageName: node linkType: hard -"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0, @codemirror/view@npm:^6.38.6": - version: 6.38.6 - resolution: "@codemirror/view@npm:6.38.6" +"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.23.0, @codemirror/view@npm:^6.27.0, @codemirror/view@npm:^6.35.0, @codemirror/view@npm:^6.38.7": + version: 6.38.7 + resolution: "@codemirror/view@npm:6.38.7" dependencies: "@codemirror/state": "npm:^6.5.0" crelt: "npm:^1.0.6" style-mod: "npm:^4.1.0" w3c-keyname: "npm:^2.2.4" - checksum: 10c0/7faa6558a991faf8acb6a74dbe5e21b6e1a83f8ace7ec7b37e8250c4e1e9f152c40978588cf2d2609c8ad7126e05ce9cae052bf345232630c300d27ccfb87493 + checksum: 10c0/48e237f790d4f9e173e2428f73809c4f147dff401e616e8155397ce17ab296a8c69b0267ce7a565b93a3e1c531f9573e3666069b8f113ac0b98da4997c7e7f9b languageName: node linkType: hard @@ -981,9 +981,9 @@ __metadata: languageName: node linkType: hard -"@mantine/core@npm:^8.3.7": - version: 8.3.7 - resolution: "@mantine/core@npm:8.3.7" +"@mantine/core@npm:^8.3.8": + version: 8.3.8 + resolution: "@mantine/core@npm:8.3.8" dependencies: "@floating-ui/react": "npm:^0.27.16" clsx: "npm:^2.1.1" @@ -992,19 +992,19 @@ __metadata: react-textarea-autosize: "npm:8.5.9" type-fest: "npm:^4.41.0" peerDependencies: - "@mantine/hooks": 8.3.7 + "@mantine/hooks": 8.3.8 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - checksum: 10c0/ff934716bddee62de63529b77dd60cac33a718d0151340621c74b38ca657640b5c6b9ace0f1161e45f2a011cc89c538fc892f991aec07fc8a021d1016a489ea1 + checksum: 10c0/7027f8b632262b7fc2e29f61a7d8e6f6bc6426f7e5ea93baf031484cf915615e9e36e4799e849cc85d29a2eddc57557d041310c16286a537ed0779bca72cda92 languageName: node linkType: hard -"@mantine/hooks@npm:^8.3.7": - version: 8.3.7 - resolution: "@mantine/hooks@npm:8.3.7" +"@mantine/hooks@npm:^8.3.8": + version: 8.3.8 + resolution: "@mantine/hooks@npm:8.3.8" peerDependencies: react: ^18.x || ^19.x - checksum: 10c0/7f443f683740cc78d82b790ab84167236795fae488cf8c5214cfb7dbda7b1cc54c3485bfd5b0d6f91f74a1af66b717c7eee637f4c50e304e8a1bafdd195c3aec + checksum: 10c0/5b140aad8881b27b2930c82bc39886c8076ad88ca41ab7c177e3e5fc5d480564189c1449a2acee4a90bd7beeb21a0458e0c3952bb45be75ac2d2e16d27865238 languageName: node linkType: hard @@ -1071,10 +1071,10 @@ __metadata: languageName: node linkType: hard -"@rolldown/pluginutils@npm:1.0.0-beta.43": - version: 1.0.0-beta.43 - resolution: "@rolldown/pluginutils@npm:1.0.0-beta.43" - checksum: 10c0/1c17a0b16c277a0fdbab080fd22ef91e37c1f0d710ecfdacb6a080068062eb14ff030d0e9d2ec2325a1d4246dba0c49625755c82c0090f6cbf98d16e80183e02 +"@rolldown/pluginutils@npm:1.0.0-beta.47": + version: 1.0.0-beta.47 + resolution: "@rolldown/pluginutils@npm:1.0.0-beta.47" + checksum: 10c0/eb0cfa7334d66f090c47eaac612174936b05f26e789352428cb6e03575b590f355de30d26b42576ea4e613d8887b587119d19b2e4b3a8909ceb232ca1cf746c8 languageName: node linkType: hard @@ -1394,12 +1394,12 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^24.10.0": - version: 24.10.0 - resolution: "@types/node@npm:24.10.0" +"@types/node@npm:*, @types/node@npm:^24.10.1": + version: 24.10.1 + resolution: "@types/node@npm:24.10.1" dependencies: undici-types: "npm:~7.16.0" - checksum: 10c0/f82ed7194e16f5590ef7afdc20c6d09068c76d50278b485ede8f0c5749683536e3064ffa8def8db76915196afb3724b854aa5723c64d6571b890b14492943b46 + checksum: 10c0/d6bca7a78f550fbb376f236f92b405d676003a8a09a1b411f55920ef34286ee3ee51f566203920e835478784df52662b5b2af89159d9d319352e9ea21801c002 languageName: node linkType: hard @@ -1422,21 +1422,21 @@ __metadata: languageName: node linkType: hard -"@types/react-dom@npm:^19.2.2": - version: 19.2.2 - resolution: "@types/react-dom@npm:19.2.2" +"@types/react-dom@npm:^19.2.3": + version: 19.2.3 + resolution: "@types/react-dom@npm:19.2.3" peerDependencies: "@types/react": ^19.2.0 - checksum: 10c0/6154dfb8e7a638313d7fa15b2b16494f2235afda4c43be37d10f34e5c7a730f6b95117facb5e6eebc73b15cceea7f6da23be46cda5d2262fd00fd7e6069547e3 + checksum: 10c0/b486ebe0f4e2fb35e2e108df1d8fc0927ca5d6002d5771e8a739de11239fe62d0e207c50886185253c99eb9dedfeeb956ea7429e5ba17f6693c7acb4c02f8cd1 languageName: node linkType: hard -"@types/react@npm:^19.2.3": - version: 19.2.3 - resolution: "@types/react@npm:19.2.3" +"@types/react@npm:^19.2.5": + version: 19.2.5 + resolution: "@types/react@npm:19.2.5" dependencies: csstype: "npm:^3.0.2" - checksum: 10c0/12db8df36b9a0c8f7a602d0684e53731a43da4519f963fa3d1f4d4cac10b3bd31f2c838be74fe111174fff631e80b8e3d645fdfed477eb0632ab972241d05d67 + checksum: 10c0/1f9a92c73a5ea5b167f59cd0b5b9460fde65bd22b63b6d23bfaace8ad38537df127c97657418b4912a7a03a66e6451e82a41b84718d638ec1c8e4f0515d94793 languageName: node linkType: hard @@ -1654,19 +1654,19 @@ __metadata: languageName: node linkType: hard -"@vitejs/plugin-react@npm:^5.1.0": - version: 5.1.0 - resolution: "@vitejs/plugin-react@npm:5.1.0" +"@vitejs/plugin-react@npm:^5.1.1": + version: 5.1.1 + resolution: "@vitejs/plugin-react@npm:5.1.1" dependencies: - "@babel/core": "npm:^7.28.4" + "@babel/core": "npm:^7.28.5" "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1" "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1" - "@rolldown/pluginutils": "npm:1.0.0-beta.43" + "@rolldown/pluginutils": "npm:1.0.0-beta.47" "@types/babel__core": "npm:^7.20.5" react-refresh: "npm:^0.18.0" peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - checksum: 10c0/e192a12e2b854df109eafb1d06c0bc848e8e2b162c686aa6b999b1048658983e72674b2068ccc37562fcce44d32ad92b65f3a4e1897a0cb7859c2ee69cc63eac + checksum: 10c0/e590efaea1eabfbb1beb6e8c9fac0742fd299808e3368e63b2825ce24740adb8a28fcb2668b14b7ca1bdb42890cfefe94d02dd358dcbbf8a27ddf377b9a82abf languageName: node linkType: hard @@ -2822,16 +2822,16 @@ __metadata: languageName: node linkType: hard -"electron@npm:^38.6.0": - version: 38.6.0 - resolution: "electron@npm:38.6.0" +"electron@npm:^38.7.0": + version: 38.7.0 + resolution: "electron@npm:38.7.0" dependencies: "@electron/get": "npm:^2.0.0" "@types/node": "npm:^22.7.7" extract-zip: "npm:^2.0.1" bin: electron: cli.js - checksum: 10c0/fc0f862c1871b9344b4764cc30f4b25a293a147945eb90f948c3929c8bde3b7594066efeb92c14116d64b41697ab36d67d7947c14e3b60a2b38ce857045d161c + checksum: 10c0/78a0917141b7a90253aff16e83b9683fb0facb098e8d9d5a71e7100b15fc3c00cd5d92e2ed3aba70067365022920293a7335ccfda5e8de1ef0d9a7d350e24c3c languageName: node linkType: hard @@ -3765,22 +3765,22 @@ __metadata: dependencies: "@codemirror/search": "npm:^6.5.11" "@codemirror/theme-one-dark": "npm:^6.1.3" - "@codemirror/view": "npm:^6.38.6" + "@codemirror/view": "npm:^6.38.7" "@eslint/js": "npm:^9.39.1" "@fontsource/inter": "npm:^5.2.8" "@huggingface/gguf": "npm:^0.3.2" - "@mantine/core": "npm:^8.3.7" - "@mantine/hooks": "npm:^8.3.7" - "@types/node": "npm:^24.10.0" - "@types/react": "npm:^19.2.3" - "@types/react-dom": "npm:^19.2.2" + "@mantine/core": "npm:^8.3.8" + "@mantine/hooks": "npm:^8.3.8" + "@types/node": "npm:^24.10.1" + "@types/react": "npm:^19.2.5" + "@types/react-dom": "npm:^19.2.3" "@types/yauzl": "npm:^2.10.3" "@typescript-eslint/eslint-plugin": "npm:^8.46.4" "@typescript-eslint/parser": "npm:^8.46.4" "@uiw/react-codemirror": "npm:^4.25.3" - "@vitejs/plugin-react": "npm:^5.1.0" + "@vitejs/plugin-react": "npm:^5.1.1" cross-env: "npm:^10.1.0" - electron: "npm:^38.6.0" + electron: "npm:^38.7.0" electron-builder: "npm:^26.0.12" electron-updater: "npm:^6.6.2" electron-vite: "npm:^4.0.1"