colorforth

  • Done
  • quality assurance status badge
Details
4 participants
  • ng0
  • Konstantin Tcholokachvili
  • ng0
  • Ricardo Wurmus
Owner
Somebody
Submitted by
ng0
Severity
normal
N
(address . guix-patches@gnu.org)
20170214184647.xxnuigw3yqp2iufn@wasp
In October I've sent a patch series where only one was picked from.
I wanted to ask if there's an issue with colorforth?

I will sent the patches again as soon as I have the bug id for this
patch.
Do as you please, if it's not worth for inclusion tell me and I drop the
branch locally.
--
C
C
contact.ng0 wrote on 14 Feb 2017 19:53
[PATCH 1/2] gnu: Rename gforth module to forth.
(address . 25728@debbugs.gnu.org)(name . ng0)(address . ngillmann@runbox.com)
20170214185339.25538-1-contact.ng0@cryptolab.net
From: ng0 <ngillmann@runbox.com>

* gnu/local.mk (GNU_SYSTEM_MODULES): Rename gforth.scm to forth.scm.
* gnu/packages/gforth.scm: Rename file to forth.scm.
* gnu/packages/forth.scm: Renamed from gforth.scm.
---
gnu/local.mk | 2 +-
gnu/packages/{gforth.scm => forth.scm} | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
rename gnu/packages/{gforth.scm => forth.scm} (96%)

