first commit

This commit is contained in:
2026-09-11 13:37:34 -04:00
commit 0f00e11823
27 changed files with 802 additions and 0 deletions
@@ -0,0 +1,17 @@
import { Extension } from 'resource:///org/gnome/shell/extensions/extension.js';
import * as Main from 'resource:///org/gnome/shell/ui/main.js';
import * as PanelMenu from 'resource:///org/gnome/shell/ui/panelMenu.js';
import St from 'gi://St';
export default class JarvisExtension extends Extension {
enable() {
this._indicator = new PanelMenu.Button(0.0, 'Jarvis QVAC');
this._indicator.add_child(new St.Label({ text: '◯', y_align: 2 }));
Main.panel.addToStatusArea('jarvis-qvac', this._indicator, 0, 'right');
}
disable() {
this._indicator?.destroy();
this._indicator = null;
}
}
@@ -0,0 +1,8 @@
{
"uuid": "[email protected]",
"name": "Jarvis QVAC",
"description": "Local-first QVAC voice assistant HUD for GNOME",
"shell-version": ["46", "47", "48", "49", "50"],
"version": 1,
"settings-schema": "org.gnome.shell.extensions.jarvis"
}
@@ -0,0 +1,7 @@
import { ExtensionPreferences } from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js';
export default class JarvisPreferences extends ExtensionPreferences {
fillPreferencesWindow(window) {
window.set_title('Jarvis QVAC');
}
}
@@ -0,0 +1,18 @@
<schemalist>
<schema id="org.gnome.shell.extensions.jarvis" path="/org/gnome/shell/extensions/jarvis/">
<key name="wake-phrase" type="s"><default>'hey jarvis'</default></key>
<key name="aliases" type="as"><default>['jarvis', 'okay jarvis']</default></key>
<key name="hotkey" type="s"><default>'&lt;Super&gt;&lt;Space&gt;'</default></key>
<key name="voice-id" type="s"><default>''</default></key>
<key name="language" type="s"><default>'en-US'</default></key>
<key name="privacy-mode" type="s"><default>'full-listen-after-wake'</default></key>
<key name="overlay-style" type="s"><default>'arc'</default></key>
<key name="confirm-destructive" type="b"><default>true</default></key>
<key name="computer-use-mode" type="s"><default>'off'</default></key>
<key name="computer-use-legacy-input" type="b"><default>false</default></key>
<key name="model-profile" type="s"><default>'laptop-8gb'</default></key>
<key name="accent-color" type="s"><default>'#F4B942'</default></key>
<key name="tts-enabled" type="b"><default>true</default></key>
<key name="chime-enabled" type="b"><default>true</default></key>
</schema>
</schemalist>