about summary refs log tree commit diff
path: root/pkgs/servers/mir/default.nix
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2023-02-02 12:02:05 +0000
committerGitHub <noreply@github.com>2023-02-02 12:02:05 +0000
commit978e92d99780793f07d4338aa1815ddfb083ff23 (patch)
tree55e213523a2f96fe5506d334cfc27f569d40de93 /pkgs/servers/mir/default.nix
parenta67949a3fca213ae0c6eddceaa0ec744ed670db5 (diff)
parentfffb187b8ebea382b02a70d20dee945fbadd3359 (diff)
Merge staging-next into staging
Diffstat (limited to 'pkgs/servers/mir/default.nix')
-rw-r--r--pkgs/servers/mir/default.nix59
1 files changed, 22 insertions, 37 deletions
diff --git a/pkgs/servers/mir/default.nix b/pkgs/servers/mir/default.nix
index afee6b4241c40..9d4fd2a734137 100644
--- a/pkgs/servers/mir/default.nix
+++ b/pkgs/servers/mir/default.nix
@@ -49,38 +49,30 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mir";
-  version = "2.11.0";
+  version = "2.12.0";
 
   src = fetchFromGitHub {
     owner = "MirServer";
     repo = "mir";
     rev = "v${version}";
-    hash = "sha256-103PJZEoSgtSbDGCanD2/XdpX6DXXx678GmghdZI7H4=";
+    hash = "sha256-HQmcYnmzeJCsgMoM/y70PCF+3umZh0xJS5S0wFODlmo=";
   };
 
   patches = [
-    # These four patches fix various path concatenation problems and missing GNUInstallDirs variable uses that affect
+    # Fixes various path concatenation problems and missing GNUInstallDirs variable uses that affect
     # install locations and generated pkg-config files
-    # Remove when MirServer/mir/pull/2786 merged & a version > 2.11.0 has the fixes
+    # Remove when a version > 2.12.0 has the fixes
     (fetchpatch {
-      name = "0001-mir-Better-pkg-config-path-concatenations.patch";
-      url = "https://github.com/MirServer/mir/pull/2786/commits/a322be08002ae7b2682d3ca7037c314ce900d3c7.patch";
-      hash = "sha256-6nScVan3eefXZb+0T9TvCjRQt+rCMj27sukpdGMVJzY=";
+      name = "0001-mir-Better-install-path-concatenations-and-more-GNUInstallDirs-variables.patch";
+      url = "https://github.com/MirServer/mir/commit/58c4ca628748278b1eb7a3721ad9a0c3590e28f2.patch";
+      hash = "sha256-+FNVlApaVzA94cy4awulLwTtggD07xACbvjII/RxyRM=";
     })
+    # Fixes doc building
+    # Remove when a version > 2.12.0 has the fix
     (fetchpatch {
-      name = "0002-mir-Improve-mirtest-pkg-config.patch";
-      url = "https://github.com/MirServer/mir/pull/2786/commits/7a739fde27f5f5eff0ec33f766a807c3ff462663.patch";
-      hash = "sha256-C2cDN4R0C4654Km27PJwKrNiFi/d0iz9/rcABS6eRVI=";
-    })
-    (fetchpatch {
-      name = "0003-mir-Fix-GNUInstallDirs-variable-concatenations-in-CMake.patch";
-      url = "https://github.com/MirServer/mir/pull/2786/commits/543e1ec0162f95611b282d33a2e81a642dc75374.patch";
-      hash = "sha256-nxgj8tTfSqjRxqi67hAuWM9d604TAwhNjUXwGDAEW6A=";
-    })
-    (fetchpatch {
-      name = "0004-mir-More-GNUInstallDirs-variables-less-FULL.patch";
-      url = "https://github.com/MirServer/mir/pull/2786/commits/0cb0a1d5e3ac4aca25ca2ebacdcb984d7ff3a66a.patch";
-      hash = "sha256-rnDvr8ul/GgajHYbpale+szNE6VDgENRY6PnBhfGMN8=";
+      name = "0002-mir-better-removal-of-existing-docs.patch";
+      url = "https://github.com/MirServer/mir/commit/04892531c988201f0219ce140f27d7ff60eeebd5.patch";
+      hash = "sha256-LyGgaIoe6mk4IQxBo6Xk5SmIBtTXOXAOA1xAgsdhcLY=";
     })
   ];
 
