3 # This file is open source software, licensed to you under the terms
4 # of the Apache License, Version 2.0 (the "License"). See the NOTICE file
5 # distributed with this work for additional information regarding copyright
6 # ownership. You may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing,
13 # software distributed under the License is distributed on an
14 # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 # KIND, either express or implied. See the License for the
16 # specific language governing permissions and limitations
20 # os-release may be missing in container environment by default.
21 if [ -f "/etc/os-release" ]; then
23 elif [ -f "/etc/arch-release" ]; then
26 echo "/etc/os-release missing."
61 # seastar doesn't directly depend on these packages. They are
62 # needed because we want to link seastar statically and pkg-config
63 # has no way of saying "static seastar, but dynamic transitive
64 # dependencies". They provide the various .so -> .so.ver symbolic
66 transitive
=(libtool-ltdl-devel trousers-devel libidn2-devel libunistring-devel
)
97 "${redhat_packages[@]}"
110 "${redhat_packages[@]}"
114 rh-mongodb36-boost-devel
116 devtoolset-9-libubsan
118 devtoolset-9-libatomic
122 "${redhat_packages[@]}"
126 gcc-toolset-9-gcc-c
++
127 gcc-toolset-9-libubsan-devel
128 gcc-toolset-9-libasan-devel
129 gcc-toolset-9-libatomic-devel
132 # 1) glibc 2.30-3 has sys/sdt.h (systemtap include)
133 # some old containers may contain glibc older,
134 # so enforce update on that one.
135 # 2) if problems with signatures, ensure having fresh
136 # archlinux-keyring: pacman -Sy archlinux-keyring && pacman -Syyu
137 # 3) aur installations require having sudo and being
138 # a sudoer. makepkg does not work otherwise.
173 libboost_filesystem1_66_0
174 libboost_filesystem1_66_0-devel
175 libboost_program_options1_66_0
176 libboost_program_options1_66_0-devel
177 libboost_system1_66_0
178 libboost_system1_66_0-devel
180 libboost_test1_66_0-devel
181 libboost_thread1_66_0
182 libboost_thread1_66_0-devel
184 libboost_atomic1_66_0
185 libboost_atomic1_66_0-devel
186 libboost_date_time1_66_0
187 libboost_date_time1_66_0-devel
188 libboost_chrono1_66_0
189 libboost_chrono1_66_0-devel
206 apt-get
install -y "${debian_packages[@]}"
209 dnf
install -y "${fedora_packages[@]}"
212 if [ "$VERSION_ID" = "7" ]; then
213 yum
install -y epel-release centos-release-scl scl-utils
214 yum
install -y "${centos7_packages[@]}"
215 elif [ "${VERSION_ID%%.*}" = "8" ]; then
216 dnf
install -y epel-release
217 dnf
install -y "${centos8_packages[@]}"
221 zypper
install -y "${opensuse_packages[@]}"
224 if [ "$EUID" -eq "0" ]; then
225 pacman
-Sy --needed --noconfirm "${arch_packages[@]}"
227 echo "seastar: running without root. Skipping main dependencies (pacman)." 1>&2
231 echo "Your system ($ID) is not supported by this script. Please install dependencies manually."