diff mbox series

[bug#51967] gnu: Add gsimplecal

Message ID DM6PR19MB246084246845211E47D40D3A999D9@DM6PR19MB2460.namprd19.prod.outlook.com
State Accepted
Headers show
Series [bug#51967] gnu: Add gsimplecal | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Wamm K. D Nov. 20, 2021, 12:46 a.m. UTC
> On Friday, November 19, 2021, 01:55:44 PM CST, Liliana Marie Prikler <liliana.prikler@gmail.com> wrote:
>
>
>
>
>
> Hi,
>
> Am Freitag, den 19.11.2021, 08:48 +0000 schrieb Jaft:
> > Hello; this is my first patch so, if I've missed or forgotten
> > anything, just let me know and I'm happy to get it fixed.
> First things first: transmit plain text, not HTML.
>
> Second, only the topmost directory (gnu:, guix:, doc:) is usually
> important.  Package additions follow the rule "gnu: Add PACKAGE".
>
> > * gnu/packages/calendar.scm (gsimplecal): Add gsimplecal to Guix for
> > the first time, sourced from git.
> Simply say "New variable".
>
> > ---
> This line marks where you can add comments when you transmit the patch
> as-is.  You might want to use it in lieu of a pre-statement.
>
> > gnu/packages/calendar.scm | 30 ++++++++++++++++++++++++++++++
> > 1 file changed, 30 insertions(+)
> >
> > diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
> > index 8ec36d4fa2..4c54ac0549 100644
> > --- a/gnu/packages/calendar.scm
> > +++ b/gnu/packages/calendar.scm
> > @@ -10,6 +10,7 @@
> >  ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
> >  ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
> >  ;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
> > +;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
> >  ;;;
> >  ;;; This file is part of GNU Guix.
> >  ;;;
> > @@ -36,6 +37,7 @@ (define-module (gnu packages calendar)
> >    #:use-module (guix build-system cmake)
> >    #:use-module (guix build-system python)
> >    #:use-module (gnu packages admin)
> > +  #:use-module (gnu packages autotools)
> >    #:use-module (gnu packages base)
> >    #:use-module (gnu packages check)
> >    #:use-module (gnu packages dav)
> > @@ -405,3 +407,31 @@ (define-public ccal
> >      ;; COPYING.LESSER specifies LGPL 3.0, but all source files say
> >      ;; 'Lesser GPL version 2 or later'.
> >      (license (list license:gpl2+ license:lgpl2.1+))))
> > +
> > +(define-public gsimplecal
> > +  (let ([commit  "f00b80d86300397b52c3cf7d8dfc8de5cdee921d"]
> > +        [revision                                        "1"])
> Guile is not racket, it's round brackets everywhere.

Guile doesn't allow square brackets, like Racket does? I don't think I've ever found that to be the case. I know at least some of the RnRS standards don't allow it but I didn't think Guile was a strict adherent. Not that I'm pushing back since, clearly, it falls outside the style guide for Guix but it's the first I've heard that Guile requires parentheses everywhere.

> We also don't do right alignment.  A simple space between
> variable/field and value is enough.
> > +    (package
> > +      (name          "gsimplecal")
> As above, pp.
> > +      (version      (git-version "2.2" revision commit))
> > +      (source        (origin
> > +                      (method    git-fetch)
> > +                      (uri      (git-reference
> > +                                  (url    "
> > https://github.com/dmedvinsky/gsimplecal/")
> > +                                  (commit                       
> >            commit)))
> > +                      (file-name (git-file-name name version))
> > +                      (sha256    (base32 (string-append/shared
> > +                                       
> >  "1qyf65l088dqsz25hm6s1cv18j"
> > +                                       
> >  "52yaias0llqvpqwjfnvssa5cxg")))
> Use a single string rather than a function call.
> > +                      (modules  '((guix build utils)))))
> > +      (build-system  gnu-build-system)
> > +      (native-inputs `(("autoconf"    ,autoconf)
> > +                      ("automake"    ,automake)
> > +                      ("pkg-config" ,pkg-config)
> > +                      ("gtk+"            ,gtk+)))
> GTK+ is probably not a native-input.  Also use a newline here.

Ah, whoops; 'thought I'd put that as just an input, before…

> > +      (home-page    "https://dmedvinsky.github.io/gsimplecal/")
> > +      (synopsis      "Lightweight calendar applet written in C++
> > using GTK")
> > +      (description  "Gsimplecal was intentionally made for use with
> > tint2 panel
> > +in the openbox environment to be launched upon clock click but, of
> > course, it
> > +will work without it.")
> That's... not very descriptive, is it?

I was using the description provided by the author on their GitHub site; should I come up with my own description, in my own words, instead? The synopsis already pretty much covers what it is (a calendar applet so a calendar pops up when activated; a GTK simple calendar) so I figured that, combined, they gave a good snapshot of what it is and what it's aiming for.

But I can definitely alter it to something else if that isn't sufficient; just double checking so let me know and I shall do that.

>
> > +      (license      license:bsd-3))))
>
>
> Thanks for the submission and happy hacking :)

Sure thing! I've attached what I have, so far, for the updated patch, below, and I'll update it again if the description needs tweaking.



* gnu/packages/calendar.scm (gsimplecal): New variable
---
gnu/packages/calendar.scm | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)

Comments

Liliana Marie Prikler Nov. 20, 2021, 8:26 a.m. UTC | #1
Hi,

Am Samstag, den 20.11.2021, 00:46 +0000 schrieb Jaft:
> > On Friday, November 19, 2021, 01:55:44 PM CST, Liliana Marie
> > Prikler <liliana.prikler@gmail.com> wrote:
> > [...]
> > Guile is not racket, it's round brackets everywhere.
> 
> Guile doesn't allow square brackets, like Racket does? I don't think
> I've ever found that to be the case. I know at least some of the RnRS
> standards don't allow it but I didn't think Guile was a strict
> adherent. Not that I'm pushing back since, clearly, it falls outside
> the style guide for Guix but it's the first I've heard that Guile
> requires parentheses everywhere.
Guile does allow you to write in that style and accepts it in the wild,
but it's not a typical Guile coding style.  Round brackets are much
preferred.

> [...]
> 
> > > +      (home-page    "https://dmedvinsky.github.io/gsimplecal/")
> > > +      (synopsis      "Lightweight calendar applet written in C++
> > > using GTK")
> > > +      (description  "Gsimplecal was intentionally made for use
> > > with
> > > tint2 panel
> > > +in the openbox environment to be launched upon clock click but,
> > > of
> > > course, it
> > > +will work without it.")
> > That's... not very descriptive, is it?
> 
> I was using the description provided by the author on their GitHub
> site; should I come up with my own description, in my own words,
> instead? The synopsis already pretty much covers what it is (a
> calendar applet so a calendar pops up when activated; a GTK simple
> calendar) so I figured that, combined, they gave a good snapshot of
> what it is and what it's aiming for.
> 
> But I can definitely alter it to something else if that isn't
> sufficient; just double checking so let me know and I shall do that.
The description should not rely on the synopsis to do the explanation. 
You can filter Guix' output so that only one or the other appears, so
both ought to make sense on their own.   On that note, mentioning C++
and GTK in the synopsis might be a little overkill for a package with a
description that is about as large, but fair enough.

What about the following: "gsimplecal is a lightweight calendar
application written in C++ using GTK.  Launched once, it pops up a
small calendar applet, launched again it closes the running instance. 
It can additionally be configured to show the current time in different
timezones."?

> Sure thing! I've attached what I have, so far, for the updated patch,
> below, and I'll update it again if the description needs tweaking.
> 
> 
> 
> * gnu/packages/calendar.scm (gsimplecal): New variable
> ---
Again a reminder to put comments after this little dashed line if you
want to do inline comments.  We have to filter the large verbage from
the commit message otherwise.

> gnu/packages/calendar.scm | 31 +++++++++++++++++++++++++++++++
> 1 file changed, 31 insertions(+)
> 
> 
> diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
> index 8ec36d4fa2..3c61a109a3 100644
> --- a/gnu/packages/calendar.scm
> +++ b/gnu/packages/calendar.scm
> @@ -10,6 +10,7 @@
>  ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
>  ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
>  ;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
> +;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -36,6 +37,7 @@ (define-module (gnu packages calendar)
>    #:use-module (guix build-system cmake)
>    #:use-module (guix build-system python)
>    #:use-module (gnu packages admin)
> +  #:use-module (gnu packages autotools)
>    #:use-module (gnu packages base)
>    #:use-module (gnu packages check)
>    #:use-module (gnu packages dav)
> @@ -405,3 +407,32 @@ (define-public ccal
>      ;; COPYING.LESSER specifies LGPL 3.0, but all source files say
>      ;; 'Lesser GPL version 2 or later'.
>      (license (list license:gpl2+ license:lgpl2.1+))))
> +
> +(define-public gsimplecal
> +  (let ((commit "f00b80d86300397b52c3cf7d8dfc8de5cdee921d")
> +        (revision "1"))
Revision counting typically starts at 0.  On that note, this seems to
be the release commit, so you can use (commit (string-append "v"
version)) below with version simply being "2.2".
> +    (package
> +      (name "gsimplecal")
> +      (version (git-version "2.2" revision commit))
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                       (url "
> https://github.com/dmedvinsky/gsimplecal/")
> +                       (commit commit)))
> +                (file-name (git-file-name name version))
> +                (sha256 (base32 (string-append/shared
> +                                  "1qyf65l088dqsz25hm6s1cv18j"
> +                                  "52yaias0llqvpqwjfnvssa5cxg")))
> +                (modules '((guix build utils)))))
> +      (build-system gnu-build-system)
> +      (native-inputs
> +        `(("autoconf" ,autoconf)
> +          ("automake" ,automake)
> +          ("pkg-config" ,pkg-config)))
> +      (inputs `(("gtk+" ,gtk+)))
Inputs are typically ordered before native-inputs.
> +      (home-page "https://dmedvinsky.github.io/gsimplecal/")
> +      (synopsis "Lightweight calendar applet written in C++ using
> GTK")
> +      (description "Gsimplecal was intentionally made for use with
> tint2 panel
> +in the openbox environment to be launched upon clock click but, of
> course, it
> +will work without it.")
> +      (license license:bsd-3))))

Cheers
diff mbox series

Patch

diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 8ec36d4fa2..3c61a109a3 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -10,6 +10,7 @@ 
 ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
 ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
+;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -36,6 +37,7 @@  (define-module (gnu packages calendar)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system python)
   #:use-module (gnu packages admin)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
   #:use-module (gnu packages check)
   #:use-module (gnu packages dav)
@@ -405,3 +407,32 @@  (define-public ccal
     ;; COPYING.LESSER specifies LGPL 3.0, but all source files say
     ;; 'Lesser GPL version 2 or later'.
     (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public gsimplecal
+  (let ((commit "f00b80d86300397b52c3cf7d8dfc8de5cdee921d")
+        (revision "1"))
+    (package
+      (name "gsimplecal")
+      (version (git-version "2.2" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                       (url "https://github.com/dmedvinsky/gsimplecal/")
+                       (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256 (base32 (string-append/shared
+                                  "1qyf65l088dqsz25hm6s1cv18j"
+                                  "52yaias0llqvpqwjfnvssa5cxg")))
+                (modules '((guix build utils)))))
+      (build-system gnu-build-system)
+      (native-inputs
+        `(("autoconf" ,autoconf)
+          ("automake" ,automake)
+          ("pkg-config" ,pkg-config)))
+      (inputs `(("gtk+" ,gtk+)))
+      (home-page "https://dmedvinsky.github.io/gsimplecal/")
+      (synopsis "Lightweight calendar applet written in C++ using GTK")
+      (description "Gsimplecal was intentionally made for use with tint2 panel
+in the openbox environment to be launched upon clock click but, of course, it
+will work without it.")
+      (license license:bsd-3))))