Files
Das-OS/Makefile
T
dasandClaude Opus 5.5 f3793d468c
build / build (push) Successful in 30m42s
Incremental package builds and releases on v* tags (0.8.0)
- build-packages.sh rebuilds a package only when its srcpkgs/ directory
  changed, its binary package is missing, or a dry-run install finds a
  shared library Void no longer provides; DASOS_REBUILD=1 rebuilds all.
  An unchanged `make packages` takes 20 s instead of 17 min on the CI host
- ci/release.sh publishes both ISOs and SHA256SUMS as a Gitea release
  when the workflow runs for a v* tag matching VERSION
- README and TODO updated

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 14:55:45 +03:00

45 lines
1.5 KiB
Makefile

# Das OS build entry points. Everything except QEMU runs in the Void builder container.
.PHONY: help packages iso iso-server qemu qemu-bios qemu-disk qemu-server test clean
help:
@echo "make packages build srcpkgs/* into the local repository (out/hostdir/binpkgs)"
@echo "make iso build packages, then the live ISO (out/iso)"
@echo "make iso-server build packages, then the server ISO (out/iso)"
@echo "make qemu boot the newest ISO in QEMU with UEFI"
@echo "make qemu-bios boot the newest ISO in QEMU with legacy BIOS"
@echo "make qemu-disk boot with a 20 GB virtual disk attached (for installer tests)"
@echo "make qemu-server boot the newest server ISO on a serial console, with the disk"
@echo "make test run Go tests"
@echo "make clean remove build output (keeps download caches)"
packages:
scripts/builder.sh /work/scripts/container/build-packages.sh
iso: packages
scripts/builder.sh /work/scripts/container/build-iso.sh
iso-server: packages
scripts/builder.sh /work/scripts/container/build-iso.sh server
qemu:
scripts/run-qemu.sh
qemu-bios:
scripts/run-qemu.sh --bios
qemu-disk:
scripts/run-qemu.sh --disk
qemu-server:
scripts/run-qemu.sh --serial --disk
test:
cd srcpkgs/das-theme/files/xfwm4gen && go test ./...
cd srcpkgs/das-tools/files/src && go test ./...
# Build output may be owned by root when a build was interrupted, so remove it from the container
clean:
scripts/builder.sh rm -rf /work/out/hostdir/binpkgs /work/out/hostdir/stamps /work/out/iso
rm -rf out/qemu