Skip to content

Commit

Permalink
Roll back aarch64 images to QT5
Browse files Browse the repository at this point in the history
  • Loading branch information
xthursdayx committed Feb 15, 2024
1 parent 9b1d2fa commit 8c30b77
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 91 deletions.
87 changes: 33 additions & 54 deletions 7zip/Dockerfile.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -15,77 +15,56 @@ RUN \
apt-get install -y --no-install-recommends \
build-essential \
desktop-file-utils \
gcc \
g++ \
git \
qtchooser \
qt6-tools-dev \
qt6-base-dev-tools \
qmake6 \
qmake6-bin \
qt6-base-dev \
qt6-multimedia-dev \
qt6-tools-dev-tools \
libgl-dev \
qt6-l10n-tools \
libqt6opengl6-dev \
libunarr-dev \
qt6-declarative-dev \
libqt6svg6-dev \
libqt6core5compat6-dev \
libbz2-dev \
libglu1-mesa-dev \
liblzma-dev \
libqt6gui6 \
libqt6multimedia6 \
libqt6network6 \
libqt6qml6 \
libqt6quickcontrols2-6 \
qt6-image-formats-plugins \
libqt6sql6 \
libqt6sql6-sqlite \
libpoppler-qt5-dev \
libpoppler-qt5-1 \
libqt5core5a \
libqt5gui5 \
libqt5multimedia5 \
libqt5network5 \
libqt5opengl5-dev \
libqt5qml5 \
libqt5quickcontrols2-5 \
libqt5script5 \
libqt5sql5-sqlite \
libqt5sql5 \
libqt5svg5-dev \
libsqlite3-dev \
make \
p7zip-full \
qtchooser \
qtbase5-dev-tools \
qt5-qmake \
qtbase5-dev \
qtmultimedia5-dev \
qt5-image-formats-plugins \
qtdeclarative5-dev \
qtquickcontrols2-5-dev \
qtscript5-dev \
qttools5-dev-tools \
sqlite3 \
libsqlite3-dev \
unzip \
wget \
zlib1g-dev && \
wget && \
# clone yacreaderlibraryserver
git clone -b master --single-branch https://github.com/YACReader/yacreader.git /src/git && \
cd /src/git && \
git checkout $YACR_VERSION && \
# install 7zip libraries
# install p7zip libraries
cd /src/git/compressed_archive && \
wget "https://github.com/xthursdayx/yacreader-7z-deps/blob/main/7z2301-arm64-src.7z?raw=true" -O /src/git/compressed_archive/7z2301-arm64-src.7z && \
7z x /src/git/compressed_archive/7z2301-arm64-src.7z -o/src/git/compressed_archive/lib7zip && \
apt-get remove -y \
p7zip-full \
p7zip && \
#rm -rf /usr/bin/7zr && \
#rm -rf /usr/lib/p7zip && \
cp /src/git/compressed_archive/lib7zip/debian/7zip/usr/bin/7z.7zip /usr/bin/7z && \
cp /src/git/compressed_archive/lib7zip/debian/7zip/usr/bin/7za.7zip /usr/bin/7za && \
cp /src/git/compressed_archive/lib7zip/debian/7zip/usr/bin/7zr.7zip /usr/bin/7zr && \
cp /src/git/compressed_archive/lib7zip/debian/7zip/usr/bin/7zz /usr/bin/7zz && \
cp -r /src/git/compressed_archive/lib7zip/debian/7zip/usr/lib/7zip /usr/lib/ && \
# fix qtchooser qmake install - https://askubuntu.com/questions/1460242/ubuntu-22-04-with-qt6-qmake-could-not-find-a-qt-installation-of
qtchooser -install qt6 $(which qmake6) && \
export QT ELECT=qt6 && \
# build yacrederlibraryserver
wget "https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_src_all.tar.bz2" && \
tar xjf /src/git/compressed_archive/p7zip_16.02_src_all.tar.bz2 -C /src/git/compressed_archive && \
mv /src/git/compressed_archive/p7zip_16.02 /src/git/compressed_archive/libp7zip && \
# build yacreaderlibraryserver
cd /src/git/YACReaderLibraryServer && \
qtchooser -list-versions && \
qmake6 PREFIX=/app CONFIG+="7zip no_pdf server_standalone" YACReaderLibraryServer.pro && \
qmake6 -v && \
qmake PREFIX=/app CONFIG+="7zip server_standalone" YACReaderLibraryServer.pro && \
make && \
make install && \
# clean up
# clean up
cd / && \
apt-get clean && \
apt-get purge -y build-essential g++ gcc git make qmake6 qtchooser unzip wget && \
apt-get purge -y build-essential g++ git make qt5-qmake unzip wget && \
apt-get -y autoremove && \
apt-get install -y --no-install-recommends \
libqt6core5compat6-dev && \
rm -rf \
/src \
/tmp/* \
Expand Down
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ YACReaderLibraryServer makes it easy to run a home comics server to serve your c

## Setup Instructions:

You can choose to install one of two versions of the YACReaderLibraryServer docker image, each compiled with a different compression backend - either [p7zip](https://sourceforge.net/projects/p7zip/files/p7zip/16.02/) or [unarr](https://github.com/selmf/unarr). These two versions are handled via the Docker repository tags `xthursdayx/yacreaderlibrary-server-docker:pzip` or `xthursdayx/yacreaderlibrary-server-docker:unarr`.
You can choose to install one of two versions of the YACReaderLibraryServer docker image, each compiled with a different compression backend - either [7zip](https://launchpad.net/ubuntu/+source/7zip/23.01+dfsg-3) or [unarr](https://github.com/selmf/unarr). These two versions are handled via the Docker repository tags `xthursdayx/yacreaderlibrary-server-docker:7zip` or `xthursdayx/yacreaderlibrary-server-docker:unarr`.

For the best stability and general quality, it is recommended that you install YACReaderLibraryServer with `unarr`, so this version is the default installation. It should be noted, however, that as of [version 1.0.1](https://github.com/selmf/unarr/releases/tag/v1.0.1), `unarr` supports fewer formats than `p7zip`, notably RAR5. There is also some evidence that YACReaderLibraryServer compiled with `p7zip` may scan and create your comics library(s) faster than the version complied with `unarr`, so the choice is yours. In practice, the `unarr` rarely causes issues as the vast majority of comic books use either zip or RAR4 compression, which is handled nicely by this backend, and after the initial library creation, library updates proceed smoothly with either decompression backend.
For the best stability and general quality, it is recommended that you install YACReaderLibraryServer with `unarr`, so this version is the default installation. It should be noted, however, that as of [version 1.0.1](https://github.com/selmf/unarr/releases/tag/v1.0.1), `unarr` supports fewer formats than `7zip`, notably RAR5. There is also some evidence that YACReaderLibraryServer compiled with `7zip` may scan and create your comics library(s) faster than the version complied with `unarr`, so the choice is yours. In practice, the `unarr` rarely causes issues as the vast majority of comic books use either zip or RAR4 compression, which is handled nicely by this backend, and after the initial library creation, library updates proceed smoothly with either decompression backend.

If you would like to use the default `unarr` backend, then you do not need to add a tag to `xthursdayx/yacreaderlibrary-server-docker` since it will default to the `latest`/`unarr` tag.

Expand Down Expand Up @@ -169,6 +169,8 @@ Here are the instructions for updating containers:

## Versions

* **15.02.24:** - Roll aarch64 images back to QT5 to temporarily fix CI build issue.

* **15.02.24:** - Update YACReader to 9.14.2, swith p7zip branch to 7zip and update to QT6 for the `7zip` image.

* **06.02.24:** - Update YACReader to 9.14.1 and update to QT6 for the `unarr` image.
Expand Down
58 changes: 23 additions & 35 deletions unarr/Dockerfile.aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -16,39 +16,34 @@ RUN \
build-essential \
cmake \
desktop-file-utils \
gcc \
g++ \
git \
qtchooser \
qt6-tools-dev \
qt6-base-dev-tools \
qmake6 \
qmake6-bin \
qt6-base-dev \
qt6-multimedia-dev \
qt6-tools-dev-tools \
libgl-dev \
qt6-l10n-tools \
libqt6opengl6-dev \
libunarr-dev \
qt6-declarative-dev \
libqt6svg6-dev \
libqt6core5compat6-dev \
libbz2-dev \
libglu1-mesa-dev \
liblzma-dev \
libqt6gui6 \
libqt6multimedia6 \
libqt6network6 \
libqt6qml6 \
libqt6quickcontrols2-6 \
qt6-image-formats-plugins \
libqt6sql6 \
libqt6sql6-sqlite \
libpoppler-qt5-dev \
libpoppler-qt5-1 \
libqt5core5a \
libqt5gui5 \
libqt5multimedia5 \
libqt5network5 \
libqt5opengl5-dev \
libqt5qml5 \
libqt5quickcontrols2-5 \
libqt5script5 \
libqt5sql5-sqlite \
libqt5sql5 \
libqt5svg5 \
libsqlite3-dev \
make \
p7zip-full \
mercurial \
qtbase5-dev \
qt5-image-formats-plugins \
qt5-qmake \
qtdeclarative5-dev \
qtmultimedia5-dev \
qtscript5-dev \
sqlite3 \
libsqlite3-dev \
unzip \
wget \
zlib1g-dev && \
Expand All @@ -60,26 +55,19 @@ RUN \
cmake -DENABLE_7Z=ON .. && \
make && \
make install && \
# fix qtchooser qmake install - https://askubuntu.com/questions/1460242/ubuntu-22-04-with-qt6-qmake-could-not-find-a-qt-installation-of
qtchooser -install qt6 $(which qmake6) && \
export QT_SELECT=qt6 && \
# build yacreaderlibraryserver
git clone -b master --single-branch https://github.com/YACReader/yacreader.git /src/git && \
cd /src/git && \
git checkout $YACR_VERSION && \
cd /src/git/YACReaderLibraryServer && \
qtchooser -list-versions && \
qmake6 PREFIX=/app CONFIG+="unarr no_pdf server_standalone" YACReaderLibraryServer.pro && \
qmake6 -v && \
qmake PREFIX=/app CONFIG+="unarr server_standalone" YACReaderLibraryServer.pro && \
make && \
make install && \
# clean up
cd / && \
apt-get clean && \
apt-get purge -y build-essential cmake g++ gcc git make qmake6 qtchooser unzip wget && \
apt-get purge -y build-essential cmake g++ git make qt5-qmake unzip wget && \
apt-get -y autoremove && \
apt-get install -y --no-install-recommends \
libqt6core5compat6-dev && \
rm -rf \
/src \
/tmp/* \
Expand Down

0 comments on commit 8c30b77

Please sign in to comment.