epiphany w/ gtk4 and webkitgtk 2.38
[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 ! guix install -r guile-bootstrap -p "$profile" --bootstrap
40 test -x "$profile/bin/guile"
41
42 # Use a package transformation option and make sure it's recorded.
43 guix install --bootstrap guile-bootstrap -p "$profile" \
44 --with-input=libreoffice=inkscape
45 test -x "$profile/bin/guile"
46 grep "libreoffice=inkscape" "$profile/manifest"
47
48 guix upgrade --version
49 guix upgrade -n
50 guix upgrade gui.e -n
51 ! guix upgrade foo bar -n;
52
53 guix remove --version
54 guix remove --bootstrap guile-bootstrap -p "$profile"
55 ! test -x "$profile/bin/guile"
56 test `guix package -p "$profile" -I | wc -l` -eq 0
57
58 ! guix remove -p "$profile" this-is-not-installed --bootstrap
59
60 ! guix remove -i guile-bootstrap -p "$profile" --bootstrap
61
62 guix search '\<board\>' game | grep '^name: gnubg'
63
64 guix show --version
65 guix show guile
66 guix show python@3 | grep "^name: python"
67
68 # "python@2" exists but is deprecated; make sure it doesn't show up.
69 ! guix show python@2
70
71 # Specifying multiple packages.
72 output="`guix show sed grep | grep ^name:`"
73 test "$output" = "name: sed
74 name: grep"