Subject: bug#30286: closed (Re: [bug#30286] [PATCH] gnu: Add culmus.)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 13 Feb 2018 19:45:02 +0000

Your bug report

#30286: [PATCH] gnu: Add culmus.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
30286: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=30286
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#30286] [PATCH] gnu: Add culmus.
From: Efraim Flashner <[email-masked]>
To: [email-masked]
Date: Tue, 13 Feb 2018 21:44:28 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

On Tue, Jan 30, 2018 at 05:45:47PM -0500, Leo Famulari wrote:
> On Tue, Jan 30, 2018 at 09:07:38AM +0200, Efraim Flashner wrote:
> > On Mon, Jan 29, 2018 at 04:49:20PM -0500, Leo Famulari wrote:
> > > On Mon, Jan 29, 2018 at 08:58:42PM +0200, Efraim Flashner wrote:
> > > > * gnu/packages/fonts.scm (culmus): New variable.
> > > 
> > > Cool! Is this our first Hebrew font?
> > > 
> > > > +    (build-system gnu-build-system)
> > > 
> > > Just wondering, did you try the font-build-system? No big deal either
> > > way.
> > 
> > I checked guix/build/font-build-system, it seemed to untar the tarball
> > and extract only the font files. Culmus offers two tarballs, one
> > "regular" one with just fonts in it (ttf,otf,afm,pfa), and the other one
> > with just spd files in it to be processed with fontforge. I suppose I
> > could have started with the font-build-system and modified it, but I
> > using the font-linuxlibertine package as a model, and it uses the gnu
> > build system as a base.
> 
> Ah, makes sense. Thanks for this package :)
> 
> > I should probably rewrite the description to remove the reference to the
> > Type1 fonts, they're included by default in the precompiled font tarball
> > but not built with the one I wrote.
> 
> Sounds good!

Merged

-- 
Efraim Flashner   <[email-masked]>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Subject: [PATCH] gnu: Add culmus.
From: Efraim Flashner <[email-masked]>
To: [email-masked]
Cc: Efraim Flashner <[email-masked]>
Date: Mon, 29 Jan 2018 20:58:42 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/fonts.scm (culmus): New variable.
---
 gnu/packages/fonts.scm | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index ccf05fec2..4933a469f 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -1199,3 +1199,71 @@ that's clean and modern, and can express a wide range of voices & feelings.
 It comes in 7 incremental weights:
 ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold")
     (license license:silofl1.1)))
+
+(define-public culmus
+  (package
+    (name "culmus")
+    (version "0.132")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://sourceforge.net/projects/"
+                            "culmus/files/culmus/" version "/culmus-src-"
+                            version ".tar.gz"))
+        (sha256
+         (base32
+          "1djxalm26r7bcq33ckmfa15xfs6pmqzvcl64d5lqa1dl01bl4j4z"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no tests
+       #:modules ((guix build utils)
+                  (guix build gnu-build-system)
+                  (srfi srfi-1)
+                  (srfi srfi-26))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda _
+             (let ((compile
+                    (lambda (name ext)
+                      (zero? (system*
+                              "fontforge" "-lang=ff"
+                              "-c" (string-append "Open('" name "');"
+                                                  "Generate('"
+                                                  (basename name "sfd") ext
+                                                  "')"))))))
+               ;; This part based on the fonts shipped in the non-source package.
+               (every (lambda (name)
+                        (compile name "ttf"))
+                      (find-files "." "^[^Nachlieli].*\\.sfd$"))
+               (every (lambda (name)
+                        (compile name "otf"))
+                      (find-files "." "^Nachlieli.*\\.sfd$"))
+               #t)))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out     (assoc-ref %outputs "out"))
+                    (ttf     (string-append out "/share/fonts/truetype"))
+                    (otf     (string-append out "/share/fonts/opentype"))
+                    (license (string-append out "/share/doc/" ,name)))
+               (for-each (lambda (file)
+                           (install-file file ttf))
+                         (find-files "." "\\.ttf$"))
+               (for-each (lambda (file)
+                           (install-file file otf))
+                         (find-files "." "\\.otf$"))
+               (for-each (lambda (file)
+                           (install-file file license))
+                         '("GNU-GPL" "LICENSE" "LICENSE-BITSTREAM"))
+               #t))))))
+    (native-inputs
+     `(("fontforge" ,fontforge)))
+    (home-page "http://culmus.sourceforge.net/")
+    (synopsis "TrueType and Type1 Hebrew Fonts for X11")
+    (description "14 Hebrew trivial families. Contain ASCII glyphs from various
+sources.  Those families provide a basic set of a serif (Frank Ruehl), sans
+serif (Nachlieli) and monospaced (Miriam Mono) trivials.  Also included Miriam,
+Drugulin, Aharoni, David, Hadasim etc.  Cantillation marks support is
+available in Keter YG.")
+    (license license:gpl2))) ; consult the LICENSE file included
-- 
2.16.1