gnu: sbcl-hu.dwim.common: Fix missing description.
[jackhill/guix/guix.git] / tests / guix-package-aliases.sh
1 # GNU Guix --- Functional package management for GNU
2 # Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
3 #
4 # This file is part of GNU Guix.
5 #
6 # GNU Guix is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or (at
9 # your option) any later version.
10 #
11 # GNU Guix is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 #
20 # Test the `guix package' aliases.
21 #
22
23 guix install --version
24
25 readlink_base ()
26 {
27 basename `readlink "$1"`
28 }
29
30 profile="t-profile-$$"
31 rm -f "$profile"
32
33 trap 'rm -f "$profile" "$profile-"[0-9]*' EXIT
34
35 guix install --bootstrap guile-bootstrap -p "$profile"
36 test -x "$profile/bin/guile"
37
38 # Make sure '-r' isn't passed as-is to 'guix package'.
39 if guix install -r guile-bootstrap -p "$profile" --bootstrap
40 then false; else true; fi
41 test -x "$profile/bin/guile"
42
43 guix upgrade --version
44 guix upgrade -n
45 guix upgrade gui.e -n
46 if guix upgrade foo bar -n;
47 then false; else true; fi
48
49 guix remove --version
50 guix remove --bootstrap guile-bootstrap -p "$profile"
51 ! test -x "$profile/bin/guile"
52 test `guix package -p "$profile" -I | wc -l` -eq 0
53
54 if guix remove -p "$profile" this-is-not-installed --bootstrap
55 then false; else true; fi
56
57 if guix remove -i guile-bootstrap -p "$profile" --bootstrap
58 then false; else true; fi
59
60 guix search '\<board\>' game | grep '^name: gnubg'
61
62 guix show --version
63 guix show guile
64 guix show python@3 | grep "^name: python"
65
66 # "python@2" exists but is deprecated; make sure it doesn't show up.
67 if guix show python@2; then false; else true; fi
68
69 # Specifying multiple packages.
70 output="`guix show sed grep | grep ^name:`"
71 test "$output" = "name: sed
72 name: grep"