docs: percantik halaman repo — badge lengkap + diagram alur di README, template issue laporan hardware, CONTRIBUTING, SECURITY, dan kartu social preview
This commit is contained in:
1 parent
93bad1f461
commit
53ee1c5102
5 files changed
+119
No files matched your search
@@ -0,0 +1,57 @@
|
||||
name: Hardware report
|
||||
description: Report a GAMEMAX (or other) LCD cooler that works, partly works, or does not work
|
||||
title: "[hardware] <cooler model>"
|
||||
labels: ["hardware"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for testing on your hardware! Reports from other panel revisions are how
|
||||
this project grows. Please fill in what you can.
|
||||
- type: input
|
||||
id: cooler
|
||||
attributes:
|
||||
label: Cooler / panel model
|
||||
placeholder: e.g. GAMEMAX IceBurg 360 Digital WH
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: usb
|
||||
attributes:
|
||||
label: USB identity (lsusb)
|
||||
description: "`lsusb -d 5131:2007` — paste the line, or the VID:PID if it differs"
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: result
|
||||
attributes:
|
||||
label: Result
|
||||
options:
|
||||
- Works fully (values correct on the panel)
|
||||
- Partly works (which fields are wrong?)
|
||||
- Panel lights up but shows wrong layout
|
||||
- Not detected / no reaction
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: report
|
||||
attributes:
|
||||
label: Output of `python3 src/gamemax_report.py --dry-run`
|
||||
description: This writes nothing to the device, it only prints the report it would send.
|
||||
render: text
|
||||
validations:
|
||||
required: false
|
||||
- type: input
|
||||
id: system
|
||||
attributes:
|
||||
label: System
|
||||
placeholder: distro · kernel · desktop session · motherboard super-I/O (e.g. nct6798)
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: Notes
|
||||
description: Which fan channel / temperature source you had to pick, anything unexpected.
|
||||
validations:
|
||||
required: false
|
||||
@@ -0,0 +1,33 @@
|
||||
# Contributing
|
||||
|
||||
Thanks for helping — the most valuable contribution is **hardware reports**: which cooler
|
||||
works, which firmware revision differs, which sensor channel has to be picked. Use the
|
||||
*Hardware report* issue template, or send a pull request.
|
||||
|
||||
## Before opening a pull request
|
||||
|
||||
The sender must stay dependency-free (standard library only) and must never write to the
|
||||
device unless the user asked for it.
|
||||
|
||||
```bash
|
||||
# nothing is written to the panel:
|
||||
python3 src/gamemax_report.py --dry-run
|
||||
python3 src/gamemax_report.py --list-sensors
|
||||
|
||||
# the tray app self-checks without a display, and can exercise every action:
|
||||
uv run --with pyside6 python src/gamemax_gui.py --selftest
|
||||
uv run --with pyside6 python src/gamemax_gui.py --selftest-actions
|
||||
|
||||
# build the AppImage (needs uv + network on first run):
|
||||
bash packaging/build_appimage.sh
|
||||
```
|
||||
|
||||
`--selftest-actions` really does start/stop the service and toggle autostart, then leaves
|
||||
the service running — expected.
|
||||
|
||||
## Style
|
||||
|
||||
- Python 3.10+, no new dependencies, comments only where the code cannot explain itself.
|
||||
- GUI strings are Indonesian (the original author's language); code and docs are English.
|
||||
- Keep the protocol knowledge in `docs/reverse-engineering.md` and the README table in sync
|
||||
when you learn something new about the panel.
|
||||
@@ -8,7 +8,22 @@ Reverse engineered independently from the Windows vendor software
|
||||
[`docs/reverse-engineering.md`](docs/reverse-engineering.md) (Indonesian).
|
||||
|
||||
[](https://github.com/oxpoe/Gamemax-linux-apps/releases)
|
||||
[](https://github.com/oxpoe/Gamemax-linux-apps/actions/workflows/release.yml)
|
||||
[](LICENSE)
|
||||
[](#compatibility)
|
||||
[](src/gamemax_report.py)
|
||||
[](src/gamemax_report.py)
|
||||
[](https://donasi.oxpoe.qzz.io/)
|
||||
|
||||
```text
|
||||
hwmon · /proc/stat · cpufreq · meminfo · statvfs
|
||||
│
|
||||
▼
|
||||
gamemax_report.py ──► 65-byte HID report ──► LCD panel
|
||||
(stdlib only) hidraw, 5131:2007
|
||||
▲
|
||||
gamemax_gui.py (tray) ──► systemd user unit + udev rule
|
||||
```
|
||||
|
||||
Author: **oxpoe** · License: **MIT** · Independent project, **not affiliated with the
|
||||
vendor** — please read [DISCLAIMER.md](DISCLAIMER.md) before using it.
|
||||
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
# Security
|
||||
|
||||
This is a small local tool. The relevant surface:
|
||||
|
||||
- It writes 64-byte HID reports to the panel matching `VID 0x5131 / PID 0x2007`
|
||||
(plus a udev rule that grants the logged-in user access to that `hidraw` node).
|
||||
- The tray app runs `systemctl --user` and, for the udev rule, `pkexec sh` on a script it
|
||||
writes to `/tmp`. Nothing else is executed, and no data leaves the machine.
|
||||
- No secrets are stored. The config file (`~/.config/gamemax-report/config.json`) holds
|
||||
sensor channel names and display settings only.
|
||||
|
||||
If you find a problem — for example a way to make the helper scripts run something else,
|
||||
or a path that writes outside the documented locations — please open an issue (or a
|
||||
private security advisory on GitHub). Do not test on hardware you do not own.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 438 KiB |
Reference in new issue
Block a user