@@ -100,16 +92,6 @@ stdenv.mkDerivation rec {
         --replace 'LD_PRELOAD=libumockdev-preload.so.0' 'LD_PRELOAD=${lib.getLib umockdev}/lib/libumockdev-preload.so.0'
     done
 
-    # Patch in which tests we want to skip
-    substituteInPlace cmake/MirCommon.cmake \
-      --replace 'set(test_exclusion_filter)' 'set(test_exclusion_filter "${lib.strings.concatStringsSep ":" [
-        # These all fail in the same way: GDK_BACKEND expected to have "wayland", actually has "wayland,x11".
-        # They succeed when run interactively, don't know how to fix them.
-        "ExternalClient.empty_override_does_nothing"
-        "ExternalClient.strange_override_does_nothing"
-        "ExternalClient.another_strange_override_does_nothing"
-      ]}")'
-
     # Fix Xwayland default
     substituteInPlace src/miral/x11_support.cpp \
       --replace '/usr/bin/Xwayland' '${xwayland}/bin/Xwayland'
@@ -124,10 +106,6 @@ stdenv.mkDerivation rec {
     substituteInPlace cmake/Doxygen.cmake \
       --replace '"date"' '"date" "--date=@'"$SOURCE_DATE_EPOCH"'"' \
       --replace "\''${CMAKE_INSTALL_PREFIX}/share/doc/mir-doc" "\''${CMAKE_INSTALL_DOCDIR}"
-
-    # Not installed on Mir HEAD anymore, hence not part of the MirServer/mir/pull/2786 patches
-    substituteInPlace examples/miral-kiosk/CMakeLists.txt \
-      --replace "\''${CMAKE_INSTALL_PREFIX}/bin" "\''${CMAKE_INSTALL_BINDIR}"
   '';
 
   strictDeps = true;
@@ -183,8 +161,11 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DMIR_PLATFORM='gbm-kms;x11;eglstream-kms;wayland'"
     "-DMIR_ENABLE_TESTS=${if doCheck then "ON" else "OFF"}"
-    # Eventually renamed to MIR_SIGBUS_HANDLER_ENVIRONMENT_BROKEN
-    "-DMIR_BAD_BUFFER_TEST_ENVIRONMENT_BROKEN=ON"
+    # BadBufferTest.test_truncated_shm_file *doesn't* throw an error as the test expected, mark as such
+    # https://github.com/MirServer/mir/pull/1947#issuecomment-811810872
+    "-DMIR_SIGBUS_HANDLER_ENVIRONMENT_BROKEN=ON"
+    "-DMIR_EXCLUDE_TESTS=${lib.strings.concatStringsSep ";" [
+    ]}"
     # These get built but don't get executed by default, yet they get installed when tests are enabled
     "-DMIR_BUILD_PERFORMANCE_TESTS=OFF"
     "-DMIR_BUILD_PLATFORM_TEST_HARNESS=OFF"
@@ -193,9 +174,13 @@ stdenv.mkDerivation rec {
   inherit doCheck;
 
   preCheck = ''
-    export XDG_RUNTIME_DIR=$TMPDIR
+    # Needs to be exactly /tmp so some failing tests don't get run, don't know why they fail yet
+    # https://github.com/MirServer/mir/issues/2801
+    export XDG_RUNTIME_DIR=/tmp
   '';
 
+  checkTarget = "ptest";
+
   outputs = [ "out" "dev" "doc" ];
 
   passthru = {