aboutsummaryrefslogtreecommitdiff
path: root/tests/discovery.scm
blob: 753e6a897972feb276e81abbcf2c7aef7db27c6a (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Ludovic Courtès <ludo@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/>.

(define-module (test-discovery)
  #:use-module (guix discovery)
  #:use-module (guix build-system)
  #:use-module (guix utils)
  #:use-module (srfi srfi-64)
  #:use-module (ice-9 match))

(define %top-srcdir
  (dirname (search-path %load-path "guix.scm")))

(test-begin "discovery")

(test-assert "scheme-modules"
  (match (map module-name (scheme-modules %top-srcdir "guix/import"))
    ((('guix 'import _ ...) ..1)
     #t)))

(test-assert "scheme-modules recurses in symlinks to directories"
  (call-with-temporary-directory
   (lambda (directory)
     (mkdir (string-append directory "/guix"))
     (symlink (string-append %top-srcdir "/guix/import")
              (string-append directory "/guix/import"))

     ;; DIRECTORY/guix/import is a symlink but we want to make sure
     ;; 'scheme-modules' recurses into it.
     (match (map module-name (scheme-modules directory))
       ((('guix 'import _ ...) ..1)
        #t)))))

(test-equal "scheme-modules, non-existent directory"
  '()
  (scheme-modules "/does/not/exist"))

(test-assert "all-modules"
  (match (map module-name
              (all-modules `((,%top-srcdir . "guix/build-system"))))
    ((('guix 'build-system names) ..1)
     names)))

(test-assert "fold-module-public-variables"
  (let ((modules (all-modules `((,%top-srcdir . "guix/build-system")))))
    (match (fold-module-public-variables (lambda (obj result)
                                           (if (build-system? obj)
                                               (cons obj result)
                                               result))
                                         '()
                                         modules)
      (((? build-system? bs) ..1)
       bs))))

(test-end "discovery")
as glib-networking. [arguments]<#:configure-flags>: Remove --with-xwidgets. [inputs]: Remove webkitgtk-with-libsoup2. [home-page]: PGTK is merged to upstream emacs repository now, so inherit home-page from emacs-next. Andrew Tropin 2023-03-02Merge remote-tracking branch 'savannah/master' into core-updates...Conflicts: gnu/local.mk gnu/packages/autotools.scm gnu/packages/cmake.scm gnu/packages/gnuzilla.scm gnu/packages/haskell.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/samba.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/wxwidgets.scm Christopher Baines 2023-03-01gnu: Add emacs-motif....* gnu/packages/text-editors.scm (emacs-motif): New variable. Signed-off-by: Christopher Baines <mail@cbaines.net> Andy Tai 2023-02-26gnu: emacs-next: Update to 29.0.60-1.f1f571e....* gnu/packages/emacs.scm (emacs-next): Update to 29.0.60-1.f1f571e. Liliana Marie Prikler 2023-02-26gnu: Add emacs-next-tree-sitter....* gnu/packages/emacs.scm (emacs-next-tree-sitter): New variable. (emacs-next): Remove tree sitter support. Liliana Marie Prikler 2023-02-12gnu: Remove tree-sitter comment from emacs.scm imports....* gnu/packages/emacs.scm: Remove tree-sitter comment. Signed-off-by: Andrew Tropin <andrew@trop.in> Pierre Langlois 2023-02-11gnu: emacs: Add TREE_SITTER_GRAMMAR_PATH support....gnu/packages/emacs.scm (emacs)[native-search-paths]: Add a search-path for tree-sitter grammars. gnu/packages/aux-files/emacs/guix-emacs.el: Add directories from TREE_SITTER_GRAMMAR_PATH to treesit-extra-load-path. Andrew Tropin 2023-02-09gnu: tree-sitter: Move to its own module....* gnu/packages/text-editors.scm (tree-sitter): Move to ... * gnu/packages/tree-sitter.scm: ... here, a new module. * gnu/packages/vim.scm: Use (gnu packages tree-sitter). * gnu/packages/emacs.scm: Use (gnu packages tree-sitter). * gnu/local.mk (GNU_SYSTEM_MODULES): Register tree-sitter.scm new module. Signed-off-by: Andrew Tropin <andrew@trop.in> Pierre Langlois 2023-02-04gnu: emacs-next: Enable tree-sitter support....* gnu/packages/emacs.scm (emacs-next): Update to 29.0.60-0.ac7ec87. * gnu/packages/emacs.scm (emacs-next)[inputs]: Add tree-sitter. Signed-off-by: Andrew Tropin <andrew@trop.in> Declan Tsien 2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner 2023-01-26gnu: emacs-next: Update to 29.0.50-4.6adc193....* gnu/packages/emacs.scm (emacs-next): Update to 29.0.50-4.6adc193. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Fredrik Salomonsson 2023-01-22gnu: emacs-minimal: Do not patch compilation driver....The ‘patch-compilation-driver’ phase pulls in libgccjit even though it has been deliberately removed from emacs-minimal. * gnu/packages/emacs.scm (emacs)[#:phases]: Delete ‘patch-compilation-driver’. Liliana Marie Prikler 2022-11-03gnu: emacs-next: Update to 29.0.50-3.22e8a77....* gnu/packages/emacs.scm (emacs-next): Update to 29.0.50-3.22e8a77. Signed-off-by: Christopher Baines <mail@cbaines.net> jgart 2022-10-16gnu: emacs: Update to 28.2....* gnu/packages/emacs.scm (emacs): Update to 28.2. Liliana Marie Prikler 2022-10-16Merge branch 'staging'Marius Bakke 2022-10-15gnu: emacs-next: Update to 29.0.50-2.4aeb80c....* gnu/packages/patches/emacs-native-comp-driver-options.patch: New file. * gnu/local.mk: Register it here. * gnu/packages/emacs.scm (emacs-next): Update to 29.0.50-2.4aeb80c. Liliana Marie Prikler 2022-10-02gnu: emacs-minimal: Reduce to minimal inputs....This partly reverts dbcba75c0e96d8eb2b0bf9dbb3a49d15b38f80d2. In that commit, emacs-minimal gained a few inputs that weren't actually used as native compilation is disabled. Discovered by djeis in IRC, see also <http://logs.guix.gnu.org/guix/2022-10-02.log#170047>. * gnu/packages/emacs.scm (emacs-minimal)[inputs]: Remove ld-wrapper, binutils, glibc, libgccjit, and zlib. [arguments]<#:phases>: Delete ‘set-libgccjit-path’. Liliana Marie Prikler 2022-09-27Merge branch 'staging' into core-updates...Conflicts resolved in: gnu/local.mk gnu/packages/cran.scm gnu/packages/gnome.scm gnu/packages/gtk.scm gnu/packages/icu4c.scm gnu/packages/java.scm gnu/packages/machine-learning.scm gnu/packages/tex.scm Maxim Cournoyer 2022-09-19gnu: emacs-next-pgtk: Inherit patches from emacs-next....* gnu/packages/emacs.scm (emacs-next-pgtk)[source]: Inherit patches from emacs-next. Andrew Tropin 2022-09-18Merge branch 'staging' into core-updatesMarius Bakke 2022-09-16gnu: emacs-next-pgtk: Fix super key problem....Recent version of emacs 29 with pgtk flag has a problem with handling super key modifier, due to gtk bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4913 This commit workarounds it. * gnu/packages/patches/emacs-pgtk-super-key-fix.patch: New file. * gnu/packages/emacs.scm (emacs-next-pgtk): Use it here. * gnu/local.mk (dist_patch_DATA): Register it here. Andrew Tropin 2022-09-15Merge branch 'staging' into core-updates...Conflicts resolved in: gnu/local.mk gnu/packages/cmake.scm gnu/packages/glib.scm gnu/packages/gnome.scm gnu/packages/gtk.scm gnu/packages/sdl.scm pango-next, vala-next and librsvg-bootstrap were removed in the process. Maxim Cournoyer 2022-09-11gnu: emacs: Build with native compilation....* gnu/packages/emacs.scm (%emacs-modules): New variable. (emacs)[arguments]<#:modules>: Use it here. <#:configure-flags> Add “--with-native-compilation”. <#:make-flags>: Add “NATIVE_FULL_AOT=1”. <#:phases>: Add ‘set-libgccjit-path’ and ‘patch-compilation-driver’. [inputs]: Add explicit ld-wrapper, binutils, glibc, and libgccjit. [search-paths]: Add EMACSNATIVELOADPATH. (emacs-minimal, emacs-xwidgets, emacs-no-x) (emacs-no-x-toolkit): Adjust accordingly. Liliana Marie Prikler 2022-08-12gnu: Remove librsvg-bootstrap....librsvg is already a staging-level package, and the next version will no longer bundle its dependencies, so we might as well drop it early. * gnu/packages/gnome.scm (librsvg-bootstrap): Remove variable. * gnu/packages/bittorrent.scm (deluge)[native-inputs]: Replace LIBRSVG-BOOTSTRAP with LIBRSVG. * gnu/packages/emacs.scm (emacs)[inputs]: Likewise. * gnu/packages/gtk.scm (gtk+-2)[propagated-inputs]: Likewise. * gnu/packages/gtk.scm (gtk+)[propagated-inputs]: Likewise. Marius Bakke 2022-08-05gnu: emacs-next: Enable SQLite3 support....[[PGP Signed Part:No public key for 66397F84F76693F9 created at 2022-07-20T06:08:56+0200 using EDDSA]] [[End of PGP Signed Part]] >From 068de10c98b5d29adb13963222a1ca21ef7b0a76 Mon Sep 17 00:00:00 2001 From: Zhu Zihao <all_but_last@163.com> Date: Wed, 20 Jul 2022 12:07:09 +0800 Subject: [PATCH] gnu: emacs-next: Enable SQLite3 support. * gnu/packages/emacs.scm (emacs-next)[inputs]: Add sqlite. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Zhu Zihao 2022-06-22gnu: emacs: Fix tramp-remote-path....This variable was moved from tramp-sh.el to tramp.el, causing the substitute* snippet which patches it to silently fail. See also <https://issues.guix.gnu.org/55443>. * gnu/packages/emacs.scm (emacs)[source]<snippet>: Patch tramp.el rather than tramp-sh.el. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> John Kehayias 2022-06-08Merge branch 'master' into stagingLudovic Courtès 2022-06-05gnu: emacs-next: Update to 29.0.50-1.0a5477b....The currently used commit breaks magit, so update to a newer one. * gnu/packages/emacs.scm (emacs-next): Update to 29.0.50-1.0a5477b. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Josselin Poiret 2022-05-26Merge branch 'master' into stagingLudovic Courtès 2022-05-26gnu: guile-emacs: Remove input labels....* gnu/packages/emacs.scm (guile-emacs)[native-inputs]: Remove labels. Ludovic Courtès 2022-05-26gnu: guile-emacs: Use gexps....This is a followup to 64557bc695f074af3fcf1eeed8f6696921ef18c5. * gnu/packages/emacs.scm (guile-emacs)[arguments]: Use gexps. Ludovic Courtès