Skip to content
Snippets Groups Projects
rc.scm 2.75 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jeff Mickey's avatar
    Jeff Mickey committed
    ;;; GNU Guix --- Functional package management for GNU
    ;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
    ;;;
    ;;; This file is part of GNU Guix.
    ;;;
    ;;; GNU Guix is free software; you can redistribute it and/or modify it
    ;;; under the terms of the GNU General Public License as published by
    ;;; the Free Software Foundation; either version 3 of the License, or (at
    ;;; your option) any later version.
    ;;;
    ;;; GNU Guix is distributed in the hope that it will be useful, but
    ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
    ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    ;;; GNU General Public License for more details.
    ;;;
    ;;; 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 rc)
      #:use-module (gnu packages autotools)
      #:use-module (gnu packages perl)
      #:use-module (gnu packages pkg-config)
      #:use-module (gnu packages readline)
      #:use-module (guix build-system gnu)
      #:use-module (guix git-download)
      #:use-module (guix licenses)
      #:use-module (guix packages))
    
    (define-public rc
      (package
        (name "rc")
        (version "1.7.4")
        (source (origin
                  (method git-fetch)
                  (uri (git-reference
                        (url "git://github.com/rakitzis/rc.git")
                        ;; commit name 'release: rc-1.7.4'
                        (commit "c884da53a7c885d46ace2b92de78946855b18e92")))
                  (sha256
                   (base32
                    "00mgzvrrh9w96xa85g4gjbsvq02f08k4jwjcdnxq7kyh5xgiw95l"))
                  (file-name (string-append name "-" version "-checkout"))))
        (build-system gnu-build-system)
        (arguments
         `(#:configure-flags
           '("--with-edit=gnu")
           #:phases
           (modify-phases %standard-phases
             (add-after
              'unpack 'autoreconf
              (lambda _ (zero? (system* "autoreconf" "-vfi"))))
             (add-before
              'autoreconf 'patch-trip.rc
              (lambda _
                (substitute* "trip.rc"
                  (("/bin/pwd") (which "pwd"))
                  (("/bin/sh")  (which "sh"))
                  (("/bin/rm")  (which "rm"))
                  (("/bin\\)")  (string-append (dirname (which "rm")) ")")))
                #t)))))
        (inputs `(("readline" ,readline)
                  ("perl" ,perl)))
        (native-inputs `(("autoconf" ,autoconf)
                         ("automake" ,automake)
                         ("libtool" ,libtool)
                         ("pkg-config" ,pkg-config)))
        (synopsis "Alternative implementation of the rc shell by Byron Rakitzis")
        (description
         "This is a reimplementation by Byron Rakitzis of the Plan 9 shell.  It
    has a small feature set similar to a traditional Bourne shell.")
        (home-page "http://github.com/rakitzis/rc")
        (license zlib)))