>From 9c0221c7558b6d87124563fdc4fdde5c32a0374d Mon Sep 17 00:00:00 2001 From: ng0 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(-) 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 +;;; Copyright © 2016, 2017 ng0 ;;; Copyright © 2016 Sou Bunnbu ;;; ;;; 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