mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-05 21:15:38 -05:00
Update dms-cli for nightly builds
This commit is contained in:
6
.github/workflows/run-ppa.yml
vendored
6
.github/workflows/run-ppa.yml
vendored
@@ -24,6 +24,12 @@ jobs:
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '1.24'
|
||||
cache: false
|
||||
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
|
||||
@@ -296,6 +296,30 @@ if [ "$IS_GIT_PACKAGE" = true ] && [ -n "$GIT_REPO" ]; then
|
||||
# Now clone to source directory (without .git for inclusion in package)
|
||||
rm -rf "$SOURCE_DIR"
|
||||
cp -r "$TEMP_CLONE" "$SOURCE_DIR"
|
||||
|
||||
# Save version info for dms-git build process
|
||||
if [ "$PACKAGE_NAME" = "dms-git" ]; then
|
||||
info "Saving version info to .dms-version for build process..."
|
||||
echo "VERSION=${UPSTREAM_VERSION}+git${GIT_COMMIT_COUNT}.${GIT_COMMIT_HASH}" > "$SOURCE_DIR/.dms-version"
|
||||
echo "COMMIT=${GIT_COMMIT_HASH}" >> "$SOURCE_DIR/.dms-version"
|
||||
success "Version info saved: ${UPSTREAM_VERSION}+git${GIT_COMMIT_COUNT}.${GIT_COMMIT_HASH}"
|
||||
|
||||
# Vendor Go dependencies (Launchpad has no internet access)
|
||||
info "Vendoring Go dependencies for offline build..."
|
||||
cd "$SOURCE_DIR/core"
|
||||
|
||||
# Create vendor directory with all dependencies
|
||||
go mod vendor
|
||||
|
||||
if [ ! -d "vendor" ]; then
|
||||
error "Failed to vendor Go dependencies"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
success "Go dependencies vendored successfully"
|
||||
cd "$PACKAGE_DIR"
|
||||
fi
|
||||
|
||||
rm -rf "$SOURCE_DIR/.git"
|
||||
rm -rf "$TEMP_CLONE"
|
||||
|
||||
@@ -349,21 +373,6 @@ if [ "$IS_GIT_PACKAGE" = true ] && [ -n "$GIT_REPO" ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# Download pre-built binary for dms-git
|
||||
# dms-git uses latest release binary with git master QML files
|
||||
if [ "$PACKAGE_NAME" = "dms-git" ]; then
|
||||
info "Downloading latest release binary for dms-git..."
|
||||
if [ ! -f "dms-distropkg-amd64.gz" ]; then
|
||||
if wget -O dms-distropkg-amd64.gz "https://github.com/AvengeMedia/DankMaterialShell/releases/latest/download/dms-distropkg-amd64.gz"; then
|
||||
success "Latest release binary downloaded"
|
||||
else
|
||||
error "Failed to download dms-distropkg-amd64.gz"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
info "Release binary already downloaded"
|
||||
fi
|
||||
fi
|
||||
|
||||
success "Source prepared for packaging"
|
||||
else
|
||||
|
||||
@@ -218,12 +218,7 @@ if [ "$KEEP_BUILDS" = "false" ]; then
|
||||
fi
|
||||
;;
|
||||
dms-git)
|
||||
# Remove downloaded binary
|
||||
if [ -f "$PACKAGE_DIR/dms-distropkg-amd64.gz" ]; then
|
||||
rm -f "$PACKAGE_DIR/dms-distropkg-amd64.gz"
|
||||
REMOVED=$((REMOVED + 1))
|
||||
fi
|
||||
# Remove git source directory
|
||||
# Remove git source directory binary
|
||||
if [ -d "$PACKAGE_DIR/dms-git-repo" ]; then
|
||||
rm -rf "$PACKAGE_DIR/dms-git-repo"
|
||||
REMOVED=$((REMOVED + 1))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
dms-git (0.6.2+git2094.6cc6e7c8ppa1) questing; urgency=medium
|
||||
dms-git (0.6.2+git2169.f7f1bbbdppa10) questing; urgency=medium
|
||||
|
||||
* Git snapshot (commit 2094: 6cc6e7c8)
|
||||
* Git snapshot (commit 2169: f7f1bbbd)
|
||||
|
||||
-- Avenge Media <AvengeMedia.US@gmail.com> Sun, 23 Nov 2025 00:43:28 -0500
|
||||
-- Avenge Media <AvengeMedia.US@gmail.com> Wed, 26 Nov 2025 21:43:12 -0500
|
||||
|
||||
@@ -2,7 +2,8 @@ Source: dms-git
|
||||
Section: x11
|
||||
Priority: optional
|
||||
Maintainer: Avenge Media <AvengeMedia.US@gmail.com>
|
||||
Build-Depends: debhelper-compat (= 13)
|
||||
Build-Depends: debhelper-compat (= 13),
|
||||
golang-go (>= 2:1.22~)
|
||||
Standards-Version: 4.6.2
|
||||
Homepage: https://github.com/AvengeMedia/DankMaterialShell
|
||||
Vcs-Browser: https://github.com/AvengeMedia/DankMaterialShell
|
||||
|
||||
@@ -1 +1 @@
|
||||
dms-git_0.6.2+git2094.6cc6e7c8ppa1_source.buildinfo x11 optional
|
||||
dms-git_0.6.2+git2169.f7f1bbbdppa10_source.buildinfo x11 optional
|
||||
|
||||
@@ -6,19 +6,38 @@ export DH_VERBOSE = 1
|
||||
GIT_DATE := $(shell date +%Y%m%d)
|
||||
GIT_COMMIT := HEAD
|
||||
|
||||
# Go needs writable directories for its caches
|
||||
export HOME := $(CURDIR)/debian/tmp-home
|
||||
export GOCACHE := $(CURDIR)/debian/tmp-home/go-cache
|
||||
export GOMODCACHE := $(CURDIR)/debian/tmp-home/go-mod
|
||||
|
||||
# Launchpad has no network access, so use local toolchain only
|
||||
export GOTOOLCHAIN := local
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_auto_build:
|
||||
# Git source is already included in source package (cloned by build-source.sh)
|
||||
# Create Go cache directories (sbuild sets HOME to non-existent path)
|
||||
mkdir -p $(HOME) $(GOCACHE) $(GOMODCACHE)
|
||||
|
||||
# Git source is already included in source package (cloned by ppa-build.sh)
|
||||
# Launchpad build environment has no internet access
|
||||
test -d dms-git-repo || (echo "ERROR: dms-git-repo directory not found!" && exit 1)
|
||||
test -f dms-distropkg-amd64.gz || (echo "ERROR: dms-distropkg-amd64.gz not found!" && exit 1)
|
||||
|
||||
# Extract pre-built binary from latest release
|
||||
# Note: For git versions, we use the latest release binary
|
||||
# The QML files come from git master
|
||||
gunzip -c dms-distropkg-amd64.gz > dms
|
||||
# Patch go.mod to use Go 1.24 base version (Ubuntu has 1.24.4, project requires 1.24.6)
|
||||
sed -i 's/^go 1\.24\.[0-9]*/go 1.24/' dms-git-repo/core/go.mod
|
||||
|
||||
# Build dms-cli from source
|
||||
@if [ -f dms-git-repo/.dms-version ]; then \
|
||||
. dms-git-repo/.dms-version; \
|
||||
echo "Building with VERSION=$$VERSION COMMIT=$$COMMIT"; \
|
||||
cd dms-git-repo/core && $(MAKE) GOFLAGS="-mod=vendor" dist ARCH=amd64 VERSION="$$VERSION" COMMIT="$$COMMIT"; \
|
||||
else \
|
||||
echo "Warning: .dms-version not found, building without version info"; \
|
||||
cd dms-git-repo/core && $(MAKE) GOFLAGS="-mod=vendor" dist ARCH=amd64; \
|
||||
fi
|
||||
cp dms-git-repo/core/bin/dms-linux-amd64 dms
|
||||
chmod +x dms
|
||||
|
||||
override_dh_auto_install:
|
||||
@@ -39,7 +58,8 @@ override_dh_auto_install:
|
||||
|
||||
override_dh_auto_clean:
|
||||
# Don't delete dms-git-repo directory - it's part of the source package (native format)
|
||||
# Clean up build artifacts (but keep dms-distropkg-amd64.gz for Launchpad)
|
||||
# Clean up build artifacts
|
||||
rm -f dms
|
||||
# Don't remove dms-distropkg-amd64.gz - it needs to be included in the source package for Launchpad builds
|
||||
rm -rf dms-git-repo/core/bin
|
||||
rm -rf debian/tmp-home
|
||||
dh_auto_clean
|
||||
|
||||
@@ -1 +1 @@
|
||||
dms-distropkg-amd64.gz
|
||||
# No pre-built binaries needed - dms-cli is built from source
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
# Include files that are normally excluded by .gitignore
|
||||
# These are needed for the build process on Launchpad (which has no internet access)
|
||||
tar-ignore = !dms-distropkg-amd64.gz
|
||||
tar-ignore = !dms-git-repo
|
||||
|
||||
Reference in New Issue
Block a user