Re: [PATCH] Adding .xsession to guile-wm
Alex ter Weeleskribis: > Ludovic Courtès writes: > >> I agree with David that it would be good to talk to the upstream >> developer so that the .desktop file is distributed by upstream >> eventually. Could you try to reach them? > > There are improvements I want to make to guile-wm itself, so I plan on > talking to upstream about this and other things. Good to hear! There were a few glitches that I didn’t take the time to fix, but otherwise I’d have happily switched to Guile-WM. Ludo’.
Re: [PATCH] Adding .xsession to guile-wm
Ludovic Courtèswrites: > I agree with David that it would be good to talk to the upstream > developer so that the .desktop file is distributed by upstream > eventually. Could you try to reach them? There are improvements I want to make to guile-wm itself, so I plan on talking to upstream about this and other things. > In the meantime, it’s fine to add such a file in Guix. > > I pushed the patch as 23de5cbd1487747a2d690ee3ac7630142a7eaeb8. I added > a copyright line for you, added a ChangeLog-style commit log, and > reindented ‘arguments’ for clarity. Thank you, I will note your changes and try to do likewise in my next patch. > Thanks to your patch, I discovered this: > > --8<---cut here---start->8--- > scheme@(guile-user)> ,use(ice-9 format) > scheme@(guile-user)> (format #f "foo~@\nbar") > $2 = "foo\nbar" > scheme@(guile-user)> (format #f "foo~@\n bar") > $3 = "foo\nbar" > --8<---cut here---end--->8--- > > :-) I discovered this from wm.scm, which is where I adapted the patch from ☺. -Alex
Re: [PATCH] Adding .xsession to guile-wm
Alex ter Weeleskribis: > From 91f74b1b762596527dfa9412c33e39981932fa70 Mon Sep 17 00:00:00 2001 > From: Alex ter Weele > Date: Sun, 11 Sep 2016 22:18:53 -0400 > Subject: [PATCH] Adding .xsession to guile-wm > > --- > gnu/packages/guile-wm.scm | 25 +++-- > 1 file changed, 23 insertions(+), 2 deletions(-) I agree with David that it would be good to talk to the upstream developer so that the .desktop file is distributed by upstream eventually. Could you try to reach them? In the meantime, it’s fine to add such a file in Guix. I pushed the patch as 23de5cbd1487747a2d690ee3ac7630142a7eaeb8. I added a copyright line for you, added a ChangeLog-style commit log, and reindented ‘arguments’ for clarity. Thanks to your patch, I discovered this: --8<---cut here---start->8--- scheme@(guile-user)> ,use(ice-9 format) scheme@(guile-user)> (format #f "foo~@\nbar") $2 = "foo\nbar" scheme@(guile-user)> (format #f "foo~@\n bar") $3 = "foo\nbar" --8<---cut here---end--->8--- :-) Thanks! Ludo’.
Re: [PATCH] Adding .xsession to guile-wm
John Darringtonskribis: > On Mon, Sep 12, 2016 at 09:45:22PM -0400, Thompson, David wrote: > On Mon, Sep 12, 2016 at 9:23 PM, Alex ter Weele > wrote: > > I don't believe there is a standard, but different packages do it > > different ways. Under my patch, guile-wm will regenerate its .desktop > as > > part of the build process, so its Exec= should be kept up-to-date. > > We should always refer to the absolute path to binaries so that we > don't rely on $PATH, which would be nondeterministic. > > > In that case, below is a (non-exhaustive) list of .desktop files from > various packages which do it "wrong".Is there not some way we can > automatically flag such cases at build time? Maybe we could have a ‘patch-desktop-files’ phase that automatically expands relative file names in .desktop files? Ludo’.
Re: [PATCH] Adding .xsession to guile-wm
John Darringtonskribis: > Most of the .desktop files in my store do not have the /gnu/store/... on their > Exec= line. Perhaps they should? What is the policy here? I think it’s best to use absolute file names. Ludo’.
Re: [PATCH] Adding .xsession to guile-wm
On Mon, Sep 12, 2016 at 09:45:22PM -0400, Thompson, David wrote: On Mon, Sep 12, 2016 at 9:23 PM, Alex ter Weelewrote: > I don't believe there is a standard, but different packages do it > different ways. Under my patch, guile-wm will regenerate its .desktop as > part of the build process, so its Exec= should be kept up-to-date. We should always refer to the absolute path to binaries so that we don't rely on $PATH, which would be nondeterministic. In that case, below is a (non-exhaustive) list of .desktop files from various packages which do it "wrong".Is there not some way we can automatically flag such cases at build time? J' bluetooth-sendto.desktop emacs.desktop eog.desktop epiphany.desktop evince.desktop evince-previewer.desktop evolution-calendar.desktop exo-file-manager.desktop exo-mail-reader.desktop exo-preferred-applications.desktop exo-terminal-emulator.desktop exo-web-browser.desktop gimp.desktop gnome-background-panel.desktop gnome-bluetooth-panel.desktop gnome-color-panel.desktop gnome-control-center.desktop gnome-datetime-panel.desktop gnome.desktop gnome-display-panel.desktop gnome-info-panel.desktop gnome-keyboard-panel.desktop gnome-mouse-panel.desktop gnome-network-panel.desktop gnome-notifications-panel.desktop gnome-online-accounts-panel.desktop gnome-power-panel.desktop gnome-printers-panel.desktop gnome-privacy-panel.desktop gnome-region-panel.desktop gnome-search-panel.desktop gnome-sharing-panel.desktop gnome-sound-panel.desktop gnome-universal-access-panel.desktop gnome-user-accounts-panel.desktop gnome-wacom-panel.desktop gnome-wayland.desktop gnubik.desktop gsettings-data-convert.desktop gtk3-demo.desktop gtk3-icon-browser.desktop gtk3-widget-factory.desktop ibus-setup.desktop inkscape.desktop irexec.desktop mime-dummy-handler.desktop mutter.desktop nautilus-autorun-software.desktop nautilus-autostart.desktop nautilus-classic.desktop nm-applet.desktop nm-connection-editor.desktop orca-autostart.desktop org.gnome.baobab.desktop org.gnome.Devhelp.desktop org.gnome.FileRoller.desktop org.gnome.gedit.desktop org.gnome.Nautilus.desktop org.gnome.Shell.PortalHelper.desktop org.gnome.Terminal.desktop org.gnome.Totem.desktop panel-desktop-handler.desktop panel-preferences.desktop pspp.desktop ratpoison.desktop ristretto.desktop sniff.desktop Thunar.desktop Thunar-folder-handler.desktop thunar-settings.desktop thunar-volman-settings.desktop wicd.desktop wicd-tray.desktop xfce4-about.desktop xfce4-accessibility-settings.desktop xfce4-appfinder.desktop xfce4-clipman.desktop xfce4-clipman-plugin-autostart.desktop xfce4-mime-settings.desktop xfce4-power-manager.desktop xfce4-power-manager-settings.desktop xfce4-run.desktop xfce4-session-logout.desktop xfce4-settings-editor.desktop xfce4-terminal.desktop xfce-backdrop-settings.desktop xfce.desktop xfce-display-settings.desktop xfce-keyboard-settings.desktop xfce-mouse-settings.desktop xfce-session-settings.desktop xfce-settings-manager.desktop xfce-ui-settings.desktop xfce-wm-settings.desktop xfce-wmtweaks-settings.desktop xfce-workspaces-settings.desktop xfsettingsd.desktop xscreensaver.desktop yelp.desktop -- Avoid eavesdropping. Send strong encrypted email. PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. signature.asc Description: Digital signature
Re: [PATCH] Adding .xsession to guile-wm
On Mon, Sep 12, 2016 at 9:23 PM, Alex ter Weelewrote: > I don't believe there is a standard, but different packages do it > different ways. Under my patch, guile-wm will regenerate its .desktop as > part of the build process, so its Exec= should be kept up-to-date. We should always refer to the absolute path to binaries so that we don't rely on $PATH, which would be nondeterministic. - Dave
Re: [PATCH] Adding .xsession to guile-wm
I don't believe there is a standard, but different packages do it different ways. Under my patch, guile-wm will regenerate its .desktop as part of the build process, so its Exec= should be kept up-to-date. -Alex
Re: [PATCH] Adding .xsession to guile-wm
On Mon, Sep 12, 2016 at 09:07:10PM +0300, Efraim Flashner wrote: On Mon, Sep 12, 2016 at 06:05:27PM +0200, John Darrington wrote: > Most of the .desktop files in my store do not have the /gnu/store/... on their > Exec= line. Perhaps they should? What is the policy here? > > J' > I can comment that enlightenment does, and slim finds it: Icon=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/share/enlightenment/data/images/enlightenment.png TryExec=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/bin/enlightenment_start Exec=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/bin/enlightenment_start as does openbox: Exec=/gnu/store/xyx046dfs7lzps4q7ljj9mvkdv935wcl-openbox-3.6.1/bin/openbox-session TryExec=/gnu/store/xyx046dfs7lzps4q7ljj9mvkdv935wcl-openbox-3.6.1/bin/openbox-session Many others don't. And slim also finds them. J' -- Avoid eavesdropping. Send strong encrypted email. PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. signature.asc Description: Digital signature
Re: [PATCH] Adding .xsession to guile-wm
On Mon, Sep 12, 2016 at 06:05:27PM +0200, John Darrington wrote: > Most of the .desktop files in my store do not have the /gnu/store/... on their > Exec= line. Perhaps they should? What is the policy here? > > J' > I can comment that enlightenment does, and slim finds it: Icon=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/share/enlightenment/data/images/enlightenment.png TryExec=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/bin/enlightenment_start Exec=/gnu/store/z9zb4dhqdb6dgl44x5b3czj0bdwg48p6-enlightenment-0.21.2/bin/enlightenment_start as does openbox: Exec=/gnu/store/xyx046dfs7lzps4q7ljj9mvkdv935wcl-openbox-3.6.1/bin/openbox-session TryExec=/gnu/store/xyx046dfs7lzps4q7ljj9mvkdv935wcl-openbox-3.6.1/bin/openbox-session -- Efraim Flashnerאפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted signature.asc Description: PGP signature
Re: [PATCH] Adding .xsession to guile-wm
Most of the .desktop files in my store do not have the /gnu/store/... on their Exec= line. Perhaps they should? What is the policy here? J' On Sun, Sep 11, 2016 at 11:01:56PM -0400, Alex ter Weele wrote: Adding an xsession to guile-wm so that display managers will identify it as an available wm. From 91f74b1b762596527dfa9412c33e39981932fa70 Mon Sep 17 00:00:00 2001 From: Alex ter WeeleDate: Sun, 11 Sep 2016 22:18:53 -0400 Subject: [PATCH] Adding .xsession to guile-wm --- gnu/packages/guile-wm.scm | 25 +++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index 98e657f..606a792 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -64,6 +64,7 @@ dependencies.") (package (name "guile-wm") (version "1.0") +(synopsis "Guile window manager") (source (origin (method url-fetch) (uri (string-append "http://www.markwitmer.com/dist/guile-wm-; @@ -72,7 +73,7 @@ dependencies.") (base32 "1l9qcz236jxvryndimjy62cf8zxf8i3f8vg3zpqqjhw15j9mdk3r" (build-system gnu-build-system) -(arguments '(;; The '.scm' files go to $(datadir), so set that to the +(arguments `(;; The '.scm' files go to $(datadir), so set that to the ;; standard value. #:configure-flags (list (string-append "--datadir=" (assoc-ref %outputs "out") @@ -103,7 +104,27 @@ dependencies.") `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,mods ,xcb) -%standard-phases +(alist-cons-after + 'install 'install-xsession + (lambda* (#:key outputs #:allow-other-keys) + ;; add a .desktop file to xsessions + (let ((xsessions (string-append + %output "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file + (string-append + xsessions "/guile-wm.desktop") + (lambda (port) + (format + port + "~ + [Desktop Entry]~@ + Name=~a~@ + Comment=~a~@ + Exec=~a/bin/guile-wm~@ + Type=Application~%" + ,name ,synopsis %output) + %standard-phases) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.0) ("guile-xcb" ,guile-xcb))) -- 2.10.0 -- Avoid eavesdropping. Send strong encrypted email. PGP Public key ID: 1024D/2DE827B3 fingerprint = 8797 A26D 0854 2EAB 0285 A290 8A67 719C 2DE8 27B3 See http://sks-keyservers.net or any PGP keyserver for public key. signature.asc Description: Digital signature
Re: [PATCH] Adding .xsession to guile-wm
On Mon, Sep 12, 2016 at 11:56 AM, Alex ter Weelewrote: > Manually making a .desktop is what xmonad and fluxbox do: > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/wm.scm#n244 > http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/wm.scm#n359 > Hence this approach. I could also work on moving this to a patch. > Which is preferred? > > -Alex Well... if we already have prior art then I suppose it's OK! I'll let someone else weigh in here and apply the patch. Thanks for your contribution! - Dave
Re: [PATCH] Adding .xsession to guile-wm
Manually making a .desktop is what xmonad and fluxbox do: http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/wm.scm#n244 http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/wm.scm#n359 Hence this approach. I could also work on moving this to a patch. Which is preferred? -Alex
Re: [PATCH] Adding .xsession to guile-wm
On Sun, Sep 11, 2016 at 11:01 PM, Alex ter Weelewrote: > Adding an xsession to guile-wm so that display managers will identify it > as an available wm. I think it would be best if this were submitted as a patch to guile-wm upstream instead, and we can include the patch in the "patches" field until a new release is made. - Dave