8fd6063a4ea17fbc35571ee6deb5c6870434dd24
[bin.git] / build-devtoolbox
1 #!/bin/sh
2 set -eux
3 NAME=devel
4
5 if [ -n "${TOOLBOX_RELEASE:-}" ]; then
6     RELEASE="--release $TOOLBOX_RELEASE"
7     NAME="$NAME-$TOOLBOX_RELEASE"
8 else
9     RELEASE=''
10 fi
11
12 toolbox rm --force $NAME || true
13 yes | toolbox create $RELEASE -c $NAME
14
15 # install cockpit's build deps and other development tools
16 toolbox run -c "$NAME" sh -exc '
17 # useful hostname
18 . /etc/os-release
19 echo "${ID}-${VERSION_ID}" | sudo tee /etc/hostname
20 sudo hostname -F /etc/hostname
21
22 sudo dnf update -y
23 sudo ln -sfn ../run/host/run/NetworkManager/resolv.conf /etc/resolv.conf
24
25 sudo dnf builddep -y cockpit
26 sudo dnf install -y make npm sassc fontconfig git valgrind chromium \
27     libvirt-daemon-kvm libvirt-client python3-libvirt \
28     virt-viewer virt-install libappstream-glib \
29     expect python3-pycodestyle python3-pyflakes \
30     fedpkg /usr/bin/oc /usr/bin/genisoimage /usr/bin/pip \
31     man-pages socat wget genisoimage vim-enhanced \
32     ansible python3-boto python3-boto3 standard-test-roles rsync strace diffstat \
33     pwgen glibc-langpack-en tig twine dbus-daemon \
34     pandoc texlive-ec texlive-pdfjam \
35     /usr/bin/scanimage /usr/bin/pngquant /usr/bin/convert \
36     calibre qt5-qtwayland keepassxc
37
38 sudo dnf debuginfo-install -y glib2 glibc libssh gnutls
39
40 type gh >/dev/null 2>&1 || sudo dnf install -y $(curl -s https://api.github.com/repos/cli/cli/releases/latest | grep -o https:.*_linux_amd64.rpm)
41
42 sudo dnf clean packages
43
44 # unbreak kerberos; https://github.com/debarshiray/toolbox/issues/235
45 cat <<EOF | sudo tee /etc/krb5.conf.d/0_file_ccache
46 [libdefaults]
47     default_ccache_name = FILE:/tmp/krb5.ccache
48 EOF
49 '