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
+}

Reply via email to