unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: add lispf4
@ 2016-02-06 18:45 Nils Gillmann
  2016-02-06 22:14 ` Leo Famulari
  2016-02-07 16:50 ` [PATCH] gnu: add lispf4 Nils Gillmann
  0 siblings, 2 replies; 23+ messages in thread
From: Nils Gillmann @ 2016-02-06 18:45 UTC (permalink / raw)
  To: guix-devel

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

Thanks for all the input in the last days, here's a blast from the past
with LISPF4 ported from FORTRAN to C for whoever wants InterLisp.

I'll inform the author of this port as soon as this patch is merged.

From 611a064435be994874cdbaa19512f61682f55003 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <niasterisk@grrlz.net>
Date: Sat, 6 Feb 2016 19:31:20 +0100
Subject: [PATCH]  gnu: Add lispf4.

    * gnu/packages/lisp.scm (lispf4): New variable.
---
 gnu/packages/lisp.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 726cfcd..5374483 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,6 +28,7 @@
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages m4)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
@@ -408,3 +410,73 @@ interface.")
     ;; applies to Lisp code according to them.
     (license (list license:lgpl2.1
                    license:clarified-artistic)))) ;TRIVIAL-LDAP package
+
+(define-public lispf4
+  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
+         (package
+          (name "lispf4")
+          (version (string-append "0.0.0-1" "-"
+                                  (string-take commit 7)))
+          (source (origin
+                    (method git-fetch)
+                    (uri (git-reference
+                          (url "https://github.com/blakemcbride/LISPF4.git")
+                          (commit commit)))
+                    (file-name (string-append name "-" version))
+                    (sha256
+                     (base32
+                      "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
+          (build-system gnu-build-system)
+          ;; 80 MB appended Documentation -> output:doc
+          ;; upstream provides no `make install`
+          (outputs '("out" "doc"))
+          (arguments
+           `(#:make-flags
+             '("-f" "Makefile.unx" "CC=gcc")
+             ;; no check phase, disable it:
+             #:tests? #f
+             #:phases
+             (modify-phases %standard-phases
+               (delete 'configure)
+               (replace
+                'install
+                (lambda* (#:key outputs inputs #:allow-other-keys)
+                  (let* ((out (assoc-ref outputs "out"))
+                         (bin-dir (string-append out "/bin")))
+                    ;; Make directories
+                    (mkdir-p bin-dir)
+                    ;; copy files
+                    (copy-file "lispf4"
+                               (string-append bin-dir "/lispf4"))
+                    (copy-file "SYSATOMS"
+                               (string-append bin-dir "/SYSATOMS"))
+                    (let* ((doc (assoc-ref outputs "doc"))
+                           (doc-dir (string-append doc "/share/doc/lispf4")))
+                      ;; Make directory
+                      (mkdir-p doc-dir)
+                      (copy-file "Documentation/DevelopmentProcess.txt"
+                                 (string-append doc-dir "/DevelopmentProcess.txt"))
+                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
+                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))
+                      (copy-file "Documentation/ImplementationGuide.txt"
+                                 (string-append doc-dir "/ImplementationGuide.txt"))
+                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
+                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
+                      (copy-file "Documentation/p501-schorr.pdf"
+                                 (string-append doc-dir "/p501-schorr.pdf"))
+                      (copy-file "Documentation/README.txt"
+                                 (string-append doc-dir "/README.txt"))
+                      (copy-file "Documentation/UsersGuide.txt"
+                                 (string-append doc-dir "/UsersGuide.txt")))
+                    #t))))))
+          (synopsis "InterLisp interpreter")
+          (description
+           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
+ (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
+It supports much of the InterLisp Standard.  Interlisp is a dynamically
+scoped lisp system.  It supports LAMBDA (evaluates function arguments),
+NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
+  Macros are supported as well.  The original user manual, implementors manual
+and the documentation can be obtained through 'guix -i lispf4:doc'.")
+          (home-page "https://github.com/blakemcbride/LISPF4.git")
+          (license license:expat))))
-- 
2.6.3

also attached as .patch file

[-- Attachment #2: lispf4 patch --]
[-- Type: text/x-patch, Size: 5128 bytes --]

From 611a064435be994874cdbaa19512f61682f55003 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <niasterisk@grrlz.net>
Date: Sat, 6 Feb 2016 19:31:20 +0100
Subject: [PATCH]  gnu: Add lispf4.

    * gnu/packages/lisp.scm (lispf4): New variable.
---
 gnu/packages/lisp.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 726cfcd..5374483 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,6 +28,7 @@
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages m4)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
@@ -408,3 +410,73 @@ interface.")
     ;; applies to Lisp code according to them.
     (license (list license:lgpl2.1
                    license:clarified-artistic)))) ;TRIVIAL-LDAP package
+
+(define-public lispf4
+  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
+         (package
+          (name "lispf4")
+          (version (string-append "0.0.0-1" "-"
+                                  (string-take commit 7)))
+          (source (origin
+                    (method git-fetch)
+                    (uri (git-reference
+                          (url "https://github.com/blakemcbride/LISPF4.git")
+                          (commit commit)))
+                    (file-name (string-append name "-" version))
+                    (sha256
+                     (base32
+                      "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
+          (build-system gnu-build-system)
+          ;; 80 MB appended Documentation -> output:doc
+          ;; upstream provides no `make install`
+          (outputs '("out" "doc"))
+          (arguments
+           `(#:make-flags
+             '("-f" "Makefile.unx" "CC=gcc")
+             ;; no check phase, disable it:
+             #:tests? #f
+             #:phases
+             (modify-phases %standard-phases
+               (delete 'configure)
+               (replace
+                'install
+                (lambda* (#:key outputs inputs #:allow-other-keys)
+                  (let* ((out (assoc-ref outputs "out"))
+                         (bin-dir (string-append out "/bin")))
+                    ;; Make directories
+                    (mkdir-p bin-dir)
+                    ;; copy files
+                    (copy-file "lispf4"
+                               (string-append bin-dir "/lispf4"))
+                    (copy-file "SYSATOMS"
+                               (string-append bin-dir "/SYSATOMS"))
+                    (let* ((doc (assoc-ref outputs "doc"))
+                           (doc-dir (string-append doc "/share/doc/lispf4")))
+                      ;; Make directory
+                      (mkdir-p doc-dir)
+                      (copy-file "Documentation/DevelopmentProcess.txt"
+                                 (string-append doc-dir "/DevelopmentProcess.txt"))
+                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
+                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))
+                      (copy-file "Documentation/ImplementationGuide.txt"
+                                 (string-append doc-dir "/ImplementationGuide.txt"))
+                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
+                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
+                      (copy-file "Documentation/p501-schorr.pdf"
+                                 (string-append doc-dir "/p501-schorr.pdf"))
+                      (copy-file "Documentation/README.txt"
+                                 (string-append doc-dir "/README.txt"))
+                      (copy-file "Documentation/UsersGuide.txt"
+                                 (string-append doc-dir "/UsersGuide.txt")))
+                    #t))))))
+          (synopsis "InterLisp interpreter")
+          (description
+           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
+ (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
+It supports much of the InterLisp Standard.  Interlisp is a dynamically
+scoped lisp system.  It supports LAMBDA (evaluates function arguments),
+NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
+  Macros are supported as well.  The original user manual, implementors manual
+and the documentation can be obtained through 'guix -i lispf4:doc'.")
+          (home-page "https://github.com/blakemcbride/LISPF4.git")
+          (license license:expat))))
-- 
2.6.3


[-- Attachment #3: Type: text/plain, Size: 132 bytes --]



(is there a prefered way btw? .patch file attached or just file inserted/pasted?)
Thanks,
-- 
ng/ni*
vcard: http://krosos.sdf.org

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

* Re: [PATCH] gnu: add lispf4
  2016-02-06 18:45 [PATCH] gnu: add lispf4 Nils Gillmann
@ 2016-02-06 22:14 ` Leo Famulari
  2016-02-07  0:01   ` Nils Gillmann
  2016-02-07 16:50 ` [PATCH] gnu: add lispf4 Nils Gillmann
  1 sibling, 1 reply; 23+ messages in thread
From: Leo Famulari @ 2016-02-06 22:14 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

On Sat, Feb 06, 2016 at 07:45:53PM +0100, Nils Gillmann wrote:

[...]

>     * gnu/packages/lisp.scm (lispf4): New variable.

[...]

> +(define-public lispf4
> +  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))

I believe you can use "let" instead of "let*".

> +         (package
            ^
Can you alter the indentation so that this ( is underneath the e in let?
This will help with line length issues. (I usually refer to the package
definition for fxtract when fetching from git repos.)

[...]

> +             #:phases
> +             (modify-phases %standard-phases
> +               (delete 'configure)
> +               (replace
> +                'install
> +                (lambda* (#:key outputs inputs #:allow-other-keys)
> +                  (let* ((out (assoc-ref outputs "out"))
> +                         (bin-dir (string-append out "/bin")))
> +                    ;; Make directories
> +                    (mkdir-p bin-dir)
> +                    ;; copy files

We have a function install-file (guix/build/utils.scm) that combines
mkdir-p and copy-file. It reduces the boilerplate a bit. Could you use
that? Also we probably don't need comments such as "copy file".

> +                    (copy-file "lispf4"
> +                               (string-append bin-dir "/lispf4"))
> +                    (copy-file "SYSATOMS"
> +                               (string-append bin-dir "/SYSATOMS"))
> +                    (let* ((doc (assoc-ref outputs "doc"))
> +                           (doc-dir (string-append doc "/share/doc/lispf4")))
> +                      ;; Make directory
> +                      (mkdir-p doc-dir)
> +                      (copy-file "Documentation/DevelopmentProcess.txt"
> +                                 (string-append doc-dir "/DevelopmentProcess.txt"))
> +                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
> +                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))

For some reason the linter doesn't complain about this line (and others)
being too long. I guess it measures from the beginning of 'package'
rather than the first column. Can you make sure they are all ≤ 80
characters after changing the indentation as requested above?

> +                      (copy-file "Documentation/ImplementationGuide.txt"
> +                                 (string-append doc-dir "/ImplementationGuide.txt"))
> +                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
> +                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
> +                      (copy-file "Documentation/p501-schorr.pdf"
> +                                 (string-append doc-dir "/p501-schorr.pdf"))
> +                      (copy-file "Documentation/README.txt"
> +                                 (string-append doc-dir "/README.txt"))
> +                      (copy-file "Documentation/UsersGuide.txt"
> +                                 (string-append doc-dir "/UsersGuide.txt")))
> +                    #t))))))
> +          (synopsis "InterLisp interpreter")
> +          (description
> +           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
> + (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
     ^
     We probably don't need to provide this level of historical detail.

> +It supports much of the InterLisp Standard.  Interlisp is a dynamically
> +scoped lisp system.  It supports LAMBDA (evaluates function arguments),
> +NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
> +  Macros are supported as well.  The original user manual, implementors manual
> +and the documentation can be obtained through 'guix -i lispf4:doc'.")

I don't think it's necessary to provide usage tips in the description.

> +          (home-page "https://github.com/blakemcbride/LISPF4.git")
> +          (license license:expat))))
> -- 
> 2.6.3
> 
> (is there a prefered way btw? .patch file attached or just file inserted/pasted?)

When using `git send-email`, the patches are automatically sent in their
own messages, which makes it trivial to apply them with `git am`.  Any
other method introduces some friction.

I typically do all my work on branches, so this works for me:
$ git send-email --to guix-devel@gnu.org --cover-letter --annotate -n --thread=shallow master

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

* Re: [PATCH] gnu: add lispf4
  2016-02-06 22:14 ` Leo Famulari
@ 2016-02-07  0:01   ` Nils Gillmann
  2016-02-07 10:59     ` Ricardo Wurmus
  2016-02-07 11:09     ` Ricardo Wurmus
  0 siblings, 2 replies; 23+ messages in thread
From: Nils Gillmann @ 2016-02-07  0:01 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

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

Thanks for your review, the patch number 2 based on 1 should fix all the
problems you noted.

Leo Famulari <leo@famulari.name> writes:

> On Sat, Feb 06, 2016 at 07:45:53PM +0100, Nils Gillmann wrote:
>
> [...]
>
>>     * gnu/packages/lisp.scm (lispf4): New variable.
>
> [...]
>
>> +(define-public lispf4
>> +  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
>
> I believe you can use "let" instead of "let*".
>
true. fixed.
>> +         (package
>             ^
> Can you alter the indentation so that this ( is underneath the e in let?
> This will help with line length issues. (I usually refer to the package
> definition for fxtract when fetching from git repos.)
>
> [...]
>
>> +             #:phases
>> +             (modify-phases %standard-phases
>> +               (delete 'configure)
>> +               (replace
>> +                'install
>> +                (lambda* (#:key outputs inputs #:allow-other-keys)
>> +                  (let* ((out (assoc-ref outputs "out"))
>> +                         (bin-dir (string-append out "/bin")))
>> +                    ;; Make directories
>> +                    (mkdir-p bin-dir)
>> +                    ;; copy files
>
> We have a function install-file (guix/build/utils.scm) that combines
> mkdir-p and copy-file. It reduces the boilerplate a bit. Could you use
> that? Also we probably don't need comments such as "copy file".
removed most comments, used install-file and copy-recursively.
>
>> +                    (copy-file "lispf4"
>> +                               (string-append bin-dir "/lispf4"))
>> +                    (copy-file "SYSATOMS"
>> +                               (string-append bin-dir "/SYSATOMS"))
>> +                    (let* ((doc (assoc-ref outputs "doc"))
>> +                           (doc-dir (string-append doc "/share/doc/lispf4")))
>> +                      ;; Make directory
>> +                      (mkdir-p doc-dir)
>> +                      (copy-file "Documentation/DevelopmentProcess.txt"
>> +                                 (string-append doc-dir "/DevelopmentProcess.txt"))
>> +                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
>> +                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))
>
> For some reason the linter doesn't complain about this line (and others)
> being too long. I guess it measures from the beginning of 'package'
> rather than the first column. Can you make sure they are all ≤ 80
> characters after changing the indentation as requested above?
okay, I did not notice the intendation was off. I need to find some
visual help for that.
>
>> +                      (copy-file "Documentation/ImplementationGuide.txt"
>> +                                 (string-append doc-dir "/ImplementationGuide.txt"))
>> +                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
>> +                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
>> +                      (copy-file "Documentation/p501-schorr.pdf"
>> +                                 (string-append doc-dir "/p501-schorr.pdf"))
>> +                      (copy-file "Documentation/README.txt"
>> +                                 (string-append doc-dir "/README.txt"))
>> +                      (copy-file "Documentation/UsersGuide.txt"
>> +                                 (string-append doc-dir "/UsersGuide.txt")))
>> +                    #t))))))
>> +          (synopsis "InterLisp interpreter")
>> +          (description
>> +           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
>> + (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
>      ^
>      We probably don't need to provide this level of historical
>      detail.
noted, and removed most unnecessary details.
>
>> +It supports much of the InterLisp Standard.  Interlisp is a dynamically
>> +scoped lisp system.  It supports LAMBDA (evaluates function arguments),
>> +NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
>> +  Macros are supported as well.  The original user manual, implementors manual
>> +and the documentation can be obtained through 'guix -i lispf4:doc'.")
>
> I don't think it's necessary to provide usage tips in the description.
>
>> +          (home-page "https://github.com/blakemcbride/LISPF4.git")
>> +          (license license:expat))))
>> -- 
>> 2.6.3
>> 
>> (is there a prefered way btw? .patch file attached or just file inserted/pasted?)
>
> When using `git send-email`, the patches are automatically sent in their
> own messages, which makes it trivial to apply them with `git am`.  Any
> other method introduces some friction.
>
> I typically do all my work on branches, so this works for me:
> $ git send-email --to guix-devel@gnu.org --cover-letter --annotate -n --thread=shallow master

I am still new to more regular patch creating with git,
so the 2nd patch has no annotations of what changed,
but it's technically still the first commit. This will
change in the near future, but currently I can only do it this way.


[-- Attachment #2: 0001-gnu-Add-lispf4.patch --]
[-- Type: text/x-patch, Size: 5132 bytes --]

From 611a064435be994874cdbaa19512f61682f55003 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <niasterisk@grrlz.net>
Date: Sat, 6 Feb 2016 19:31:20 +0100
Subject: [PATCH 1/2]  gnu: Add lispf4.

    * gnu/packages/lisp.scm (lispf4): New variable.
---
 gnu/packages/lisp.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 72 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 726cfcd..5374483 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,6 +28,7 @@
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages m4)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
@@ -408,3 +410,73 @@ interface.")
     ;; applies to Lisp code according to them.
     (license (list license:lgpl2.1
                    license:clarified-artistic)))) ;TRIVIAL-LDAP package
+
+(define-public lispf4
+  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
+         (package
+          (name "lispf4")
+          (version (string-append "0.0.0-1" "-"
+                                  (string-take commit 7)))
+          (source (origin
+                    (method git-fetch)
+                    (uri (git-reference
+                          (url "https://github.com/blakemcbride/LISPF4.git")
+                          (commit commit)))
+                    (file-name (string-append name "-" version))
+                    (sha256
+                     (base32
+                      "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
+          (build-system gnu-build-system)
+          ;; 80 MB appended Documentation -> output:doc
+          ;; upstream provides no `make install`
+          (outputs '("out" "doc"))
+          (arguments
+           `(#:make-flags
+             '("-f" "Makefile.unx" "CC=gcc")
+             ;; no check phase, disable it:
+             #:tests? #f
+             #:phases
+             (modify-phases %standard-phases
+               (delete 'configure)
+               (replace
+                'install
+                (lambda* (#:key outputs inputs #:allow-other-keys)
+                  (let* ((out (assoc-ref outputs "out"))
+                         (bin-dir (string-append out "/bin")))
+                    ;; Make directories
+                    (mkdir-p bin-dir)
+                    ;; copy files
+                    (copy-file "lispf4"
+                               (string-append bin-dir "/lispf4"))
+                    (copy-file "SYSATOMS"
+                               (string-append bin-dir "/SYSATOMS"))
+                    (let* ((doc (assoc-ref outputs "doc"))
+                           (doc-dir (string-append doc "/share/doc/lispf4")))
+                      ;; Make directory
+                      (mkdir-p doc-dir)
+                      (copy-file "Documentation/DevelopmentProcess.txt"
+                                 (string-append doc-dir "/DevelopmentProcess.txt"))
+                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
+                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))
+                      (copy-file "Documentation/ImplementationGuide.txt"
+                                 (string-append doc-dir "/ImplementationGuide.txt"))
+                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
+                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
+                      (copy-file "Documentation/p501-schorr.pdf"
+                                 (string-append doc-dir "/p501-schorr.pdf"))
+                      (copy-file "Documentation/README.txt"
+                                 (string-append doc-dir "/README.txt"))
+                      (copy-file "Documentation/UsersGuide.txt"
+                                 (string-append doc-dir "/UsersGuide.txt")))
+                    #t))))))
+          (synopsis "InterLisp interpreter")
+          (description
+           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
+ (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
+It supports much of the InterLisp Standard.  Interlisp is a dynamically
+scoped lisp system.  It supports LAMBDA (evaluates function arguments),
+NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
+  Macros are supported as well.  The original user manual, implementors manual
+and the documentation can be obtained through 'guix -i lispf4:doc'.")
+          (home-page "https://github.com/blakemcbride/LISPF4.git")
+          (license license:expat))))
-- 
2.6.3


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-Add-lispf4.patch --]
[-- Type: text/x-patch, Size: 6375 bytes --]

From df1d87481177f3b46efc9cde6704763397f665c4 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <niasterisk@grrlz.net>
Date: Sun, 7 Feb 2016 00:44:21 +0100
Subject: [PATCH 2/2]  gnu: Add lispf4

        * gnu/packages/lisp.scm (lispf4): New variable.
---
 gnu/packages/lisp.scm | 113 ++++++++++++++++++++------------------------------
 1 file changed, 45 insertions(+), 68 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 5374483..cb8d923 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -412,71 +412,48 @@ interface.")
                    license:clarified-artistic)))) ;TRIVIAL-LDAP package
 
 (define-public lispf4
-  (let* ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
-         (package
-          (name "lispf4")
-          (version (string-append "0.0.0-1" "-"
-                                  (string-take commit 7)))
-          (source (origin
-                    (method git-fetch)
-                    (uri (git-reference
-                          (url "https://github.com/blakemcbride/LISPF4.git")
-                          (commit commit)))
-                    (file-name (string-append name "-" version))
-                    (sha256
-                     (base32
-                      "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
-          (build-system gnu-build-system)
-          ;; 80 MB appended Documentation -> output:doc
-          ;; upstream provides no `make install`
-          (outputs '("out" "doc"))
-          (arguments
-           `(#:make-flags
-             '("-f" "Makefile.unx" "CC=gcc")
-             ;; no check phase, disable it:
-             #:tests? #f
-             #:phases
-             (modify-phases %standard-phases
-               (delete 'configure)
-               (replace
-                'install
-                (lambda* (#:key outputs inputs #:allow-other-keys)
-                  (let* ((out (assoc-ref outputs "out"))
-                         (bin-dir (string-append out "/bin")))
-                    ;; Make directories
-                    (mkdir-p bin-dir)
-                    ;; copy files
-                    (copy-file "lispf4"
-                               (string-append bin-dir "/lispf4"))
-                    (copy-file "SYSATOMS"
-                               (string-append bin-dir "/SYSATOMS"))
-                    (let* ((doc (assoc-ref outputs "doc"))
-                           (doc-dir (string-append doc "/share/doc/lispf4")))
-                      ;; Make directory
-                      (mkdir-p doc-dir)
-                      (copy-file "Documentation/DevelopmentProcess.txt"
-                                 (string-append doc-dir "/DevelopmentProcess.txt"))
-                      (copy-file "Documentation/Haraldson-LISP_details.pdf"
-                                 (string-append doc-dir "/Haraldson-LISP_details.pdf"))
-                      (copy-file "Documentation/ImplementationGuide.txt"
-                                 (string-append doc-dir "/ImplementationGuide.txt"))
-                      (copy-file "Documentation/Interlisp-Oct_1978.pdf"
-                                 (string-append doc-dir "/Interlisp-Oct_1978.pdf"))
-                      (copy-file "Documentation/p501-schorr.pdf"
-                                 (string-append doc-dir "/p501-schorr.pdf"))
-                      (copy-file "Documentation/README.txt"
-                                 (string-append doc-dir "/README.txt"))
-                      (copy-file "Documentation/UsersGuide.txt"
-                                 (string-append doc-dir "/UsersGuide.txt")))
-                    #t))))))
-          (synopsis "InterLisp interpreter")
-          (description
-           "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
- (Uppsala, Sweden) in the early 80's.  It was converted to C by Blake McBride.
-It supports much of the InterLisp Standard.  Interlisp is a dynamically
-scoped lisp system.  It supports LAMBDA (evaluates function arguments),
-NLAMBDA (doesn't evaluate its arguments), and variable number of arguments.
-  Macros are supported as well.  The original user manual, implementors manual
-and the documentation can be obtained through 'guix -i lispf4:doc'.")
-          (home-page "https://github.com/blakemcbride/LISPF4.git")
-          (license license:expat))))
+  (let ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
+    (package
+      (name "lispf4")
+      (version (string-append "0.0.0-1" "-"
+                              (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/blakemcbride/LISPF4.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version))
+                (sha256
+                 (base32
+                  "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
+      (build-system gnu-build-system)
+      ;; 80 MB appended Documentation -> output:doc
+      (outputs '("out" "doc"))
+      (arguments
+       `(#:make-flags
+         '("-f" "Makefile.unx" "CC=gcc")
+         ;; no check phase
+         #:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (replace
+            'install
+            (lambda* (#:key outputs inputs #:allow-other-keys)
+              (let* ((out (assoc-ref outputs "out"))
+                     (bin (string-append out "/bin")))
+                (install-file "lispf4" bin)
+                (install-file "SYSATOMS" bin)
+                (install-file "BASIC.IMG" bin)
+                (let* ((doc (assoc-ref outputs "doc"))
+                       (doc (string-append doc "/share/doc/lispf4")))
+                  (copy-recursively "Documentation" doc)))
+                #t)))))
+      (synopsis "InterLisp interpreter")
+      (description
+       "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
+in the early 80's.  It was converted to C by Blake McBride and supports much of
+the InterLisp Standard.  The original user manual, implementors manual and the
+documentation can be obtained through 'guix -i lispf4:doc'.")
+      (home-page "https://github.com/blakemcbride/LISPF4.git")
+      (license license:expat))))
-- 
2.6.3


[-- Attachment #4: Type: text/plain, Size: 42 bytes --]



-- 
ng/ni*
vcard: http://krosos.sdf.org

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

* Re: [PATCH] gnu: add lispf4
  2016-02-07  0:01   ` Nils Gillmann
@ 2016-02-07 10:59     ` Ricardo Wurmus
  2016-02-07 11:09     ` Ricardo Wurmus
  1 sibling, 0 replies; 23+ messages in thread
From: Ricardo Wurmus @ 2016-02-07 10:59 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel


Nils Gillmann <niasterisk@grrlz.net> writes:

>> For some reason the linter doesn't complain about this line (and others)
>> being too long. I guess it measures from the beginning of 'package'
>> rather than the first column. Can you make sure they are all ≤ 80
>> characters after changing the indentation as requested above?
> okay, I did not notice the intendation was off. I need to find some
> visual help for that.

I use fci-mode in Emacs to display a vertical line at the 78th column.
It’s a visual reminder to keep lines short.

~~ Ricardo

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

* Re: [PATCH] gnu: add lispf4
  2016-02-07  0:01   ` Nils Gillmann
  2016-02-07 10:59     ` Ricardo Wurmus
@ 2016-02-07 11:09     ` Ricardo Wurmus
  2016-02-07 15:09       ` Nils Gillmann
  1 sibling, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2016-02-07 11:09 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel


Nils Gillmann <niasterisk@grrlz.net> writes:

> Thanks for your review, the patch number 2 based on 1 should fix all the
> problems you noted.

Hmm, for some reason I cannot apply these patches to current master.
What commit is this based on?  (Are other people able to apply them to
current master?)

When resending patches in the future could you please squash the two
commits into one?  This make reviewing and applying easier.  You can use
“git commit --amend” to change the last commit; when the commit is not
the most recent you can use “git rebase -i commit-hash^” to
interactively move around and squash commits.

~~ Ricardo

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

* Re: [PATCH] gnu: add lispf4
  2016-02-07 11:09     ` Ricardo Wurmus
@ 2016-02-07 15:09       ` Nils Gillmann
  2016-02-18 11:38         ` [PATCH] gnu: add lispf4 (Update) Nils Gillmann
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-07 15:09 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Ricardo Wurmus <rekado@elephly.net> writes:

> Nils Gillmann <niasterisk@grrlz.net> writes:
>
>> Thanks for your review, the patch number 2 based on 1 should fix all the
>> problems you noted.
>
> Hmm, for some reason I cannot apply these patches to current master.
> What commit is this based on?  (Are other people able to apply them to
> current master?)
I should have rebased, shouldn't I?
commit e81e5fa5070135e8b3bc2b23235a3fe092b551d2
(Tue Feb 2) is the commit in my local branch before this.
>
> When resending patches in the future could you please squash the two
> commits into one?  This make reviewing and applying easier.  You can use
> “git commit --amend” to change the last commit; when the commit is not
> the most recent you can use “git rebase -i commit-hash^” to
> interactively move around and squash commits.
>
> ~~ Ricardo
>

I try to rebase with current master and merge the 2 patches from the
relatively old branch, just have to remember how without breaking
things.. in short I suppose it will be: squash the two commits (newer
one into older one iirc?), tell branch to track master, rebase branch?

-- 
ng/ni*
vcard: http://krosos.sdf.org

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

* Re: [PATCH] gnu: add lispf4
  2016-02-06 18:45 [PATCH] gnu: add lispf4 Nils Gillmann
  2016-02-06 22:14 ` Leo Famulari
@ 2016-02-07 16:50 ` Nils Gillmann
  2016-02-08  0:36   ` Leo Famulari
  1 sibling, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-07 16:50 UTC (permalink / raw)
  To: guix-devel

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

Nils Gillmann <niasterisk@grrlz.net> writes:

--snipsnap--

I hope this works, I pulled from master some minutes ago, I merged the
branch, squashed the commits into one with softreset,...
I really hope I did it right. It takes some time getting used to more
git usage.


[-- Attachment #2: 0001-gnu-Add-lispf4.patch --]
[-- Type: text/x-patch, Size: 3380 bytes --]

From d3dfc39a537b07e01370ed631c7771952948a9c2 Mon Sep 17 00:00:00 2001
From: Nils Gillmann <niasterisk@grrlz.net>
Date: Sun, 7 Feb 2016 17:36:25 +0100
Subject: [PATCH] gnu: Add lispf4.

    * gnu/packages/lisp.scm (lispf4): New variable.
---
 gnu/packages/lisp.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index e64fd49..b49f5dd 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
+;;; Copyright © 2016 Nils Gillmann <niasterisk@grrlz.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,6 +29,7 @@
   #:use-module (gnu packages texlive)
   #:use-module (gnu packages m4)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
@@ -425,3 +427,50 @@ interface.")
     ;; applies to Lisp code according to them.
     (license (list license:lgpl2.1
                    license:clarified-artistic)))) ;TRIVIAL-LDAP package
+
+(define-public lispf4
+  (let ((commit "174d8764d2f9764e8f4794c2e3feada9f9c1f1ba"))
+    (package
+      (name "lispf4")
+      (version (string-append "0.0.0-1" "-"
+                              (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/blakemcbride/LISPF4.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version))
+                (sha256
+                 (base32
+                  "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c"))))
+      (build-system gnu-build-system)
+      ;; 80 MB appended Documentation -> output:doc
+      (outputs '("out" "doc"))
+      (arguments
+       `(#:make-flags
+         '("-f" "Makefile.unx" "CC=gcc")
+         ;; no check phase
+         #:tests? #f
+         #:phases
+         (modify-phases %standard-phases
+           (delete 'configure)
+           (replace
+            'install
+            (lambda* (#:key outputs inputs #:allow-other-keys)
+              (let* ((out (assoc-ref outputs "out"))
+                     (bin (string-append out "/bin")))
+                (install-file "lispf4" bin)
+                (install-file "SYSATOMS" bin)
+                (install-file "BASIC.IMG" bin)
+                (let* ((doc (assoc-ref outputs "doc"))
+                       (doc (string-append doc "/share/doc/lispf4")))
+                  (copy-recursively "Documentation" doc)))
+                #t)))))
+      (synopsis "InterLisp interpreter")
+      (description
+       "LISPF4 is an InterLisp interpreter written in FORTRAN by Mats Nordstrom
+in the early 80's.  It was converted to C by Blake McBride and supports much of
+the InterLisp Standard.  The original user manual, implementors manual and the
+documentation can be obtained through 'guix -i lispf4:doc'.")
+      (home-page "https://github.com/blakemcbride/LISPF4.git")
+      (license license:expat))))
-- 
2.6.3


[-- Attachment #3: Type: text/plain, Size: 42 bytes --]



-- 
ng/ni*
vcard: http://krosos.sdf.org

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

* Re: [PATCH] gnu: add lispf4
  2016-02-07 16:50 ` [PATCH] gnu: add lispf4 Nils Gillmann
@ 2016-02-08  0:36   ` Leo Famulari
  2016-02-08 11:17     ` Nils Gillmann
  0 siblings, 1 reply; 23+ messages in thread
From: Leo Famulari @ 2016-02-08  0:36 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

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

On Sun, Feb 07, 2016 at 05:50:12PM +0100, Nils Gillmann wrote:
> Nils Gillmann <niasterisk@grrlz.net> writes:
> 
> --snipsnap--
> 
> I hope this works, I pulled from master some minutes ago, I merged the
> branch, squashed the commits into one with softreset,...
> I really hope I did it right. It takes some time getting used to more
> git usage.
> 

It worked :)

> From d3dfc39a537b07e01370ed631c7771952948a9c2 Mon Sep 17 00:00:00 2001
> From: Nils Gillmann <niasterisk@grrlz.net>
> Date: Sun, 7 Feb 2016 17:36:25 +0100
> Subject: [PATCH] gnu: Add lispf4.
> 
>     * gnu/packages/lisp.scm (lispf4): New variable.
<-----|
This can be at the first column.

> +         #:phases
> +         (modify-phases %standard-phases
> +           (delete 'configure)
> +           (replace
> +            'install
> +            (lambda* (#:key outputs inputs #:allow-other-keys)
> +              (let* ((out (assoc-ref outputs "out"))
> +                     (bin (string-append out "/bin")))
> +                (install-file "lispf4" bin)
> +                (install-file "SYSATOMS" bin)
> +                (install-file "BASIC.IMG" bin)
> +                (let* ((doc (assoc-ref outputs "doc"))
> +                       (doc (string-append doc "/share/doc/lispf4")))

How about defining 'doc' in one go in the same block as 'out' and 'bin',
as in the attached diff? I can push with that change if appropriate. If
it's not appropriate, then I can push that as well, fixing the
indentation in the changelog :)

[-- Attachment #2: diff --]
[-- Type: text/plain, Size: 1035 bytes --]

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index b49f5dd..e7bdcb2 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -458,13 +458,13 @@ interface.")
             'install
             (lambda* (#:key outputs inputs #:allow-other-keys)
               (let* ((out (assoc-ref outputs "out"))
-                     (bin (string-append out "/bin")))
+                     (bin (string-append out "/bin"))
+                     (doc (string-append (assoc-ref outputs "doc")
+                                         "/share/doc/lispf4")))
                 (install-file "lispf4" bin)
                 (install-file "SYSATOMS" bin)
                 (install-file "BASIC.IMG" bin)
-                (let* ((doc (assoc-ref outputs "doc"))
-                       (doc (string-append doc "/share/doc/lispf4")))
-                  (copy-recursively "Documentation" doc)))
+                (copy-recursively "Documentation" doc))
                 #t)))))
       (synopsis "InterLisp interpreter")
       (description

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

* Re: [PATCH] gnu: add lispf4
  2016-02-08  0:36   ` Leo Famulari
@ 2016-02-08 11:17     ` Nils Gillmann
  2016-02-08 20:14       ` Leo Famulari
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-08 11:17 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> On Sun, Feb 07, 2016 at 05:50:12PM +0100, Nils Gillmann wrote:
>> Nils Gillmann <niasterisk@grrlz.net> writes:
>> 
>> --snipsnap--
>> 
>> I hope this works, I pulled from master some minutes ago, I merged the
>> branch, squashed the commits into one with softreset,...
>> I really hope I did it right. It takes some time getting used to more
>> git usage.
>> 
>
> It worked :)
>
>> From d3dfc39a537b07e01370ed631c7771952948a9c2 Mon Sep 17 00:00:00 2001
>> From: Nils Gillmann <niasterisk@grrlz.net>
>> Date: Sun, 7 Feb 2016 17:36:25 +0100
>> Subject: [PATCH] gnu: Add lispf4.
>> 
>>     * gnu/packages/lisp.scm (lispf4): New variable.
> <-----|
> This can be at the first column.
>
>> +         #:phases
>> +         (modify-phases %standard-phases
>> +           (delete 'configure)
>> +           (replace
>> +            'install
>> +            (lambda* (#:key outputs inputs #:allow-other-keys)
>> +              (let* ((out (assoc-ref outputs "out"))
>> +                     (bin (string-append out "/bin")))
>> +                (install-file "lispf4" bin)
>> +                (install-file "SYSATOMS" bin)
>> +                (install-file "BASIC.IMG" bin)
>> +                (let* ((doc (assoc-ref outputs "doc"))
>> +                       (doc (string-append doc "/share/doc/lispf4")))
>
> How about defining 'doc' in one go in the same block as 'out' and 'bin',
> as in the attached diff? I can push with that change if appropriate. If
> it's not appropriate, then I can push that as well, fixing the
> indentation in the changelog :)

The diff looks okay for me, I only ended up with 2 (let*) because
of the package I took as an example.
Works for me, and if you have no further corrections I should do,
it's done on my side.

>
> diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
> index b49f5dd..e7bdcb2 100644
> --- a/gnu/packages/lisp.scm
> +++ b/gnu/packages/lisp.scm
> @@ -458,13 +458,13 @@ interface.")
>              'install
>              (lambda* (#:key outputs inputs #:allow-other-keys)
>                (let* ((out (assoc-ref outputs "out"))
> -                     (bin (string-append out "/bin")))
> +                     (bin (string-append out "/bin"))
> +                     (doc (string-append (assoc-ref outputs "doc")
> +                                         "/share/doc/lispf4")))
>                  (install-file "lispf4" bin)
>                  (install-file "SYSATOMS" bin)
>                  (install-file "BASIC.IMG" bin)
> -                (let* ((doc (assoc-ref outputs "doc"))
> -                       (doc (string-append doc "/share/doc/lispf4")))
> -                  (copy-recursively "Documentation" doc)))
> +                (copy-recursively "Documentation" doc))
>                  #t)))))
>        (synopsis "InterLisp interpreter")
>        (description

-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-08 11:17     ` Nils Gillmann
@ 2016-02-08 20:14       ` Leo Famulari
  2016-02-09  1:31         ` Nils Gillmann
  0 siblings, 1 reply; 23+ messages in thread
From: Leo Famulari @ 2016-02-08 20:14 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

On Mon, Feb 08, 2016 at 12:17:51PM +0100, Nils Gillmann wrote:
> Leo Famulari <leo@famulari.name> writes:
> > On Sun, Feb 07, 2016 at 05:50:12PM +0100, Nils Gillmann wrote:

[...]

> >>     * gnu/packages/lisp.scm (lispf4): New variable.

> The diff looks okay for me, I only ended up with 2 (let*) because
> of the package I took as an example.
> Works for me, and if you have no further corrections I should do,
> it's done on my side.

Pushed, thanks for bearing with me :)

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

* Re: [PATCH] gnu: add lispf4
  2016-02-08 20:14       ` Leo Famulari
@ 2016-02-09  1:31         ` Nils Gillmann
  2016-02-09  7:16           ` Efraim Flashner
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-09  1:31 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> On Mon, Feb 08, 2016 at 12:17:51PM +0100, Nils Gillmann wrote:
>> Leo Famulari <leo@famulari.name> writes:
>> > On Sun, Feb 07, 2016 at 05:50:12PM +0100, Nils Gillmann wrote:
>
> [...]
>
>> >>     * gnu/packages/lisp.scm (lispf4): New variable.
>
>> The diff looks okay for me, I only ended up with 2 (let*) because
>> of the package I took as an example.
>> Works for me, and if you have no further corrections I should do,
>> it's done on my side.
>
> Pushed, thanks for bearing with me :)

Thanks!

But now as I did guix pull and installed it from there, and do
not run it inside guix environment, I encounter an error I did
not see coming as it worked in the environment.


niasterisk@khazad-dum ~$ guix package -i lispf4
The following package will be installed:
   lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876

56 packages in profile
niasterisk@khazad-dum ~$ lispf4
Can't open 'SYSATOMS'
niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
total 200
dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
-r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
-r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
-r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS

I checked ~/.guix-profile/bin/ and it's there, all three files.
For what I know, SYSATOMS includes allowed commands, that's it.
My guix checkout I develop with is in my home folder, permissions
for my daily user and all checked in guix environment.

Any Ideas?
-- 
ng / ni*
krosos.sdf.org

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

* Re: [PATCH] gnu: add lispf4
  2016-02-09  1:31         ` Nils Gillmann
@ 2016-02-09  7:16           ` Efraim Flashner
  2016-02-09 10:30             ` Nils Gillmann
                               ` (2 more replies)
  0 siblings, 3 replies; 23+ messages in thread
From: Efraim Flashner @ 2016-02-09  7:16 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

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

On Tue, 09 Feb 2016 02:31:51 +0100
Nils Gillmann <niasterisk@grrlz.net> wrote:

> Leo Famulari <leo@famulari.name> writes:
> 
>  [...]  
>  [...]  
>  [...]  
>  [...]  
>  [...]  
>  [...]  
>  [...]  
>  [...]  
> 
> Thanks!
> 
> But now as I did guix pull and installed it from there, and do
> not run it inside guix environment, I encounter an error I did
> not see coming as it worked in the environment.
> 
> 
> niasterisk@khazad-dum ~$ guix package -i lispf4
> The following package will be installed:
>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
> 
> 56 packages in profile
> niasterisk@khazad-dum ~$ lispf4
> Can't open 'SYSATOMS'
> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
> total 200
> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
> 
> I checked ~/.guix-profile/bin/ and it's there, all three files.
> For what I know, SYSATOMS includes allowed commands, that's it.
> My guix checkout I develop with is in my home folder, permissions
> for my daily user and all checked in guix environment.
> 
> Any Ideas?

If you replace the install phase sometimes you have to change the permissions
yourself. Try searching for #o555.

-- 
Efraim Flashner   <efraim@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

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

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

* Re: [PATCH] gnu: add lispf4
  2016-02-09  7:16           ` Efraim Flashner
@ 2016-02-09 10:30             ` Nils Gillmann
  2016-02-10  5:36               ` Leo Famulari
  2016-02-14  3:52             ` Nils Gillmann
  2016-02-14  4:05             ` Nils Gillmann
  2 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-09 10:30 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Efraim Flashner <efraim@flashner.co.il> writes:

> On Tue, 09 Feb 2016 02:31:51 +0100
> Nils Gillmann <niasterisk@grrlz.net> wrote:
>
>> Leo Famulari <leo@famulari.name> writes:
>> 
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>> 
>> Thanks!
>> 
>> But now as I did guix pull and installed it from there, and do
>> not run it inside guix environment, I encounter an error I did
>> not see coming as it worked in the environment.
>> 
>> 
>> niasterisk@khazad-dum ~$ guix package -i lispf4
>> The following package will be installed:
>>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>> 
>> 56 packages in profile
>> niasterisk@khazad-dum ~$ lispf4
>> Can't open 'SYSATOMS'
>> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>> total 200
>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
>> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
>> 
>> I checked ~/.guix-profile/bin/ and it's there, all three files.
>> For what I know, SYSATOMS includes allowed commands, that's it.
>> My guix checkout I develop with is in my home folder, permissions
>> for my daily user and all checked in guix environment.
>> 
>> Any Ideas?
>
> If you replace the install phase sometimes you have to change the permissions
> yourself. Try searching for #o555.

Okay, thanks.
I tried this but it doesn't change in the environment.
On another system, in Debian, the permissions (in my users home)
are:
SYSATOMS: 644
lispf4: 755
BASIC.IMG 644

without changes, current lispf4 from master:
niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ./pre-inst-env guix build lispf4
/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
/gnu/store/871yzidvz2h4kpjx9sb116b0lshr88dn-lispf4-0.0.0-1-174d876-doc
niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
total 200
dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
-r--r--r-- 4 root guixbuild 94972 Jan  1  1970 BASIC.IMG
-r-xr-xr-x 8 root guixbuild 92088 Jan  1  1970 lispf4
-r--r--r-- 8 root guixbuild  2105 Jan  1  1970 SYSATOMS

If I try 555 for both files, the output with the rights is below.
I wonder, do I need to set it to 644 as it happens on the Debian
system? Should I use guix system vm to test this? I expected that
environment behaves like what pushed as a patch...

niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ./pre-inst-env guix build lispf4
substitute: updating list of substitutes from 'http://hydra.gnu.org'... 100.0%
The following derivation will be built:
   /gnu/store/sb8qa4wywg0lba7aphn8qmr7q3bznn0i-lispf4-0.0.0-1-174d876.drv
@ build-started /gnu/store/sb8qa4wywg0lba7aphn8qmr7q3bznn0i-lispf4-0.0.0-1-174d876.drv - x86_64-linux /var/log/guix/drvs/sb//8qa4wywg0lba7aphn8qmr7q3bznn0i-lispf4-0.0.0-1-174d876.drv.bz2
starting phase `set-SOURCE-DATE-EPOCH'
phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds
starting phase `set-paths'
environment variable `PATH' set to `/gnu/store/0m1wh7i21w6x6agjard3x1bd53y6h1b4-tar-1.28/bin:/gnu/store/8qcqrz4r483vbcbwx5xzy11kdkxqv0c8-gzip-1.6/bin:/gnu/store/mpgci6nb800ckc8cyi3vhm9i8h17zm2l-bzip2-1.0.6/bin:/gnu/store/kz4vzwnm7vdnxbfb3ygc91iv68rjsfmm-xz-5.2.2/bin:/gnu/store/iw4xjh2fx7lbil7m7yghz7yyrf6ks8pq-file-5.25/bin:/gnu/store/gg7yl3al4ms4p9z67k1r7k0jn918l864-diffutils-3.3/bin:/gnu/store/1g9bd3ccfpslgirikaw7wcdrspavz2xz-patch-2.7.5/bin:/gnu/store/4jmy669vqj2zkz03z6jrk26if2y2m6ad-sed-4.2.2/bin:/gnu/store/z6780v4ix4h1id452gnhl9p15rl3rx9y-findutils-4.6.0/bin:/gnu/store/c2ci62qwp62rcpbh9qgmmlyvgszvf8yn-gawk-4.1.3/bin:/gnu/store/iy9a4pk184ipkd470rvssx26rrnl2c5c-grep-2.22/bin:/gnu/store/wczs2ckr8y0m79h3nl199lx85vmidga3-coreutils-8.24/bin:/gnu/store/l1iq0lhklsiw7q7jhlw9cgdkcm6axd38-make-4.1/bin:/gnu/store/l7px210li6zviymgvp3cps6n48x7fgpl-bash-4.3.42/bin:/gnu/store/agnxzx1yza8ci0a1gz5pds8gdg8qmnz5-ld-wrapper-0/bin:/gnu/store/dki0v5cvf1mhfz571k622xvzi1nyinl2-binutils-2.25.1/bin:/gnu/store/gz9h7bicwcx3qbvnp0xgpvh50q5l104b-gcc-4.9.3/bin:/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/bin:/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/sbin'
environment variable `C_INCLUDE_PATH' set to `/gnu/store/mpgci6nb800ckc8cyi3vhm9i8h17zm2l-bzip2-1.0.6/include:/gnu/store/kz4vzwnm7vdnxbfb3ygc91iv68rjsfmm-xz-5.2.2/include:/gnu/store/iw4xjh2fx7lbil7m7yghz7yyrf6ks8pq-file-5.25/include:/gnu/store/c2ci62qwp62rcpbh9qgmmlyvgszvf8yn-gawk-4.1.3/include:/gnu/store/l1iq0lhklsiw7q7jhlw9cgdkcm6axd38-make-4.1/include:/gnu/store/dki0v5cvf1mhfz571k622xvzi1nyinl2-binutils-2.25.1/include:/gnu/store/gz9h7bicwcx3qbvnp0xgpvh50q5l104b-gcc-4.9.3/include:/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/include:/gnu/store/1481x54il6kf3kcs03g997yaj86mfvkh-linux-libre-headers-3.14.37/include'
environment variable `CPLUS_INCLUDE_PATH' set to `/gnu/store/mpgci6nb800ckc8cyi3vhm9i8h17zm2l-bzip2-1.0.6/include:/gnu/store/kz4vzwnm7vdnxbfb3ygc91iv68rjsfmm-xz-5.2.2/include:/gnu/store/iw4xjh2fx7lbil7m7yghz7yyrf6ks8pq-file-5.25/include:/gnu/store/c2ci62qwp62rcpbh9qgmmlyvgszvf8yn-gawk-4.1.3/include:/gnu/store/l1iq0lhklsiw7q7jhlw9cgdkcm6axd38-make-4.1/include:/gnu/store/dki0v5cvf1mhfz571k622xvzi1nyinl2-binutils-2.25.1/include:/gnu/store/gz9h7bicwcx3qbvnp0xgpvh50q5l104b-gcc-4.9.3/include:/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/include:/gnu/store/1481x54il6kf3kcs03g997yaj86mfvkh-linux-libre-headers-3.14.37/include'
environment variable `LIBRARY_PATH' set to `/gnu/store/mpgci6nb800ckc8cyi3vhm9i8h17zm2l-bzip2-1.0.6/lib:/gnu/store/kz4vzwnm7vdnxbfb3ygc91iv68rjsfmm-xz-5.2.2/lib:/gnu/store/iw4xjh2fx7lbil7m7yghz7yyrf6ks8pq-file-5.25/lib:/gnu/store/c2ci62qwp62rcpbh9qgmmlyvgszvf8yn-gawk-4.1.3/lib:/gnu/store/dki0v5cvf1mhfz571k622xvzi1nyinl2-binutils-2.25.1/lib:/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib:/gnu/store/xl2kgbi4i9p1kqy23z3cfq9f8sypna99-glibc-utf8-locales-2.22/lib'
environment variable `GUIX_LOCPATH' set to `/gnu/store/xl2kgbi4i9p1kqy23z3cfq9f8sypna99-glibc-utf8-locales-2.22/lib/locale'
phase `set-paths' succeeded after 0.0 seconds
starting phase `install-locale'
using 'en_US.utf8' locale for category "LC_ALL"
phase `install-locale' succeeded after 0.0 seconds
starting phase `unpack'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/match.l' -> `./match.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/basic2.l' -> `./basic2.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/debug1.l' -> `./debug1.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/LICENSE.txt' -> `./LICENSE.txt'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Makefile.win' -> `./Makefile.win'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Lispf41.f' -> `./Lispf41.f'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/debug2.l' -> `./debug2.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/printa.l' -> `./printa.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/history.l' -> `./history.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/.gitignore' -> `./.gitignore'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/func1.l' -> `./func1.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/F4COM.FOR' -> `./F4COM.FOR'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/lispf4.orig' -> `./lispf4.orig'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/static.l' -> `./static.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/quote.l' -> `./quote.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/io1.l' -> `./io1.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/ifdo.l' -> `./ifdo.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/makef.l' -> `./makef.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/f2c.h' -> `./f2c.h'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/auxillary.c' -> `./auxillary.c'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/basic1.l' -> `./basic1.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/schum.l' -> `./schum.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/struct.l' -> `./struct.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/lispf42.c' -> `./lispf42.c'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/SYSATOMS' -> `./SYSATOMS'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Makefile.unx' -> `./Makefile.unx'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/README.md' -> `./README.md'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/prolog.l' -> `./prolog.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/script.2' -> `./script.2'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/astruct.l' -> `./astruct.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Lispf42.f' -> `./Lispf42.f'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/edit.l' -> `./edit.l'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/lispf41.c' -> `./lispf41.c'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/script.1' -> `./script.1'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Mac/BASIC.IMG' -> `./Mac/BASIC.IMG'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Mac/lispf4' -> `./Mac/lispf4'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Linux/BASIC.IMG' -> `./Linux/BASIC.IMG'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Linux/lispf4-32' -> `./Linux/lispf4-32'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Linux/lispf4-64' -> `./Linux/lispf4-64'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Windows/lispf4.exe' -> `./Windows/lispf4.exe'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Windows/BASIC.IMG' -> `./Windows/BASIC.IMG'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/p501-schorr.pdf' -> `./Documentation/p501-schorr.pdf'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/Interlisp-Oct_1978.pdf' -> `./Documentation/Interlisp-Oct_1978.pdf'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/UsersGuide.txt' -> `./Documentation/UsersGuide.txt'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/Haraldson-LISP_details.pdf' -> `./Documentation/Haraldson-LISP_details.pdf'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/ImplementationGuide.txt' -> `./Documentation/ImplementationGuide.txt'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/DevelopmentProcess.txt' -> `./Documentation/DevelopmentProcess.txt'
`/gnu/store/vfsd8p5ivpp996vj43bvhlsm684n8k21-lispf4-0.0.0-1-174d876/Documentation/README.txt' -> `./Documentation/README.txt'
phase `unpack' succeeded after 0.1 seconds
starting phase `patch-usr-bin-file'
phase `patch-usr-bin-file' succeeded after 0.0 seconds
starting phase `patch-source-shebangs'
phase `patch-source-shebangs' succeeded after 0.0 seconds
starting phase `patch-generated-file-shebangs'
phase `patch-generated-file-shebangs' succeeded after 0.0 seconds
starting phase `build'
gcc -Dstricmp=strcasecmp -O3    -c -o lispf41.o lispf41.c
gcc -Dstricmp=strcasecmp -O3    -c -o lispf42.o lispf42.c
gcc -Dstricmp=strcasecmp -O3    -c -o auxillary.o auxillary.c
gcc -o lispf4  -O lispf41.o lispf42.o auxillary.o -lm
./lispf4 <script.1
Lisp F4 , latest update =   
           (2015 8 21)
Space (cells smallnum bignums atoms) =  
           (96865 1073690323 2999 2853)
--- Reset   
_10
 
_10
 
_10
 
_ 
Exit from Lisp F4   
GBC:s (cell compacting num num/atom) =  
           (0 1 0 0)
Bye 
./lispf4 BARE.IMG <script.2
Lisp F4 , latest update =   
           (2015 8 21)
Space (cells smallnum bignums atoms) =  
           (96993 1073690323 2999 2850)
--- Reset   
_10
 
_5
 
BASIC1-PACKAGE
 
NIL
 
80
 
80
 
(LAMBDA (FN DEF)
        (PUTPROP FN 'FNCELL DEF))
 
[NLAMBDA L
         (MAPC L
               '(LAMBDA (X)
                        (PUTD (CAR X)
                              (CADR X]
 
(NLAMBDA (A)
         (PRINT (LIST 'FILEHEADER A)))
 
(LAMBDA (FILE)
        (PROG (&&X LFN TEMP)
              (OR (SETQ LFN
                        (XCALL 1
                               (LIST 15 FILE 'OLD 'FORMATTED)))
                  (RETURN))
              (SETQ TEMP
                    (IOTAB 1 LFN))
         LOOP (SELECTQ
                (SETQ &&X
                      (READ))
                (STOP (XCALL 2 LFN)
                      (RETURN
                        (IOTAB 1 TEMP)))
                (EVAL &&X))
              (GO LOOP)))
 
(LAMBDA (A)
        (PRIN0 A T)
        (TERPRI)
        A)
 
_10
 
__(FILEHEADER BASIC2)
BASIC2-PACKAGE
(VERSION 10)
BASIC2FNS
15
 
_(FILEHEADER IO1)
IO1-PACKAGE
(VERSION 2)
IO1FNS
15
 
_(FILEHEADER FUNC1)
FUNC1-PACKAGE
(VERSION 4)
FUNC1FNS
FUNC1VARS
15
 
_(FILEHEADER DEBUG1)
DEBUG1-PACKAGE
(VERSION 6)
SYSERROR REDEFINED 
DEBUG1FNS
DEBUG1VARS
15
 
_(FILEHEADER DEBUG2)
(DEBUG PACKAGE 2)
(VERSION 0)
PUTD REDEFINED 
DEBUG2FNS
DEBUG2VARS
15
 
_(FILEHEADER EDIT)
EDIT-PACKAGE
(VERSION 4)
EDITFNS
15
 
_(FILEHEADER MAKEF)
(MAKE FILE PACKAGE MODIFIED BY BLAKE MCBRIDE)
(VERSION 8)
FILEHEADER REDEFINED 
MAKEFFNS
MAKEFVARS
15
 
_(FILEHEADER HISTORY)
(HISTORY FUNCTIONS)
(VERSION 2)
LISPX REDEFINED 
READ REDEFINED 
HISTORYFNS
HISTORYVARS
history.l - LOADED 
"history.l"
 
_CUR
 
_ 
--- Compacting GBC. Free cells =
           87237
BASIC.IMG SAVED 
"BASIC.IMG"
 
_ 
Exit from Lisp F4   
GBC:s (cell compacting num num/atom) =  
           (0 1 0 0)
Bye 
phase `build' succeeded after 1.7 seconds
starting phase `check'
test suite not run
phase `check' succeeded after 0.0 seconds
starting phase `install'
`Documentation/p501-schorr.pdf' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/p501-schorr.pdf'
`Documentation/Interlisp-Oct_1978.pdf' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/Interlisp-Oct_1978.pdf'
`Documentation/UsersGuide.txt' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/UsersGuide.txt'
`Documentation/Haraldson-LISP_details.pdf' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/Haraldson-LISP_details.pdf'
`Documentation/ImplementationGuide.txt' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/ImplementationGuide.txt'
`Documentation/DevelopmentProcess.txt' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/DevelopmentProcess.txt'
`Documentation/README.txt' -> `/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc/share/doc/lispf4/README.txt'
phase `install' succeeded after 0.1 seconds
starting phase `patch-shebangs'
phase `patch-shebangs' succeeded after 0.0 seconds
starting phase `strip'
stripping binaries in "/gnu/store/s0ykdd0wcz91a6ldkikm8hvz9ky03gw1-lispf4-0.0.0-1-174d876/bin" with "strip" and flags ("--strip-debug" "--enable-deterministic-archives")
phase `strip' succeeded after 0.0 seconds
starting phase `validate-runpath'
validating RUNPATH of 1 binaries in "/gnu/store/s0ykdd0wcz91a6ldkikm8hvz9ky03gw1-lispf4-0.0.0-1-174d876/bin"...
phase `validate-runpath' succeeded after 0.0 seconds
starting phase `validate-documentation-location'
phase `validate-documentation-location' succeeded after 0.0 seconds
starting phase `delete-info-dir-file'
phase `delete-info-dir-file' succeeded after 0.0 seconds
starting phase `compress-documentation'
phase `compress-documentation' succeeded after 0.0 seconds
@ build-succeeded /gnu/store/sb8qa4wywg0lba7aphn8qmr7q3bznn0i-lispf4-0.0.0-1-174d876.drv -
/gnu/store/s0ykdd0wcz91a6ldkikm8hvz9ky03gw1-lispf4-0.0.0-1-174d876
/gnu/store/6xkbgncvdm3spyp2xxzidryb65dd84gc-lispf4-0.0.0-1-174d876-doc
niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ls -al/gnu/store/s0ykdd0wcz91a6ldkikm8hvz9ky03gw1-lispf4-0.0.0-1-174d876/bin/
ls: invalid option -- '/'
Try 'ls --help' for more information.
niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ls -al /gnu/store/s0ykdd0wcz91a6ldkikm8hvz9ky03gw1-lispf4-0.0.0-1-174d876/bin/
total 200
dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
-r-xr-xr-x 2 root guixbuild 94972 Jan  1  1970 BASIC.IMG
-r-xr-xr-x 9 root guixbuild 92088 Jan  1  1970 lispf4
-r-xr-xr-x 2 root guixbuild  2105 Jan  1  1970 SYSATOMS


-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-09 10:30             ` Nils Gillmann
@ 2016-02-10  5:36               ` Leo Famulari
  2016-02-10 13:48                 ` Nils Gillmann
  0 siblings, 1 reply; 23+ messages in thread
From: Leo Famulari @ 2016-02-10  5:36 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

On Tue, Feb 09, 2016 at 11:30:21AM +0100, Nils Gillmann wrote:
> Efraim Flashner <efraim@flashner.co.il> writes:
> > On Tue, 09 Feb 2016 02:31:51 +0100
> > Nils Gillmann <niasterisk@grrlz.net> wrote:

[...]

> >
> >> But now as I did guix pull and installed it from there, and do
> >> not run it inside guix environment, I encounter an error I did
> >> not see coming as it worked in the environment.

[...]

> > If you replace the install phase sometimes you have to change the permissions
> > yourself. Try searching for #o555.
> 
> Okay, thanks.
> I tried this but it doesn't change in the environment.
> On another system, in Debian, the permissions (in my users home)
> are:
> SYSATOMS: 644
> lispf4: 755
> BASIC.IMG 644
> 
> without changes, current lispf4 from master:
> niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ./pre-inst-env guix build lispf4
> /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
> /gnu/store/871yzidvz2h4kpjx9sb116b0lshr88dn-lispf4-0.0.0-1-174d876-doc
> niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
> total 200
> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
> -r--r--r-- 4 root guixbuild 94972 Jan  1  1970 BASIC.IMG
> -r-xr-xr-x 8 root guixbuild 92088 Jan  1  1970 lispf4
> -r--r--r-- 8 root guixbuild  2105 Jan  1  1970 SYSATOMS
> 
> If I try 555 for both files, the output with the rights is below.
> I wonder, do I need to set it to 644 as it happens on the Debian
> system? Should I use guix system vm to test this? I expected that
> environment behaves like what pushed as a patch...

I'm not sure — did you figure out a solution to the problem with the
package?

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

* Re: [PATCH] gnu: add lispf4
  2016-02-10  5:36               ` Leo Famulari
@ 2016-02-10 13:48                 ` Nils Gillmann
  2016-02-12  4:00                   ` Leo Famulari
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-10 13:48 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> writes:

> On Tue, Feb 09, 2016 at 11:30:21AM +0100, Nils Gillmann wrote:
>> Efraim Flashner <efraim@flashner.co.il> writes:
>> > On Tue, 09 Feb 2016 02:31:51 +0100
>> > Nils Gillmann <niasterisk@grrlz.net> wrote:
>
> [...]
>
>> >
>> >> But now as I did guix pull and installed it from there, and do
>> >> not run it inside guix environment, I encounter an error I did
>> >> not see coming as it worked in the environment.
>
> [...]
>
>> > If you replace the install phase sometimes you have to change the permissions
>> > yourself. Try searching for #o555.
>> 
>> Okay, thanks.
>> I tried this but it doesn't change in the environment.
>> On another system, in Debian, the permissions (in my users home)
>> are:
>> SYSATOMS: 644
>> lispf4: 755
>> BASIC.IMG 644
>> 
>> without changes, current lispf4 from master:
>> niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ./pre-inst-env guix build lispf4
>> /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>> /gnu/store/871yzidvz2h4kpjx9sb116b0lshr88dn-lispf4-0.0.0-1-174d876-doc
>> niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>> total 200
>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>> -r--r--r-- 4 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>> -r-xr-xr-x 8 root guixbuild 92088 Jan  1  1970 lispf4
>> -r--r--r-- 8 root guixbuild  2105 Jan  1  1970 SYSATOMS
>> 
>> If I try 555 for both files, the output with the rights is below.
>> I wonder, do I need to set it to 644 as it happens on the Debian
>> system? Should I use guix system vm to test this? I expected that
>> environment behaves like what pushed as a patch...
>
> I'm not sure — did you figure out a solution to the problem with the
> package?

Yes and no.
I am not sure, as I don't know Guix enough currently.
On Debian, compiled in $HOME I get 644 on SYSATOMS + BASIC.IMG.
If this is the default, should I just assume for a moment that
this will be okay to set for (chmod) in the install procedure and
patch it as such?

I'm distracted by problems out of my control currently, but I'm
still trying to get this solved.
-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-10 13:48                 ` Nils Gillmann
@ 2016-02-12  4:00                   ` Leo Famulari
  0 siblings, 0 replies; 23+ messages in thread
From: Leo Famulari @ 2016-02-12  4:00 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel

On Wed, Feb 10, 2016 at 02:48:43PM +0100, Nils Gillmann wrote:
> Leo Famulari <leo@famulari.name> writes:
> 
> > On Tue, Feb 09, 2016 at 11:30:21AM +0100, Nils Gillmann wrote:
> > I'm not sure — did you figure out a solution to the problem with the
> > package?
> 
> Yes and no.
> I am not sure, as I don't know Guix enough currently.
> On Debian, compiled in $HOME I get 644 on SYSATOMS + BASIC.IMG.
> If this is the default, should I just assume for a moment that
> this will be okay to set for (chmod) in the install procedure and
> patch it as such?

I spent some time trying to get this to work without success.

Can you elaborate on your workflow? Are you using the `guix environment`
tool to create a build environment and then building "by hand" by
running `make`, or are you using using `./pre-inst-env guix build`, or
some combination of the two?

The `./pre-inst-env` method [0] should ensure that if a package works for
you, it will work when installed from the master Guix repo.

For example, you could build and test a package like this:
$ ./pre-inst-env guix build lispf4 && ./pre-inst-env guix package -i lispf4

[0]
https://www.gnu.org/software/guix/manual/guix.html#Running-Guix-Before-It-Is-Installed

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

* Re: [PATCH] gnu: add lispf4
  2016-02-09  7:16           ` Efraim Flashner
  2016-02-09 10:30             ` Nils Gillmann
@ 2016-02-14  3:52             ` Nils Gillmann
  2016-02-14  8:10               ` Ricardo Wurmus
  2016-02-14  4:05             ` Nils Gillmann
  2 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-14  3:52 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Efraim Flashner <efraim@flashner.co.il> writes:

> On Tue, 09 Feb 2016 02:31:51 +0100
> Nils Gillmann <niasterisk@grrlz.net> wrote:
>
>> Leo Famulari <leo@famulari.name> writes:
>> 
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>> 
>> Thanks!
>> 
>> But now as I did guix pull and installed it from there, and do
>> not run it inside guix environment, I encounter an error I did
>> not see coming as it worked in the environment.
>> 
>> 
>> niasterisk@khazad-dum ~$ guix package -i lispf4
>> The following package will be installed:
>>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>> 
>> 56 packages in profile
>> niasterisk@khazad-dum ~$ lispf4
>> Can't open 'SYSATOMS'
>> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>> total 200
>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
>> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
>> 
>> I checked ~/.guix-profile/bin/ and it's there, all three files.
>> For what I know, SYSATOMS includes allowed commands, that's it.
>> My guix checkout I develop with is in my home folder, permissions
>> for my daily user and all checked in guix environment.
>> 
>> Any Ideas?
>
> If you replace the install phase sometimes you have to change the permissions
> yourself. Try searching for #o555.

Okay, I just tried #o555 and #o644 in individual builds for both
files. Both builds produced the same mistake which currently
keeps lispf4 from running ("can't open 'SYSATOMS'").

Should I try other permission levels like 755 now until I find
one which works for guix? 644 was the one which worked in $HOME
in debian, that's my only build and succesful run experience with
lispf4.

what do you think?
-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-09  7:16           ` Efraim Flashner
  2016-02-09 10:30             ` Nils Gillmann
  2016-02-14  3:52             ` Nils Gillmann
@ 2016-02-14  4:05             ` Nils Gillmann
  2 siblings, 0 replies; 23+ messages in thread
From: Nils Gillmann @ 2016-02-14  4:05 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

Efraim Flashner <efraim@flashner.co.il> writes:

> On Tue, 09 Feb 2016 02:31:51 +0100
> Nils Gillmann <niasterisk@grrlz.net> wrote:
>
>> Leo Famulari <leo@famulari.name> writes:
>> 
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>>  [...]  
>> 
>> Thanks!
>> 
>> But now as I did guix pull and installed it from there, and do
>> not run it inside guix environment, I encounter an error I did
>> not see coming as it worked in the environment.
>> 
>> 
>> niasterisk@khazad-dum ~$ guix package -i lispf4
>> The following package will be installed:
>>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>> 
>> 56 packages in profile
>> niasterisk@khazad-dum ~$ lispf4
>> Can't open 'SYSATOMS'
>> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>> total 200
>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
>> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
>> 
>> I checked ~/.guix-profile/bin/ and it's there, all three files.
>> For what I know, SYSATOMS includes allowed commands, that's it.
>> My guix checkout I develop with is in my home folder, permissions
>> for my daily user and all checked in guix environment.
>> 
>> Any Ideas?
>
> If you replace the install phase sometimes you have to change the permissions
> yourself. Try searching for #o555.

Tried 755 for both, still the same.. Has anyone experienced such
an error before?

-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-14  3:52             ` Nils Gillmann
@ 2016-02-14  8:10               ` Ricardo Wurmus
  2016-02-14 21:31                 ` Nils Gillmann
  0 siblings, 1 reply; 23+ messages in thread
From: Ricardo Wurmus @ 2016-02-14  8:10 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel


Nils Gillmann <niasterisk@grrlz.net> writes:

> Efraim Flashner <efraim@flashner.co.il> writes:
>
>> On Tue, 09 Feb 2016 02:31:51 +0100
>> Nils Gillmann <niasterisk@grrlz.net> wrote:
>>
>>> Leo Famulari <leo@famulari.name> writes:
>>> 
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>>  [...]  
>>> 
>>> Thanks!
>>> 
>>> But now as I did guix pull and installed it from there, and do
>>> not run it inside guix environment, I encounter an error I did
>>> not see coming as it worked in the environment.
>>> 
>>> 
>>> niasterisk@khazad-dum ~$ guix package -i lispf4
>>> The following package will be installed:
>>>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>>> 
>>> 56 packages in profile
>>> niasterisk@khazad-dum ~$ lispf4
>>> Can't open 'SYSATOMS'
>>> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>>> total 200
>>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>>> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>>> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
>>> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
>>> 
>>> I checked ~/.guix-profile/bin/ and it's there, all three files.
>>> For what I know, SYSATOMS includes allowed commands, that's it.
>>> My guix checkout I develop with is in my home folder, permissions
>>> for my daily user and all checked in guix environment.
>>> 
>>> Any Ideas?
>>
>> If you replace the install phase sometimes you have to change the permissions
>> yourself. Try searching for #o555.
>
> Okay, I just tried #o555 and #o644 in individual builds for both
> files. Both builds produced the same mistake which currently
> keeps lispf4 from running ("can't open 'SYSATOMS'").

Could it be a search-path problem?  Try running

    strace -f lispf4

to see where lispf4 looks for SYSATOMS and what the exact error is as it
tries to open the file.  Does it find it at all?

~~ Ricardo

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

* Re: [PATCH] gnu: add lispf4
  2016-02-14  8:10               ` Ricardo Wurmus
@ 2016-02-14 21:31                 ` Nils Gillmann
  2016-02-14 21:36                   ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-14 21:31 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: guix-devel

Ricardo Wurmus <rekado@elephly.net> writes:

> Nils Gillmann <niasterisk@grrlz.net> writes:
>
>> Efraim Flashner <efraim@flashner.co.il> writes:
>>
>>> On Tue, 09 Feb 2016 02:31:51 +0100
>>> Nils Gillmann <niasterisk@grrlz.net> wrote:
>>>
>>>> Leo Famulari <leo@famulari.name> writes:
>>>> 
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>>  [...]  
>>>> 
>>>> Thanks!
>>>> 
>>>> But now as I did guix pull and installed it from there, and do
>>>> not run it inside guix environment, I encounter an error I did
>>>> not see coming as it worked in the environment.
>>>> 
>>>> 
>>>> niasterisk@khazad-dum ~$ guix package -i lispf4
>>>> The following package will be installed:
>>>>    lispf4	0.0.0-1-174d876	/gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876
>>>> 
>>>> 56 packages in profile
>>>> niasterisk@khazad-dum ~$ lispf4
>>>> Can't open 'SYSATOMS'
>>>> niasterisk@khazad-dum ~$ ls -al /gnu/store/7rkw1rhn4ijap9b936waspki03260lpb-lispf4-0.0.0-1-174d876/bin/
>>>> total 200
>>>> dr-xr-xr-x 2 root guixbuild  4096 Jan  1  1970 ./
>>>> dr-xr-xr-x 3 root guixbuild  4096 Jan  1  1970 ../
>>>> -r--r--r-- 3 root guixbuild 94972 Jan  1  1970 BASIC.IMG
>>>> -r-xr-xr-x 7 root guixbuild 92088 Jan  1  1970 lispf4
>>>> -r--r--r-- 7 root guixbuild  2105 Jan  1  1970 SYSATOMS
>>>> 
>>>> I checked ~/.guix-profile/bin/ and it's there, all three files.
>>>> For what I know, SYSATOMS includes allowed commands, that's it.
>>>> My guix checkout I develop with is in my home folder, permissions
>>>> for my daily user and all checked in guix environment.
>>>> 
>>>> Any Ideas?
>>>
>>> If you replace the install phase sometimes you have to change the permissions
>>> yourself. Try searching for #o555.
>>
>> Okay, I just tried #o555 and #o644 in individual builds for both
>> files. Both builds produced the same mistake which currently
>> keeps lispf4 from running ("can't open 'SYSATOMS'").
>
> Could it be a search-path problem?  Try running
>
>     strace -f lispf4
>
> to see where lispf4 looks for SYSATOMS and what the exact error is as it
> tries to open the file.  Does it find it at all?
>
> ~~ Ricardo
>

I am not experienced with strace, to me it looks like on the line
where SYSATOMS is opened there should be a path where is
none. But it's in the same location as the executable lispf4.

niasterisk@khazad-dum ~/projects/guix_project/guix [env]$ strace -f lispf4
execve("/gnu/store/3p8h4cy4zlb4kjwpswj6829qwdnp7qrv-profile/bin/lispf4", ["lispf4"], [/* 55 vars */]) = 0
brk(0)                                  = 0x10e9000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659529000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/tls/x86_64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/tls/x86_64", 0x7ffcb1326080) = -1 ENOENT (No such file or directory)
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/tls/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/tls", 0x7ffcb1326080) = -1 ENOENT (No such file or directory)
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/x86_64/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/x86_64", 0x7ffcb1326080) = -1 ENOENT (No such file or directory)
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300T\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=1111104, ...}) = 0
mmap(NULL, 3137880, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f365900c000
mprotect(0x7f365910a000, 2093056, PROT_NONE) = 0
mmap(0x7f3659309000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xfd000) = 0x7f3659309000
close(3)                                = 0
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/tls/x86_64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/tls/x86_64", 0x7ffcb1326050) = -1 ENOENT (No such file or directory)
open("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/tls/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/tls", 0x7ffcb1326050) = -1 ENOENT (No such file or directory)
open("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/x86_64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/x86_64", 0x7ffcb1326050) = -1 ENOENT (No such file or directory)
open("/gnu/store/n9ap5r8j6vw92ban7baisg4vswsmf299-gcc-4.9.3-lib/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p*\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0444, st_size=100848, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659528000
mmap(NULL, 2185952, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3658df6000
mprotect(0x7f3658e0c000, 2093056, PROT_NONE) = 0
mmap(0x7f365900b000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f365900b000
close(3)                                = 0
open("/gnu/store/gybk6iz6n659njzg56vqsy5bg7irk370-glibc-2.22/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\7\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=1952536, ...}) = 0
mmap(NULL, 3821248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3658a51000
mprotect(0x7f3658bec000, 2097152, PROT_NONE) = 0
mmap(0x7f3658dec000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19b000) = 0x7f3658dec000
mmap(0x7f3658df2000, 16064, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3658df2000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659527000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659526000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659525000
arch_prctl(ARCH_SET_FS, 0x7f3659526700) = 0
mprotect(0x7f3658dec000, 16384, PROT_READ) = 0
mprotect(0x7f3659309000, 4096, PROT_READ) = 0
mprotect(0x7f365952b000, 4096, PROT_READ) = 0
rt_sigaction(SIGINT, {0x406f40, [INT], SA_RESTORER|SA_RESTART, 0x7f3658a84560}, {SIG_IGN, [], 0}, 8) = 0
mmap(NULL, 401408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f36594c3000
mmap(NULL, 401408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3659461000
brk(0)                                  = 0x10e9000
brk(0x110c000)                          = 0x110c000
open("SYSATOMS", O_RDONLY)              = -1 ENOENT (No such file or directory)
write(2, "Can't open 'SYSATOMS'\n", 22Can't open 'SYSATOMS'
) = 22
exit_group(1)                           = ?
+++ exited with 1 +++


In lispf42.c I  only find this with reference to SYSATOMS..


/*      BELOW IS CODE THAT OPENS SYSATOMS AT RUNTIME SO YOU DON'T NEED */
/*      TO ASSIGN IT. */

#ifdef  FORTRAN_LIB
    o__1.oerr = 1;
    o__1.ounit = b_1.lunsys;
    o__1.ofnmlen = 8;
    o__1.ofnm = c_b98;
    o__1.orl = 0;
    o__1.osta = c_b5;
    o__1.oacc = 0;
    o__1.ofm = 0;
    o__1.oblnk = 0;
    i__1 = f_open(&o__1);
#else
    i__1 = f4_open(b_1.lunsys, c_b98, "r");
#endif
    if (i__1 != 0) {
	goto L3;
    }
    goto L4;
L3:
#ifdef FORTRAN_LIB
    io___50.ciunit = b_1.lunuts;
    s_wsfe(&io___50);
    e_wsfe();
    s_stop(c_b3, (ftnlen)0);
#else
    fprintf(stderr, "Can't open 'SYSATOMS'\n");
    exit(1);
#endif



/*             READ SYSTEM CHARACTERS */
L4:
    rda1_(&b_1.lunsys, ich, &c__1, &a_1.nchtyp, &ieof);



-- 
ng

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

* Re: [PATCH] gnu: add lispf4
  2016-02-14 21:31                 ` Nils Gillmann
@ 2016-02-14 21:36                   ` Ricardo Wurmus
  0 siblings, 0 replies; 23+ messages in thread
From: Ricardo Wurmus @ 2016-02-14 21:36 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel


Nils Gillmann <niasterisk@grrlz.net> writes:

> open("SYSATOMS", O_RDONLY)              = -1 ENOENT (No such file or directory)
> write(2, "Can't open 'SYSATOMS'\n", 22Can't open 'SYSATOMS'
> ) = 22
> exit_group(1)                           = ?
> +++ exited with 1 +++

Does this also happen when you run lispf4 from the very same directory
that contains SYSATOMS?  It seems to me that we should patch the sources
such that it opens SYSATOMS with its full path.

~~ Ricardo

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

* Re: [PATCH] gnu: add lispf4 (Update)
  2016-02-07 15:09       ` Nils Gillmann
@ 2016-02-18 11:38         ` Nils Gillmann
  2016-02-18 11:48           ` Ricardo Wurmus
  0 siblings, 1 reply; 23+ messages in thread
From: Nils Gillmann @ 2016-02-18 11:38 UTC (permalink / raw)
  To: guix-devel

I contacted the author of the port (Blake McBride), it will take
some weeks until he can help, but he'll definitely help to
debug the issue. As it currently is quasi-broken, should I open a
bug about it with details, content of this message and that I am
working on it, close it once it is fixed?

-- 
ng

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

* Re: [PATCH] gnu: add lispf4 (Update)
  2016-02-18 11:38         ` [PATCH] gnu: add lispf4 (Update) Nils Gillmann
@ 2016-02-18 11:48           ` Ricardo Wurmus
  0 siblings, 0 replies; 23+ messages in thread
From: Ricardo Wurmus @ 2016-02-18 11:48 UTC (permalink / raw)
  To: Nils Gillmann; +Cc: guix-devel


Nils Gillmann <niasterisk@grrlz.net> writes:

> I contacted the author of the port (Blake McBride), it will take
> some weeks until he can help, but he'll definitely help to
> debug the issue. As it currently is quasi-broken, should I open a
> bug about it with details, content of this message and that I am
> working on it, close it once it is fixed?

Since the package is already in Guix and is not usable, I think it would
be good to keep track of it by opening a Guix bug report.

When it finally can be fixed with an update to the package definition
the commit message should contain a line “Fixes: #1234.” or similar.

~~ Ricardo

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

end of thread, other threads:[~2016-02-18 11:48 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-06 18:45 [PATCH] gnu: add lispf4 Nils Gillmann
2016-02-06 22:14 ` Leo Famulari
2016-02-07  0:01   ` Nils Gillmann
2016-02-07 10:59     ` Ricardo Wurmus
2016-02-07 11:09     ` Ricardo Wurmus
2016-02-07 15:09       ` Nils Gillmann
2016-02-18 11:38         ` [PATCH] gnu: add lispf4 (Update) Nils Gillmann
2016-02-18 11:48           ` Ricardo Wurmus
2016-02-07 16:50 ` [PATCH] gnu: add lispf4 Nils Gillmann
2016-02-08  0:36   ` Leo Famulari
2016-02-08 11:17     ` Nils Gillmann
2016-02-08 20:14       ` Leo Famulari
2016-02-09  1:31         ` Nils Gillmann
2016-02-09  7:16           ` Efraim Flashner
2016-02-09 10:30             ` Nils Gillmann
2016-02-10  5:36               ` Leo Famulari
2016-02-10 13:48                 ` Nils Gillmann
2016-02-12  4:00                   ` Leo Famulari
2016-02-14  3:52             ` Nils Gillmann
2016-02-14  8:10               ` Ricardo Wurmus
2016-02-14 21:31                 ` Nils Gillmann
2016-02-14 21:36                   ` Ricardo Wurmus
2016-02-14  4:05             ` Nils Gillmann

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).