1package_manager=apt-get 2 3update() { 4 sudo "$package_manager" update 5} 6 7install() { 8 (( $# )) || return 0 9 10 sudo "$package_manager" install -y "$@" 11} 12 13upgrade() { 14 sudo "$package_manager" update 15 sudo "$package_manager" upgrade -y 16} 17 18 19pre_install() { 20 echo "Package perl-open is not available at Ubuntu repositories" >&2 21 22 update 23 24 if [[ $INSTALL_TSOCKS == true ]]; then 25 install tsocks 26 fi 27 28 # asan an ubsan have to be installed together to not mix up gcc versions 29 if install libasan5; then 30 install libubsan1 31 else 32 echo "Latest libasan5 is not available" >&2 33 echo " installing libasan2 and corresponding libubsan0" >&2 34 install libasan2 35 install libubsan0 36 fi 37} 38 39packages=( 40 valgrind 41 jq 42 nvme-cli 43 ceph 44 gdb 45 fio 46 libaio-dev 47 librbd-dev 48 linux-headers-generic 49 libgflags-dev 50 autoconf 51 automake 52 libtool 53 libmount-dev 54 open-iscsi 55 libglib2.0-dev 56 libpixman-1-dev 57 astyle 58 elfutils 59 libelf-dev 60 flex 61 bison 62 libswitch-perl 63 gdisk 64 socat 65 sshfs 66 sshpass 67 python3-pandas 68 bc 69 smartmontools 70 wget 71 xfsprogs 72 ibverbs-utils 73 rdmacm-utils 74) 75 76install_vagrant_dependencies() { 77 local vagrant_packages 78 vagrant_packages=( 79 qemu 80 libvirt-bin 81 ebtables 82 dnsmasq-base 83 libxslt-dev 84 libxml2-dev 85 libvirt-dev 86 zlib1g-dev 87 ruby-dev 88 ) 89 90 install "${vagrant_packages[@]}" 91} 92 93if [[ $OSID != ubuntu ]]; then 94 echo "Located apt-get package manager, but it was tested for Ubuntu only" 95fi 96