Subject: bug#72540: closed (Re: [PATCH] gnu: xmonad: Re-add xmonad.desktop file.)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 10 Aug 2024 09:32:02 +0000

Your bug report

#72538: [PATCH] gnu: xmonad: Re-add xmonad.desktop file

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
72538: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72538
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [PATCH] gnu: xmonad: Re-add xmonad.desktop file.
From: Lars-Dominik Braun <[email-masked]>
To: EuAndreh <[email-masked]>
Cc: [email-masked]
Date: Sat, 10 Aug 2024 11:30:41 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

merged as commit bc71034f789603349080c2f35570910c07d526ec. I also fixed
the typos I introduced.

>     This has happened before, and I was the one to send an equivalent patch
>     to address the issue, 307d1b626be86ed21d48d44a131ce8490f370a17.

I’m sorry :( My usual flow is to run my update script (which only
touches updated packages) and then manually revert unwanted changes,
but I did not catch the xmonad phase. Is there any way we can upstream
the .desktop file?

>     If you're so inclined, I may help to improve the upgrade script to avoid
>     this in the future, but also feel free to decline or ignore.  And thanks
>     for the maintenance work on the Haskell packages :)

See attached script. The thing is that we *want* to remove unnecessary
phases during package upgrades. So I don’t know how to differentiate
between wanted and unwanted changes, except for manually checking them.

Lars

Subject: [PATCH] gnu: xmonad: Re-add xmonad.desktop file
From: Saku Laesvuori <[email-masked]>
To: [email-masked]
Cc: Saku Laesvuori <[email-masked]>
Date: Fri, 9 Aug 2024 14:49:00 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/wm.scm (xmonad)[arguments]: Re-add 'install-xsession phase
  to enable starting xmonad from a display manager.

Change-Id: I8b29e5a44e9b7a47256a5115e36fb7ff6e0e471a
---
 gnu/packages/wm.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index ad74fb5cf7..7ebed1fd67 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -874,6 +874,23 @@ (define-public xmonad
     (properties '((upstream-name . "xmonad")))
     (inputs (list ghc-x11 ghc-data-default-class ghc-setlocale))
     (native-inputs (list ghc-quickcheck ghc-quickcheck-classes))
+    (arguments
+      (list
+       #:phases
+       #~(modify-phases %standard-phases
+           (add-after 'install 'install-xsession
+             (lambda _
+               (let ((xsessions (string-append #$output "/share/xsessions")))
+                 (mkdir-p xsessions)
+                 (call-with-output-file (string-append xsessions
+                                                       "/xmonad.desktop")
+                  (lambda (port)
+                    (format port "~
+                     [Desktop Entry]~@
+                     Name=~a~@
+                     Comment=xmonad window manager~@
+                     Exec=~a/bin/xmonad~@
+                     Type=Application~%" #$name #$output)))))))))
     (home-page "http://xmonad.org")
     (synopsis "Tiling window manager")
     (description

base-commit: 20dbf225f332ccc707578263ed710dcf2a8fb78e
-- 
2.45.2