Προσπαθώ να κτίσω το minitube σε snap πακέτο (και σαφώς να κάνω και το κατάλληλο pull request )
Αυτό έγινε λόγο ότι ο προγραμματιστής της εφαρμογής κοιτά πάντα την latest έκδοση QT που πολλές φορές δεν είναι στα αποθετήρια του Ubuntu. Έτσι για καλύτερο έλεγχο προτιμώ να κτίσω ένα SNAP με την τελευταία έκδοση QT.
Το snapcraft.yml
ειναι το:
name: minitube
base: core18
version: '3.2'
summary: Flavio Toldini's minitube youtube player.
description: |
"Watch YouTube videos in a new way: you type a keyword, Minitube gives you an endless video stream.
Minitube is not about cloning the YouTube website, it aims to create a new TV-like experience."
grade: devel
confinement: devmode
apps:
minitube:
command: bin/desktop-launch bin/ninitube
plugs: [x11, network, home]
environment:
LD_LIBRARY_PATH: $LD_LIBRARY_PATH:$SNAP/usr/local/lib
parts:
libmpv:
source: https://github.com/mpv-player/mpv-build.git
plugin: nil
override-build : |
pip3 install youtube-dl
echo --enable-libx264 >> ffmpeg_options
echo --enable-libmp3lame >> ffmpeg_options
echo --enable-libfdk-aac >> ffmpeg_options
echo --enable-nonfree >> ffmpeg_options
echo --enable-libmpv-shared > mpv_options
./use-mpv-custom v0.29.1
./update
./rebuild -j4
sudo ./install
build-packages:
- dh-autoreconf
- build-essential
- libfreetype6-dev
- libfribidi-dev
- libfontconfig1-dev
- yasm
- libmp3lame-dev
- libx264-dev
- libfdk-aac-dev
- libpulse-dev
- python3
- python3-pip
qt5:
source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
source-subdir: qt
plugin: make
make-parameters: ["FLAVOR=qt5"]
build-packages:
- qtbase5-dev
- dpkg-dev
stage-packages:
- libxkbcommon0
- ttf-ubuntu-font-family
- dmz-cursor-theme
- light-themes
- adwaita-icon-theme
- gnome-themes-standard
- shared-mime-info
- libqt5gui5
- libgdk-pixbuf2.0-0
- libqt5svg5 # for loading icon themes which are svg
- try: [appmenu-qt5] # not available on core18
- locales-all
app:
source: .
plugin: qmake
options:
- "DEFINES += APP_GOOGLE_API_KEY=${GOOGLE_API_KEY}"
build-snaps:
- kde-frameworks-5-core18-sdk
- kde-frameworks-5-core18
override-build: |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$SNAP/usr/local/lib
snapcraftctl build
after:
- qt5
- libmpv
Όπως βλέπετε κτίζω την βιβλιοθήκη libmpv
και αξιοποιώ κάποια snaps τα οποία μου τοποθετούν την τελευταία έκδοση του QT Framework. Παρόλα αυτά λαμβάνω το σφάλμα:
qmake LIBS+="-L/home/pc_magas/minitube/stage/lib" LIBS+="-L/home/pc_magas/minitube/stage/usr/lib" LIBS+="-L/home/pc_magas/minitube/stage/lib/x86_64-linux-gnu" LIBS+="-L/home/pc_magas/minitube/stage/usr/lib/x86_64-linux-gnu" INCLUDEPATH+="/home/pc_magas/minitube/stage/usr/include" DEFINES += APP_GOOGLE_API_KEY=${GOOGLE_API_KEY}
Project MESSAGE: Building Minitube 3.2
Project MESSAGE: Qt 5.12.0 in /opt/qt512
make -j2
/opt/qt512/bin/lrelease locale/ar.ts -qm build/target/locale/ar.qm
make: /opt/qt512/bin/lrelease: Command not found
/opt/qt512/bin/lrelease locale/ast.ts -qm build/target/locale/ast.qm
make: /opt/qt512/bin/lrelease: Command not found
Makefile:904: recipe for target 'build/target/locale/ar.qm' failed
make: *** [build/target/locale/ar.qm] Error 127
make: *** Waiting for unfinished jobs....
Makefile:907: recipe for target 'build/target/locale/ast.qm' failed
make: *** [build/target/locale/ast.qm] Error 127
Failed to run 'make -j2' for 'app': Exited with code 2.
Verify that the part is using the correct parameters and try again.
Που μου λέει πως δεν υπάρχει το εκτελέσιμο lrelease
. Ξέρετε πως μπορώ να το εγκαταστήσω χτίζοντας το από το πηγαίο κώδικα ή μέσου κάποιου έτοιμο snap?