summaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile29
1 files changed, 16 insertions, 13 deletions
diff --git a/Makefile b/Makefile
index a53c992..464bb91 100644
--- a/Makefile
+++ b/Makefile
@@ -91,30 +91,33 @@ appimage:
@echo "$(BLUE)[AppImage]$(NC) Building Docker image..."
docker build --network=host -t khimera-builder -f docker/Dockerfile.appimage .
@echo "$(BLUE)[AppImage]$(NC) Compiling and packaging..."
+ @mkdir -p $(OUTPUT_DIR)/Linux
docker run --rm --privileged --network=host \
- -v $(shell pwd):/build \
- -w /build \
+ -v $(shell pwd):/src:ro \
+ -v $(shell pwd)/$(OUTPUT_DIR)/Linux:/out \
khimera-builder \
bash -c " \
+ cp -r /src /work && cd /work && \
go mod tidy && \
CGO_ENABLED=1 go build \
-ldflags='$(LDFLAGS)' \
- -o /tmp/khimera-bin \
+ -o /work/khimera-bin \
./khimera-main.go && \
- mkdir -p AppDir/usr/bin AppDir/usr/share/icons/hicolor/256x256/apps && \
- cp /tmp/khimera-bin AppDir/usr/bin/khimera && \
- cp appimage/khimera.desktop AppDir/khimera.desktop && \
- cp appimage/khimera.png AppDir/usr/share/icons/hicolor/256x256/apps/khimera.png && \
- cp appimage/khimera.png AppDir/khimera.png && \
+ mkdir -p /work/AppDir/usr/bin \
+ /work/AppDir/usr/share/applications \
+ /work/AppDir/usr/share/icons/hicolor/256x256/apps && \
+ cp /work/khimera-bin /work/AppDir/usr/bin/khimera && \
+ cp /work/appimage/khimera.desktop /work/AppDir/usr/share/applications/khimera.desktop && \
+ cp /work/appimage/khimera.png /work/AppDir/usr/share/icons/hicolor/256x256/apps/khimera.png && \
+ cd /work && \
linuxdeploy --appdir AppDir \
--library /usr/lib/x86_64-linux-gnu/libGL.so.1 \
--library /usr/lib/x86_64-linux-gnu/libX11.so.6 \
- --output appimage \
+ --desktop-file AppDir/usr/share/applications/khimera.desktop \
+ --icon-file AppDir/usr/share/icons/hicolor/256x256/apps/khimera.png \
+ --output appimage && \
+ cp /work/*.AppImage /out/Khimera-v$(VERSION)-x86_64.AppImage \
"
- @mkdir -p $(OUTPUT_DIR)/Linux
- @mv Khimera*.AppImage $(OUTPUT_DIR)/Linux/Khimera-v$(VERSION)-x86_64.AppImage 2>/dev/null || \
- mv khimera*.AppImage $(OUTPUT_DIR)/Linux/Khimera-v$(VERSION)-x86_64.AppImage
- @rm -rf AppDir
@echo "$(GREEN)✓ AppImage build complete!$(NC)"
@echo "Output: $(OUTPUT_DIR)/Linux/Khimera-v$(VERSION)-x86_64.AppImage"