mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-05 21:15:38 -05:00
Update DMS versioning for Distro packages
This commit is contained in:
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -610,6 +610,8 @@ jobs:
|
|||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||||
|
|
||||||
|
echo "%{version}" > %{buildroot}%{_datadir}/quickshell/dms/VERSION
|
||||||
|
|
||||||
%posttrans
|
%posttrans
|
||||||
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
dms-git (0.6.2+git5) nightly; urgency=medium
|
dms-git (0.6.2+git2264.c5c5ce84) nightly; urgency=medium
|
||||||
|
|
||||||
|
* Add VERSION file creation to all distro packages
|
||||||
|
* Fix Fedora COPR to pass VERSION/COMMIT to make dist
|
||||||
|
* Fix obs-upload.sh auto-increment to preserve git hash and add ppa suffix
|
||||||
* Fix debian/rules to use source at root level (native format)
|
* Fix debian/rules to use source at root level (native format)
|
||||||
* Remove incorrect dms-git-source subdirectory references
|
* Remove incorrect dms-git-source subdirectory references
|
||||||
* Fix Build-Depends parsing path issue in obs-upload.sh auto-increment
|
|
||||||
* Fix Build-Depends parsing in obs-upload.sh for proper dependency extraction
|
|
||||||
* Build dms binary from source for true git version strings
|
* Build dms binary from source for true git version strings
|
||||||
* Match Fedora COPR git build behavior
|
* Match Fedora COPR git build behavior
|
||||||
* Now shows proper git version (e.g., v0.6.2-11-g12e91534)
|
|
||||||
* Add golang-go and make as build dependencies
|
* Add golang-go and make as build dependencies
|
||||||
|
|
||||||
-- Avenge Media <AvengeMedia.US@gmail.com> Wed, 27 Nov 2025 04:15:00 -0500
|
-- Avenge Media <AvengeMedia.US@gmail.com> Tue, 03 Dec 2025 01:50:00 +0000
|
||||||
|
|||||||
@@ -27,12 +27,11 @@ override_dh_auto_build:
|
|||||||
# Patch go.mod to use Go 1.24 base version (Debian 13 has 1.23.x, may vary)
|
# Patch go.mod to use Go 1.24 base version (Debian 13 has 1.23.x, may vary)
|
||||||
sed -i 's/^go 1\.24\.[0-9]*/go 1.24/' core/go.mod
|
sed -i 's/^go 1\.24\.[0-9]*/go 1.24/' core/go.mod
|
||||||
|
|
||||||
# Extract version info for embedding
|
|
||||||
VERSION="$(UPSTREAM_VERSION)"
|
|
||||||
COMMIT=$$(echo "$(UPSTREAM_VERSION)" | grep -oP '(?<=git)[0-9]+\.[a-f0-9]+' | cut -d. -f2 | head -c8 || echo "unknown")
|
|
||||||
|
|
||||||
# Build dms-cli from source using vendored dependencies
|
# Build dms-cli from source using vendored dependencies
|
||||||
|
# Extract version info and build in single shell to preserve variables
|
||||||
# Architecture mapping: Debian amd64/arm64 -> Makefile amd64/arm64
|
# Architecture mapping: Debian amd64/arm64 -> Makefile amd64/arm64
|
||||||
|
VERSION="$(UPSTREAM_VERSION)"; \
|
||||||
|
COMMIT=$$(echo "$(UPSTREAM_VERSION)" | grep -oP '(?<=git)[0-9]+\.[a-f0-9]+' | cut -d. -f2 | head -c8 || echo "unknown"); \
|
||||||
if [ "$(DEB_HOST_ARCH)" = "amd64" ]; then \
|
if [ "$(DEB_HOST_ARCH)" = "amd64" ]; then \
|
||||||
MAKE_ARCH=amd64; \
|
MAKE_ARCH=amd64; \
|
||||||
BINARY_NAME=dms-linux-amd64; \
|
BINARY_NAME=dms-linux-amd64; \
|
||||||
@@ -71,6 +70,8 @@ override_dh_auto_install:
|
|||||||
rm -rf debian/dms-git/usr/share/quickshell/dms/core \
|
rm -rf debian/dms-git/usr/share/quickshell/dms/core \
|
||||||
debian/dms-git/usr/share/quickshell/dms/distro
|
debian/dms-git/usr/share/quickshell/dms/distro
|
||||||
|
|
||||||
|
echo "$(UPSTREAM_VERSION)" > debian/dms-git/usr/share/quickshell/dms/VERSION
|
||||||
|
|
||||||
override_dh_auto_clean:
|
override_dh_auto_clean:
|
||||||
# Clean up build artifacts
|
# Clean up build artifacts
|
||||||
rm -f dms
|
rm -f dms
|
||||||
|
|||||||
@@ -98,8 +98,11 @@ chmod +x %{_builddir}/dgop
|
|||||||
|
|
||||||
%build
|
%build
|
||||||
# Build DMS CLI from source (core/subdirectory)
|
# Build DMS CLI from source (core/subdirectory)
|
||||||
|
VERSION="%{version}"
|
||||||
|
COMMIT=$(echo "%{version}" | grep -oP '[a-f0-9]{7,}' | head -n1 || echo "unknown")
|
||||||
|
|
||||||
cd core
|
cd core
|
||||||
make dist
|
make dist VERSION="$VERSION" COMMIT="$COMMIT"
|
||||||
|
|
||||||
%install
|
%install
|
||||||
# Install dms-cli binary (built from source)
|
# Install dms-cli binary (built from source)
|
||||||
@@ -132,11 +135,10 @@ install -Dm755 %{_builddir}/dgop %{buildroot}%{_bindir}/dgop
|
|||||||
# Install systemd user service
|
# Install systemd user service
|
||||||
install -Dm644 assets/systemd/dms.service %{buildroot}%{_userunitdir}/dms.service
|
install -Dm644 assets/systemd/dms.service %{buildroot}%{_userunitdir}/dms.service
|
||||||
|
|
||||||
# Install desktop file and icon
|
|
||||||
install -Dm644 assets/dms-open.desktop %{buildroot}%{_datadir}/applications/dms-open.desktop
|
install -Dm644 assets/dms-open.desktop %{buildroot}%{_datadir}/applications/dms-open.desktop
|
||||||
install -Dm644 assets/danklogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg
|
install -Dm644 assets/danklogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg
|
||||||
|
|
||||||
# Install shell files to shared data location (from quickshell/ subdirectory)
|
# Install shell files to shared data location
|
||||||
install -dm755 %{buildroot}%{_datadir}/quickshell/dms
|
install -dm755 %{buildroot}%{_datadir}/quickshell/dms
|
||||||
cp -r quickshell/* %{buildroot}%{_datadir}/quickshell/dms/
|
cp -r quickshell/* %{buildroot}%{_datadir}/quickshell/dms/
|
||||||
|
|
||||||
@@ -146,13 +148,9 @@ rm -f %{buildroot}%{_datadir}/quickshell/dms/.gitignore
|
|||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||||
|
|
||||||
|
echo "%{version}" > %{buildroot}%{_datadir}/quickshell/dms/VERSION
|
||||||
|
|
||||||
%posttrans
|
%posttrans
|
||||||
# Clean up old installation path from previous versions
|
|
||||||
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell" 2>/dev/null || true
|
|
||||||
rmdir "%{_sysconfdir}/xdg" 2>/dev/null || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Restart DMS for active users after upgrade
|
# Restart DMS for active users after upgrade
|
||||||
if [ "$1" -ge 2 ]; then
|
if [ "$1" -ge 2 ]; then
|
||||||
|
|||||||
@@ -103,6 +103,8 @@ rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
|||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/core
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/core
|
||||||
|
|
||||||
|
echo "%{version}" > %{buildroot}%{_datadir}/quickshell/dms/VERSION
|
||||||
|
|
||||||
%posttrans
|
%posttrans
|
||||||
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
||||||
|
|||||||
@@ -77,12 +77,9 @@ rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
|||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/core
|
rm -rf %{buildroot}%{_datadir}/quickshell/dms/core
|
||||||
|
|
||||||
|
echo "%{version}" > %{buildroot}%{_datadir}/quickshell/dms/VERSION
|
||||||
|
|
||||||
%posttrans
|
%posttrans
|
||||||
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
|
||||||
rmdir "%{_sysconfdir}/xdg/quickshell" 2>/dev/null || true
|
|
||||||
rmdir "%{_sysconfdir}/xdg" 2>/dev/null || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$1" -ge 2 ]; then
|
if [ "$1" -ge 2 ]; then
|
||||||
pkill -USR1 -x dms >/dev/null 2>&1 || true
|
pkill -USR1 -x dms >/dev/null 2>&1 || true
|
||||||
|
|||||||
@@ -619,10 +619,10 @@ fi
|
|||||||
|
|
||||||
# Only auto-increment on manual runs (REBUILD_RELEASE set or not in CI), not automated workflows
|
# Only auto-increment on manual runs (REBUILD_RELEASE set or not in CI), not automated workflows
|
||||||
OLD_DSC_FILE=""
|
OLD_DSC_FILE=""
|
||||||
if [[ -f "$WORK_DIR/$PACKAGE.dsc" ]]; then
|
if [[ -f "$WORK_DIR/.osc/sources/$PACKAGE.dsc" ]]; then
|
||||||
OLD_DSC_FILE="$WORK_DIR/$PACKAGE.dsc"
|
|
||||||
elif [[ -f "$WORK_DIR/.osc/sources/$PACKAGE.dsc" ]]; then
|
|
||||||
OLD_DSC_FILE="$WORK_DIR/.osc/sources/$PACKAGE.dsc"
|
OLD_DSC_FILE="$WORK_DIR/.osc/sources/$PACKAGE.dsc"
|
||||||
|
elif [[ -f "$WORK_DIR/.osc/$PACKAGE.dsc" ]]; then
|
||||||
|
OLD_DSC_FILE="$WORK_DIR/.osc/$PACKAGE.dsc"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$UPLOAD_DEBIAN" == true ]] && [[ "$SOURCE_FORMAT" == *"native"* ]] && [[ -n "$OLD_DSC_FILE" ]]; then
|
if [[ "$UPLOAD_DEBIAN" == true ]] && [[ "$SOURCE_FORMAT" == *"native"* ]] && [[ -n "$OLD_DSC_FILE" ]]; then
|
||||||
@@ -640,19 +640,16 @@ if [[ "$UPLOAD_DEBIAN" == true ]] && [[ "$SOURCE_FORMAT" == *"native"* ]] && [[
|
|||||||
echo "==> Local/manual run detected (not in CI)"
|
echo "==> Local/manual run detected (not in CI)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -n "$OLD_DSC_VERSION" ]] && [[ "$OLD_DSC_VERSION" == "$CHANGELOG_VERSION" ]] && [[ "$IS_MANUAL" == true ]]; then
|
CHANGELOG_BASE=$(echo "$CHANGELOG_VERSION" | sed 's/ppa[0-9]*$//')
|
||||||
echo "==> Detected rebuild of same version $CHANGELOG_VERSION, incrementing version"
|
OLD_DSC_BASE=$(echo "$OLD_DSC_VERSION" | sed 's/ppa[0-9]*$//')
|
||||||
|
|
||||||
|
if [[ -n "$OLD_DSC_VERSION" ]] && [[ "$OLD_DSC_BASE" == "$CHANGELOG_BASE" ]] && [[ "$IS_MANUAL" == true ]]; then
|
||||||
|
echo "==> Detected rebuild of same base version $CHANGELOG_BASE, incrementing version"
|
||||||
|
|
||||||
if [[ "$CHANGELOG_VERSION" =~ ^([0-9.]+)\+git$ ]]; then
|
if [[ "$CHANGELOG_VERSION" =~ ^([0-9.]+)\+git$ ]]; then
|
||||||
BASE_VERSION="${BASH_REMATCH[1]}"
|
BASE_VERSION="${BASH_REMATCH[1]}"
|
||||||
NEW_VERSION="${BASE_VERSION}+git1"
|
NEW_VERSION="${BASE_VERSION}+gitppa1"
|
||||||
echo " Incrementing git number: $CHANGELOG_VERSION -> $NEW_VERSION"
|
echo " Adding PPA number: $CHANGELOG_VERSION -> $NEW_VERSION"
|
||||||
elif [[ "$CHANGELOG_VERSION" =~ ^([0-9.]+)\+git([0-9]+)$ ]]; then
|
|
||||||
BASE_VERSION="${BASH_REMATCH[1]}"
|
|
||||||
GIT_NUM="${BASH_REMATCH[2]}"
|
|
||||||
NEW_GIT_NUM=$((GIT_NUM + 1))
|
|
||||||
NEW_VERSION="${BASE_VERSION}+git${NEW_GIT_NUM}"
|
|
||||||
echo " Incrementing git number: $CHANGELOG_VERSION -> $NEW_VERSION"
|
|
||||||
elif [[ "$CHANGELOG_VERSION" =~ ^([0-9.]+)ppa([0-9]+)$ ]]; then
|
elif [[ "$CHANGELOG_VERSION" =~ ^([0-9.]+)ppa([0-9]+)$ ]]; then
|
||||||
BASE_VERSION="${BASH_REMATCH[1]}"
|
BASE_VERSION="${BASH_REMATCH[1]}"
|
||||||
PPA_NUM="${BASH_REMATCH[2]}"
|
PPA_NUM="${BASH_REMATCH[2]}"
|
||||||
@@ -664,7 +661,14 @@ if [[ "$UPLOAD_DEBIAN" == true ]] && [[ "$SOURCE_FORMAT" == *"native"* ]] && [[
|
|||||||
GIT_NUM="${BASH_REMATCH[2]}"
|
GIT_NUM="${BASH_REMATCH[2]}"
|
||||||
GIT_HASH="${BASH_REMATCH[3]}"
|
GIT_HASH="${BASH_REMATCH[3]}"
|
||||||
PPA_NUM="${BASH_REMATCH[5]}"
|
PPA_NUM="${BASH_REMATCH[5]}"
|
||||||
if [[ -n "$PPA_NUM" ]]; then
|
|
||||||
|
# Check if old DSC has ppa suffix even if changelog doesn't
|
||||||
|
if [[ -z "$PPA_NUM" ]] && [[ "$OLD_DSC_VERSION" =~ ppa([0-9]+)$ ]]; then
|
||||||
|
OLD_PPA_NUM="${BASH_REMATCH[1]}"
|
||||||
|
NEW_PPA_NUM=$((OLD_PPA_NUM + 1))
|
||||||
|
NEW_VERSION="${BASE_VERSION}+git${GIT_NUM}${GIT_HASH}ppa${NEW_PPA_NUM}"
|
||||||
|
echo " Incrementing PPA number from old DSC: $OLD_DSC_VERSION -> $NEW_VERSION"
|
||||||
|
elif [[ -n "$PPA_NUM" ]]; then
|
||||||
NEW_PPA_NUM=$((PPA_NUM + 1))
|
NEW_PPA_NUM=$((PPA_NUM + 1))
|
||||||
NEW_VERSION="${BASE_VERSION}+git${GIT_NUM}${GIT_HASH}ppa${NEW_PPA_NUM}"
|
NEW_VERSION="${BASE_VERSION}+git${GIT_NUM}${GIT_HASH}ppa${NEW_PPA_NUM}"
|
||||||
echo " Incrementing PPA number: $CHANGELOG_VERSION -> $NEW_VERSION"
|
echo " Incrementing PPA number: $CHANGELOG_VERSION -> $NEW_VERSION"
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
dms-git (0.6.2+git2169.f7f1bbbdppa10) questing; urgency=medium
|
dms-git (0.6.2+git2264.c5c5ce84) questing; urgency=medium
|
||||||
|
|
||||||
* Git snapshot (commit 2169: f7f1bbbd)
|
* Add VERSION file creation to all distro packages
|
||||||
|
* Fix Fedora COPR to pass VERSION/COMMIT to make dist
|
||||||
|
* Fix obs-upload.sh auto-increment to preserve git hash and add ppa suffix
|
||||||
|
* Git snapshot (commit 2264: c5c5ce84)
|
||||||
|
|
||||||
-- Avenge Media <AvengeMedia.US@gmail.com> Wed, 26 Nov 2025 21:43:12 -0500
|
-- Avenge Media <AvengeMedia.US@gmail.com> Tue, 03 Dec 2025 01:50:00 +0000
|
||||||
|
|||||||
@@ -62,6 +62,14 @@ override_dh_auto_install:
|
|||||||
install -Dm644 dms-git-repo/assets/danklogo.svg \
|
install -Dm644 dms-git-repo/assets/danklogo.svg \
|
||||||
debian/dms-git/usr/share/icons/hicolor/scalable/apps/danklogo.svg
|
debian/dms-git/usr/share/icons/hicolor/scalable/apps/danklogo.svg
|
||||||
|
|
||||||
|
# Create DMS Version file
|
||||||
|
@if [ -f dms-git-repo/.dms-version ]; then \
|
||||||
|
. dms-git-repo/.dms-version; \
|
||||||
|
echo "$$VERSION" > debian/dms-git/usr/share/quickshell/dms/VERSION; \
|
||||||
|
else \
|
||||||
|
echo "dev" > debian/dms-git/usr/share/quickshell/dms/VERSION; \
|
||||||
|
fi
|
||||||
|
|
||||||
override_dh_auto_clean:
|
override_dh_auto_clean:
|
||||||
# Don't delete dms-git-repo directory - it's part of the source package (native format)
|
# Don't delete dms-git-repo directory - it's part of the source package (native format)
|
||||||
# Clean up build artifacts
|
# Clean up build artifacts
|
||||||
|
|||||||
@@ -54,6 +54,9 @@ override_dh_auto_install:
|
|||||||
install -Dm644 DankMaterialShell-$(BASE_VERSION)/assets/danklogo.svg \
|
install -Dm644 DankMaterialShell-$(BASE_VERSION)/assets/danklogo.svg \
|
||||||
debian/dms/usr/share/icons/hicolor/scalable/apps/danklogo.svg
|
debian/dms/usr/share/icons/hicolor/scalable/apps/danklogo.svg
|
||||||
|
|
||||||
|
# Create VERSION file for Quickshell (stable release format)
|
||||||
|
echo "$(BASE_VERSION)" > debian/dms/usr/share/quickshell/dms/VERSION
|
||||||
|
|
||||||
# Generate and install shell completions (if applicable)
|
# Generate and install shell completions (if applicable)
|
||||||
# Uncomment if dms supports completion generation
|
# Uncomment if dms supports completion generation
|
||||||
# ./dms completion bash > dms.bash
|
# ./dms completion bash > dms.bash
|
||||||
|
|||||||
@@ -88,6 +88,9 @@
|
|||||||
mkdir -p $out/etc/xdg/quickshell
|
mkdir -p $out/etc/xdg/quickshell
|
||||||
cp -r ./ $out/etc/xdg/quickshell/dms
|
cp -r ./ $out/etc/xdg/quickshell/dms
|
||||||
|
|
||||||
|
# Create DMS Version file
|
||||||
|
echo "${version}" > $out/etc/xdg/quickshell/dms/VERSION
|
||||||
|
|
||||||
# Install desktop file
|
# Install desktop file
|
||||||
mkdir -p $out/share/applications
|
mkdir -p $out/share/applications
|
||||||
cp ${./assets/dms-open.desktop} $out/share/applications/dms-open.desktop
|
cp ${./assets/dms-open.desktop} $out/share/applications/dms-open.desktop
|
||||||
|
|||||||
Reference in New Issue
Block a user