6 changed files with 2 additions and 358 deletions
@ -1,182 +0,0 @@
@@ -1,182 +0,0 @@
|
||||
# |
||||
# Copyright (C) 2020 Alexandros Theodotou <alex at zrythm dot org> |
||||
# |
||||
# This program is free software: you can redistribute it and/or modify |
||||
# it under the terms of the GNU Affero General Public License as published |
||||
# by the Free Software Foundation, either version 3 of the License, or |
||||
# (at your option) any later version. |
||||
# |
||||
# This program is distributed in the hope that it will be useful, |
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
# GNU Affero General Public License for more details. |
||||
# |
||||
# You should have received a copy of the GNU Affero General Public License |
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. |
||||
# |
||||
|
||||
image: debian/stable |
||||
packages: |
||||
- awscli |
||||
- binutils |
||||
- cmake |
||||
- flex |
||||
- libfl-dev |
||||
- libcurl4-gnutls-dev |
||||
- libgtk-3-dev |
||||
- libjack-dev |
||||
#- liblilv-dev |
||||
- libsndfile1-dev |
||||
- meson |
||||
- debhelper |
||||
- dpkg-dev |
||||
- devscripts |
||||
- build-essential |
||||
- ninja-build |
||||
- gettext |
||||
- guile-2.2-dev |
||||
- help2man |
||||
- python3-sphinx |
||||
- libjson-glib-dev |
||||
- ladspa-sdk |
||||
- libboost-dev |
||||
- libfftw3-dev |
||||
- libasound2-dev |
||||
- libavcodec-dev |
||||
- libavutil-dev |
||||
- libavformat-dev |
||||
- libchromaprint-dev |
||||
- libgtksourceview-3.0-dev |
||||
- libgraphene-1.0-dev |
||||
- libgraphviz-dev |
||||
#- libsuil-dev |
||||
#- lv2-dev |
||||
- libsamplerate0-dev |
||||
- libyaml-dev |
||||
- libpcre2-dev |
||||
- libxml2-utils |
||||
- libxxhash-dev |
||||
- python3 |
||||
- librubberband-dev |
||||
- rubberband-cli |
||||
- libzstd-dev |
||||
- xdg-utils |
||||
- rsync |
||||
- desktop-file-utils |
||||
- libsdl2-dev |
||||
- lv2-dev |
||||
- liblilv-dev |
||||
- libjpeg-dev |
||||
- librsvg2-dev |
||||
- libtiff-dev |
||||
- patchelf |
||||
- portaudio19-dev |
||||
- sassc |
||||
- librtaudio-dev |
||||
- tar |
||||
- unzip |
||||
- zip |
||||
- vamp-plugin-sdk |
||||
- wget |
||||
- vim |
||||
sources: |
||||
- https://git.sr.ht/~alextee/zrythm |
||||
- https://git.sr.ht/~alextee/zrythm-installer |
||||
- https://github.com/mesonbuild/meson |
||||
- https://gitlab.com/lv2/lv2 |
||||
- https://gitlab.com/drobilla/serd |
||||
- https://gitlab.com/lv2/lilv |
||||
secrets: |
||||
- 063cb70d-6da6-492a-b530-04edc07651ba |
||||
- 10b48de1-2cfb-4112-b215-080444177c46 |
||||
- 7c85cca9-3e6f-4c7c-ba42-b44ca7379585 |
||||
tasks: |
||||
- prepare: | |
||||
mkdir deps |
||||
# needed for debian rules |
||||
sudo ln -s bash /bin/sh.bash |
||||
sudo mv /bin/sh.bash /bin/sh |
||||
- install-wayland: | |
||||
cd deps |
||||
git clone https://gitlab.freedesktop.org/wayland/wayland |
||||
pushd wayland |
||||
git checkout 1.21.0 |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Ddocumentation=false -Ddtd_validation=false -Dtests=false |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-wayland-protocols: | |
||||
cd deps |
||||
git clone https://github.com/wayland-project/wayland-protocols |
||||
pushd wayland-protocols |
||||
git checkout 1.26 |
||||
/home/build/meson/meson.py build -Dprefix=/usr |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-latest-rust: | |
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y |
||||
sudo ln -s /home/build/.cargo/bin/cargo /usr/bin/cargo |
||||
sudo ln -s /home/build/.cargo/bin/rustc /usr/bin/rustc |
||||
- install-glib: | |
||||
cd deps |
||||
git clone https://gitlab.gnome.org/GNOME/glib |
||||
pushd glib |
||||
/home/build/meson/meson.py build -Dprefix=/usr |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-json-glib: | |
||||
cd deps |
||||
git clone https://gitlab.gnome.org/GNOME/json-glib |
||||
pushd json-glib |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Dintrospection=disabled -Dgtk_doc=disabled -Dtests=false |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-cairo: | |
||||
cd deps |
||||
git clone https://github.com/freedesktop/cairo |
||||
pushd cairo |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Dtests=disabled |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-harfbuzz: | |
||||
cd deps |
||||
git clone https://github.com/harfbuzz/harfbuzz |
||||
pushd harfbuzz |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Dtests=disabled -Dintrospection=disabled -Ddocs=disabled |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-pango: | |
||||
cd deps |
||||
git clone --depth 1 https://gitlab.gnome.org/GNOME/pango |
||||
pushd pango |
||||
/home/build/meson/meson.py build -Dprefix=/usr |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-gdk-pixbuf: | |
||||
cd deps |
||||
git clone https://gitlab.gnome.org/GNOME/gdk-pixbuf |
||||
pushd gdk-pixbuf |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Djpeg=enabled -Dpng=enabled -Dbuiltin_loaders=png,jpeg -Dman=false |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- install-librsvg: | |
||||
source $HOME/.cargo/env |
||||
cd deps |
||||
wget https://download.gnome.org/sources/librsvg/2.52/librsvg-2.52.4.tar.xz |
||||
tar xf librsvg-2.52.4.tar.xz |
||||
cd librsvg-2.52.4 |
||||
./configure --prefix=/usr --disable-gtk-doc --disable-vala --disable-introspection |
||||
make |
||||
make install DESTDIR=/tmp/librsvg |
||||
sudo cp -RT /tmp/librsvg/usr/ /usr/ |
||||
- install-gtk: | |
||||
cd deps |
||||
wget https://download.gnome.org/sources/gtk/4.7/gtk-4.7.2.tar.xz |
||||
tar xf gtk-4.7.2.tar.xz |
||||
pushd gtk-4.7.2 |
||||
/home/build/meson/meson.py build -Dprefix=/usr -Ddemos=false -Dbuild-examples=false -Dbuild-tests=false -Dmedia-gstreamer=disabled -Dintrospection=disabled |
||||
ninja -C build |
||||
sudo ninja -C build install |
||||
- make: | |
||||
zrythm-builds/scripts/make-pkg.sh debian11 |
||||
- deploy: | |
||||
zrythm-builds/scripts/push-pkg.sh debian11 |
@ -1,44 +0,0 @@
@@ -1,44 +0,0 @@
|
||||
# Copyright (C) 2020 Alexandros Theodotou <alex at zrythm dot org> |
||||
|
||||
language: c |
||||
os: osx |
||||
osx_image: xcode11.5 |
||||
|
||||
script: |
||||
- |- |
||||
set -e |
||||
exit 0 |
||||
git clone https://git.sr.ht/~alextee/mxe |
||||
git clone https://git.sr.ht/~alextee/zrythm |
||||
git clone https://git.sr.ht/~alextee/zrythm-builds |
||||
git clone https://git.sr.ht/~alextee/zrythm-installer |
||||
git clone https://github.com/KDE/breeze-icons |
||||
git clone https://github.com/mesonbuild/meson |
||||
echo "$SSH_PRIVATE_KEY" > tmp_rsa |
||||
openssl base64 -d -A < tmp_rsa > id_rsa |
||||
grep -q "BEGIN RSA PRIVATE KEY" id_rsa |
||||
chmod 600 id_rsa |
||||
zrythm-builds/scripts/create-manuals-zip.sh osx-brew-zip |
||||
zrythm-builds/scripts/make-pkg.sh osx-brew-zip |
||||
zrythm-builds/scripts/push-pkg.sh osx-brew-zip |
||||
|
||||
addons: |
||||
homebrew: |
||||
packages: |
||||
- cmake |
||||
- fftw |
||||
- meson |
||||
- libsamplerate |
||||
- sdl2 |
||||
- chromaprint |
||||
- lilv |
||||
- librsvg |
||||
- adwaita-icon-theme |
||||
- gtk+3 |
||||
- guile |
||||
- gtksourceview4 |
||||
- graphviz |
||||
- zstd |
||||
- rt-audio |
||||
- rtmidi |
||||
update: true |
@ -1,108 +0,0 @@
@@ -1,108 +0,0 @@
|
||||
#! /bin/bash |
||||
# |
||||
# Copyright (C) 2020-2022 Alexandros Theodotou <alex at zrythm dot org> |
||||
# |
||||
# This program is free software: you can redistribute it and/or modify |
||||
# it under the terms of the GNU Affero General Public License as published |
||||
# by the Free Software Foundation, either version 3 of the License, or |
||||
# (at your option) any later version. |
||||
# |
||||
# This program is distributed in the hope that it will be useful, |
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
# GNU Affero General Public License for more details. |
||||
# |
||||
# You should have received a copy of the GNU Affero General Public License |
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. |
||||
# |
||||
|
||||
distro="" |
||||
source zrythm-builds/scripts/common.sh.in |
||||
|
||||
artifacts_dir="$(pwd)/zrythm-installer/artifacts" |
||||
mkdir -p $artifacts_dir |
||||
|
||||
echo "configuring zrythm-installer..." |
||||
meson_path="$(pwd)/meson/meson.py" |
||||
pushd zrythm-installer |
||||
$meson_path build --reconfigure -Dmeson-path=$meson_path \ |
||||
-Dzrythm-git-ver=master -Dzrythm-pkg-ver=$zrythm_pkg_ver \ |
||||
-Dzrythm-pkg-semver=$zrythm_pkg_semver \ |
||||
-Dbreeze-dark-path="$(pwd)/breeze-icons/icons-dark" -Ddistro=gnu-linux \ |
||||
-Dbuild-trial=false -Dpackages-dir=$artifacts_dir \ |
||||
--prefix=/tmp/artifacts |
||||
popd |
||||
echo "done" |
||||
|
||||
wget_package_and_plugins () { |
||||
distro=$1 |
||||
pkg_filename=$(get_package_filename $distro) |
||||
pkg_trial_filename=$(get_package_filename $distro "-trial") |
||||
|
||||
artifacts_distro_dir="$artifacts_dir/$distro" |
||||
mkdir -p "$artifacts_distro_dir" |
||||
|
||||
# get package |
||||
>&2 echo "getting package $pkg_filename for $distro..." |
||||
fetch_file \ |
||||
"packages/$distro/$pkg_filename" \ |
||||
"$artifacts_distro_dir/$pkg_filename" \ |
||||
"$connection_type_server" |
||||
>&2 echo "done" |
||||
|
||||
# get trial if tag |
||||
if is_tag ; then |
||||
>&2 echo "getting package $pkg_trial_filename for $distro..." |
||||
fetch_file \ |
||||
"packages/$distro/$pkg_trial_filename" \ |
||||
"$artifacts_distro_dir/$pkg_trial_filename" \ |
||||
"$connection_type_server" |
||||
>&2 echo "done" |
||||
fi |
||||
} |
||||
|
||||
# wait for all packages to be submitted |
||||
echo "waiting for packages to be submitted..." |
||||
while true; do |
||||
sleep 12 |
||||
wait_more=0 |
||||
for distro in $distros ; do |
||||
if [ "$distro" != "gnu-linux" ]; then |
||||
echo "checking if remote pkg exists for $distro..." |
||||
if ! remote_pkg_exists $distro "$connection_type_server" ; then |
||||
echo "not exists" && wait_more=1 |
||||
fi |
||||
if is_tag ; then |
||||
echo "checking if remote trial_pkg exists for $distro..." |
||||
if ! remote_pkg_exists $distro "$connection_type_server" "-trial"; then |
||||
echo "not exists" && wait_more=1 |
||||
fi |
||||
fi |
||||
fi |
||||
done |
||||
if [ $wait_more -eq 0 ]; then |
||||
break |
||||
fi |
||||
done |
||||
|
||||
# move packages/plugins to where they are expected |
||||
echo "fetching packages..." |
||||
for distro in $distros ; do |
||||
if [ "$distro" != "gnu-linux" ]; then |
||||
echo "fetching packages and plugins for $distro..." |
||||
wget_package_and_plugins $distro |
||||
fi |
||||
done |
||||
|
||||
# make zip |
||||
echo "making $gnu_linux_zip_filename..." |
||||
pushd zrythm-installer |
||||
ninja -C build install |
||||
echo "done" |
||||
if is_tag ; then |
||||
echo "making $gnu_linux_zip_trial_filename..." |
||||
$meson_path build --reconfigure -Dbuild-trial=true |
||||
ninja -C build install |
||||
echo "done" |
||||
fi |
||||
popd |
Loading…
Reference in new issue