Some checks are pending
ci / test-and-build (push) Waiting to run
Implement milestone 2 around a portable X11 release bundle instead of\nkeeping distro packages as the only end-user path.\n\nAdd make/package scripts plus a portable installer helper that builds the\ntarball, creates a user-scoped venv install, manages the user service, handles\nupgrade rollback, and supports uninstall with optional purge.\n\nFlip the end-user docs to the portable bundle, add a dedicated install guide\nand validation matrix, and leave the roadmap milestone open only for the\nremaining manual distro validation evidence.\n\nValidation: python3 -m py_compile src/*.py packaging/portable/portable_installer.py tests/test_portable_bundle.py; PYTHONPATH=src python3 -m unittest tests.test_portable_bundle; PYTHONPATH=src python3 -m unittest tests.test_aman_cli tests.test_diagnostics tests.test_portable_bundle; PYTHONPATH=src python3 -m unittest discover -s tests -p 'test_*.py'
93 lines
2.7 KiB
Makefile
93 lines
2.7 KiB
Makefile
PYTHON ?= python3
|
|
CONFIG := $(HOME)/.config/aman/config.json
|
|
DIST_DIR := $(CURDIR)/dist
|
|
BUILD_DIR := $(CURDIR)/build
|
|
|
|
RUN_ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
|
RUN_CONFIG := $(if $(RUN_ARGS),$(abspath $(firstword $(RUN_ARGS))),$(CONFIG))
|
|
|
|
.PHONY: run doctor self-check eval-models build-heuristic-dataset sync-default-model check-default-model sync test check build package package-deb package-arch package-portable release-check install-local install-service install clean-dist clean-build clean
|
|
EVAL_DATASET ?= $(CURDIR)/benchmarks/cleanup_dataset.jsonl
|
|
EVAL_MATRIX ?= $(CURDIR)/benchmarks/model_matrix.small_first.json
|
|
EVAL_OUTPUT ?= $(CURDIR)/benchmarks/results/latest.json
|
|
EVAL_HEURISTIC_RAW ?= $(CURDIR)/benchmarks/heuristics_dataset.raw.jsonl
|
|
EVAL_HEURISTIC_DATASET ?= $(CURDIR)/benchmarks/heuristics_dataset.jsonl
|
|
EVAL_HEURISTIC_WEIGHT ?= 0.25
|
|
MODEL_ARTIFACTS ?= $(CURDIR)/benchmarks/model_artifacts.json
|
|
CONSTANTS_FILE ?= $(CURDIR)/src/constants.py
|
|
|
|
ifneq ($(filter run,$(firstword $(MAKECMDGOALS))),)
|
|
.PHONY: $(RUN_ARGS)
|
|
$(RUN_ARGS):
|
|
@:
|
|
endif
|
|
|
|
run:
|
|
uv run aman run --config $(RUN_CONFIG)
|
|
|
|
doctor:
|
|
uv run aman doctor --config $(CONFIG)
|
|
|
|
self-check:
|
|
uv run aman self-check --config $(CONFIG)
|
|
|
|
build-heuristic-dataset:
|
|
uv run aman build-heuristic-dataset --input $(EVAL_HEURISTIC_RAW) --output $(EVAL_HEURISTIC_DATASET)
|
|
|
|
eval-models: build-heuristic-dataset
|
|
uv run aman eval-models --dataset $(EVAL_DATASET) --matrix $(EVAL_MATRIX) --heuristic-dataset $(EVAL_HEURISTIC_DATASET) --heuristic-weight $(EVAL_HEURISTIC_WEIGHT) --output $(EVAL_OUTPUT)
|
|
|
|
sync-default-model:
|
|
uv run aman sync-default-model --report $(EVAL_OUTPUT) --artifacts $(MODEL_ARTIFACTS) --constants $(CONSTANTS_FILE)
|
|
|
|
check-default-model:
|
|
uv run aman sync-default-model --check --report $(EVAL_OUTPUT) --artifacts $(MODEL_ARTIFACTS) --constants $(CONSTANTS_FILE)
|
|
|
|
sync:
|
|
uv sync
|
|
|
|
test:
|
|
$(PYTHON) -m unittest discover -s tests -p 'test_*.py'
|
|
|
|
check:
|
|
$(PYTHON) -m py_compile src/*.py
|
|
$(MAKE) test
|
|
|
|
build:
|
|
$(PYTHON) -m build --no-isolation
|
|
|
|
package: package-deb package-arch package-portable
|
|
|
|
package-deb:
|
|
./scripts/package_deb.sh
|
|
|
|
package-arch:
|
|
./scripts/package_arch.sh
|
|
|
|
package-portable:
|
|
./scripts/package_portable.sh
|
|
|
|
release-check:
|
|
$(MAKE) check-default-model
|
|
$(PYTHON) -m py_compile src/*.py tests/*.py
|
|
$(MAKE) test
|
|
$(MAKE) build
|
|
|
|
install-local:
|
|
$(PYTHON) -m pip install --user ".[x11]"
|
|
|
|
install-service:
|
|
mkdir -p $(HOME)/.config/systemd/user
|
|
cp systemd/aman.service $(HOME)/.config/systemd/user/aman.service
|
|
systemctl --user daemon-reload
|
|
systemctl --user enable --now aman
|
|
|
|
install: install-local install-service
|
|
|
|
clean-dist:
|
|
rm -rf $(DIST_DIR)
|
|
|
|
clean-build:
|
|
rm -rf $(BUILD_DIR)
|
|
|
|
clean: clean-build
|