>From 57265b8363add56ea0ea2f35310c39db7e2b14ed Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus <rek...@elephly.net> Date: Fri, 17 Jul 2015 08:46:44 +0200 Subject: [PATCH 1/2] gnu: Add NTK.
* gnu/packages/fltk.scm (ntk): New variable. --- gnu/packages/fltk.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm index 7a41460..7424255 100644 --- a/gnu/packages/fltk.scm +++ b/gnu/packages/fltk.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington <j...@gnu.org> ;;; Copyright © 2015 Eric Bavier <bav...@member.fsf.org> +;;; Copyright © 2015 Ricardo Wurmus <rek...@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,9 +25,14 @@ #:use-module (gnu packages image) #:use-module (gnu packages xorg) #:use-module (gnu packages gl) + #:use-module (gnu packages gtk) ;for "cairo" + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system gnu)) + #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (guix build-system waf)) (define-public fltk (package @@ -83,3 +89,48 @@ emulation. FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes.") (license lgpl2.0))) ; plus certain additional permissions + +(define-public ntk + (package + (name "ntk") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.tuxfamily.org/gitroot/non/fltk.git") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0ggrh6rihf676z1vfgpgcl6kpqwyh39ih0hskcgzklh7fphfik39")) + (file-name (string-append name "-" version "-checkout")))) + (build-system waf-build-system) + (arguments + `(#:tests? #f ;no "check" target + #:python ,python-2 + #:configure-flags '("--enable-gl") + #:phases + (modify-phases %standard-phases + (add-before + 'configure 'set-ldflags + (lambda* (#:key outputs #:allow-other-keys) + (setenv "LDFLAGS" + (string-append "-Wl,-rpath=" + (assoc-ref outputs "out") "/lib"))))))) + (inputs + `(("libjpeg" ,libjpeg) + ("glu" ,glu))) + ;; ntk.pc lists "x11" and "xft" in Requires.private, and "cairo" in + ;; Requires. + (propagated-inputs + `(("cairo" ,cairo) + ("libxft" ,libxft) + ("libx11" ,libx11))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://non.tuxfamily.org/ntk/") + (synopsis "Fork of FLTK with graphics rendering via Cairo") + (description "The Non Tool Kit (NTK) is a fork of the Fast Light ToolKit +library, adding improved graphics rendering via Cairo, a streamlined and +enhanced widget set, and other features designed to improve the appearance and +performance of the Non applications.") + (license lgpl2.0))) -- 2.4.3
>From f748fa7439382672a5951beee6d00fd0f6e80221 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus <rek...@elephly.net> Date: Fri, 17 Jul 2015 08:47:54 +0200 Subject: [PATCH 2/2] gnu: Add Non Sequencer. * gnu/packages/music.scm (non-sequencer): New variable. --- gnu/packages/music.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 13ddd8b..6d5ab41 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -20,9 +20,11 @@ #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system waf) #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages base) ;libbdf @@ -33,12 +35,14 @@ #:use-module (gnu packages compression) #:use-module (gnu packages docbook) #:use-module (gnu packages flex) + #:use-module (gnu packages fltk) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) + #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) @@ -192,6 +196,44 @@ interpreted by LilyPond to produce the final document. It is extendable with Guile.") (license license:gpl3+))) +(define-public non-sequencer + ;; The latest tagged release is three years old and uses a custom build + ;; system, so we take the last commit affecting the "sequencer" directory. + (let ((commit "1d9bd576")) + (package + (name "non-sequencer") + (version (string-append "1.9.5-" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.tuxfamily.org/gitroot/non/non.git") + (commit commit))) + (sha256 + (base32 + "0pkkw8q6d55j38xm7r4rwpdv1wy00a44h8c4wrn7vbgpq9nij46y")) + (file-name (string-append name "-" version "-checkout")))) + (build-system waf-build-system) + (arguments + `(#:tests? #f ;no "check" target + #:configure-flags '("--project=sequencer") + #:python ,python-2)) + (inputs + `(("jack" ,jack-1) + ("libsigc++" ,libsigc++) + ("liblo" ,liblo) + ("ntk" ,ntk))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://non.tuxfamily.org/wiki/Non%20Sequencer") + (synopsis "Pattern-based MIDI sequencer") + (description + "The Non Sequencer is a powerful, lightweight, real-time, +pattern-based MIDI sequencer. It utilizes the JACK Audio Connection Kit for +MIDI I/O and the NTK GUI toolkit for its user interface. Everything in Non +Sequencer happens on-line, in real-time. Music can be composed live, while the +transport is rolling.") + (license license:gpl2+)))) + (define-public solfege (package (name "solfege") -- 2.4.3