Compare commits
2 commits
b7b5a61286
...
8fbfd0320c
Author | SHA1 | Date | |
---|---|---|---|
Peter Cai | 8fbfd0320c | ||
Peter Cai | a05fb1ecd9 |
54
apps/zrythm/Containerfile
Normal file
54
apps/zrythm/Containerfile
Normal file
|
@ -0,0 +1,54 @@
|
|||
FROM dobu/deps-base-archlinux:latest
|
||||
|
||||
ARG UPSTREAM_VERSION
|
||||
|
||||
# TODO: Can we allow users to configure JACK or pipewire-jack
|
||||
RUN pacman --noconfirm -Syu && \
|
||||
pacman --noconfirm -S base-devel git sudo gnupg pipewire-jack \
|
||||
lv2-plugins vst-plugins vst3-plugins
|
||||
|
||||
RUN mkdir /src && chown user:user /src
|
||||
RUN echo "user ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
|
||||
USER user
|
||||
WORKDIR /src
|
||||
|
||||
# Build all AUR dependencies first
|
||||
# carla-git (TODO: Remove temporary workaround)
|
||||
RUN git clone https://aur.archlinux.org/carla-git.git && \
|
||||
cd carla-git && sed -i 's/$_name.git/$_name.git#commit=a580473fbca5b1a14af45518e4d4fbfeabef8b6e/' PKGBUILD && \
|
||||
makepkg --noconfirm -sci
|
||||
|
||||
# libaudec
|
||||
RUN git clone https://aur.archlinux.org/libaudec.git && \
|
||||
cd libaudec && makepkg --noconfirm -sci
|
||||
|
||||
# libbacktrace-git
|
||||
RUN git clone https://aur.archlinux.org/libbacktrace-git.git && \
|
||||
cd libbacktrace-git && makepkg --noconfirm -sci
|
||||
|
||||
# libcyaml
|
||||
RUN git clone https://aur.archlinux.org/libcyaml.git && \
|
||||
cd libcyaml && makepkg --noconfirm -sci
|
||||
|
||||
# lsp-dsp-lib
|
||||
RUN git clone https://aur.archlinux.org/lsp-dsp-lib.git && \
|
||||
cd lsp-dsp-lib && makepkg --noconfirm -sci
|
||||
|
||||
# reproc
|
||||
RUN git clone https://aur.archlinux.org/reproc.git && \
|
||||
cd reproc && makepkg --noconfirm -sci
|
||||
|
||||
# Finally, zrythm itself
|
||||
# Zrythm generates duplicate debug info files with carla-git
|
||||
# As a workaround, remove debug symbols from Carla
|
||||
RUN git clone https://aur.archlinux.org/zrythm.git && \
|
||||
gpg --recv-keys 022EAE42313D70F3 && \
|
||||
sudo pacman -R --noconfirm carla-git-debug && \
|
||||
cd zrythm && makepkg --noconfirm -sci
|
||||
|
||||
WORKDIR /home/user
|
||||
RUN sudo rm -rf /src
|
||||
|
||||
LABEL net.typeblog.dobu.desktop_file_path=/usr/share/applications/org.zrythm.Zrythm.desktop
|
||||
|
||||
ENTRYPOINT [ "/usr/bin/zrythm" ]
|
1
apps/zrythm/control
Normal file
1
apps/zrythm/control
Normal file
|
@ -0,0 +1 @@
|
|||
INVALIDATE_CACHE_UPSTREAM_AUR="zrythm"
|
|
@ -17,6 +17,9 @@ extra_args=""
|
|||
if [ ! -z "${INVALIDATE_CACHE_UPSTREAM_ARCHLINUX+x}" ]; then
|
||||
log "Fetching upstream package version from Arch Linux"
|
||||
upstream_ver="$(get_archlinux_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_ARCHLINUX")"
|
||||
elif [ ! -z "${INVALIDATE_CACHE_UPSTREAM_AUR+x}" ]; then
|
||||
log "Fetching upstream package version from AUR"
|
||||
upstream_ver="$(get_aur_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_AUR")"
|
||||
elif [ ! -z "${INVALIDATE_CACHE_UPSTREAM_UBUNTU+x}" ]; then
|
||||
log "Fetching upstream package version from Ubuntu (Launchpad)"
|
||||
upstream_ver="$(get_ubuntu_pkg_ver "$INVALIDATE_CACHE_UPSTREAM_UBUNTU")"
|
||||
|
|
|
@ -126,6 +126,10 @@ get_archlinux_pkg_ver() {
|
|||
curl https://archlinux.org/packages/$1/json/ 2>/dev/null | jq -r '. | .pkgver + "-" + .pkgrel'
|
||||
}
|
||||
|
||||
get_aur_pkg_ver() {
|
||||
curl "https://aur.archlinux.org/rpc/v5/info?arg[]=$1" 2>/dev/null | jq -r '.results[0].Version'
|
||||
}
|
||||
|
||||
# Note: this does not specify which version of Ubuntu to use, because we don't actually care
|
||||
# this version can and will only used to invalidate Docker cache, and we only need a vague
|
||||
# idea of whether this package has been updated upstream.
|
||||
|
|
Loading…
Reference in a new issue