Toggle diff (45 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 26f6bbf0d..4bb49d3d8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -135,6 +135,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
+ %D%/packages/forth.scm \
%D%/packages/freedesktop.scm \
%D%/packages/freeipmi.scm \
%D%/packages/ftp.scm \
@@ -149,7 +150,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gdb.scm \
%D%/packages/geo.scm \
%D%/packages/gettext.scm \
- %D%/packages/gforth.scm \
%D%/packages/ghostscript.scm \
%D%/packages/gimp.scm \
%D%/packages/gkrellm.scm \
diff --git a/gnu/packages/gforth.scm b/gnu/packages/forth.scm
similarity index 96%
rename from gnu/packages/gforth.scm
rename to gnu/packages/forth.scm
index b2a67ce58..21a0fc2de 100644
--- a/gnu/packages/gforth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -17,7 +17,7 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
-(define-module (gnu packages gforth)
+(define-module (gnu packages forth)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
--
2.11.1
C
C
contact.ng0 wrote on 14 Feb 2017 19:53
[PATCH 2/2] gnu: Add colorforth.
(address . 25728@debbugs.gnu.org)(name . ng0)(address . ngillmann@runbox.com)
20170214185339.25538-2-contact.ng0@cryptolab.net
From: ng0 <ngillmann@runbox.com>

* gnu/packages/forth.scm (colorforth): New variable.
---
gnu/packages/forth.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (56 lines)
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 21a0fc2de..8854a9246 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -21,7 +21,9 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (gnu packages assembly)
#:use-module (gnu packages m4))
(define-public gforth
@@ -58,3 +60,39 @@ and history. A generic virtual machine environment, vmgen, is also
included.")
(home-page "https://www.gnu.org/software/gforth/")
(license license:gpl3+)))
+
+(define-public colorforth
+ (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
+ (revision "1"))
+ (package
+ (name "colorforth")
+ (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/narke/colorForth")
+ (commit commit)))
+ (sha256
+ (base32
+ "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
+ (arguments
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; no configure script
+ (replace 'install ; There is no 'install
+ (lambda _
+ (install-file "cf2012.img"
+ (string-append (assoc-ref %outputs "out")
+ "/bin")))))))
+ (native-inputs
+ `(("nasm" ,nasm)))
+ (build-system gnu-build-system)
+ (home-page "https://github.com/narke/colorForth")
+ (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
+ (description
+ "Native colorForth for 32-bit PCs, at least compilable on Linux
+ and runnable on both Bochs and Qemu. It is adapted from
+ @url{http://sourceforge.net/projects/colorforth, colorforth}.
+ The original colorforth is public domain software.")
+ (license license:public-domain))))
--
2.11.1
R
R
Ricardo Wurmus wrote on 18 Feb 2017 10:47
(address . contact.ng0@cryptolab.net)
871suvu8yu.fsf@elephly.net
contact.ng0@cryptolab.net writes:

Toggle quote (5 lines)
> From: ng0 <ngillmann@runbox.com>
>
> * gnu/packages/forth.scm (colorforth): New variable.
> ---

The patch to change the module name is fine (although I’d move the
copyright update to this patch).

Toggle quote (43 lines)
> gnu/packages/forth.scm | 38 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
> index 21a0fc2de..8854a9246 100644
> --- a/gnu/packages/forth.scm
> +++ b/gnu/packages/forth.scm
> @@ -21,7 +21,9 @@
> #:use-module ((guix licenses) #:prefix license:)
> #:use-module (guix packages)
> #:use-module (guix download)
> + #:use-module (guix git-download)
> #:use-module (guix build-system gnu)
> + #:use-module (gnu packages assembly)
> #:use-module (gnu packages m4))
>
> (define-public gforth
> @@ -58,3 +60,39 @@ and history. A generic virtual machine environment, vmgen, is also
> included.")
> (home-page "https://www.gnu.org/software/gforth/")
> (license license:gpl3+)))
> +
> +(define-public colorforth
> + (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
> + (revision "1"))
> + (package
> + (name "colorforth")
> + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/narke/colorForth")
> + (commit commit)))
> + (sha256
> + (base32
> + "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
> + (arguments
> + `(#:tests? #f
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure) ; no configure script
> + (replace 'install ; There is no 'install

Please change the comment to “no install target” or similar. “no
'install” is confusing because “'install” is a quoted symbol and that
has no meaning outside of Scheme.

Toggle quote (5 lines)
> + (lambda _
> + (install-file "cf2012.img"
> + (string-append (assoc-ref %outputs "out")
> + "/bin")))))))

Please use “outputs” instead of “%outputs”. Is the target “bin”
directory created during the build?

Please also make the phase end with “#t”.

Toggle quote (11 lines)
> + (native-inputs
> + `(("nasm" ,nasm)))
> + (build-system gnu-build-system)
> + (home-page "https://github.com/narke/colorForth")
> + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> + (description
> + "Native colorForth for 32-bit PCs, at least compilable on Linux
> + and runnable on both Bochs and Qemu. It is adapted from
> + @url{http://sourceforge.net/projects/colorforth, colorforth}.
> + The original colorforth is public domain software.")

Please change the description. The first sentence fragment should be a
full sentence. I don’t think “32-bit PCs” should be mentioned, nor
should compatibility with Linux be mentioned (do they mean the kernel or
GNU?). Also the last sentence should not be included.

Could you write a description that describes the package, i.e. tells
potential users why they would want to use it?

Looks like it’s written in x86 assembly. This would be worth mentioning
(and I think that’s what “32-bit PCs” implied).

Could you please send an updated patch?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
R
R
Ricardo Wurmus wrote on 30 Mar 2017 15:30
control message for bug #25728
(address . control@debbugs.gnu.org)
E1ctZfW-00009M-8A@debbugs.gnu.org
tags 25728 moreinfo
R
R
Ricardo Wurmus wrote on 30 Mar 2017 15:30
(address . control@debbugs.gnu.org)
E1ctZfk-00009o-GP@debbugs.gnu.org
owner 25728 !
N
Re: bug#25728: [PATCH 2/2] gnu: Add colorforth.
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 25728@debbugs.gnu.org)
20170415152843.2vyk7uhycuny5rov@abyayala
Ricardo Wurmus transcribed 3.5K bytes:
Toggle quote (84 lines)
>
> contact.ng0@cryptolab.net writes:
>
> > From: ng0 <ngillmann@runbox.com>
> >
> > * gnu/packages/forth.scm (colorforth): New variable.
> > ---
>
> The patch to change the module name is fine (although I’d move the
> copyright update to this patch).
>
> > gnu/packages/forth.scm | 38 ++++++++++++++++++++++++++++++++++++++
> > 1 file changed, 38 insertions(+)
> >
> > diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
> > index 21a0fc2de..8854a9246 100644
> > --- a/gnu/packages/forth.scm
> > +++ b/gnu/packages/forth.scm
> > @@ -21,7 +21,9 @@
> > #:use-module ((guix licenses) #:prefix license:)
> > #:use-module (guix packages)
> > #:use-module (guix download)
> > + #:use-module (guix git-download)
> > #:use-module (guix build-system gnu)
> > + #:use-module (gnu packages assembly)
> > #:use-module (gnu packages m4))
> >
> > (define-public gforth
> > @@ -58,3 +60,39 @@ and history. A generic virtual machine environment, vmgen, is also
> > included.")
> > (home-page "https://www.gnu.org/software/gforth/")
> > (license license:gpl3+)))
> > +
> > +(define-public colorforth
> > + (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
> > + (revision "1"))
> > + (package
> > + (name "colorforth")
> > + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> > + (source (origin
> > + (method git-fetch)
> > + (uri (git-reference
> > + (url "https://github.com/narke/colorForth")
> > + (commit commit)))
> > + (sha256
> > + (base32
> > + "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
> > + (arguments
> > + `(#:tests? #f
> > + #:phases
> > + (modify-phases %standard-phases
> > + (delete 'configure) ; no configure script
> > + (replace 'install ; There is no 'install
>
> Please change the comment to “no install target” or similar. “no
> 'install” is confusing because “'install” is a quoted symbol and that
> has no meaning outside of Scheme.
>
> > + (lambda _
> > + (install-file "cf2012.img"
> > + (string-append (assoc-ref %outputs "out")
> > + "/bin")))))))
>
> Please use “outputs” instead of “%outputs”. Is the target “bin”
> directory created during the build?
>
> Please also make the phase end with “#t”.
>
> > + (native-inputs
> > + `(("nasm" ,nasm)))
> > + (build-system gnu-build-system)
> > + (home-page "https://github.com/narke/colorForth")
> > + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> > + (description
> > + "Native colorForth for 32-bit PCs, at least compilable on Linux
> > + and runnable on both Bochs and Qemu. It is adapted from
> > + @url{http://sourceforge.net/projects/colorforth, colorforth}.
> > + The original colorforth is public domain software.")
>
> Please change the description. The first sentence fragment should be a
> full sentence. I don’t think “32-bit PCs” should be mentioned, nor
> should compatibility with Linux be mentioned (do they mean the kernel or
> GNU?). Also the last sentence should not be included.

Okay.

Toggle quote (3 lines)
> Could you write a description that describes the package, i.e. tells
> potential users why they would want to use it?

I will try, I'm not a colorforth user myself.

Toggle quote (12 lines)
> Looks like it’s written in x86 assembly. This would be worth mentioning
> (and I think that’s what “32-bit PCs” implied).
>
> Could you please send an updated patch?
>
> --
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
> https://elephly.net
>

N
20170415160053.qqqpga27hqsdhet3@abyayala
Version two of the patches attached.
--
From 56502e9a3b9b0cbb84322238233ad70a9057750e Mon Sep 17 00:00:00 2001
From: ng0 <ngillmann@runbox.com>
Date: Thu, 6 Oct 2016 22:08:31 +0000
Subject: [PATCH 1/2] gnu: Rename gforth module to forth.

* gnu/local.mk (GNU_SYSTEM_MODULES): Rename gforth.scm to forth.scm.
* gnu/packages/gforth.scm: Rename file to forth.scm.
* gnu/packages/forth.scm: Renamed from gforth.scm.
---
gnu/local.mk | 2 +-
gnu/packages/{gforth.scm => forth.scm} | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
rename gnu/packages/{gforth.scm => forth.scm} (98%)

Toggle diff (38 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 82e94171b..385e323aa 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -140,6 +140,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
+ %D%/packages/forth.scm \
%D%/packages/freedesktop.scm \
%D%/packages/freeipmi.scm \
%D%/packages/ftp.scm \
@@ -154,7 +155,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gdb.scm \
%D%/packages/geo.scm \
%D%/packages/gettext.scm \
- %D%/packages/gforth.scm \
%D%/packages/ghostscript.scm \
%D%/packages/gimp.scm \
%D%/packages/gkrellm.scm \
diff --git a/gnu/packages/gforth.scm b/gnu/packages/forth.scm
similarity index 98%
rename from gnu/packages/gforth.scm
rename to gnu/packages/forth.scm
index b2a67ce58..6d66faf5d 100644
--- a/gnu/packages/gforth.scm
+++ b/gnu/packages/forth.scm
@@ -17,7 +17,7 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
-(define-module (gnu packages gforth)
+(define-module (gnu packages forth)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
--
2.12.2
From 9c0221c7558b6d87124563fdc4fdde5c32a0374d Mon Sep 17 00:00:00 2001
From: ng0 <ngillmann@runbox.com>
Date: Thu, 6 Oct 2016 22:31:46 +0000
Subject: [PATCH 2/2] gnu: Add colorforth.

* gnu/packages/forth.scm (colorforth): New variable.
---
gnu/packages/forth.scm | 44 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 43 insertions(+), 1 deletion(-)

Toggle diff (67 lines)
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 6d66faf5d..42723b2a5 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -21,7 +21,9 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (gnu packages assembly)
#:use-module (gnu packages m4))
(define-public gforth
@@ -58,3 +60,43 @@ and history. A generic virtual machine environment, vmgen, is also
included.")
(home-page "https://www.gnu.org/software/gforth/")
(license license:gpl3+)))
+
+(define-public colorforth
+ (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
+ (revision "1"))
+ (package
+ (name "colorforth")
+ (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/narke/colorForth")
+ (commit commit)))
+ (sha256
+ (base32
+ "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
+ (arguments
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ;No configure script
+ (replace 'install ;No install target
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "cf2012.img"
+ (string-append (assoc-ref outputs "out")
+ "/bin"))
+ #t)))))
+ (native-inputs
+ `(("nasm" ,nasm)))
+ (build-system gnu-build-system)
+ (home-page "https://github.com/narke/colorForth")
+ (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
+ (description
+ "Colorforth is a @code{colorForth} implementation written in
+x86 assembly. It is a dialect of Forth that uses color to replace
+punctation, includes its own operating system and produces extremely
+compact programs. Applications compile from pre-parsed source.
+Colorforth applications can be run using @code{Bochs} and @code{Qemu}.
+It is adapted from @url{http://sourceforge.net/projects/colorforth,
+colorforth}.")
+ (license license:public-domain))))
--
2.12.2
R
R
Ricardo Wurmus wrote on 18 Jun 2017 12:59
(name . ng0)(address . contact.ng0@cryptolab.net)(address . 25728@debbugs.gnu.org)
87d1a17e94.fsf@elephly.net
ng0 <contact.ng0@cryptolab.net> writes:

Toggle quote (2 lines)
> Version two of the patches attached.
> --
[…]

Toggle quote (7 lines)
>>From 9c0221c7558b6d87124563fdc4fdde5c32a0374d Mon Sep 17 00:00:00 2001
> From: ng0 <ngillmann@runbox.com>
> Date: Thu, 6 Oct 2016 22:31:46 +0000
> Subject: [PATCH 2/2] gnu: Add colorforth.
>
> * gnu/packages/forth.scm (colorforth): New variable.
> ---
[…]
Toggle quote (18 lines)
> +
> +(define-public colorforth
> + (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
> + (revision "1"))
> + (package
> + (name "colorforth")
> + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/narke/colorForth")
> + (commit commit)))
> + (sha256
> + (base32
> + "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
> + (arguments
> + `(#:tests? #f

There should be a comment to explain why tests are disabled.

Toggle quote (10 lines)
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure) ;No configure script
> + (replace 'install ;No install target
> + (lambda* (#:key outputs #:allow-other-keys)
> + (install-file "cf2012.img"
> + (string-append (assoc-ref outputs "out")
> + "/bin"))
> + #t)))))

If I understood this correctly, this is not an executable. One is
supposed to run this with qemu. This means that it doesn’t belong in
“bin”.

Toggle quote (15 lines)
> + (native-inputs
> + `(("nasm" ,nasm)))
> + (build-system gnu-build-system)
> + (home-page "https://github.com/narke/colorForth")
> + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> + (description
> + "Colorforth is a @code{colorForth} implementation written in
> +x86 assembly. It is a dialect of Forth that uses color to replace
> +punctation, includes its own operating system and produces extremely
> +compact programs. Applications compile from pre-parsed source.
> +Colorforth applications can be run using @code{Bochs} and @code{Qemu}.
> +It is adapted from @url{http://sourceforge.net/projects/colorforth,
> +colorforth}.")
> + (license license:public-domain))))

I could not find a license statement anywhere in the repository. How do
you know it’s public domain software?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
N
(name . Ricardo Wurmus)(address . rekado@elephly.net)(address . 25728@debbugs.gnu.org)
20170618115947.jo22jym5bm6semng@abyayala
Ricardo Wurmus transcribed 2.5K bytes:
Toggle quote (49 lines)
>
> ng0 <contact.ng0@cryptolab.net> writes:
>
> > Version two of the patches attached.
> > --
> […]
>
> >>From 9c0221c7558b6d87124563fdc4fdde5c32a0374d Mon Sep 17 00:00:00 2001
> > From: ng0 <ngillmann@runbox.com>
> > Date: Thu, 6 Oct 2016 22:31:46 +0000
> > Subject: [PATCH 2/2] gnu: Add colorforth.
> >
> > * gnu/packages/forth.scm (colorforth): New variable.
> > ---
> […]
> > +
> > +(define-public colorforth
> > + (let ((commit "94aec438f1ded202681f18801b98c52dc3beee41")
> > + (revision "1"))
> > + (package
> > + (name "colorforth")
> > + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> > + (source (origin
> > + (method git-fetch)
> > + (uri (git-reference
> > + (url "https://github.com/narke/colorForth")
> > + (commit commit)))
> > + (sha256
> > + (base32
> > + "0s602k568bm6vmvpahsms77liicg38vksn59j5m8ax4h9l9ca77r"))))
> > + (arguments
> > + `(#:tests? #f
>
> There should be a comment to explain why tests are disabled.
>
> > + #:phases
> > + (modify-phases %standard-phases
> > + (delete 'configure) ;No configure script
> > + (replace 'install ;No install target
> > + (lambda* (#:key outputs #:allow-other-keys)
> > + (install-file "cf2012.img"
> > + (string-append (assoc-ref outputs "out")
> > + "/bin"))
> > + #t)))))
>
> If I understood this correctly, this is not an executable. One is
> supposed to run this with qemu. This means that it doesn’t belong in
> “bin”.

Could you propose a directory? I would pick 'share/colorforth/'.

Toggle quote (18 lines)
> > + (native-inputs
> > + `(("nasm" ,nasm)))
> > + (build-system gnu-build-system)
> > + (home-page "https://github.com/narke/colorForth")
> > + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> > + (description
> > + "Colorforth is a @code{colorForth} implementation written in
> > +x86 assembly. It is a dialect of Forth that uses color to replace
> > +punctation, includes its own operating system and produces extremely
> > +compact programs. Applications compile from pre-parsed source.
> > +Colorforth applications can be run using @code{Bochs} and @code{Qemu}.
> > +It is adapted from @url{http://sourceforge.net/projects/colorforth,
> > +colorforth}.")
> > + (license license:public-domain))))
>
> I could not find a license statement anywhere in the repository. How do
> you know it’s public domain software?

I think I assumed by the software it was based on.
Great, one of these github-style software productions.
Thanks, I'll ask the author to include a statement.

Toggle quote (7 lines)
> --
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
> https://elephly.net
>

--
ng0
OpenPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://krosos.org/~/ng0/https://www.infotropique.org
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAllGazMACgkQ4i+bv+40
hYhuNA//eCq4DSQc458mC8H25S09juFqRYiKnfC/cHQLVU2F+DTCfz2EupS7FzM2
PzfiheKcT8yqz9yrJ3qm09XKUpGt5Eu9Asq/JdDo5hRVOn3fQQXG5hqtoFvECmZ3
HRC7lXkbP0fXfiN4fdIVh8wOvTvB5o0UqLEmTA4CFVBp71H2rpXpAQHKLhSxxgW9
fy8PO2zEMRWohmFmp/eS3WW9tY3JBlL7dil+NrMX8YL4mxbx34KKul6NKrYdVR9R
cAb2FCISgVsvjHTUFvxTTLaSEka2Do2METJ2Wo8c6Q/0JxRJoVIIqMKnQ26DCIgz
mzmDxIjLWi9/ZDIzV7C9Oo9tTRu2NHNvDAEoBA3BIw42Db6lrpJgvU/EdbMwd5zr
dZ8A3YNigHX07MSYpFJ783VE0u+q5qYCS8bwkK/zZ/y+hxQh7vHW2duiJ/GmOcur
TkmBBllrhHz990Y0RuNwaCH/97OZWE6mjTJOyQFfeJ327Y3TyfDLL9Txr+OVY4ut
3FLAbebBZqb57QBMV/AF3voavfMeQmevSk/uSUKP/f84YLVWtTFSiE7+OyqnLEbW
rVuNwihX+IgYcsaN7gDUmW4swXia3W8X1qsBX/U7nRpU86yw7qoJU4w6QvG99/Sr
L6ZndzOIMF1VtIbBMV9hRdrpMwqs7rIl3K9Ml5NKVIK5s4EtjZc=
=e3DU
-----END PGP SIGNATURE-----


R
R
Ricardo Wurmus wrote on 18 Jun 2017 15:52
(name . ng0)(address . ng0@infotropique.org)(address . 25728@debbugs.gnu.org)
87shix4d40.fsf@elephly.net
ng0 <ng0@infotropique.org> writes:

Toggle quote (16 lines)
>> > + #:phases
>> > + (modify-phases %standard-phases
>> > + (delete 'configure) ;No configure script
>> > + (replace 'install ;No install target
>> > + (lambda* (#:key outputs #:allow-other-keys)
>> > + (install-file "cf2012.img"
>> > + (string-append (assoc-ref outputs "out")
>> > + "/bin"))
>> > + #t)))))
>>
>> If I understood this correctly, this is not an executable. One is
>> supposed to run this with qemu. This means that it doesn’t belong in
>> “bin”.
>
> Could you propose a directory? I would pick 'share/colorforth/'.

That sounds good to me. It’s a bit sad that there’s no executable.
Users (like myself) may not know how to actually run this without
a dive into the manual.

Toggle quote (9 lines)
>> > + (license license:public-domain))))
>>
>> I could not find a license statement anywhere in the repository. How do
>> you know it’s public domain software?
>
> I think I assumed by the software it was based on.
> Great, one of these github-style software productions.
> Thanks, I'll ask the author to include a statement.

Thank you.

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
N
(name . Ricardo Wurmus)(address . rekado@elephly.net)
20170628094810.nt4svpdksevrh5gr@abyayala
Ricardo Wurmus transcribed 1.3K bytes:
Toggle quote (32 lines)
>
> ng0 <ng0@infotropique.org> writes:
>
> >> > + #:phases
> >> > + (modify-phases %standard-phases
> >> > + (delete 'configure) ;No configure script
> >> > + (replace 'install ;No install target
> >> > + (lambda* (#:key outputs #:allow-other-keys)
> >> > + (install-file "cf2012.img"
> >> > + (string-append (assoc-ref outputs "out")
> >> > + "/bin"))
> >> > + #t)))))
> >>
> >> If I understood this correctly, this is not an executable. One is
> >> supposed to run this with qemu. This means that it doesn’t belong in
> >> “bin”.
> >
> > Could you propose a directory? I would pick 'share/colorforth/'.
>
> That sounds good to me. It’s a bit sad that there’s no executable.
> Users (like myself) may not know how to actually run this without
> a dive into the manual.
>
> >> > + (license license:public-domain))))
> >>
> >> I could not find a license statement anywhere in the repository. How do
> >> you know it’s public domain software?
> >
> > I think I assumed by the software it was based on.
> > Great, one of these github-style software productions.
> > Thanks, I'll ask the author to include a statement.

->->->
Date: Wed, 28 Jun 2017 04:16:23 -0400
From: Konstantin Tcholokachvili
To: ng0
Subject: Re: colorforth has no license statement

Hi,
It's the original colorForth, modified by some people to port it from MASM to NASM but I didn't modified anything, I just make it easy to build and test.
It's of course in public domain, I updated the README to make it much more clear.

Ask more questions if you desire.

Regards,

Sent with [ProtonMail](https://protonmail.com) Secure Email.
->->->

There's now a note in the readme that it is in the
public domain. If that is enough I will update the
patch and send an update.

Toggle quote (10 lines)
> Thank you.
>
> --
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
> https://elephly.net
>
>

--
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAllTe1oACgkQ4i+bv+40
hYiU8xAAqIqnNIWA4gRXy6KGR1lXS22IM3uhbpFb7muViYw+gtJbvst006b7FP5U
yk/z0sMcuc2DFQ0lLFQUF6M/zzuN4uF+Ism2piZr49qnQ7C96DchC5+XxzGE3yAW
NK3ONLy7zRDp1dWWkf+6W5yy+vgQesUILKl/BjDKymEh6i5Sc5x/dQHMC+p2nCKo
vXVEQij1d2AsdbnqaMIRvAcf7e7x0jowb1TdW6geBBq/kLWjwb47TnPZv/cKJLWQ
RthajX5Nbtjo6ft0e0iYJhu3gJHYjcsmJJxFxoUz1tAvkKh4OEik463LT+yLsLBE
+re8zLu69EqL60iL4E3dea+ytB35nfQoYoHucB+InhUKzqWQgHztCXDlhWwlEdGt
j1Ej/z+4z6xv0Yc9kAeNh4Taz0VfvicXjQ3/B08I+67cFIOnR/bhzE+F8oFQl3nl
aBnfQ8dms85qQEl/qlINEQhsYtjsJKuHa4l/enE+TyRP/iNrRIGwXkyqQwg12EWD
sotjtwAGoOQJk9i6z7keuFcsMZhkYpRVRaMMPTcqT6fZonc4eg1/eh3bNNzSrCAw
Preg90wj3NTpG//apL5HwX2GeP/iHgE8kz3Zpkqe5rIiIG+nsjTZf4wiwTc6YDQG
EknCCPAQorWaOEnwZQzDE3ng2UzHMopJLmZEG16ChgmWnCV1SWc=
=gNph
-----END PGP SIGNATURE-----


R
R
Ricardo Wurmus wrote on 17 Jul 2017 22:36
Re: [bug#25728] [PATCH 2/2] gnu: Add colorforth.
(name . ng0)(address . ng0@infotropique.org)(address . 25728@debbugs.gnu.org)
877ez6hkbk.fsf@elephly.net
ng0 <ng0@infotropique.org> writes:

[…]
Toggle quote (21 lines)
> ->->->
> Date: Wed, 28 Jun 2017 04:16:23 -0400
> From: Konstantin Tcholokachvili
> To: ng0
> Subject: Re: colorforth has no license statement
>
> Hi,
> It's the original colorForth, modified by some people to port it from MASM to NASM but I didn't modified anything, I just make it easy to build and test.
> It's of course in public domain, I updated the README to make it much more clear.
>
> Ask more questions if you desire.
>
> Regards,
>
> Sent with [ProtonMail](https://protonmail.com) Secure Email.
> ->->->
>
> There's now a note in the readme that it is in the
> public domain. If that is enough I will update the
> patch and send an update.

Thank you for asking for clarification on the license. In principle
it’s all good now and I was about to commit it when I tried to run it…

I updated to the latest commit to include the license notice and changed
the install directory to what we agreed on. Unfortunately, I cannot
actually run it.

Toggle snippet (26 lines)
[…]
@ build-succeeded /gnu/store/0rpv1wy7kvv24bq3d7zdmx355akgzjm3-colorforth-0.0.0-1.b518ff9.drv -
/gnu/store/n8zzma00m0hy2i688brixbfq33r6icxp-colorforth-0.0.0-1.b518ff9
rekado in guix [env]: qemu-system-i386 -boot a -fda /gnu/store/n8zzma00m0hy2i688brixbfq33r6icxp-colorforth-0.0.0-1.b518ff9/share/colorforth/cf2012.img
qemu-system-i386: -fda /gnu/store/n8zzma00m0hy2i688brixbfq33r6icxp-colorforth-0.0.0-1.b518ff9/share/colorforth/cf2012.img: Could not open '/gnu/store/n8zzma00m0hy2i688brixbfq33r6icxp-colorforth-0.0.0-1.b518ff9/share/colorforth/cf2012.img': Permission denied
rekado in guix [env]: cp /gnu/store/n8zzma00m0hy2i688brixbfq33r6icxp-colorforth-0.0.0-1.b518ff9/share/colorforth/cf2012.img .
rekado in guix [env]: qemu-system-i386 -boot a -fda cf2012.img
qemu-system-i386: -fda cf2012.img: Could not open 'cf2012.img': Permission denied
rekado in guix [env]: chmod +w cf2012.img
rekado in guix [env]: qemu-system-i386 -boot a -fda cf2012.img
WARNING: Image format was not specified for 'cf2012.img' and probing guessed raw.
Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.
Specify the 'raw' format explicitly to remove the restrictions.
qemu-system-i386: Trying to execute code outside RAM or ROM at 0x8998c426
This usually means one of the following happened:

(1) You told QEMU to execute a kernel for the wrong machine type, and it crashed on startup (eg trying to run a raspberry pi kernel on a versatilepb QEMU machine)
(2) You didn't give QEMU a kernel or BIOS filename at all, and QEMU executed a ROM full of no-op instructions until it fell off the end
(3) Your guest kernel has a bug and crashed by jumping off into nowhere

This is almost always one of the first two, so check your command line and that you are using the right type of kernel for this machine.
If you think option (3) is likely then you can try debugging your guest with the -d debug options; in particular -d guest_errors will cause the log to include a dump of the guest register state at this point.

Execution cannot continue; stopping here.

It won’t work when it’s in the store because we cannot write to the
store. Even after copying it out of the store and changing permissions
it would simply crash. This could be a problem with my Libreboot
machine, but the first problem is bad enough.

If the software cannot be used when it is installed to the store then I
don’t think it should be in the store at all. I think we should drop
this patch as the package is not actually usable.

What do you think?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
R
R
Ricardo Wurmus wrote on 17 Jul 2017 22:43
(name . ng0)(address . ng0@infotropique.org)(address . 25728@debbugs.gnu.org)
8760eqhk11.fsf@elephly.net
Ricardo Wurmus <rekado@elephly.net> writes:

Toggle quote (11 lines)
> It won’t work when it’s in the store because we cannot write to the
> store. Even after copying it out of the store and changing permissions
> it would simply crash. This could be a problem with my Libreboot
> machine, but the first problem is bad enough.
>
> If the software cannot be used when it is installed to the store then I
> don’t think it should be in the store at all. I think we should drop
> this patch as the package is not actually usable.
>
> What do you think?

The alternative is to also install a wrapper script to “bin” that
essentially does this:

#!/bin/sh
qemu-system-i386 -snapshot -boot a -fda $prefix/share/colorforth/cf2012.img

It still crashes for me but at least it doesn’t complain about store
permissions. If you can get this to run on your computer then please
send a final patch that incorporates all of these suggestions.
Otherwise I think it may not be worth spending more time on a toy
package like this.

What do you think?

--
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
R
R
Ricardo Wurmus wrote on 17 Jul 2017 22:46
(name . ng0)(address . ng0@infotropique.org)(address . 25728@debbugs.gnu.org)
874luahjw4.fsf@elephly.net
Ricardo Wurmus <rekado@elephly.net> writes:

Toggle quote (27 lines)
> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> It won’t work when it’s in the store because we cannot write to the
>> store. Even after copying it out of the store and changing permissions
>> it would simply crash. This could be a problem with my Libreboot
>> machine, but the first problem is bad enough.
>>
>> If the software cannot be used when it is installed to the store then I
>> don’t think it should be in the store at all. I think we should drop
>> this patch as the package is not actually usable.
>>
>> What do you think?
>
> The alternative is to also install a wrapper script to “bin” that
> essentially does this:
>
> #!/bin/sh
> qemu-system-i386 -snapshot -boot a -fda $prefix/share/colorforth/cf2012.img
>
> It still crashes for me but at least it doesn’t complain about store
> permissions. If you can get this to run on your computer then please
> send a final patch that incorporates all of these suggestions.
> Otherwise I think it may not be worth spending more time on a toy
> package like this.
>
> What do you think?

FWIW here’s the latest version of the diff:

Toggle snippet (67 lines)
diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
index 6d66faf5d..4ab8f20a9 100644
--- a/gnu/packages/forth.scm
+++ b/gnu/packages/forth.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
+;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -21,7 +21,9 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (gnu packages assembly)
#:use-module (gnu packages m4))
(define-public gforth
@@ -58,3 +60,42 @@ and history. A generic virtual machine environment, vmgen, is also
included.")
(home-page "https://www.gnu.org/software/gforth/")
(license license:gpl3+)))
+
+(define-public colorforth
+ (let ((commit "b518ff966955f0b196e7bb8f85337284fa23e29e")
+ (revision "1"))
+ (package
+ (name "colorforth")
+ (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/narke/colorForth.git")
+ (commit commit)))
+ (sha256
+ (base32
+ "1q5szb9yi3nspbvnq0js6w24sb936ahjk828il760p0xpj5dsl45"))))
+ (arguments
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; No configure script
+ (replace 'install ; No install target
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "cf2012.img"
+ (string-append (assoc-ref outputs "out")
+ "/share/colorforth/"))
+ #t)))))
+ (native-inputs
+ `(("nasm" ,nasm)))
+ (build-system gnu-build-system)
+ (home-page "https://github.com/narke/colorForth")
+ (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
+ (description
+ "Colorforth is a @code{colorForth} implementation written in x86
+assembly. It is a dialect of Forth that uses color to replace punctation,
+includes its own operating system and produces extremely compact programs.
+Applications compile from pre-parsed source. Colorforth applications can be
+run using @code{Bochs} and @code{Qemu}. It is adapted from
+@url{http://sourceforge.net/projects/colorforth, colorforth}.")
+ (license license:public-domain))))


--
Ricardo
GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
N
(name . Ricardo Wurmus)(address . rekado@elephly.net)
20170717215847.kkv6iwetj5i5uh3v@abyayala
Hi Ricardo,

I myself am running Coreboot and libreboot, but I have Vendor BIOS
machines I can test on aswell.

Thanks for your testing and notes. I will try this as soon as I have
time and get back to you with results.

Ricardo Wurmus transcribed 4.0K bytes:
Toggle quote (108 lines)
>
> Ricardo Wurmus <rekado@elephly.net> writes:
>
> > Ricardo Wurmus <rekado@elephly.net> writes:
> >
> >> It won’t work when it’s in the store because we cannot write to the
> >> store. Even after copying it out of the store and changing permissions
> >> it would simply crash. This could be a problem with my Libreboot
> >> machine, but the first problem is bad enough.
> >>
> >> If the software cannot be used when it is installed to the store then I
> >> don’t think it should be in the store at all. I think we should drop
> >> this patch as the package is not actually usable.
> >>
> >> What do you think?
> >
> > The alternative is to also install a wrapper script to “bin” that
> > essentially does this:
> >
> > #!/bin/sh
> > qemu-system-i386 -snapshot -boot a -fda $prefix/share/colorforth/cf2012.img
> >
> > It still crashes for me but at least it doesn’t complain about store
> > permissions. If you can get this to run on your computer then please
> > send a final patch that incorporates all of these suggestions.
> > Otherwise I think it may not be worth spending more time on a toy
> > package like this.
> >
> > What do you think?
>
> FWIW here’s the latest version of the diff:
>
> --8<---------------cut here---------------start------------->8---
> diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
> index 6d66faf5d..4ab8f20a9 100644
> --- a/gnu/packages/forth.scm
> +++ b/gnu/packages/forth.scm
> @@ -1,5 +1,5 @@
> ;;; GNU Guix --- Functional package management for GNU
> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
> +;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
> ;;;
> ;;; This file is part of GNU Guix.
> @@ -21,7 +21,9 @@
> #:use-module ((guix licenses) #:prefix license:)
> #:use-module (guix packages)
> #:use-module (guix download)
> + #:use-module (guix git-download)
> #:use-module (guix build-system gnu)
> + #:use-module (gnu packages assembly)
> #:use-module (gnu packages m4))
>
> (define-public gforth
> @@ -58,3 +60,42 @@ and history. A generic virtual machine environment, vmgen, is also
> included.")
> (home-page "https://www.gnu.org/software/gforth/")
> (license license:gpl3+)))
> +
> +(define-public colorforth
> + (let ((commit "b518ff966955f0b196e7bb8f85337284fa23e29e")
> + (revision "1"))
> + (package
> + (name "colorforth")
> + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/narke/colorForth.git")
> + (commit commit)))
> + (sha256
> + (base32
> + "1q5szb9yi3nspbvnq0js6w24sb936ahjk828il760p0xpj5dsl45"))))
> + (arguments
> + `(#:tests? #f
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure) ; No configure script
> + (replace 'install ; No install target
> + (lambda* (#:key outputs #:allow-other-keys)
> + (install-file "cf2012.img"
> + (string-append (assoc-ref outputs "out")
> + "/share/colorforth/"))
> + #t)))))
> + (native-inputs
> + `(("nasm" ,nasm)))
> + (build-system gnu-build-system)
> + (home-page "https://github.com/narke/colorForth")
> + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> + (description
> + "Colorforth is a @code{colorForth} implementation written in x86
> +assembly. It is a dialect of Forth that uses color to replace punctation,
> +includes its own operating system and produces extremely compact programs.
> +Applications compile from pre-parsed source. Colorforth applications can be
> +run using @code{Bochs} and @code{Qemu}. It is adapted from
> +@url{http://sourceforge.net/projects/colorforth, colorforth}.")
> + (license license:public-domain))))
> --8<---------------cut here---------------end--------------->8---
>
>
> --
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
> https://elephly.net
>
>

--
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlltMxcACgkQ4i+bv+40
hYgAoA/+Ih7dMQ+8KTx5/98mhS6dQj9ECDdK4bMftTNGr7Gkc8VZAe8MHK8GKDSX
VbbE+ZKgVwhV2Nm373OjqPdyMVopYNsGkpeJjs3B7ohUpcfqSC4byvuhWwaAxzMF
u8uXBYS/lPq/BPPSpRk4HMkWltt5FZmkSd2xetKn85MqH4OCL+ogC58B4vTqyUDj
eQ3jYa9OXusKCfP4xRqkdelDju1kJgttB7Vh54UwxZOqrxW/reADW4xrgj8XnPiG
jJaZXL6i2q8MylK2THmmch/CzuTKAknrr0h88k+00+ZcoS687SoJOapuCfNe1h0g
HS4cUfnSlXA2tl6b5Ok4tGz99IDQWehvEd7vZ9JDg6iMIOk1mXRjet15WGWK9sRk
c/obau8NGhBY+wHSfYQwtSCP11T6RmCN6F+QubBjEkIjQCN6pCGZwTngHmAGntd+
f79K1V2lRbX2SCnymxOXINpkHnvzDmPAMoDYuh659eEgs/X56RKk4s+txgjbYEk8
SCP0h1GiiVQu2Dwo+psGdYlN6qeYRxbpoTPoZRZeLEQ+HLHcQvXArH67rwwmfT8j
OHYzKQQLwb1cmXU/nmskQjADqmz6GW8lAUufbxODOUhvajU0HqoWg4oERo/kki0r
3I7bvwLcZ0kT0V53Epn+M7VFxhnjQSPJRfkfCZ3JLRRJvsCC6oE=
=TmQb
-----END PGP SIGNATURE-----


N
(name . Ricardo Wurmus)(address . rekado@elephly.net)
20170723083546.zmq3ypz7nttsdnko@abyayala
Ricardo Wurmus transcribed 4.0K bytes:
Toggle quote (14 lines)
>
> Ricardo Wurmus <rekado@elephly.net> writes:
>
> > Ricardo Wurmus <rekado@elephly.net> writes:
> >
> >> It won’t work when it’s in the store because we cannot write to the
> >> store. Even after copying it out of the store and changing permissions
> >> it would simply crash. This could be a problem with my Libreboot
> >> machine, but the first problem is bad enough.
> >>
> >> If the software cannot be used when it is installed to the store then I
> >> don’t think it should be in the store at all. I think we should drop
> >> this patch as the package is not actually usable.

I can confirm the crashes on coreboot.
Last October (patch date) is a while back so I can't be sure if
my memory of colorforth working on vendor BIOS is correct.

Toggle quote (2 lines)
> >> What do you think?

I have another theory: We both don't know how this is supposed
to be used and the example on the github page is not helping.

I CC'd the author of the software. Konstantin, do you know if we are doing anything
obviously wrong in what we've tried in this bug/qa thread?

Toggle quote (92 lines)
> > The alternative is to also install a wrapper script to “bin” that
> > essentially does this:
> >
> > #!/bin/sh
> > qemu-system-i386 -snapshot -boot a -fda $prefix/share/colorforth/cf2012.img
> >
> > It still crashes for me but at least it doesn’t complain about store
> > permissions. If you can get this to run on your computer then please
> > send a final patch that incorporates all of these suggestions.
> > Otherwise I think it may not be worth spending more time on a toy
> > package like this.
> >
> > What do you think?
>
> FWIW here’s the latest version of the diff:
>
> --8<---------------cut here---------------start------------->8---
> diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
> index 6d66faf5d..4ab8f20a9 100644
> --- a/gnu/packages/forth.scm
> +++ b/gnu/packages/forth.scm
> @@ -1,5 +1,5 @@
> ;;; GNU Guix --- Functional package management for GNU
> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
> +;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
> ;;;
> ;;; This file is part of GNU Guix.
> @@ -21,7 +21,9 @@
> #:use-module ((guix licenses) #:prefix license:)
> #:use-module (guix packages)
> #:use-module (guix download)
> + #:use-module (guix git-download)
> #:use-module (guix build-system gnu)
> + #:use-module (gnu packages assembly)
> #:use-module (gnu packages m4))
>
> (define-public gforth
> @@ -58,3 +60,42 @@ and history. A generic virtual machine environment, vmgen, is also
> included.")
> (home-page "https://www.gnu.org/software/gforth/")
> (license license:gpl3+)))
> +
> +(define-public colorforth
> + (let ((commit "b518ff966955f0b196e7bb8f85337284fa23e29e")
> + (revision "1"))
> + (package
> + (name "colorforth")
> + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/narke/colorForth.git")
> + (commit commit)))
> + (sha256
> + (base32
> + "1q5szb9yi3nspbvnq0js6w24sb936ahjk828il760p0xpj5dsl45"))))
> + (arguments
> + `(#:tests? #f
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure) ; No configure script
> + (replace 'install ; No install target
> + (lambda* (#:key outputs #:allow-other-keys)
> + (install-file "cf2012.img"
> + (string-append (assoc-ref outputs "out")
> + "/share/colorforth/"))
> + #t)))))
> + (native-inputs
> + `(("nasm" ,nasm)))
> + (build-system gnu-build-system)
> + (home-page "https://github.com/narke/colorForth")
> + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
> + (description
> + "Colorforth is a @code{colorForth} implementation written in x86
> +assembly. It is a dialect of Forth that uses color to replace punctation,
> +includes its own operating system and produces extremely compact programs.
> +Applications compile from pre-parsed source. Colorforth applications can be
> +run using @code{Bochs} and @code{Qemu}. It is adapted from
> +@url{http://sourceforge.net/projects/colorforth, colorforth}.")
> + (license license:public-domain))))
> --8<---------------cut here---------------end--------------->8---
>
>
> --
> Ricardo
>
> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
> https://elephly.net
>
>

--
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAll0X+IACgkQ4i+bv+40
hYi8Hg/+Pg73ZA/o1Vfw2cHU9xWiI0E68zVaHYUh7G6MUBfUpOEzsueWqQvvc+Dn
KxYfG04WononZ5+qtYJio2B2/9Z7b5D5ho946x2o0rjETriXGbck/3MtC9xYvlYo
eQ8BmlZ1nzoS0zLaYCj4v+MzMv5OhiuOxREn2WsAymkMX9n2h6yd7HpFz8+TmG6Q
1IG1DTVQ9300fkuxkX+NAHW+ZhQ+R/26PMdloga73xtxOhIiwecvar3WaYBeV9Cp
5gZmVdyf9GBRKArATTFB6/FaUO4lbkYS+i+IKDoDfxNQdO+lJb8OsPHTPt/NhZa1
pWWxB2UNtJpUlmCSKEP8lphaH12WLCFCzz3o8gZn46jkyTAYX1Aiy3g82oWXNkmU
9kNF4RJXdKn8p0h44xU7kgv/8zE2MbOOA/YnpRVum4a7qywbiPe2WG0Cmx2afkhK
m3GDa5EDlXdQu2LnIrafJ6TIOEhM5nMJMwBwXCPXbnbR6/9frKOXpMcqvKtQ26Ek
rT5srJ3NwKROBRJXQusTu87iIN/3G6WiTfTF4Ce/ejKu6dxbtuWedwmqVC+Y+7JP
Zb5lyn3FsYSrYaV+U17HtFpJiMGSmKv9YO0aQBmwA3rh9O5PvIjLLsseoGRDsH8B
BzCSAfw6Z1LGpGwsZUCMzyfyyVQH69qkHinn1wIiEQ8ucTaNvg4=
=3gz+
-----END PGP SIGNATURE-----


K
K
Konstantin Tcholokachvili wrote on 10 Aug 2017 10:04
(name . ng0)(address . ng0@infotropique.org)
H63DHjGEltXtEJUe9NJl7P83ndT4auRm6v9aQYgOpCKoAOLScHGOJYMblofQ4_z9WOQoQiMF6bLOV9Ihd5_7hdLWD7-_BdBgBZu46G7G4Xg=@protonmail.com
Hi ng0,

I've been on holidays and I didn't checked my emails.
Sadly, in fact there is a regression with qemu version 2.6 onwards, I filed a bug report to qemu team but they didn't investigated yet. For the moment the only solution is to:
1. Use older qemu ;
2. Usse Bochs.

This issue was reported here: https://github.com/narke/colorForth/issues/2

I'm also writing another implementation of colorForth in C but it's not finished yet.

Regards.

Sent with [ProtonMail](https://protonmail.com) Secure Email.

Toggle quote (132 lines)
> -------- Original Message --------
> Subject: Re: [bug#25728] [PATCH 2/2] gnu: Add colorforth.
> Local Time: July 23, 2017 10:35 AM
> UTC Time: July 23, 2017 8:35 AM
> From: ng0@infotropique.org
> To: Ricardo Wurmus <rekado@elephly.net>
> ng0 <ng0@infotropique.org>, 25728@debbugs.gnu.org, Konstantin Tcholokachvili <konstantin.tcholokachvili@protonmail.com>
>
> Ricardo Wurmus transcribed 4.0K bytes:
>>
>> Ricardo Wurmus <rekado@elephly.net> writes:
>>
>> > Ricardo Wurmus <rekado@elephly.net> writes:
>> >
>> >> It won’t work when it’s in the store because we cannot write to the
>> >> store. Even after copying it out of the store and changing permissions
>> >> it would simply crash. This could be a problem with my Libreboot
>> >> machine, but the first problem is bad enough.
>> >>
>> >> If the software cannot be used when it is installed to the store then I
>> >> don’t think it should be in the store at all. I think we should drop
>> >> this patch as the package is not actually usable.
>
> I can confirm the crashes on coreboot.
> Last October (patch date) is a while back so I can"t be sure if
> my memory of colorforth working on vendor BIOS is correct.
>
>> >> What do you think?
>
> I have another theory: We both don"t know how this is supposed
> to be used and the example on the github page is not helping.
>
> I CC"d the author of the software. Konstantin, do you know if we are doing anything
> obviously wrong in what we"ve tried in this bug/qa thread?
>
>> > The alternative is to also install a wrapper script to “bin” that
>> > essentially does this:
>> >
>> > #!/bin/sh
>> > qemu-system-i386 -snapshot -boot a -fda $prefix/share/colorforth/cf2012.img
>> >
>> > It still crashes for me but at least it doesn’t complain about store
>> > permissions. If you can get this to run on your computer then please
>> > send a final patch that incorporates all of these suggestions.
>> > Otherwise I think it may not be worth spending more time on a toy
>> > package like this.
>> >
>> > What do you think?
>>
>> FWIW here’s the latest version of the diff:
>>
>> --8<---------------cut here---------------start------------->8---
>> diff --git a/gnu/packages/forth.scm b/gnu/packages/forth.scm
>> index 6d66faf5d..4ab8f20a9 100644
>> --- a/gnu/packages/forth.scm
>> +++ b/gnu/packages/forth.scm
>> @@ -1,5 +1,5 @@
>> ;;; GNU Guix --- Functional package management for GNU
>> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
>> +;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
>> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
>> ;;;
>> ;;; This file is part of GNU Guix.
>> @@ -21,7 +21,9 @@
>> #:use-module ((guix licenses) #:prefix license:)
>> #:use-module (guix packages)
>> #:use-module (guix download)
>> + #:use-module (guix git-download)
>> #:use-module (guix build-system gnu)
>> + #:use-module (gnu packages assembly)
>> #:use-module (gnu packages m4))
>>
>> (define-public gforth
>> @@ -58,3 +60,42 @@ and history. A generic virtual machine environment, vmgen, is also
>> included.")
>> (home-page "https://www.gnu.org/software/gforth/")
>> (license license:gpl3+)))
>> +
>> +(define-public colorforth
>> + (let ((commit "b518ff966955f0b196e7bb8f85337284fa23e29e")
>> + (revision "1"))
>> + (package
>> + (name "colorforth")
>> + (version (string-append "0.0.0-" revision "." (string-take commit 7)))
>> + (source (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://github.com/narke/colorForth.git")
>> + (commit commit)))
>> + (sha256
>> + (base32
>> + "1q5szb9yi3nspbvnq0js6w24sb936ahjk828il760p0xpj5dsl45"))))
>> + (arguments
>> + `(#:tests? #f
>> + #:phases
>> + (modify-phases %standard-phases
>> + (delete "configure) ; No configure script
>> + (replace "install ; No install target
>> + (lambda* (#:key outputs #:allow-other-keys)
>> + (install-file "cf2012.img"
>> + (string-append (assoc-ref outputs "out")
>> + "/share/colorforth/"))
>> + #t)))))
>> + (native-inputs
>> + `(("nasm" ,nasm)))
>> + (build-system gnu-build-system)
>> + (home-page "https://github.com/narke/colorForth")
>> + (synopsis "Native 32-bit colorForth for PCs, Bochs and Qemu")
>> + (description
>> + "Colorforth is a @code{colorForth} implementation written in x86
>> +assembly. It is a dialect of Forth that uses color to replace punctation,
>> +includes its own operating system and produces extremely compact programs.
>> +Applications compile from pre-parsed source. Colorforth applications can be
>> +run using @code{Bochs} and @code{Qemu}. It is adapted from
>> +@url{http://sourceforge.net/projects/colorforth, colorforth}.")
>> + (license license:public-domain))))
>> --8<---------------cut here---------------end--------------->8---
>>
>>
>> --
>> Ricardo
>>
>> GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC
>> https://elephly.net
>>
>>
>
> --
> ng0
> GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
> GnuPG: https://n0is.noblogs.org/my-keys
> https://www.infotropique.org https://krosos.org
Attachment: file
N
(name . Konstantin Tcholokachvili)(address . konstantin.tcholokachvili@protonmail.com)
20171010131358.mx5cbnbeuvydgwiu@abyayala
Konstantin Tcholokachvili transcribed 18K bytes:
Toggle quote (15 lines)
> Hi ng0,
>
> I've been on holidays and I didn't checked my emails.
> Sadly, in fact there is a regression with qemu version 2.6 onwards, I filed a bug report to qemu team but they didn't investigated yet. For the moment the only solution is to:
> 1. Use older qemu ;
> 2. Usse Bochs.
>
> This issue was reported here: https://github.com/narke/colorForth/issues/2
>
> I'm also writing another implementation of colorForth in C but it's not finished yet.
>
> Regards.
>
> Sent with [ProtonMail](https://protonmail.com) Secure Email.

Hi Konstantin,

thanks for filing a bug with upstream.
I'll consider sending colorForth in C for QA when it's ready,
for now I agree with Ricardos action to close this report.

I had other things on my mind, thanks for your patience.
--
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://www.infotropique.orghttps://ng0.infotropique.org
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlncx5YACgkQ4i+bv+40
hYipDg//Rtw2iwogE8p+xkswAERHwLTvxnhiH1wfWFyC1ojFgaZITL/2VeXyDkh8
gh2XWK8ByLQxpyxGbT4GMoWUiy1o1lOwHXRDGU7JcUQmF/nijY8AC7g8HI6dUnkt
IBuKs7D8Tk3c0keSqEEyQu5GPqvQ1jUwT+azZ6cvxD6dBbyFS+YcVgqcmOu36E6v
fwxs6OzvL+8f7TvVOzn2J0/zkLMscU6bH+JpATZwUcbbWv0m4GBidFFq9Yok+GY1
7lr/GMlOQ6764WwGGWMRohIUKi4bS+sZ/haA7NZ8d1s8Yyl06YaexHn51VSHPlR2
iUWHo/OhNwk5i7iVqTkymn36QcKh9c+HcPvnMIic+Wp7lbPEDEuU2k3aiP3y/y4y
Zxzj7Q9kxyux8Z2js93Sz4X42qF4UviT1mzHAZP7pk1b6A+ofrvyXW2rXBX6wCfG
P0WZPf/fTj7uwpTAqz0yMBTuFGjcDwHaTrntgEIaYCR8jfStKEnu5bbHC5BjEeFm
c8uN6CsnDJwu55hI0kz1d7K616xMQnwU/miy6dinIWJhiq8dgb5CTIoYDWYMVSas
DMQqG9TwY0IQmDYfbt5Q+BWjfVPv+iAXG8t8Y2qZmkMHz/JVD4HU0GBZMS5awepD
MdekW8QDdrjX5SEu4yG8QClWuiAxaxPb9p01A4V2NusHFUUkD3s=
=CVbS
-----END PGP SIGNATURE-----


N
(address . 25728-done@debbugs.gnu.org)
20171011104550.dc7zn5at4a4wtnm7@abyayala
It seems like I re-opened this. Closing.
ng0 transcribed 2.0K bytes:
Toggle quote (31 lines)
> Konstantin Tcholokachvili transcribed 18K bytes:
> > Hi ng0,
> >
> > I've been on holidays and I didn't checked my emails.
> > Sadly, in fact there is a regression with qemu version 2.6 onwards, I filed a bug report to qemu team but they didn't investigated yet. For the moment the only solution is to:
> > 1. Use older qemu ;
> > 2. Usse Bochs.
> >
> > This issue was reported here: https://github.com/narke/colorForth/issues/2
> >
> > I'm also writing another implementation of colorForth in C but it's not finished yet.
> >
> > Regards.
> >
> > Sent with [ProtonMail](https://protonmail.com) Secure Email.
>
> Hi Konstantin,
>
> thanks for filing a bug with upstream.
> I'll consider sending colorForth in C for QA when it's ready,
> for now I agree with Ricardos action to close this report.
>
> I had other things on my mind, thanks for your patience.
> --
> ng0
> GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
> GnuPG: https://dist.ng0.infotropique.org/dist/keys/
> https://www.infotropique.org https://ng0.infotropique.org



--
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://www.infotropique.orghttps://ng0.infotropique.org
Closed
?