mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-08-01 19:18:28 -04:00
core: migrate to dankgo shared go modules, embed quickshell in DMS
binary to mount at runtime, -c or DMS_SHELL_DIR overrides required to explicitly override embedded configuration
This commit is contained in:
@@ -68,24 +68,11 @@ override_dh_auto_build:
|
||||
override_dh_auto_install:
|
||||
install -Dm755 dms debian/dms-git/usr/bin/dms
|
||||
|
||||
mkdir -p debian/dms-git/usr/share/quickshell/dms debian/dms-git/usr/lib/systemd/user
|
||||
if [ -d quickshell ]; then \
|
||||
cp -rL quickshell/* debian/dms-git/usr/share/quickshell/dms/; \
|
||||
install -Dm644 assets/systemd/dms.service debian/dms-git/usr/lib/systemd/user/dms.service; \
|
||||
install -Dm644 assets/dms-open.desktop debian/dms-git/usr/share/applications/dms-open.desktop; \
|
||||
install -Dm644 assets/com.danklinux.dms.desktop debian/dms-git/usr/share/applications/com.danklinux.dms.desktop; \
|
||||
install -Dm644 assets/com.danklinux.dms.notepad.desktop debian/dms-git/usr/share/applications/com.danklinux.dms.notepad.desktop; \
|
||||
install -Dm644 assets/danklogo.svg debian/dms-git/usr/share/icons/hicolor/scalable/apps/danklogo.svg; \
|
||||
else \
|
||||
echo "ERROR: quickshell directory not found!" && \
|
||||
echo "Contents of current directory:" && ls -la && \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
rm -rf debian/dms-git/usr/share/quickshell/dms/core \
|
||||
debian/dms-git/usr/share/quickshell/dms/distro
|
||||
|
||||
echo "$(UPSTREAM_VERSION)" > debian/dms-git/usr/share/quickshell/dms/VERSION
|
||||
install -Dm644 assets/systemd/dms.service debian/dms-git/usr/lib/systemd/user/dms.service
|
||||
install -Dm644 assets/dms-open.desktop debian/dms-git/usr/share/applications/dms-open.desktop
|
||||
install -Dm644 assets/com.danklinux.dms.desktop debian/dms-git/usr/share/applications/com.danklinux.dms.desktop
|
||||
install -Dm644 assets/com.danklinux.dms.notepad.desktop debian/dms-git/usr/share/applications/com.danklinux.dms.notepad.desktop
|
||||
install -Dm644 assets/danklogo.svg debian/dms-git/usr/share/icons/hicolor/scalable/apps/danklogo.svg
|
||||
|
||||
override_dh_auto_clean:
|
||||
# Clean up build artifacts
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
%global debug_package %{nil}
|
||||
%global version {{{ git_repo_version }}}
|
||||
%global pkg_summary DankMaterialShell - Material 3 inspired shell for Wayland compositors
|
||||
%global go_toolchain_version 1.26.1
|
||||
%global go_toolchain_version 1.26.4
|
||||
|
||||
Name: dms
|
||||
Epoch: 2
|
||||
@@ -130,16 +130,6 @@ install -Dm644 assets/com.danklinux.dms.desktop %{buildroot}%{_datadir}/applicat
|
||||
install -Dm644 assets/com.danklinux.dms.notepad.desktop %{buildroot}%{_datadir}/applications/com.danklinux.dms.notepad.desktop
|
||||
install -Dm644 assets/danklogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg
|
||||
|
||||
# Install shell files to shared data location
|
||||
install -dm755 %{buildroot}%{_datadir}/quickshell/dms
|
||||
cp -rL quickshell/* %{buildroot}%{_datadir}/quickshell/dms/
|
||||
|
||||
# Remove build files
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.git*
|
||||
rm -f %{buildroot}%{_datadir}/quickshell/dms/.gitignore
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||
|
||||
%posttrans
|
||||
# Signal running DMS instances to reload
|
||||
pkill -USR1 -x dms >/dev/null 2>&1 || :
|
||||
@@ -148,7 +138,6 @@ pkill -USR1 -x dms >/dev/null 2>&1 || :
|
||||
%license LICENSE
|
||||
%doc CONTRIBUTING.md
|
||||
%doc quickshell/README.md
|
||||
%{_datadir}/quickshell/dms/
|
||||
%{_userunitdir}/dms.service
|
||||
%{_datadir}/applications/dms-open.desktop
|
||||
%{_datadir}/applications/com.danklinux.dms.desktop
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
%global debug_package %{nil}
|
||||
%global go_toolchain_version 1.26.1
|
||||
%global go_toolchain_version 1.26.4
|
||||
|
||||
Name: dms-git
|
||||
Version: 1.4.0+git2528.d336866f
|
||||
@@ -38,7 +38,7 @@ DankMaterialShell (DMS) is a modern Wayland desktop shell built with Quickshell
|
||||
and optimized for niri, Hyprland, Sway, and other wlroots compositors.
|
||||
|
||||
This git version tracks the master branch and includes the latest features
|
||||
and fixes. Includes pre-built dms CLI binary and QML shell files.
|
||||
and fixes. The Quickshell UI is embedded in the dms binary.
|
||||
|
||||
%prep
|
||||
%setup -q -n dms-git-source
|
||||
@@ -120,15 +120,6 @@ install -Dm644 assets/com.danklinux.dms.desktop %{buildroot}%{_datadir}/applicat
|
||||
install -Dm644 assets/com.danklinux.dms.notepad.desktop %{buildroot}%{_datadir}/applications/com.danklinux.dms.notepad.desktop
|
||||
install -Dm644 assets/danklogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg
|
||||
|
||||
install -dm755 %{buildroot}%{_datadir}/quickshell/dms
|
||||
cp -r quickshell/* %{buildroot}%{_datadir}/quickshell/dms/
|
||||
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.git*
|
||||
rm -f %{buildroot}%{_datadir}/quickshell/dms/.gitignore
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/.github
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/distro
|
||||
rm -rf %{buildroot}%{_datadir}/quickshell/dms/core
|
||||
|
||||
%posttrans
|
||||
if [ -d "%{_sysconfdir}/xdg/quickshell/dms" ]; then
|
||||
rmdir "%{_sysconfdir}/xdg/quickshell/dms" 2>/dev/null || true
|
||||
@@ -149,8 +140,6 @@ pkill -USR1 -x dms >/dev/null 2>&1 || :
|
||||
%dir %{_datadir}/zsh/site-functions
|
||||
%{_datadir}/zsh/site-functions/_dms
|
||||
%{_datadir}/bash-completion/completions/dms
|
||||
%dir %{_datadir}/quickshell
|
||||
%{_datadir}/quickshell/dms/
|
||||
%{_userunitdir}/dms.service
|
||||
%{_datadir}/applications/dms-open.desktop
|
||||
%{_datadir}/applications/com.danklinux.dms.desktop
|
||||
|
||||
@@ -58,14 +58,6 @@ override_dh_auto_install:
|
||||
# Install binary
|
||||
install -Dm755 dms debian/dms-git/usr/bin/dms
|
||||
|
||||
# Install QML files from git clone
|
||||
mkdir -p debian/dms-git/usr/share/quickshell/dms
|
||||
cp -rL dms-git-repo/* debian/dms-git/usr/share/quickshell/dms/
|
||||
|
||||
# Remove unnecessary directories
|
||||
rm -rf debian/dms-git/usr/share/quickshell/dms/core
|
||||
rm -rf debian/dms-git/usr/share/quickshell/dms/distro
|
||||
|
||||
# Install systemd user service
|
||||
install -Dm644 dms-git-repo/assets/systemd/dms.service \
|
||||
debian/dms-git/usr/lib/systemd/user/dms.service
|
||||
@@ -80,14 +72,6 @@ override_dh_auto_install:
|
||||
install -Dm644 dms-git-repo/assets/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:
|
||||
# Don't delete dms-git-repo directory - it's part of the source package (native format)
|
||||
# Clean up build artifacts
|
||||
|
||||
@@ -8,16 +8,18 @@
|
||||
# without first providing the source archive.
|
||||
#
|
||||
# The binary is built with the `distro_binary` build tag (drops the in-app
|
||||
# self-update command).
|
||||
# self-update command) and `withshell` (embeds the Quickshell UI; the shell
|
||||
# no longer discovers an installed tree, so an unembedded binary has no UI).
|
||||
pkgname=dms-git
|
||||
version=1.4.6.git
|
||||
revision=1
|
||||
create_wrksrc=yes
|
||||
build_style=go
|
||||
build_wrksrc="core"
|
||||
hostmakedepends="make"
|
||||
go_import_path="github.com/AvengeMedia/DankMaterialShell/core"
|
||||
go_package="${go_import_path}/cmd/dms"
|
||||
go_build_tags="distro_binary"
|
||||
go_build_tags="distro_binary withshell"
|
||||
go_ldflags="-X main.Version=${version}"
|
||||
short_desc="DankMaterialShell — Material 3 desktop shell for Wayland (git variant)"
|
||||
maintainer="AvengeMedia <AvengeMedia.US@gmail.com>"
|
||||
@@ -34,11 +36,11 @@ provides="dms-${version}_${revision}"
|
||||
# Optional feature deps are listed in distro/void/README.md.
|
||||
depends="quickshell accountsservice dgop matugen dbus elogind"
|
||||
|
||||
post_install() {
|
||||
# QML shell tree (build_style=go already installed the dms binary)
|
||||
vmkdir usr/share/quickshell/dms
|
||||
vcopy "${wrksrc}/quickshell/*" usr/share/quickshell/dms
|
||||
pre_build() {
|
||||
make sync-shell
|
||||
}
|
||||
|
||||
post_install() {
|
||||
# Desktop entry + icon
|
||||
vinstall "${wrksrc}/assets/dms-open.desktop" 644 usr/share/applications
|
||||
vinstall "${wrksrc}/assets/com.danklinux.dms.desktop" 644 usr/share/applications
|
||||
|
||||
Reference in New Issue
Block a user