~ruther/guix-local

f48ceed435fe87b92f3050f2d6a24724149a9491 — Raven Hallsby 4 months ago b5f91bd
gnu: quickshell: Install QML shared objects & definitions.

* gnu/packages/wm.scm (quickshell): Install QML shared objects to output.
Update CMake generator configure flag to use Guix's #:generator keyword
argument for cmake-build-system.

Quickshell does not use these libraries at runtime, since they are statically
linked. But external tooling (e.g. qmllint) need to know about these
definitions. We place these libraries in the standard QML location so that
$QML_IMPORT_PATH can find these libraries.

Change-Id: I38afada42b8e6903970e470b0c8948783fcb3d7f
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
1 files changed, 11 insertions(+), 4 deletions(-)

M gnu/packages/wm.scm
M gnu/packages/wm.scm => gnu/packages/wm.scm +11 -4
@@ 1099,11 1099,18 @@ your own layouts, widgets, and built-in commands.")
    (arguments
     (list
      #:tests? #f ; tests are development-only for now
      ;; NOTE: Ninja used because that is what upstream uses and because
      ;; parallel build with Makefile fails.
      #:generator "Ninja"
      #:configure-flags
      #~(list "-GNinja"
              "-DCRASH_REPORTER=OFF" ; Breakpad is not packaged in Guix
              "-DDISTRIBUTOR=\"GNU Guix\""
              "-DDISTRIBUTOR_DEBUGINFO_AVAILABLE=NO")
      #~(list
         "-DCRASH_REPORTER=OFF" ; Breakpad is not packaged in Guix
         "-DDISTRIBUTOR=\"GNU Guix\""
         "-DDISTRIBUTOR_DEBUGINFO_AVAILABLE=NO"
         ;; Shared object libraries for other Qt/QML tooling to find definitions
         ;; of Quickshell values. Quickshell statically links to its own
         ;; libraries by default.
         "-DINSTALL_QML_PREFIX=lib/qt6/qml")
      #:phases
      #~(modify-phases %standard-phases
          (add-after 'install 'wrap-program