Automatic merge of translations from Transifex #1217
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: all | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: clang-format | |
uses: clementine-player/clang-format-lint-action@master | |
with: | |
style: "{BasedOnStyle: Google, DerivePointerBinding: false, Standard: Cpp11}" | |
source: ./src | |
clangFormatVersion: 9 | |
push_translations: | |
name: Push translation sources to Transifex | |
if: github.ref == 'refs/heads/master' | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:noble | |
steps: | |
- uses: supplypike/setup-bin@v3 | |
with: | |
uri: https://github.com/transifex/cli/releases/download/v1.6.17/tx-linux-amd64.tar.gz | |
name: tx | |
version: 1.6.17 | |
- name: Install dependencies | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: > | |
apt-get update && apt-get install -y | |
build-essential | |
cmake | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libcdio-dev | |
libchromaprint-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew-dev | |
libglib2.0-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqt5x11extras5-dev | |
libsqlite3-dev | |
libtag1-dev | |
pkg-config | |
protobuf-compiler | |
python3-pip | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
libsparsehash-dev | |
ssh | |
- name: Checkout | |
uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: tx init | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
run: tx init | |
- name: cmake | |
working-directory: bin | |
run: cmake .. | |
- name: make | |
working-directory: bin | |
run: make -j2 | |
- name: tx config | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
run: tx add --organization davidsansome --project clementine --resource clementineplayer --file-filter 'src/translations/<lang>.po' --type PO src/translations/en.po | |
- name: tx push | |
env: | |
TX_TOKEN: ${{ secrets.TX_TOKEN }} | |
run: tx push -s | |
create_release: | |
name: Create GitHub Release | |
runs-on: ubuntu-24.04 | |
if: github.ref == 'refs/heads/master' | |
needs: | |
- build_bullseye_64 | |
- build_buster_64 | |
- build_fedora_39 | |
- build_fedora_40 | |
- build_focal_64 | |
- build_jammy_64 | |
- build_noble_64 | |
# - build_mac | |
- build_mingw | |
- build_source | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/[email protected] | |
- uses: actions/download-artifact@v4 | |
with: | |
path: release_artifacts | |
- name: Create draft pre-release | |
id: tag_name | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
set -x | |
VERSION=$(echo release_artifacts/**/*.tar.xz | sed -e 's/.*clementine-\(.*\).tar.xz/\1/') | |
echo "Version: ${VERSION}" | |
echo "version=${VERSION}" >> "$GITHUB_OUTPUT" | |
- name: Create draft pre-release | |
uses: softprops/action-gh-release@v2 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
name: ${{ steps.tag_name.outputs.version }} | |
tag_name: ${{ steps.tag_name.outputs.version }} | |
files: "release_artifacts/**/*" | |
fail_on_unmatched_files: true | |
draft: false | |
prerelease: false | |
build_source: | |
name: Build source tarball | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:focal | |
steps: | |
- name: Install dependencies | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: > | |
apt-get update && apt-get install -y | |
cmake | |
fakeroot | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libboost-serialization-dev | |
libcdio-cdda2 | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew1.5-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libplist-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqca-qt5-2-dev | |
libqca-qt5-2-plugins | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
libusbmuxd-dev | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: cmake .. | |
- name: Build source tarball | |
working-directory: bin | |
run: ../dist/maketarball.sh | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_source | |
path: bin/clementine-*.tar.xz | |
build_fedora_39: | |
name: Build Fedora 39 RPM | |
runs-on: ubuntu-24.04 | |
container: | |
image: fedora:39 | |
env: | |
RPM_BUILD_NCPUS: "2" | |
steps: | |
- name: Install dependencies | |
run: > | |
dnf install --assumeyes | |
@development-tools | |
alsa-lib-devel | |
boost-devel | |
cmake | |
cryptopp | |
cryptopp-devel | |
dbus-devel | |
desktop-file-utils | |
fftw-devel | |
gcc-c++ | |
gettext | |
git | |
glew-devel | |
gstreamer1-devel | |
gstreamer1-plugins-base-devel | |
hicolor-icon-theme | |
libappstream-glib | |
libcdio-devel | |
libchromaprint-devel | |
libgpod-devel | |
liblastfm-qt5-devel | |
libmtp-devel | |
libnotify-devel | |
openssh | |
pkgconfig | |
protobuf-compiler | |
protobuf-devel | |
pulseaudio-libs-devel | |
qca-qt5-devel | |
qca-qt5-ossl | |
qt5-linguist | |
qt5-qtbase-devel | |
qt5-qtx11extras-devel | |
qt5-rpm-macros | |
qtsingleapplication-qt5-devel | |
qtsinglecoreapplication-qt5-devel | |
rpmdevtools | |
sha2-devel | |
sparsehash-devel | |
sqlite-devel | |
taglib-devel | |
tar | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: cmake -DUSE_SYSTEM_QTSINGLEAPPLICATION=On .. | |
- name: Build source tarball | |
working-directory: bin | |
run: ../dist/maketarball.sh | |
- name: Create rpmbuild directory | |
run: mkdir -p ~/rpmbuild/SOURCES | |
- name: Move source tarball | |
working-directory: bin | |
run: mv clementine-*.tar.xz ~/rpmbuild/SOURCES | |
- name: Build RPM | |
working-directory: bin | |
run: rpmbuild -ba ../dist/clementine.spec | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_fedora_39 | |
path: ~/rpmbuild/RPMS/*/clementine-*.rpm | |
build_fedora_40: | |
name: Build Fedora 40 RPM | |
runs-on: ubuntu-24.04 | |
container: | |
image: fedora:40 | |
env: | |
RPM_BUILD_NCPUS: "2" | |
steps: | |
- name: Install dependencies | |
run: > | |
dnf install --assumeyes | |
@development-tools | |
alsa-lib-devel | |
boost-devel | |
cmake | |
cryptopp | |
cryptopp-devel | |
dbus-devel | |
desktop-file-utils | |
fftw-devel | |
gcc-c++ | |
gettext | |
git | |
glew-devel | |
gstreamer1-devel | |
gstreamer1-plugins-base-devel | |
hicolor-icon-theme | |
libappstream-glib | |
libcdio-devel | |
libchromaprint-devel | |
libgpod-devel | |
liblastfm-qt5-devel | |
libmtp-devel | |
libnotify-devel | |
openssh | |
pkgconfig | |
protobuf-compiler | |
protobuf-devel | |
pulseaudio-libs-devel | |
qca-qt5-devel | |
qca-qt5-ossl | |
qt5-linguist | |
qt5-qtbase-devel | |
qt5-qtx11extras-devel | |
qt5-rpm-macros | |
qtsingleapplication-qt5-devel | |
qtsinglecoreapplication-qt5-devel | |
rpmdevtools | |
sha2-devel | |
sparsehash-devel | |
sqlite-devel | |
taglib-devel | |
tar | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: cmake -DUSE_SYSTEM_QTSINGLEAPPLICATION=On .. | |
- name: Build source tarball | |
working-directory: bin | |
run: ../dist/maketarball.sh | |
- name: Create rpmbuild directory | |
run: mkdir -p ~/rpmbuild/SOURCES | |
- name: Move source tarball | |
working-directory: bin | |
run: mv clementine-*.tar.xz ~/rpmbuild/SOURCES | |
- name: Build RPM | |
working-directory: bin | |
run: rpmbuild -ba ../dist/clementine.spec | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_fedora_40 | |
path: ~/rpmbuild/RPMS/*/clementine-*.rpm | |
build_mingw: | |
name: Build Windows Installer | |
runs-on: ubuntu-24.04 | |
container: | |
image: eu.gcr.io/clementine-data/mingw-w64:latest | |
env: | |
PKG_CONFIG_PATH: /target/lib/pkgconfig | |
steps: | |
- name: Fix liblastfm includes | |
run: ln -s /target/include/lastfm /target/include/lastfm5 | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DCMAKE_TOOLCHAIN_FILE=../Toolchain-mingw32.cmake | |
-DCMAKE_BUILD_TYPE=Release | |
- name: make | |
working-directory: bin | |
run: make -j2 | |
- name: Copy output exes | |
working-directory: dist/windows | |
run: cp ../../bin/*.exe . | |
- name: Copy base runtime DLLs | |
run: > | |
cp | |
/usr/lib/gcc/i686-w64-mingw32/*-posix/libgcc_s_sjlj-1.dll | |
/usr/lib/gcc/i686-w64-mingw32/*-posix/libstdc++-6.dll | |
/usr/i686-w64-mingw32/lib/libwinpthread-1.dll | |
dist/windows | |
- name: Copy DLL depdendencies | |
working-directory: /target/bin | |
run: > | |
cp | |
glew32.dll | |
libcdio-19.dll | |
libchromaprint.dll | |
libcrypto-1_1.dll | |
libfaad-2.dll | |
libffi-7.dll | |
libfftw3-3.dll | |
libFLAC-8.dll | |
libgcrypt-20.dll | |
libgio-2.0-0.dll | |
libglib-2.0-0.dll | |
libgmodule-2.0-0.dll | |
libgmp-10.dll | |
libgnutls-30.dll | |
libgobject-2.0-0.dll | |
libgpg-error-0.dll | |
libgpod.dll | |
libgstapp-1.0-0.dll | |
libgstaudio-1.0-0.dll | |
libgstbase-1.0-0.dll | |
libgstfft-1.0-0.dll | |
libgstnet-1.0-0.dll | |
libgstpbutils-1.0-0.dll | |
libgstreamer-1.0-0.dll | |
libgstriff-1.0-0.dll | |
libgstrtp-1.0-0.dll | |
libgstrtsp-1.0-0.dll | |
libgstsdp-1.0-0.dll | |
libgsttag-1.0-0.dll | |
libgstvideo-1.0-0.dll | |
libgthread-2.0-0.dll | |
libhogweed-6.dll | |
libiconv-2.dll | |
libintl-8.dll | |
liblastfm5.dll | |
libmms-0.dll | |
libmp3lame-0.dll | |
libnettle-8.dll | |
libogg-0.dll | |
liboil-0.3-0.dll | |
libopus-0.dll | |
liborc-0.4-0.dll | |
liborc-test-0.4-0.dll | |
libp11-kit-0.dll | |
libpcre-1.dll | |
libplist.dll | |
libprotobuf-17.dll | |
libpsl-5.dll | |
libssl-1_1.dll | |
libsoup-2.4-1.dll | |
libspeex-1.dll | |
libspotify.dll | |
libsqlite3-0.dll | |
libtag.dll | |
libtasn1-6.dll | |
libunistring-2.dll | |
libvorbis-0.dll | |
libvorbisenc-2.dll | |
libxml2-2.dll | |
libwavpack-1.dll | |
Qt5Concurrent.dll | |
Qt5Core.dll | |
Qt5Gui.dll | |
Qt5Network.dll | |
Qt5OpenGL.dll | |
Qt5Sql.dll | |
Qt5Svg.dll | |
Qt5Widgets.dll | |
Qt5WinExtras.dll | |
Qt5Xml.dll | |
zlib1.dll | |
${GITHUB_WORKSPACE}/dist/windows | |
- run: mkdir dist/windows/imageformats | |
- name: Copy Qt imageformat plugin DLLs | |
working-directory: /target/plugins | |
run: > | |
cp | |
imageformats/qgif.dll | |
imageformats/qjpeg.dll | |
imageformats/qsvg.dll | |
${GITHUB_WORKSPACE}/dist/windows/imageformats | |
- run: mkdir dist/windows/platforms | |
- name: Copy Qt platforms plugin DLLs | |
working-directory: /target/plugins | |
run: > | |
cp | |
platforms/qwindows.dll | |
${GITHUB_WORKSPACE}/dist/windows/platforms | |
- run: mkdir dist/windows/styles | |
- name: Copy Qt style plugin DLLs | |
working-directory: /target/plugins | |
run: > | |
cp | |
styles/qwindowsvistastyle.dll | |
${GITHUB_WORKSPACE}/dist/windows/styles | |
- run: mkdir dist/windows/gio-modules | |
- name: Copy GIO modules | |
run: cp /target/lib/gio/modules/libgiognutls.dll dist/windows/gio-modules | |
- run: mkdir dist/windows/gstreamer-plugins | |
- name: Copy gstreamer plugins | |
working-directory: /target/lib/gstreamer-1.0 | |
run: > | |
cp | |
libgstaiff.dll | |
libgstapetag.dll | |
libgstapp.dll | |
libgstasf.dll | |
libgstasfmux.dll | |
libgstaudioconvert.dll | |
libgstaudiofx.dll | |
libgstaudioparsers.dll | |
libgstaudioresample.dll | |
libgstaudiotestsrc.dll | |
libgstautodetect.dll | |
libgstcdio.dll | |
libgstcoreelements.dll | |
libgstdirectsound.dll | |
libgstequalizer.dll | |
libgstfaad.dll | |
libgstflac.dll | |
libgstgdp.dll | |
libgstgio.dll | |
libgsticydemux.dll | |
libgstid3demux.dll | |
libgstid3tag.dll | |
libgstisomp4.dll | |
libgstlame.dll | |
libgstlibav.dll | |
libgstmms.dll | |
libgstogg.dll | |
libgstopus.dll | |
libgstopusparse.dll | |
libgstpbtypes.dll | |
libgstplayback.dll | |
libgstreplaygain.dll | |
libgstrtp.dll | |
libgstrtsp.dll | |
libgstsoup.dll | |
libgstspectrum.dll | |
libgstspeex.dll | |
libgsttaglib.dll | |
libgsttcp.dll | |
libgsttypefindfunctions.dll | |
libgstudp.dll | |
libgstvolume.dll | |
libgstvorbis.dll | |
libgstwavpack.dll | |
libgstwavparse.dll | |
${GITHUB_WORKSPACE}/dist/windows/gstreamer-plugins | |
- name: Build Windows installer | |
working-directory: dist/windows | |
run: makensis clementine.nsi | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_mingw | |
path: dist/windows/ClementineSetup*.exe | |
build_bullseye_64: | |
name: Build Debian Bullseye 64-bit deb | |
runs-on: ubuntu-24.04 | |
container: | |
image: debian:bullseye | |
steps: | |
- name: Install dependencies | |
run: > | |
apt-get update && apt-get install -y | |
build-essential | |
cmake | |
debhelper | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew1.5-dev | |
libglib2.0-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
pkg-config | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DWITH_DEBIAN=ON | |
-DDEB_ARCH=amd64 | |
-DDEB_DIST=bullseye | |
-DENABLE_SPOTIFY_BLOB=OFF | |
- name: make | |
working-directory: bin | |
run : make -j2 deb | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_bullseye_64 | |
path: bin/clementine_*.deb | |
build_buster_64: | |
name: Build Debian Buster 64-bit deb | |
runs-on: ubuntu-24.04 | |
container: | |
image: debian:buster | |
steps: | |
- name: Install dependencies | |
run: > | |
apt-get update && apt-get install -y | |
build-essential | |
cmake | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew1.5-dev | |
libglib2.0-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
pkg-config | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DWITH_DEBIAN=ON | |
-DDEB_ARCH=amd64 | |
-DDEB_DIST=buster | |
-DENABLE_SPOTIFY_BLOB=OFF | |
- name: make | |
working-directory: bin | |
run : make -j2 deb | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_buster_64 | |
path: bin/clementine_*.deb | |
build_focal_64: | |
name: Build Ubuntu Focal 64-bit deb | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:focal | |
steps: | |
- name: Install dependencies | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: > | |
apt-get update && apt-get install -y | |
cmake | |
fakeroot | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libboost-serialization-dev | |
libcdio-cdda2 | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew1.5-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libplist-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqca-qt5-2-dev | |
libqca-qt5-2-plugins | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
libusbmuxd-dev | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DWITH_DEBIAN=ON | |
-DDEB_ARCH=amd64 | |
-DDEB_DIST=focal | |
-DENABLE_SPOTIFY_BLOB=OFF | |
- name: make | |
working-directory: bin | |
run : make -j2 deb | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_focal_64 | |
path: bin/clementine_*.deb | |
build_jammy_64: | |
name: Build Ubuntu Jammy 64-bit deb | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:jammy | |
steps: | |
- name: Install dependencies | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: > | |
apt-get update && apt-get install -y | |
cmake | |
dpkg-dev | |
debhelper | |
fakeroot | |
g++ | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libboost-serialization-dev | |
libcdio-cdda2 | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libplist-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqca-qt5-2-dev | |
libqca-qt5-2-plugins | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
libusbmuxd-dev | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DWITH_DEBIAN=ON | |
-DDEB_ARCH=amd64 | |
-DDEB_DIST=jammy | |
-DENABLE_SPOTIFY_BLOB=OFF | |
- name: make | |
working-directory: bin | |
run : make -j2 deb | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_jammy_64 | |
path: bin/clementine_*.deb | |
build_noble_64: | |
name: Build Ubuntu Noble 64-bit deb | |
runs-on: ubuntu-24.04 | |
container: | |
image: ubuntu:noble | |
steps: | |
- name: Install dependencies | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
run: > | |
apt-get update && apt-get install -y | |
cmake | |
dpkg-dev | |
debhelper | |
fakeroot | |
g++ | |
gettext | |
git | |
libasound2-dev | |
libboost-dev | |
libboost-serialization-dev | |
libcdio-cdda2 | |
libcdio-dev | |
libchromaprint-dev | |
libcrypto++-dev | |
libdbus-1-dev | |
libfftw3-dev | |
libglew-dev | |
libgpod-dev | |
libgstreamer-plugins-base1.0-dev | |
libgstreamer1.0-dev | |
liblastfm5-dev | |
libmtp-dev | |
libmygpo-qt-dev | |
libplist-dev | |
libprotobuf-dev | |
libpulse-dev | |
libqca-qt5-2-dev | |
libqca-qt5-2-plugins | |
libqt5x11extras5-dev | |
libsparsehash-dev | |
libsqlite3-dev | |
libtag1-dev | |
libusbmuxd-dev | |
protobuf-compiler | |
qtbase5-dev | |
qttools5-dev-tools | |
qttools5-dev | |
ssh | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: cmake | |
working-directory: bin | |
run: > | |
cmake .. | |
-DWITH_DEBIAN=ON | |
-DDEB_ARCH=amd64 | |
-DDEB_DIST=noble | |
-DENABLE_SPOTIFY_BLOB=OFF | |
- name: make | |
working-directory: bin | |
run : make -j2 deb | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_noble_64 | |
path: bin/clementine_*.deb | |
build_mac: | |
if: false | |
name: Build Mac DMG | |
runs-on: macos-10.15 | |
steps: | |
- uses: actions/[email protected] | |
- name: git hackery | |
run: git config --global --add safe.directory ${GITHUB_WORKSPACE} | |
- name: Install dependencies | |
run: brew bundle | |
- name: Build libgpod | |
shell: bash | |
env: | |
PERL_MM_USE_DEFAULT: 1 | |
run: | | |
sudo cpan install XML::Parser | |
wget https://downloads.sourceforge.net/project/gtkpod/libgpod/libgpod-0.8/libgpod-0.8.3.tar.bz2 | |
tar -xvf libgpod-0.8.3.tar.bz2 | |
cd libgpod-0.8.3 | |
wget https://raw.githubusercontent.com/macports/macports-ports/master/multimedia/libgpod/files/autogen.sh | |
wget https://raw.githubusercontent.com/macports/macports-ports/master/multimedia/libgpod/files/patch-tools-generic-callout.c.diff | |
patch -p0 < patch-tools-generic-callout.c.diff | |
patch -p1 < $GITHUB_WORKSPACE/3rdparty/libgpod/patches/0001-Look-for-libplist-2.0.patch | |
chmod u+x autogen.sh | |
./autogen.sh | |
./configure --disable-more-warnings \ | |
--disable-silent-rules \ | |
--disable-udev \ | |
--disable-pygobject \ | |
--with-python=no | |
make -j2 | |
sudo make install | |
- name: Fix liblastfm includes | |
run: ln -s /usr/local/include/lastfm /usr/local/include/lastfm5 | |
- name: cmake | |
env: | |
PKG_CONFIG_PATH: /usr/local/lib/pkgconfig | |
Qt5_DIR: /usr/local/opt/qt5/lib/cmake/Qt5 | |
Qt5LinguistTools_DIR: /usr/local/opt/qt5/lib/cmake/Qt5LinguistTools | |
GST_SCANNER_PATH: /usr/local/opt/gstreamer/libexec/gstreamer-1.0/gst-plugin-scanner | |
GST_PLUGIN_PATH: /usr/local/lib/gstreamer-1.0 | |
DEVELOPER_DIR: /Applications/Xcode_10.3.app/Contents/Developer | |
working-directory: bin | |
run: > | |
cmake .. | |
-Wno-dev | |
-DCMAKE_BUILD_TYPE=Release | |
-DCMAKE_OSX_ARCHITECTURES=x86_64 | |
-DGETTEXT_MSGMERGE_EXECUTABLE=/usr/local/opt/gettext/bin/msgmerge | |
-DGETTEXT_MSGFMT_EXECUTABLE=/usr/local/opt/gettext/bin/msgfmt | |
-DGETTEXT_XGETTEXT_EXECUTABLE=/usr/local/opt/gettext/bin/xgettext | |
- name: make | |
working-directory: bin | |
run: make -j2 | |
- name: Copy icon files and resources | |
working-directory: bin | |
run: make install | |
- name: Build DMG | |
working-directory: bin | |
run: make dmg | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: release_mac | |
path: bin/clementine-*.dmg |