mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-06 05:25:41 -05:00
Merge branch 'master' of github.com:bbedward/DankMaterialShell
This commit is contained in:
113
.github/workflows/release.yml
vendored
113
.github/workflows/release.yml
vendored
@@ -194,11 +194,8 @@ jobs:
|
|||||||
- Ensure all dependencies are installed
|
- Ensure all dependencies are installed
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
# Create the full package with proper RPM structure (dms-VERSION/ top-level directory)
|
# Create the full package
|
||||||
mkdir -p dms-${TAG}
|
(cd _temp_full && tar -czf "../_release_assets/dms-full-${arch}.tar.gz" .)
|
||||||
cp -r _temp_full/* dms-${TAG}/
|
|
||||||
tar -czf _release_assets/dms-full-${arch}.tar.gz dms-${TAG}
|
|
||||||
rm -rf dms-${TAG}
|
|
||||||
|
|
||||||
# Generate checksum
|
# Generate checksum
|
||||||
(cd _release_assets && sha256sum "dms-full-${arch}.tar.gz" > "dms-full-${arch}.tar.gz.sha256")
|
(cd _release_assets && sha256sum "dms-full-${arch}.tar.gz" > "dms-full-${arch}.tar.gz.sha256")
|
||||||
@@ -214,109 +211,3 @@ jobs:
|
|||||||
files: _release_assets/**
|
files: _release_assets/**
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
- name: Setup RPM build environment
|
|
||||||
run: |
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y rpm wget curl jq
|
|
||||||
|
|
||||||
# Setup rpmbuild tree
|
|
||||||
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
|
|
||||||
|
|
||||||
- name: Prepare RPM sources
|
|
||||||
run: |
|
|
||||||
cd ~/rpmbuild/SOURCES
|
|
||||||
VERSION="${{ env.TAG }}"
|
|
||||||
|
|
||||||
# Copy the full packages (already have proper RPM structure)
|
|
||||||
cp _release_assets/dms-full-amd64.tar.gz dms-${VERSION}-amd64.tar.gz
|
|
||||||
cp _release_assets/dms-full-arm64.tar.gz dms-${VERSION}-arm64.tar.gz
|
|
||||||
|
|
||||||
echo "✅ Prepared tarballs for RPM"
|
|
||||||
ls -lh ~/rpmbuild/SOURCES/
|
|
||||||
|
|
||||||
- name: Create RPM spec file
|
|
||||||
run: |
|
|
||||||
VERSION="${{ env.TAG }}"
|
|
||||||
|
|
||||||
cat > ~/rpmbuild/SPECS/dms.spec << 'SPECFILE'
|
|
||||||
%global debug_package %{nil}
|
|
||||||
|
|
||||||
Name: dms
|
|
||||||
Version: VERSION_PLACEHOLDER
|
|
||||||
Release: 1%{?dist}
|
|
||||||
Summary: Dank Material Shell - Modern desktop environment
|
|
||||||
License: GPL-3.0-or-later
|
|
||||||
URL: https://github.com/AvengeMedia/DankMaterialShell
|
|
||||||
|
|
||||||
Source0: dms-VERSION_PLACEHOLDER-amd64.tar.gz
|
|
||||||
Source1: dms-VERSION_PLACEHOLDER-arm64.tar.gz
|
|
||||||
|
|
||||||
BuildArch: %{_arch}
|
|
||||||
|
|
||||||
Requires: qt6-qtbase
|
|
||||||
Requires: qt6-qtdeclarative
|
|
||||||
Requires: qt6-qtwayland
|
|
||||||
Requires: quickshell
|
|
||||||
|
|
||||||
%description
|
|
||||||
Dank Material Shell is a modern, Material Design-inspired desktop environment
|
|
||||||
for Linux systems built with Qt6 and QML. It provides a complete shell experience
|
|
||||||
with dynamic theming, plugin support, and integration with Wayland compositors.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%setup -q
|
|
||||||
|
|
||||||
%build
|
|
||||||
# Pre-compiled binaries, no build step needed
|
|
||||||
|
|
||||||
%install
|
|
||||||
mkdir -p %{buildroot}%{_bindir}
|
|
||||||
mkdir -p %{buildroot}%{_datadir}/quickshell/dms
|
|
||||||
|
|
||||||
# Install DMS CLI binary for current architecture
|
|
||||||
if [ -f bin/dms ]; then
|
|
||||||
install -m 755 bin/dms %{buildroot}%{_bindir}/dms
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install QML/data files
|
|
||||||
if [ -d dms ]; then
|
|
||||||
cp -r dms/* %{buildroot}%{_datadir}/quickshell/dms/
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Install documentation
|
|
||||||
if [ -f INSTALL.md ]; then
|
|
||||||
mkdir -p %{buildroot}%{_docdir}/%{name}
|
|
||||||
install -m 644 INSTALL.md %{buildroot}%{_docdir}/%{name}/
|
|
||||||
fi
|
|
||||||
|
|
||||||
%files
|
|
||||||
%{_bindir}/dms
|
|
||||||
%{_datadir}/quickshell/dms/
|
|
||||||
%doc %{_docdir}/%{name}/INSTALL.md
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* CHANGELOG_DATE_PLACEHOLDER GitHub Actions <noreply@github.com> - VERSION_PLACEHOLDER-1
|
|
||||||
- Automated build from release VERSION_PLACEHOLDER
|
|
||||||
SPECFILE
|
|
||||||
|
|
||||||
# Replace placeholders
|
|
||||||
CHANGELOG_DATE=$(date '+%a %b %d %Y')
|
|
||||||
sed -i "s/VERSION_PLACEHOLDER/$VERSION/g" ~/rpmbuild/SPECS/dms.spec
|
|
||||||
sed -i "s/CHANGELOG_DATE_PLACEHOLDER/$CHANGELOG_DATE/g" ~/rpmbuild/SPECS/dms.spec
|
|
||||||
|
|
||||||
- name: Build SRPM
|
|
||||||
run: |
|
|
||||||
cd ~/rpmbuild/SPECS
|
|
||||||
rpmbuild -bs dms.spec
|
|
||||||
|
|
||||||
echo "✅ SRPM built successfully"
|
|
||||||
ls -lh ~/rpmbuild/SRPMS/
|
|
||||||
|
|
||||||
- name: Upload to Copr
|
|
||||||
if: success()
|
|
||||||
run: |
|
|
||||||
cd ~/rpmbuild/SRPMS
|
|
||||||
copr-cli build dms dms-*.src.rpm
|
|
||||||
|
|
||||||
echo "✅ Uploaded to Copr successfully"
|
|
||||||
|
|||||||
Reference in New Issue
Block a user