A GNOME Shell extension that provides an easy way to switch between GPU profiles on Nvidia Optimus systems (e.g., laptops with Intel + Nvidia or AMD + Nvidia configurations) in just a few clicks. Requires envycontrol (https://github.com/geminis3/envycontrol).
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
| Version | Status |
|---|---|
| 24 | Active |
| 23 | Active |
| 22 | Rejected |
| 21 | Active |
| 20 | Active |
| 19 | Active |
| 18 | Active |
| 17 | Active |
| 16 | Active |
| 15 | Inactive |
| 14 | Active |
| 13 | Inactive |
| 12 | Rejected |
| 11 | Active |
| 10 | Active |
| 9 | Rejected |
| 8 | Active |
| 7 | Active |
| 6 | Active |
| 5 | Active |
| 4 | Active |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |
1. Move line 160 to enable and null out `extension` in disable: https://gjs.guide/extensions/review-guidelines/review-guidelines.html#only-use-init-for-initialization I recommend to do this instead: - remove line 157, 163-169 and do this in init: ```js function init() { return new Extension(); } ``` and move everything from `constructor()` to enable. and null out `this.icon_selector` in disable. 2. Remove line 17 (unused variables). 3. Where is `icon.svg` (line 23)? 4. Line 30-34 shouldn't be spawn command. You should use gjs when it is possible: https://gjs.guide/extensions/review-guidelines/review-guidelines.html#scripts-and-binaries You can use `Gio.File` instead: https://gjs-docs.gnome.org/gio20~2.66p/gio.file Learn about `Gio.File`: https://gjs.guide/guides/gio/file-operations.html 5. Since this is a new extension I recommend to drop all shell versions older than 3.36. It can help you to maintain it easier. If you need any help with your extension you can ask us on: - [GNOME Matrix Channel](https://matrix.to/#/#extensions:gnome.org) - IRC Bridge: irc://irc.gimpnet.org/shell-extensions