Add single-command installation: install.sh, Makefile, frontend build hook
- hatch_build.py: custom hatchling build hook that compiles the React frontend (npm ci + build) when frontend/dist is missing or stale, so 'uv tool install git+https://gitea.zephyre.one/Pakobbix/nvcurve.git' works as a single command - install.sh: curl|bash installer (checks prerequisites, auto-installs uv, clones and installs) - Makefile: dev targets (frontend, install, dev, test, clean) - README/docs: document the one-liner, clone, and direct-git installs
This commit is contained in:
1 parent
d810c44478
commit
a8462e696c
7 files changed
+287
-30
No files matched your search
@@ -37,20 +37,28 @@ NVCurve brings MSI Afterburner-style per-point voltage-frequency curve control t
|
||||
- **[uv](https://docs.astral.sh/uv/)** — Python package manager
|
||||
- **Root/sudo access** (required for GPU hardware interactions)
|
||||
|
||||
## Installation from Source
|
||||
## Installation
|
||||
|
||||
### One-liner
|
||||
|
||||
```bash
|
||||
git clone <this-repo-url>.git
|
||||
curl -fsSL https://gitea.zephyre.one/Pakobbix/nvcurve/raw/branch/main/install.sh | bash
|
||||
```
|
||||
|
||||
The script checks prerequisites (installs `uv` if missing), clones the repo, and installs NVCurve — the React frontend is compiled automatically during the build.
|
||||
|
||||
### From a clone
|
||||
|
||||
```bash
|
||||
git clone https://gitea.zephyre.one/Pakobbix/nvcurve.git
|
||||
cd nvcurve
|
||||
./install.sh
|
||||
```
|
||||
|
||||
# Build the React frontend
|
||||
cd frontend
|
||||
npm install
|
||||
npm run build
|
||||
cd ..
|
||||
### Direct from git (no clone, no script)
|
||||
|
||||
# Install the Python package (includes bundled frontend)
|
||||
uv tool install .
|
||||
```bash
|
||||
uv tool install "git+https://gitea.zephyre.one/Pakobbix/nvcurve.git"
|
||||
```
|
||||
|
||||
After installation, verify hardware compatibility:
|
||||
@@ -200,10 +208,11 @@ The GPU key can be a UUID, `pci:XXXX`, or `idx:N` fallback. Find your GPU key wi
|
||||
```bash
|
||||
cd nvcurve
|
||||
git pull
|
||||
cd frontend && npm run build && cd ..
|
||||
uv tool install .
|
||||
uv tool install --force .
|
||||
```
|
||||
|
||||
The frontend is rebuilt automatically if it is missing or older than the frontend sources. If you modified frontend code locally, run `make frontend` first (or `rm -rf frontend/dist`).
|
||||
|
||||
If running as a systemd service:
|
||||
|
||||
```bash
|
||||
|
||||
Reference in new issue
Block a user