3 Commits
Author SHA1 Message Date
warkanum 6507e069a8 fix(pkg-deb): set explicit directory permissions for Debian package 2026-10-12 22:17:10 +02:00
warkanum 3f51386e2c chore(release): update package version to 1.0.0
Release / pkg-deb (push) Failing after 19s
Release / pkg-rpm (push) Successful in 47s
Release / test (push) Successful in 17s
Release / release (push) Successful in 17s
Release / pkg-aur (push) Successful in 33s
2026-10-12 22:03:16 +02:00
warkanum acd7c2f699 refactor(Makefile): simplify release-version logic and remove version-set 2026-10-12 22:03:14 +02:00
7 changed files with 31 additions and 23 deletions
+8 -4
View File
@@ -226,10 +226,13 @@ jobs:
-o unitdore .
PKGDIR="unitdore_${PKGVER}_${GOARCH}"
mkdir -p "${PKGDIR}/DEBIAN"
mkdir -p "${PKGDIR}/usr/bin"
mkdir -p "${PKGDIR}/usr/share/man/man1"
mkdir -p "${PKGDIR}/etc/unitdore"
# explicit modes: the runner umask can make mkdir -p create 777 dirs,
# which dpkg-deb rejects
install -d -m755 \
"${PKGDIR}/DEBIAN" \
"${PKGDIR}/usr/bin" \
"${PKGDIR}/usr/share/man/man1" \
"${PKGDIR}/etc/unitdore"
install -m755 unitdore "${PKGDIR}/usr/bin/unitdore"
install -m644 docs/unitdore.1 "${PKGDIR}/usr/share/man/man1/unitdore.1"
@@ -237,6 +240,7 @@ jobs:
sed -e "s/VERSION/${PKGVER}/" \
-e "s/ARCH/${GOARCH}/" \
pkg/debian/control > "${PKGDIR}/DEBIAN/control"
chmod 644 "${PKGDIR}/DEBIAN/control"
dpkg-deb --build --root-owner-group "${PKGDIR}"
echo "Built ${PKGDIR}.deb"
+19 -15
View File
@@ -4,7 +4,7 @@ CONFIG_DIR := /etc/unitdore
VERSION := $(shell git describe --tags --always --dirty 2>/dev/null || echo "dev")
LDFLAGS := -ldflags "-X github.com/warkanum/unitdore/cmd.version=$(VERSION)"
.PHONY: all build install uninstall test lint clean release-version version-set pkg-checksums
.PHONY: all build install uninstall test lint clean release-version pkg-checksums
all: build
@@ -42,15 +42,25 @@ lint:
clean:
rm -f $(BINARY)
## release-version: bump patch version, update source and package versions, commit, tag, and push
# VERSION only counts as a release version when given on the command line
# (it defaults to git describe for the build flags).
RELEASE_VERSION := $(if $(filter command line,$(origin VERSION)),$(patsubst v%,%,$(VERSION)))
## release-version: bump version (patch, or VERSION=X.Y.Z), update source and package versions, commit, tag, and push
release-version:
@CURRENT=$$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0"); \
MAJOR=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/'); \
MINOR=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/'); \
PATCH=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/'); \
NEXT="v$$MAJOR.$$MINOR.$$((PATCH + 1))"; \
PKGVER="$$MAJOR.$$MINOR.$$((PATCH + 1))"; \
echo "Current: $$CURRENT → Next: $$NEXT"; \
@if [ -n "$(RELEASE_VERSION)" ]; then \
echo "$(RELEASE_VERSION)" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+$$' || { echo "usage: make release-version [VERSION=X.Y.Z]"; exit 1; }; \
PKGVER="$(RELEASE_VERSION)"; \
else \
CURRENT=$$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0"); \
MAJOR=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\1/'); \
MINOR=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\2/'); \
PATCH=$$(echo $$CURRENT | sed 's/v\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*/\3/'); \
PKGVER="$$MAJOR.$$MINOR.$$((PATCH + 1))"; \
fi; \
NEXT="v$$PKGVER"; \
if git rev-parse -q --verify "refs/tags/$$NEXT" >/dev/null; then echo "tag $$NEXT already exists"; exit 1; fi; \
echo "Releasing $$NEXT"; \
scripts/bump-version.sh "$$PKGVER"; \
git add -A cmd/root.go pkg; \
git commit -m "chore(release): update package version to $$PKGVER"; \
@@ -58,12 +68,6 @@ release-version:
git push origin HEAD "$$NEXT"; \
echo "Pushed $$NEXT — release workflow triggered"
## version-set: set version in source and package files, no commit/tag (make version-set NEW_VERSION=X.Y.Z)
version-set:
@echo "$(NEW_VERSION)" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+$$' || { echo "usage: make version-set NEW_VERSION=X.Y.Z"; exit 1; }
scripts/bump-version.sh "$(NEW_VERSION)"
@echo "Version set to $(NEW_VERSION) — review with 'git diff', then commit"
## pkg-checksums: fill the Void checksum from the published release (run after release)
pkg-checksums:
scripts/update-checksums.sh
+1 -1
View File
@@ -9,7 +9,7 @@ import (
"github.com/warkanum/unitdore/sysuser"
)
var version = "0.0.12"
var version = "1.0.0"
var configPath string
+1 -1
View File
@@ -1,6 +1,6 @@
# Maintainer: Hein (Warky Devs) <hein@warky.dev>
pkgname=unitdore
pkgver=0.0.12
pkgver=1.0.0
pkgrel=1
pkgdesc="A door you open and close for container units — manage containers via systemd"
arch=('x86_64' 'aarch64')
+1 -1
View File
@@ -1,5 +1,5 @@
Name: unitdore
Version: 0.0.12
Version: 1.0.0
Release: 1%{?dist}
Summary: Manage container units via systemd
+1 -1
View File
@@ -1,6 +1,6 @@
# Template file for 'unitdore'
pkgname=unitdore
version=0.0.12
version=1.0.0
revision=1
build_style=go
go_import_path="github.com/warkanum/unitdore"