You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The installer will show a menu where you can choose which components to install:
32
+
-**All**[DEFAULT] - Everything (daemon, app, applet if on COSMIC, systemd service)
33
+
-**Daemon + CLI** - Core functionality + systemd service
34
+
-**Desktop App** - GUI for configuration only
35
+
-**COSMIC Applet** - Panel integration only
36
+
37
+
The installer automatically:
38
+
- Detects your system architecture (x86_64/ARM64) to download the optimal pre-built binary
39
+
- Installs components to `~/.local/bin`
40
+
-**Daemon**: Detects CUDA/cuDNN for automatic GPU acceleration
41
+
-**Daemon**: Creates the `stt` group and adds the current user to it **(requires sudo)**
42
+
-**Daemon**: Sets up systemd user service
43
+
-**Daemon**: Creates required directories for logs and sockets
44
+
-**COSMIC Desktop**: Offers to configure Super+Space keyboard shortcut automatically
45
+
46
+
## ⌨️ Setting Up Keyboard Shortcuts
47
+
48
+
For the best experience, add a keyboard shortcut to your desktop environment:
49
+
50
+
### COSMIC Desktop
51
+
52
+
**Automatic Setup**:
53
+
-**Web Installer**: The installer automatically offers to configure Super+Space shortcut during daemon installation. Just answer "Y" when prompted!
54
+
-**Building from source**:
55
+
- Run `just install-daemon` - it will offer to set up the shortcut automatically
56
+
- Or run `just setup-cosmic-shortcut` anytime (no separate scripts needed)
57
+
58
+
**What gets configured**:
59
+
- The shortcut uses the full path for reliability: `/home/user/.local/bin/stt record --write`
60
+
- Safely extends your existing COSMIC shortcuts without overwriting
61
+
- Detects conflicts and warns if Super+Space is already in use
62
+
63
+
**Manual Setup**:
64
+
1. Open COSMIC Settings
65
+
2. Navigate to: **Input Devices** → **Keyboard** → **View and customize shortcuts** → **Custom**
66
+
3. Click **Add Shortcut**
67
+
4. Set command: `/home/user/.local/bin/stt record --write` (replace `/home/user` with your actual home path)
68
+
5. Choose your preferred key combination (e.g., `Super+Space`)
69
+
70
+
### Other Desktop Environments
71
+
72
+
**GNOME:**
73
+
```bash
74
+
# Add via command line
75
+
gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']"
76
+
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ name 'Super STT'
77
+
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command'stt record --write'
78
+
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding '<Super>space'
79
+
```
80
+
81
+
**KDE Plasma:**
82
+
1. Open System Settings → Shortcuts → Custom Shortcuts
83
+
2. Add new shortcut with command: `stt record --write`
84
+
85
+
**Or configure through your desktop environment's settings for custom keyboard shortcuts.**
# (Optional) COSMIC Desktop applet to show visualizations
30
97
just install-applet
31
98
32
-
# The Daemon and CLI tool
99
+
# The Daemon and CLI tool (offers to set up COSMIC shortcut automatically)
33
100
just install-daemon
34
101
# (Suggestion) If you have an NVIDIA GPU with CUDA installed, build with CUDA acceleration instead to load models onto the GPU
35
102
# just install-daemon --cuda
36
103
# (Suggestion) If you have an NVIDIA GPU with CUDA and cuDNN installed, build with cuDNN acceleration instead for better performance
37
104
# just install-daemon --cudnn
38
-
```
39
105
40
-
## ⌨️ Shortcuts
41
-
Add a shortcut that executes the following command to your desktop environment to start the app.
42
-
```sh
43
-
stt record --write
106
+
# Or set up COSMIC keyboard shortcut separately
107
+
just setup-cosmic-shortcut
44
108
```
45
109
46
-
On COSMIC, you can add the shortcut in COSMIC Settings app: Input Devices -> Keyboard -> View and customize shortcuts -> Custom -> Add Shortcut
47
110
48
111
> **Note**: On first run, Super STT will automatically download the required AI model (~1-2GB). This may take a few minutes depending on your internet connection.
49
112
@@ -56,35 +119,60 @@ The following will then happen:
56
119
5. The daemon will automatically replace the preview with the accurate transcription.
57
120
58
121
### Usage
122
+
123
+
After installation, manage the daemon with:
59
124
```bash
60
-
# Make sure Super STT is running.
125
+
# Start the daemon
126
+
systemctl --user start super-stt
127
+
128
+
# Enable auto-start with user session
129
+
systemctl --user enable super-stt
130
+
131
+
# Check status
61
132
systemctl --user status super-stt
62
133
63
-
#If not running, start it
64
-
systemctl --user start super-stt
134
+
#View logs
135
+
journalctl --user -u super-stt -f
65
136
```
66
137
67
-
### Troubleshooting
68
-
69
-
#### `super-stt` is not found
70
-
You may need to log out and back in to update your PATH environment variable.
138
+
Then use the `stt` command:
139
+
```bash
140
+
# Record and transcribe
141
+
stt record
71
142
72
-
#### `stt` is not found
73
-
Try rerunning the `just install-daemon` command.
143
+
# Record, transcribe, and auto-type the result
144
+
stt record --write
145
+
```
74
146
75
-
### Model Selection
147
+
### Troubleshooting
76
148
77
-
**From UI**: Open app → Settings → Select model
149
+
#### `stt` command not found
150
+
The installer adds `~/.local/bin` to your PATH. Either:
151
+
- Restart your terminal, or
152
+
- Run: `export PATH="$HOME/.local/bin:$PATH"`
78
153
79
-
**When installing**:
154
+
#### "sg: group 'stt' does not exist" error
155
+
The `stt` group wasn't created properly. Run:
80
156
```bash
81
-
# Install with specific model
82
-
just install-daemon --model whisper-large-v3
157
+
sudo groupadd stt
158
+
sudo usermod -a -G stt $(whoami)
159
+
newgrp stt
160
+
```
83
161
84
-
# Or specify during daemon start
85
-
stt --model whisper-base
162
+
#### "Operation not permitted" when using stt
163
+
You need to be in the `stt` group. Either:
164
+
- Log out and back in, or
165
+
- Run: `newgrp stt`
166
+
167
+
#### Daemon not starting
168
+
Check the logs for errors:
169
+
```bash
170
+
journalctl --user -u super-stt -n 50
86
171
```
87
172
173
+
### Model Selection
174
+
Open the Super STT app → Settings → Select model
175
+
88
176
## 🏗️ Architecture
89
177
90
178
-**`super-stt`** - Background ML service
@@ -96,8 +184,8 @@ stt --model whisper-base
96
184
97
185
Super STT implements comprehensive security controls:
98
186
187
+
-**Group-based Access**: The `stt` group restricts who can connect to the daemon socket
99
188
-**Process Authentication**: Keyboard injection requires verification that the client is the legitimate `stt` binary
100
-
-**Group-based Access**: Production mode uses dedicated `stt` group for daemon access control
101
189
102
190
For detailed security information, see [`docs/SECURITY.md`](docs/SECURITY.md).
103
191
@@ -125,6 +213,12 @@ just run-app
125
213
# Run the applet
126
214
just run-applet
127
215
216
+
# Setup COSMIC keyboard shortcut (interactive)
217
+
just setup-cosmic-shortcut
218
+
219
+
# Install daemon with automatic COSMIC shortcut setup
0 commit comments