diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5afcd23..5e425a2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: release-bundle: runs-on: windows-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - uses: dtolnay/rust-toolchain@stable with: @@ -30,7 +30,7 @@ jobs: shell: pwsh run: .\scripts\build.ps1 release - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: GameModeExecutor-zip path: dist/*.zip diff --git a/README.md b/README.md index 512ea27..542de4f 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ small icon in the notification area. ## Documentation -| | | +| Page | What it is for | | --- | --- | | [Getting started](docs/getting-started.md) | Running in five minutes. Start here. | | [Recipes](docs/recipes/) | Worked examples, one folder each with a ready-made `config.toml` — including fan profiles with FanControl, which needs one extra step because it requires administrator rights. | diff --git a/docs/design/06-notification-icon.md b/docs/design/06-notification-icon.md index 874d28a..f2374bb 100644 --- a/docs/design/06-notification-icon.md +++ b/docs/design/06-notification-icon.md @@ -71,7 +71,7 @@ be built**, not only when `WM_SETTINGCHANGE` arrives — because that message is not guaranteed. A tool that switches light and dark on a schedule may write the registry and broadcast nothing. Demonstrated on 2026-09-15: -| | | +| Case | What the log showed | | --- | --- | | registry written directly, no broadcast | **0 log lines** — the watcher hears nothing | | menu then opened | `icon refreshed theme=Light` — the drift is caught | diff --git a/docs/design/08-distribution.md b/docs/design/08-distribution.md index 6ac90f0..2bed951 100644 --- a/docs/design/08-distribution.md +++ b/docs/design/08-distribution.md @@ -239,7 +239,7 @@ Per-user only — in Inno Setup that is `PrivilegesRequired=lowest` and Ruled out, so they are not reconsidered from scratch: -| | | +| Ruled out | Why | | --- | --- | | **NSIS** | The same ground as Inno Setup with a harsher syntax. Dropped by preference. | | **WiX** | The sane way to author an MSI, but a third party, and WiX v6+ carries an Open Source Maintenance Fee — free at zero revenue, a live question for commercial reuse. If MSI wins, it wins with the SDK. | diff --git a/docs/design/README.md b/docs/design/README.md index 38ceed3..07d09b6 100644 --- a/docs/design/README.md +++ b/docs/design/README.md @@ -9,7 +9,7 @@ Work is organised in numbered **lots**. A lot is a deliverable with a stated "done when", taken in order, closed when it is verified against a real game session rather than when the code compiles. Each has its own page. -| Lot | | Status | +| Lot | Page | Status | | --- | --- | --- | | — | [Detection: why the Game Bar presence writer](00-detection.md) | the foundation | | 1 | [A console watcher that is correct and boring](01-console-watcher.md) | done | diff --git a/docs/getting-started.md b/docs/getting-started.md index 96ab4da..5767743 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -8,7 +8,7 @@ That is all this program does. Here is how to get there in about five minutes. It ships as the same program twice. They differ in one way: one has a black console window, the other has none. -| | | +| Executable | Role | | --- | --- | | **`gamemode-executorw.exe`** | The one that works. It starts by itself when you log on and never shows anything — no window, no icon. You never launch it yourself. | | **`gamemode-executor.exe`** | The one you talk to. Open it in a terminal to set things up, test, or check. It answers, then it is done. It does not keep watching. | @@ -109,7 +109,7 @@ one per job, each with a `config.toml` you can copy straight over. Once it is running you get a small controller in the notification area, beside the clock. It is the only thing this program ever puts on screen. -| | | +| Icon | Meaning | | --- | --- | | **grey controller** | running, no game. What you will see almost all the time. | | **green controller** | a game is detected | @@ -126,7 +126,7 @@ arrow next to the clock, and drag it onto the taskbar to keep it there. **Right-click it** for a short menu: -| | | +| Entry | What it does | | --- | --- | | **Edit configuration** | opens your `config.toml` in whatever you use for text files — Notepad if `.toml` is not associated with anything | | **Open log** | opens the log the same way | diff --git a/docs/how-it-works.md b/docs/how-it-works.md index e4cdfba..012f7ca 100644 --- a/docs/how-it-works.md +++ b/docs/how-it-works.md @@ -179,7 +179,7 @@ leaves your profile alone, and so does the next logon. ## Where things are -| | | +| What | Where | | --- | --- | | The program | wherever you put it. `%LOCALAPPDATA%\Programs\GameModeExecutor` is the Windows convention for a per-user install, and it stays writable, which `C:\Program Files` would not | | Configuration | `config.toml` next to the executable if there is one, otherwise `%APPDATA%\GameModeExecutor\config.toml` | diff --git a/docs/recipes/fancontrol-fan-profiles/README.md b/docs/recipes/fancontrol-fan-profiles/README.md index 5261a54..fc8f3b5 100644 --- a/docs/recipes/fancontrol-fan-profiles/README.md +++ b/docs/recipes/fancontrol-fan-profiles/README.md @@ -18,7 +18,7 @@ like — the configuration file never has to know. In this folder: -| File | | +| File | What it is | | --- | --- | | [`config.toml`](config.toml) | the complete configuration, ready to copy — the same for everyone | | [`install-tasks.ps1`](install-tasks.ps1) | registers both tasks for you, asking which configuration plays which role | @@ -151,8 +151,9 @@ skip the questions, or if it cannot find FanControl, say so: ``` A name given this way that is not saved is refused too, with nothing -registered. At the end it prints the commands to test what it registered. Run it again any time you rename a configuration: the tasks are -simply re-registered. +registered. At the end it prints the commands to test what it registered. +Run it again any time you rename a configuration: the tasks are simply +re-registered. ### Or by hand: import the templates diff --git a/docs/reference.md b/docs/reference.md index e56a58f..ab7f9f6 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -88,7 +88,7 @@ the previous one has been waited for; `parallel` starts them all at once and then waits. A command that fails to start is logged and never prevents the others: an event is a set of independent side effects, not a pipeline. -| Field | Default | | +| Field | Default | Meaning | | --- | --- | --- | | `name` | the program | the label used in the log | | `program` | required | path or name of the executable | @@ -183,7 +183,7 @@ syntax — `RUST_LOG=game=debug` for the detection lines alone. ## Files the watcher keeps -| | Where | | +| File | Where | Nature | | --- | --- | --- | | Configuration | next to the executable, or `%APPDATA%\GameModeExecutor\config.toml` | yours; roams with the profile | | Log | `%LOCALAPPDATA%\GameModeExecutor\logs\` | disposable |