unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#62503] emacs-beframe
@ 2023-03-28 13:44 sourcepluck
  2023-03-30 20:50 ` bug#62503: emacs-beframe Nicolas Goaziou
  0 siblings, 1 reply; 2+ messages in thread
From: sourcepluck @ 2023-03-28 13:44 UTC (permalink / raw)
  To: 62503

[-- Attachment #1: Type: text/plain, Size: 1173 bytes --]

Hello wonderful maintainer(s) of Guix,

Jamie Cullen here. This is my first ever patch, first ever commit, first 
ever packaged package, first ever time doing anything mildly useful with 
Git, etc etc. Excitement is tantamount here.

Please don't hesitate to tell me about even the smallest modification on 
my side, and any length of an explanation here via mail. I'm ready to 
put the work in to get this lovely package right. At all times during 
the packaging process, I was vascillating between understanding 20-80% 
of what I was doing.

We got there though, and everything seems to be passing the tests.

I couldn't check "guix edit", I think because my EDITOR environment 
variable wasn't set up properly. I messed with it for ten minutes, it 
wouldn't work, but I'm pretty sure it was just a thing on my side and 
that the package is fine, because all other tests looked good -- after 
loads of faffing around of course, and carefully developing a loving 
relationship with the generous error messages being thrown at me :)

Thanks so much for all your work, you people are legends. I love Guix, 
and can see worlds opening up to me. Keep up the good fight.

Jamie

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-emacs-beframe.patch --]
[-- Type: text/x-patch; name=0001-gnu-Add-emacs-beframe.patch, Size: 2447 bytes --]

From 379b0ae24c900d3bb129039921e5e5425db57692 Mon Sep 17 00:00:00 2001
From: Jamie Cullen <sourcepluck@posteo.net>
Date: Tue, 28 Mar 2023 15:36:48 +0200
Subject: [PATCH 1/1] gnu: Add emacs-beframe.

---
 gnu/packages/emacs-xyz.scm | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index da2856abc8..8c4f2dc78d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -15931,6 +15931,47 @@ (define-public emacs-tmr
     (license (list license:gpl3+
                    license:fdl1.3+)))) ;GFDLv1.3+ for the manual
 
+(define-public emacs-beframe
+  (package
+    (name "emacs-beframe")
+    (version "0.2.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://git.sr.ht/~protesilaos/beframe")
+                    (commit "edfab6eefe4ac35cd8d1ed87fc7f670496d25e40")))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0sd8r3icaj2gl7f62fyzlwkkb05mc3cwsqgicw0n1x07s5ir3129"))))
+    (build-system emacs-build-system)
+    (native-inputs (list texinfo))
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases
+            %standard-phases
+          (add-after 'install 'makeinfo
+            (lambda* (#:key outputs #:allow-other-keys)
+              (invoke "emacs"
+                      "--batch"
+                      "--eval=(require 'ox-texinfo)"
+                      "--eval=(find-file \"README.org\")"
+                      "--eval=(org-texinfo-export-to-info)")
+              (install-file
+               "beframe.info"
+               (string-append #$output "/share/info")))))))
+    (home-page "https://protesilaos.com/emacs/beframe")
+    (synopsis "Isolate Emacs buffers per frame")
+    (description
+     "Beframe enables a frame-oriented Emacs workflow where each frame has
+access to the list of buffers visited therein.  In the interest of brevity, we
+call buffers that belong to frames \"beframed\".  Producing multiple frames does
+not generate multiple buffer lists.  There still is only one global list of
+buffers.  Beframing them simply filters the list.")
+    (license (list license:gpl3+
+                   license:fdl1.3+)))) ; GFDLv1.3+ for the manual
+
 (define-public emacs-gn-mode
   (package
     (name "emacs-gn-mode")
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#62503: emacs-beframe
  2023-03-28 13:44 [bug#62503] emacs-beframe sourcepluck
@ 2023-03-30 20:50 ` Nicolas Goaziou
  0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Goaziou @ 2023-03-30 20:50 UTC (permalink / raw)
  To: sourcepluck; +Cc: 62503-done

Hello,

sourcepluck@posteo.net writes:

> Jamie Cullen here. This is my first ever patch, first ever commit,
> first ever packaged package, first ever time doing anything mildly
> useful with Git, etc etc. Excitement is tantamount here.

This sure is a good first patch. Since I had only nitpicks to write,
I applied it directly. Thank you!

> Please don't hesitate to tell me about even the smallest modification
> on my side, and any length of an explanation here via mail.

I wrote below what small changes I made to your package definition.

> +(define-public emacs-beframe
> +  (package
> +    (name "emacs-beframe")
> +    (version "0.2.0")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://git.sr.ht/~protesilaos/beframe")
> +                    (commit "edfab6eefe4ac35cd8d1ed87fc7f670496d25e40")))

We don't usually insert commit hashes here, but rather bind hash to
`commit' and put (commit commit) above.

I a comment, I also mentioned the commit was actually a version bump,
which is the reason why there is no revision number.

> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "0sd8r3icaj2gl7f62fyzlwkkb05mc3cwsqgicw0n1x07s5ir3129"))))
> +    (build-system emacs-build-system)
> +    (native-inputs (list texinfo))

Nitpick: native inputs are usually listed after arguments.

> +    (arguments
> +     (list
> +      #:phases
> +      #~(modify-phases
> +            %standard-phases
> +          (add-after 'install 'makeinfo
> +            (lambda* (#:key outputs #:allow-other-keys)

Since you don't use `output' key, (lambda _ ...) is sufficient.

> +              (install-file
> +               "beframe.info"
> +               (string-append #$output "/share/info")))))))

Nitpick: I think a better indentation is:

  (install-file "beframe.info"
                (string-append #$output "/share/info"))

> +    (description
> +     "Beframe enables a frame-oriented Emacs workflow where each frame has
> +access to the list of buffers visited therein.  In the interest of brevity, we
> +call buffers that belong to frames \"beframed\".  Producing multiple
> frames does

In Texinfo, double quotes are ``...'', not "...".

Regards,
-- 
Nicolas Goaziou




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-30 20:51 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-28 13:44 [bug#62503] emacs-beframe sourcepluck
2023-03-30 20:50 ` bug#62503: emacs-beframe Nicolas Goaziou

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).