GNU bug report logs - #36415
[PATCH] gnu: Add qlogo.

Previous Next

Package: guix-patches;

Reported by: Arun Isaac <arunisaac <at> systemreboot.net>

Date: Fri, 28 Jun 2019 08:05:02 UTC

Severity: normal

Tags: patch

Done: Arun Isaac <arunisaac <at> systemreboot.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 36415 in the body.
You can then email your comments to 36415 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Fri, 28 Jun 2019 08:05:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Arun Isaac <arunisaac <at> systemreboot.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 28 Jun 2019 08:05:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: guix-patches <at> gnu.org
Cc: Arun Isaac <arunisaac <at> systemreboot.net>
Subject: [PATCH] gnu: Add qlogo.
Date: Fri, 28 Jun 2019 13:33:57 +0530
* gnu/packages/logo.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register it.
* gnu/packages/logo.scm (qlogo): New variable.
---
 gnu/local.mk          |  1 +
 gnu/packages/logo.scm | 71 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 72 insertions(+)
 create mode 100644 gnu/packages/logo.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index f5d53b49b8..17630de911 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -299,6 +299,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/llvm.scm				\
   %D%/packages/lout.scm				\
   %D%/packages/logging.scm			\
+  %D%/packages/logo.scm				\
   %D%/packages/lolcode.scm                      \
   %D%/packages/lsof.scm				\
   %D%/packages/lua.scm				\
