commit: 642b0b75edbe64a9e211af871c78597b2f56ad21
Author: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com>
AuthorDate: Sat Sep 6 15:26:25 2025 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sat Sep 6 15:26:25 2025 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=642b0b75
gui-wm/miracle-wm: add 0.7.0
Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com>
gui-wm/miracle-wm/Manifest | 1 +
.../files/miracle-wm-0.7.0-disable-mirtest.patch | 15 ++++
.../files/miracle-wm-0.7.0-no-automagic.patch | 25 +++++++
gui-wm/miracle-wm/miracle-wm-0.7.0.ebuild | 80 ++++++++++++++++++++++
4 files changed, 121 insertions(+)
diff --git a/gui-wm/miracle-wm/Manifest b/gui-wm/miracle-wm/Manifest
index 42e1c48ac2..40d87e5aba 100644
--- a/gui-wm/miracle-wm/Manifest
+++ b/gui-wm/miracle-wm/Manifest
@@ -1,2 +1,3 @@
DIST miracle-wm-0.6.1.tar.gz 1146630 BLAKE2B
e5982359e7abbecd97b099c03b80a4374db01528981f4e1ee1fd8ef2112718af8d3c2c9a3f920c48dcb954cd03c93aa68433d3328a2c2ec27f230916fcfb4ade
SHA512
823ac88b23b0d9337bf8e28520ca20fc17e0fe52955657c69703e8d37c394f192feb463ba307f7b6bc6c4b136770f3f03551991de649034b5abb1dc53c35c6e8
DIST miracle-wm-0.6.2.tar.gz 1146767 BLAKE2B
1c623224d6d68acb1336f4bc953cd993fa26a3166f3117802c3797b62d6db4bfec543e020cf5777d00f9271c00f800e42504d06b05e61b9dac3ec9fc56194c1c
SHA512
d992b0a77ef290174cad2a810ecc0f311a24b08e2feb6384c7a51a5fd47ddac0e931dd634ba969f59b0a9bd116d26a6c7f53ebdb7f7cb8e321017bd18936a04b
+DIST miracle-wm-0.7.0.tar.gz 1163831 BLAKE2B
5a289c7083df4fdbeb632b81e5753554caf73b5fce27d8b803ab5fcc13cb89ca8c8b6cc2e9bd784dc6fd483fe49ab015105ed1ffded7c16cf0cb6855f7bdf04d
SHA512
c66da8c19f35c4f4d7dbe21c2e87bee033232e6d9b0c271325ee3a81c53efbcfe3dcdeb856d2990a7ca5551fc7e4bcf9cd8497d5b5c1bc71dccc65fa5625d088
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch
b/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch
new file mode 100644
index 0000000000..6b2f2f934a
--- /dev/null
+++ b/gui-wm/miracle-wm/files/miracle-wm-0.7.0-disable-mirtest.patch
@@ -0,0 +1,15 @@
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -9,12 +9,10 @@ include_directories(
+ find_package(PkgConfig)
+ pkg_check_modules(MIRAL miral REQUIRED)
+ pkg_check_modules(MIRSERVER mirserver REQUIRED)
+-pkg_check_modules(MIRTEST mirtest REQUIRED)
+ pkg_check_modules(YAML REQUIRED IMPORTED_TARGET yaml-cpp)
+ find_package(GTest REQUIRED)
+ find_package(nlohmann_json 3.2.0 REQUIRED)
+
+-option(END_TO_END_TESTS "Include end-to-end tests?" OFF)
+
+ set(SOURCES
+ mock_animation.h
diff --git a/gui-wm/miracle-wm/files/miracle-wm-0.7.0-no-automagic.patch
b/gui-wm/miracle-wm/files/miracle-wm-0.7.0-no-automagic.patch
new file mode 100644
index 0000000000..a51f872a2b
--- /dev/null
+++ b/gui-wm/miracle-wm/files/miracle-wm-0.7.0-no-automagic.patch
@@ -0,0 +1,25 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -14,7 +14,6 @@ if(CMAKE_GENERATOR STREQUAL "")
+ endif()
+
+ # Enable ccache if available
+-find_program(CCACHE_PROGRAM ccache)
+ if(CCACHE_PROGRAM)
+ message(STATUS "Using ccache: ${CCACHE_PROGRAM}")
+ set(CMAKE_CXX_COMPILER_LAUNCHER ${CCACHE_PROGRAM})
+@@ -22,14 +21,12 @@ if(CCACHE_PROGRAM)
+ endif()
+
+ # Enable mold if available
+-find_program(MOLD_LINKER mold)
+ if(MOLD_LINKER)
+ message(STATUS "Using mold linker: ${MOLD_LINKER}")
+ add_link_options(-fuse-ld=mold)
+ endif()
+
+ # Optional LTO
+-option(ENABLE_LTO "Enable link-time optimization (slower builds, faster
binaries)" OFF)
+ if(ENABLE_LTO)
+ set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ON)
+ endif()
diff --git a/gui-wm/miracle-wm/miracle-wm-0.7.0.ebuild
b/gui-wm/miracle-wm/miracle-wm-0.7.0.ebuild
new file mode 100644
index 0000000000..e42ab28bc7
--- /dev/null
+++ b/gui-wm/miracle-wm/miracle-wm-0.7.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_13 )
+
+inherit cmake python-single-r1
+
+DESCRIPTION="Tiling Wayland compositor based on Mir"
+HOMEPAGE="https://github.com/miracle-wm-org/miracle-wm"
+SRC_URI="https://github.com/miracle-wm-org/miracle-wm/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz"
+
+LICENSE="GPL-3+ MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd test"
+REQUIRED_USE="systemd? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dev-cpp/yaml-cpp:=
+ dev-cpp/nlohmann_json
+ dev-libs/glib:2
+ dev-libs/json-c:=
+ dev-libs/libevdev
+ dev-libs/libpcre2:=
+ dev-libs/wayland
+ >=gui-libs/mir-2.18:=
+ media-libs/libglvnd
+ x11-base/xwayland
+ x11-libs/libxkbcommon
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ systemd? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/dbus-next[${PYTHON_USEDEP}]
+ dev-python/tenacity[${PYTHON_USEDEP}]
+ ')
+ )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ media-libs/glm
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.6.1-conditional-tests.patch"
+ "${FILESDIR}/${P}-disable-mirtest.patch"
+ "${FILESDIR}/${P}-no-automagic.patch"
+)
+
+pkg_setup() {
+ use systemd && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+ use test || cmake_comment_add_subdirectory tests/
+ use systemd && python_fix_shebang
session/usr/bin/libexec/miracle-wm-wait-sni-ready
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DSYSTEMD_INTEGRATION=$(usex systemd)
+ -DWITH_TESTS=$(usex test)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}/tests/miracle-wm-tests" || die
+ "${BUILD_DIR}/miracle-wm-config/test_miracle_wm_config_c_api" || die
+}