chore: docker compose, mise.toml, updated toolchain

- Dockerfile: updated to serve mode with web/ embed, expose 8080
- docker-compose.yml: new, maps :8080 and output volume
- Makefile: added serve, akaiutil, electron-* targets
- mise.toml: new, go 1.26 + node 22, all build/run tasks
- .gitignore: exclude built akaiutil binary
This commit is contained in:
2026-06-21 19:46:34 -07:00
parent e2dbb66525
commit 9657aaa523
5 changed files with 75 additions and 3 deletions
+40 -1
View File
@@ -1,21 +1,60 @@
BIN := fetch
IMAGE := akai-fetch
REMOTE := dhg.lol
ELECTRON_DIR := electron
build:
CGO_ENABLED=0 go build -buildvcs=false -o $(BIN) .
akaiutil:
$(MAKE) -C third_party/akaiutil
all: build akaiutil
docker:
docker build -t $(IMAGE) .
docker-run:
docker run --rm -v "$(PWD)/output:/data" $(IMAGE) $(ARGS)
docker-up:
docker compose up --build
docker-down:
docker compose down
serve: build
./$(BIN) serve
# ─── Electron targets ──────────────────────────────────────
electron-deps:
cd $(ELECTRON_DIR) && npm install
electron-dev: build
cd $(ELECTRON_DIR) && npx electron .
electron-build: build akaiutil
cd $(ELECTRON_DIR) && npx electron-builder --dir
electron-build-mac: build akaiutil
cd $(ELECTRON_DIR) && npx electron-builder --mac --dir
electron-build-linux: build akaiutil
cd $(ELECTRON_DIR) && npx electron-builder --linux --dir
# ─── Server / remote ───────────────────────────────────────
install: build
scp $(BIN) $(REMOTE):/tmp/$(BIN) && \
ssh $(REMOTE) "sudo mv /tmp/$(BIN) /DATA/Downloads/akai/$(BIN) && sudo chmod +x /DATA/Downloads/akai/$(BIN)"
clean:
rm -f $(BIN)
rm -rf $(ELECTRON_DIR)/dist
rm -rf $(ELECTRON_DIR)/node_modules
$(MAKE) -C third_party/akaiutil clean
.PHONY: build docker docker-run install clean
.PHONY: build akaiutil all docker docker-run docker-up docker-down serve \
electron-deps electron-dev electron-build electron-build-mac electron-build-linux \
install clean