diff --git a/gnu/packages/logo.scm b/gnu/packages/logo.scm
new file mode 100644
index 0000000000..17c3990a94
--- /dev/null
+++ b/gnu/packages/logo.scm
@@ -0,0 +1,71 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2019 Arun Isaac <arunisaac <at> systemreboot.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages logo)
+  #:use-module (gnu packages qt)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module (guix build-system gnu))
+
+(define-public qlogo
+  (package
+    (name "qlogo")
+    (version "0.92")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://qlogo.org/assets/sources/QLogo-"
+                           version ".tgz"))
+       (sha256
+        (base32
+         "0cpyj1ji6hjy7zzz05672f0j6fr0mwpc1y3sq36hhkv2fkpidw22"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (substitute* "QLogo.pro"
+               (("target\\.path = /usr/bin")
+                (string-append "target.path = "
+                               (assoc-ref outputs "out") "/bin")))
+             (invoke "qmake" "QLogo.pro")))
+         ;; The check phase rebuilds the source for tests. So, it needs to be
+         ;; run after the install phase has installed the outputs of the build
+         ;; phase.
+         (delete 'check)
+         (add-after 'install 'check
+           (lambda _
+             ;; Clean files created by the build phase.
+             (invoke "make" "clean")
+             ;; QLogo tries to create its "dribble file" in the home
+             ;; directory. So, set HOME.
+             (setenv "HOME" "/tmp")
+             ;; Build and run tests.
+             (invoke "qmake" "TestQLogo.pro")
+             (invoke "make" "-j" (number->string (parallel-job-count)))
+             (invoke "./testqlogo"))))))
+    (home-page "https://qlogo.org")
+    (synopsis "Logo interpreter using Qt and OpenGL")
+    (description "QLogo is an interpreter for the Logo language written in C++
+using Qt and OpenGL.  Specifically, it mimics, as reasonably as possible, the
+UCBLogo interpreter.")
+    (license license:gpl2+)))
-- 
2.22.0





Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Fri, 28 Jun 2019 16:36:02 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: swedebugia <swedebugia <at> riseup.net>
To: guix-patches <at> gnu.org
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Fri, 28 Jun 2019 18:35:21 +0200
On 2019-06-28 10:03, Arun Isaac wrote:
> * gnu/packages/logo.scm: New file.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Register it.
> * gnu/packages/logo.scm (qlogo): New variable.
> ---
>   gnu/local.mk          |  1 +
>   gnu/packages/logo.scm | 71 +++++++++++++++++++++++++++++++++++++++++++
>   2 files changed, 72 insertions(+)
>   create mode 100644 gnu/packages/logo.scm
> 
> diff --git a/gnu/local.mk b/gnu/local.mk
> index f5d53b49b8..17630de911 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -299,6 +299,7 @@ GNU_SYSTEM_MODULES =				\
>     %D%/packages/llvm.scm				\
>     %D%/packages/lout.scm				\
>     %D%/packages/logging.scm			\
> +  %D%/packages/logo.scm				\
>     %D%/packages/lolcode.scm                      \
>     %D%/packages/lsof.scm				\
>     %D%/packages/lua.scm				\
> diff --git a/gnu/packages/logo.scm b/gnu/packages/logo.scm
> new file mode 100644
> index 0000000000..17c3990a94
> --- /dev/null
> +++ b/gnu/packages/logo.scm
> @@ -0,0 +1,71 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2019 Arun Isaac<arunisaac <at> systemreboot.net>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see<http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages logo)
> +  #:use-module (gnu packages qt)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix download)
> +  #:use-module (guix packages)
> +  #:use-module (guix build-system gnu))
> +
> +(define-public qlogo
> +  (package
> +    (name "qlogo")
> +    (version "0.92")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append"https://qlogo.org/assets/sources/QLogo-"
> +                           version ".tgz"))
> +       (sha256
> +        (base32
> +         "0cpyj1ji6hjy7zzz05672f0j6fr0mwpc1y3sq36hhkv2fkpidw22"))))
> +    (build-system gnu-build-system)
> +    (inputs
> +     `(("qtbase" ,qtbase)))
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (replace 'configure
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (substitute* "QLogo.pro"
> +               (("target\\.path = /usr/bin")
> +                (string-append "target.path = "
> +                               (assoc-ref outputs "out") "/bin")))
> +             (invoke "qmake" "QLogo.pro")))
> +         ;; The check phase rebuilds the source for tests. So, it needs to be
> +         ;; run after the install phase has installed the outputs of the build
> +         ;; phase.
> +         (delete 'check)
> +         (add-after 'install 'check
> +           (lambda _
> +             ;; Clean files created by the build phase.
> +             (invoke "make" "clean")
> +             ;; QLogo tries to create its "dribble file" in the home
> +             ;; directory. So, set HOME.
> +             (setenv "HOME" "/tmp")
> +             ;; Build and run tests.
> +             (invoke "qmake" "TestQLogo.pro")
> +             (invoke "make" "-j" (number->string (parallel-job-count)))
> +             (invoke "./testqlogo"))))))
> +    (home-page"https://qlogo.org")
> +    (synopsis "Logo interpreter using Qt and OpenGL")
> +    (description "QLogo is an interpreter for the Logo language written in C++
> +using Qt and OpenGL.  Specifically, it mimics, as reasonably as possible, the
> +UCBLogo interpreter.")
> +    (license license:gpl2+)))
> -- 2.22.0
> 

I got this when running rounds=2:
The following builds are still in progress:
  /gnu/store/yv7gjrplyym3arqi6qqiiqy3l4wzszp3-qlogo-0.92.drv
  /gnu/store/ivln0c98vr9n8j25alx1dg1gbzpja11k-qtbase-5.11.3.drv
  /gnu/store/ysv72wwn0gfjiqx2y4rxbf0gnhiv94yp-cups-2.2.11.drv
  /gnu/store/mimhpwdwik9madwir21a2d0z6i1in7j0-cups-filters-1.23.0.drv
  /gnu/store/syc8fwdl3mz2kxncd1k2mkqq4mslvxyv-qlogo-0.92.drv

I'm interpreting this as qlogo is not reproducible, no?

Besides that LGTM.

-- 
Cheers Swedebugia




Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Tue, 02 Jul 2019 07:22:02 GMT) Full text and rfc822 format available.

Message #11 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: 36415 <at> debbugs.gnu.org
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Tue, 2 Jul 2019 10:21:32 +0300
[Message part 1 (text/plain, inline)]
On Fri, Jun 28, 2019 at 01:33:57PM +0530, Arun Isaac wrote:
> +         ;; The check phase rebuilds the source for tests. So, it needs to be
> +         ;; run after the install phase has installed the outputs of the build
> +         ;; phase.
> +         (delete 'check)
> +         (add-after 'install 'check
> +           (lambda _
> +             ;; Clean files created by the build phase.
> +             (invoke "make" "clean")
> +             ;; QLogo tries to create its "dribble file" in the home
> +             ;; directory. So, set HOME.
> +             (setenv "HOME" "/tmp")
> +             ;; Build and run tests.
> +             (invoke "qmake" "TestQLogo.pro")

Doesn't this efectively just rebuild the binary we just built in the
'configure and 'build phases?

> +             (invoke "make" "-j" (number->string (parallel-job-count)))
> +             (invoke "./testqlogo"))))))
> 

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Tue, 02 Jul 2019 08:37:01 GMT) Full text and rfc822 format available.

Message #14 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: swedebugia <swedebugia <at> riseup.net>, 36415 <at> debbugs.gnu.org
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Tue, 02 Jul 2019 14:06:01 +0530
[Message part 1 (text/plain, inline)]
> I got this when running rounds=2:
> The following builds are still in progress:
>    /gnu/store/yv7gjrplyym3arqi6qqiiqy3l4wzszp3-qlogo-0.92.drv
>    /gnu/store/ivln0c98vr9n8j25alx1dg1gbzpja11k-qtbase-5.11.3.drv
>    /gnu/store/ysv72wwn0gfjiqx2y4rxbf0gnhiv94yp-cups-2.2.11.drv
>    /gnu/store/mimhpwdwik9madwir21a2d0z6i1in7j0-cups-filters-1.23.0.drv
>    /gnu/store/syc8fwdl3mz2kxncd1k2mkqq4mslvxyv-qlogo-0.92.drv

I get a similar message too.

> I'm interpreting this as qlogo is not reproducible, no?

I don't know. I have never understood how reproducibility checking works
in Guix. Shouldn't --rounds=2 cause `guix build' to error out if there
is some non-determinism? In the above case, `guix build' is not erroring
out. It is merely saying that "the following builds are still in
progress". I don't know how to interpret that.

Any pointers about how to proceed with debugging this further would be
very helpful. I've tried reading the relevant sections in the manual,
but I didn't find any insight. :-(

Thanks!
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Tue, 02 Jul 2019 08:51:01 GMT) Full text and rfc822 format available.

Message #17 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: swedebugia <swedebugia <at> riseup.net>, 36415 <at> debbugs.gnu.org
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Tue, 02 Jul 2019 10:50:45 +0200
Arun Isaac <arunisaac <at> systemreboot.net> writes:

>> I got this when running rounds=2:
>> The following builds are still in progress:
>>    /gnu/store/yv7gjrplyym3arqi6qqiiqy3l4wzszp3-qlogo-0.92.drv
>>    /gnu/store/ivln0c98vr9n8j25alx1dg1gbzpja11k-qtbase-5.11.3.drv
>>    /gnu/store/ysv72wwn0gfjiqx2y4rxbf0gnhiv94yp-cups-2.2.11.drv
>>    /gnu/store/mimhpwdwik9madwir21a2d0z6i1in7j0-cups-filters-1.23.0.drv
>>    /gnu/store/syc8fwdl3mz2kxncd1k2mkqq4mslvxyv-qlogo-0.92.drv
>
> I get a similar message too.
>
>> I'm interpreting this as qlogo is not reproducible, no?
>
> I don't know. I have never understood how reproducibility checking works
> in Guix. Shouldn't --rounds=2 cause `guix build' to error out if there
> is some non-determinism?

Yes.

This might be a regression.

Build being reported as “in progress” is a feature.  It’s used to
indicate remaining builds when more than one thing is being built.

In this case, though, it seems like a bug.

To test for reproducibility in this case you may want to use “--check”
after building the thing once.

-- 
Ricardo





Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Thu, 04 Jul 2019 16:41:02 GMT) Full text and rfc822 format available.

