docs: add store/source install + dev instructions, pin Node 26

This commit is contained in:
Lucas Oskorep
2026-09-07 14:16:18 -04:00
parent bf162f0433
commit 2cc61dd6de
2 changed files with 72 additions and 24 deletions
+1
View File
@@ -0,0 +1 @@
26
+69 -22
View File
@@ -18,27 +18,59 @@ This project aims to be a simple and easy to use DDC brightness control plugin f
- Support for direct i2c or better ddc controllers (not ddcutil) - Support for direct i2c or better ddc controllers (not ddcutil)
- You tell me - You tell me
## Installation ## Requirements
(Examples use arch, but all packages should be available on other distros as well) Regardless of how you install the extension, it shells out to
[ddcutil](https://www.ddcutil.com/) to talk to your monitors, so it is a hard
Be sure to have [ddcutil](https://www.ddcutil.com/) installed it is a hard requirement for now requirement.
Also, if installing from source install just which is the chosen command runner for this project
```bash ```bash
sudo pacman -Syu ddcutil just sudo pacman -S ddcutil
``` ```
Add your user to the i2c group so it can use i2c without root and reboot/login+out Then add your user to the `i2c` group so `ddcutil` can talk to the bus without
root, and re-login (or reboot):
```bash ```bash
sudo usermod -aG i2c $USER sudo usermod -aG i2c $USER
reboot reboot
``` ```
Now install the extension from version control ## Installation
(until we get to the gnome extension store)
Pick whichever method fits you. All three install the same extension — the
store and manager routes are the easiest, building from source gives you the
latest commits.
### 1. GNOME Extensions Website (easiest)
Head to the listing and click **Install**:
<https://extensions.gnome.org/extension/10312/ddc-brightness-controller/>
Clicking Install opens the browser connector. If prompted, install the
"Shell Extension Manager" browser extension for your browser, approve the
connection, and the extension installs straight into your running session.
### 2. GNOME Extensions Manager App
Search for **"DDC Brightness Controller"** in the
[Extensions](https://flathub.org/apps/details/com.mattjakeman.GNOME.Extensions)
app (from Flathub) and hit install. On X11 the same app also lets you install
directly from the website link above.
### 3. From Source (git clone)
Builds the extension locally and drops it into your user's extension dir.
Requires [just](https://github.com/casey/just) as the command runner.
Arch Linux:
```bash
sudo pacman -S git just
```
Clone and install:
```bash ```bash
git clone https://github.com/lucasoskorep/ddc-brightness-control git clone https://github.com/lucasoskorep/ddc-brightness-control
@@ -46,27 +78,42 @@ cd ddc-brightness-control
just install just install
``` ```
After installing from source, enable it (toggle in the Extensions app, or):
```bash
gnome-extensions enable ddcbrightness@lucaso.io
```
Re-login or restart the shell (`Alt+F2``r` on X11) to pick it up.
## Development ## Development
You need a couple of other things for development ideally Building and debugging locally needs a few extra tools beyond the runtime
requirements above:
- uv - `just` — the command runner
- fnm - `fnm` — fast node version manager (the build runs on Node via pnpm)
- `uv` — python package manager (used by the schema-analysis helper)
- `glib2` — provides `glib-compile-schemas` for compiling the settings schema
Arch Linux:
### Installation
```bash ```bash
just install sudo pacman -S just fnm uv glib2
``` ```
### Linting Set up the Node runtime with fnm (the pinned version lives in `.node-version`):
```bash ```bash
just lint fnm install
just lint-fix #(auto fixes what it can via eslint) fnm use
``` ```
### Debugging Then:
```bash ```bash
just live-debug just install # install deps + build + drop into the extension dir
just lint # lint
just lint-fix # auto-fix what eslint can
just live-debug # tail gnome-shell logs while you poke at it
``` ```