#!/usr/bin/env bash # If the package $1 is available, prints it. Otherwise 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 else echo $2 fi } aptIfExists() { local 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 gawk gperf gtk-doc-tools intltool itstool libasound2-dev libatk1.0-dev libepoxy-dev libevent-dev libfile-copy-recursive-perl $(aptIfElse libgcrypt20-dev libgcrypt11-dev) libgstreamer1.0-dev libgstreamer-plugins-bad1.0-dev libgstreamer-plugins-base1.0-dev libjpeg-dev libkate-dev liblcms2-dev libopenjp2-7-dev libpng-dev libseccomp-dev libsqlite3-dev libsystemd-dev libtasn1-6-dev libtool libwayland-dev libwebp-dev libwoff-dev libxslt1-dev ninja-build patch ruby # These are dependencies necessary for running tests. apache2 curl fonts-liberation gdb libcgi-pm-perl psmisc pulseaudio-utils ruby-highline ruby-json $(aptIfExists python-gi) # These are dependencies necessary for building with the Flatpak SDK. flatpak libglib2.0-bin # These are dependencies necessary for building the jhbuild. git gsettings-desktop-schemas-dev gyp libegl1-mesa-dev libexpat1-dev libfdk-aac-dev libgles2-mesa-dev liborc-0.4-dev libproxy-dev libpsl-dev libtool-bin libxml-libxml-perl python3-setuptools uuid-dev yasm # These are dependencies necessary for using webkit-patch. git-svn subversion # 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 )