Message #20 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Efraim Flashner <efraim <at> flashner.co.il>
Cc: 36415 <at> debbugs.gnu.org
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Thu, 04 Jul 2019 22:10:04 +0530
[Message part 1 (text/plain, inline)]
> On Fri, Jun 28, 2019 at 01:33:57PM +0530, Arun Isaac wrote:
>> +         ;; The check phase rebuilds the source for tests. So, it needs to be
>> +         ;; run after the install phase has installed the outputs of the build
>> +         ;; phase.
>> +         (delete 'check)
>> +         (add-after 'install 'check
>> +           (lambda _
>> +             ;; Clean files created by the build phase.
>> +             (invoke "make" "clean")
>> +             ;; QLogo tries to create its "dribble file" in the home
>> +             ;; directory. So, set HOME.
>> +             (setenv "HOME" "/tmp")
>> +             ;; Build and run tests.
>> +             (invoke "qmake" "TestQLogo.pro")
>
> Doesn't this efectively just rebuild the binary we just built in the
> 'configure and 'build phases?

No. There are two qmake project files -- QLogo.pro and
TestQLogo.pro. QLogo.pro builds the "QLogo" executable and TestQLogo.pro
builds the "testqlogo" executable. "QLogo" is the actual qlogo
executable that we install. "testqlogo" simply runs the tests.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Thu, 04 Jul 2019 17:12:02 GMT) Full text and rfc822 format available.

Message #23 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: swedebugia <swedebugia <at> riseup.net>, 36415 <at> debbugs.gnu.org,
 Efraim Flashner <efraim <at> flashner.co.il>
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Thu, 04 Jul 2019 22:41:10 +0530
[Message part 1 (text/plain, inline)]
>> I don't know. I have never understood how reproducibility checking works
>> in Guix. Shouldn't --rounds=2 cause `guix build' to error out if there
>> is some non-determinism?
>
> Yes.
>
> This might be a regression.
>
> Build being reported as “in progress” is a feature.  It’s used to
> indicate remaining builds when more than one thing is being built.
>
> In this case, though, it seems like a bug.

Ok.

> To test for reproducibility in this case you may want to use “--check”
> after building the thing once.

With `guix build --no-grafts --check qlogo', I get no error. I assume
that means qlogo is reproducible.

Without '--no-grafts', I just see a graft happening, qlogo is not
rebuilt. Output without '--no-grafts' follows.

The following graft will be made:
   /gnu/store/vamlyscnwndzmq66whrd71ww31jnrz7v-qlogo-0.92.drv
applying 2 grafts for /gnu/store/vamlyscnwndzmq66whrd71ww31jnrz7v-qlogo-0.92.drv...
grafting '/gnu/store/hmnchnawfv8ngl4wh15ni3ychr5ccb9w-qlogo-0.92' -> '/gnu/store/85lialf1aich7b51a77afj187qk32n7h-qlogo-0.92'...
successfully built /gnu/store/vamlyscnwndzmq66whrd71ww31jnrz7v-qlogo-0.92.drv
/gnu/store/85lialf1aich7b51a77afj187qk32n7h-qlogo-0.92

If there's nothing else, may I push qlogo to master?
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Thu, 04 Jul 2019 19:32:02 GMT) Full text and rfc822 format available.

Message #26 received at 36415 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Arun Isaac <arunisaac <at> systemreboot.net>
Cc: swedebugia <swedebugia <at> riseup.net>, 36415 <at> debbugs.gnu.org,
 Efraim Flashner <efraim <at> flashner.co.il>
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Thu, 04 Jul 2019 21:30:44 +0200
Hi Arun,

> If there's nothing else, may I push qlogo to master?

Yes, please!

-- 
Ricardo





Information forwarded to guix-patches <at> gnu.org:
bug#36415; Package guix-patches. (Thu, 04 Jul 2019 19:32:03 GMT) Full text and rfc822 format available.

Reply sent to Arun Isaac <arunisaac <at> systemreboot.net>:
You have taken responsibility. (Fri, 05 Jul 2019 08:01:02 GMT) Full text and rfc822 format available.

Notification sent to Arun Isaac <arunisaac <at> systemreboot.net>:
bug acknowledged by developer. (Fri, 05 Jul 2019 08:01:03 GMT) Full text and rfc822 format available.

Message #34 received at 36415-done <at> debbugs.gnu.org (full text, mbox):

From: Arun Isaac <arunisaac <at> systemreboot.net>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: swedebugia <swedebugia <at> riseup.net>, 36415-done <at> debbugs.gnu.org,
 Efraim Flashner <efraim <at> flashner.co.il>
Subject: Re: [bug#36415] [PATCH] gnu: Add qlogo.
Date: Fri, 05 Jul 2019 13:29:38 +0530
[Message part 1 (text/plain, inline)]
Pushed to master. Thank you all for the review! :-)
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 02 Aug 2019 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 262 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.