aboutsummaryrefslogtreecommitdiff
path: root/scripts/guix.in
blob: e0194d6ea251de97b90f0319b4340a3b9d8308ce (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!@abs_top_builddir@/guile \
--no-auto-compile -e main -s
!#
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org>
;;;
;;; 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/>.

;; IMPORTANT: We must avoid loading any modules from Guix here,
;; because we need to adjust the guile load paths first.
;; It's okay to import modules from core Guile though.

(define-syntax-rule (push! elt v) (set! v (cons elt v)))

(define (augment-load-paths!)
  ;; Add installed modules to load-path.
  (push! "@guilemoduledir@" %load-path)
  (push! "@guileobjectdir@" %load-compiled-path))

(define* (main #:optional (args (command-line)))
  (unless (getenv "GUIX_UNINSTALLED")
    (augment-load-paths!))

  (let ((guix-main (module-ref (resolve-interface '(guix ui))
                               'guix-main)))
    (bindtextdomain "guix" "@localedir@")
    (bindtextdomain "guix-packages" "@localedir@")
    ;; XXX: It would be more convenient to change it to:
    ;;   (exit (apply guix-main (command-line)))
    ;; but since the 'guix' command is not updated by 'guix pull', we cannot
    ;; really do it now.
    (apply guix-main args)))

;;; Local Variables:
;;; mode: scheme
;;; End:
ve 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 dico) #:use-module (guix packages) #:use-module ((guix licenses) #:select (gpl3+)) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages readline) #:use-module (gnu packages m4) #:use-module (gnu packages groff) #:use-module (gnu packages guile) #:use-module (gnu packages python) #:use-module (gnu packages pcre) #:use-module (gnu packages gsasl) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) #:use-module (gnu packages wordnet)) (define-public dico (package (name "dico") (version "2.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/dico/dico-" version ".tar.xz")) (sha256 (base32 "0nic4mggc0yhms130k7x4qp5k9c42fwg6n8hmk5cmynh6gi9h7xc")))) (build-system gnu-build-system) (arguments '(#:configure-flags (list (string-append "--with-guile-site-dir=" %output "/share/guile/site/2.0") "--disable-static") #:make-flags '("V=1") #:phases (modify-phases %standard-phases (add-before 'check 'silence-guile (lambda _ ;; Guile is too talkative, which disturbs the test ;; infrastructure. Gag it. (setenv "GUILE_AUTO_COMPILE" "0") (setenv "GUILE_WARN_DEPRECATED" "no"))) (replace 'check (lambda _ ;; Test '71: append + dooffs + env' fails if $V is not 2. (invoke "make" "check" "V=2")))))) (native-inputs (list groff)) (inputs (list m4 ;used at run time pcre python-wrapper guile-2.2 gsasl readline zlib wordnet libltdl)) (home-page "https://www.gnu.org/software/dico/") (synopsis "Implementation of DICT server (RFC 2229)") (description "GNU Dico implements a flexible dictionary server and client according to RFC 2229 (DICT Server). It is able to access any database available, regardless of format, thanks to its modular structure. New modules may be written in C, Guile or Python. Dico also includes a command-line client, which may be used to query remote dictionary databases.") (license gpl3+)))