blob: 96675cf5b3dad9db30f0a65eb53d57f2387aa307 [file] [log] [blame] [edit]
#!/usr/bin/env bash
# If the package $1 is available, prints it. Otherwise if package $2 is available, prints $2.
# Useful for handling when a package is renamed on new versions of Debian/Ubuntu.
aptIfElse() {
if apt-cache show $1 &>/dev/null; then
echo $1
elif apt-cache show $2 &>/dev/null; then
echo $2
else
echo "Neither package is available: $1, $2" 1>&2
exit 1
fi
}
aptIfExists() {
local ret
ret=$(apt show "$1" 2>/dev/null)
if [[ $? -ne 0 ]]; then
return
fi
if [[ "$ret" =~ "(virtual)" ]]; then
return
fi
echo "$1"
}
PACKAGES=(
# These are dependencies necessary for building WebKitGTK/WPE.
autoconf
automake
autopoint
autotools-dev
bubblewrap
cmake
flite1-dev
gawk
gperf
gtk-doc-tools
intltool
itstool
libasound2-dev
libatk1.0-dev
libbz2-dev
libdrm-dev
libenchant-2-dev
libepoxy-dev
libevent-dev
libfile-copy-recursive-perl
libgcrypt20-dev
libgstreamer1.0-dev
libgstreamer-plugins-bad1.0-dev
libgstreamer-plugins-base1.0-dev
libinput-dev
libjpeg-dev
libhyphen-dev
libkate-dev
liblcms2-dev
libmanette-0.2-dev
libnghttp2-dev
libopenjp2-7-dev
libpng-dev
libseccomp-dev
libsqlite3-dev
libsystemd-dev
libtasn1-6-dev
libtool
libwayland-dev
libwebp-dev
libwoff-dev
libxml2-utils
libxcb-glx0-dev
libxslt1-dev
mesa-common-dev
ninja-build
patch
patchelf
ruby
$(aptIfExists gi-docgen)
$(aptIfExists libaom-dev)
$(aptIfExists libavif-dev)
$(aptIfExists libjxl-dev)
$(aptIfExists libsoup-3.0-dev)
$(aptIfExists libsysprof-capture-4-dev)
$(aptIfExists libyuv-dev)
# These are dependencies necessary for running tests.
apache2
curl
fonts-liberation
hyphen-de
hyphen-en-gb
hyphen-en-us
gdb
libcgi-pm-perl
psmisc
pulseaudio-utils
python3-gi
ruby-highline
ruby-json
# These are dependencies necessary for building the jhbuild.
bison
flex
git
gobject-introspection
gsettings-desktop-schemas-dev
gyp
libegl1-mesa-dev
libexpat1-dev
libgirepository1.0-dev
libgles2-mesa-dev
liborc-0.4-dev
libproxy-dev
libpsl-dev
libssl-dev
libtool-bin
libxml-libxml-perl
meson
nasm
python3-setuptools
uuid-dev
yasm
$(aptIfExists libfdk-aac-dev)
# These are dependencies necessary for using webkit-patch.
git-svn
subversion
# These are dependencies necessary for using git-webkit.
python3-dev
# These are GStreamer plugins needed to play different media files.
gstreamer1.0-gl
gstreamer1.0-libav
gstreamer1.0-plugins-bad
gstreamer1.0-plugins-base
gstreamer1.0-plugins-good
gstreamer1.0-plugins-ugly
gstreamer1.0-pulseaudio
)