Ubuntu packages

Plug-ins, add-ons, skins, icons, templates and other downloads. Contributions are welcome.

Moderators: XnTriq, helmut, xnview

djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Ubuntu packages

Post by djcj »

I have written a script (Makefile) that downloads XnViewMP and creates a proper Debian package without unavoidable Lintian warnings and with a correct dependency line.

Download: https://github.com/darealshinji/debian/ ... ter.tar.gz
Browse: https://github.com/darealshinji/debian/ ... r/xnviewmp

Usage:
To build a package switch to the xnviewmp directory and run make
Last edited by djcj on Wed Nov 26, 2014 4:55 pm, edited 12 times in total.
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Shell script to create Deb package using system libs

Post by xnview »

I use special version of Qt libraries...
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Shell script to create Deb package using system libs

Post by djcj »

Interresting, I didn't know that. What exactly is the difference between XnView's Qt libs and the regular ones?
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Shell script to create Deb package using system libs

Post by xnview »

djcj wrote:Interresting, I didn't know that. What exactly is the difference between XnView's Qt libs and the regular ones?
Some bugs with Qt, but the major changes are for MacOSX & Windows
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages using system libs

Post by djcj »

I have updated the first post. Instead of a script I now offer you a tiny dummy package for Ubuntu which downloads and installs the program.

@xnview: For future releases I could help you to create Debian packages which are more acurate to the Debian guidelines. Just send me an email. :wink:
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages using system libs

Post by djcj »

I took some time and re-packaged the Debian package. I tried to get rid of all Lintian error messages and warnings and added every file that should be available in a package (manpage, hicolor icons, proper Debian copyright file, etc.). Then I removed everything that is available through the package manager (Qt and exiftools). And I added md5sum files to the debian control files.
The final DEB packages now have a size of only 8 MB! And the only remaining Lintian warnings are those that need to be fixed at compile time.


edit:

I have written a new script that downloads XnViewMP and creates a Debian package, using the debhelper tools.
This means automatic dependency tracking. And it uses xz compression, so now my amd64 build has only 5.6 MB.
It also uses a small tool which removes some unused libraries from the ELF header of some files (less dependencies).

https://github.com/darealshinji/xnviewmp-debian

The debian files are made for the 64 bit version. To use this on the 32 bit program, you have to modify build.sh, xnviewmp.install.in, rules (probably) and likely some other files too.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages

Post by djcj »

I've updated the scripts to build packages of version 0.69. I've also updated the description in the first post.
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Ubuntu packages

Post by xnview »

djcj wrote:I've updated the scripts to build packages of version 0.69. I've also updated the description in the first post.
Where is the script? :)
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages

Post by djcj »

I had re-uploaded my packaging repository. Download link in first post was updated.
Here are the build scripts:
https://github.com/darealshinji/debian/ ... r/xnviewmp
https://github.com/darealshinji/debian/ ... p-all-libs

xnviewmp-all-libs will install the missing libqt4-opengl library too, so the resulting package doesn't need any system Qt libraries at all.
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Ubuntu packages

Post by xnview »

djcj wrote: xnviewmp-all-libs will install the missing libqt4-opengl library too, so the resulting package doesn't need any system Qt libraries at all.
But in the package you have already the qt library??
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages

Post by djcj »

xnview wrote:But in the package you have already the qt library??
libQtOpenGL.so.4 is required by some of the libraries or binaries inside the package, but it's missing from your release tarball.
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Ubuntu packages

Post by xnview »

djcj wrote:
xnview wrote:But in the package you have already the qt library??
libQtOpenGL.so.4 is required by some of the libraries or binaries inside the package, but it's missing from your release tarball.
Which one?
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages

Post by djcj »

It's libphonon_gstreamer.so:

Code: Select all

djcj ~ $ LANG=C readelf -d /usr/lib/xnviewmp/lib/phonon_backend/libphonon_gstreamer.so | grep libQtOpenGL
 0x0000000000000001 (NEEDED)             Shared library: [libQtOpenGL.so.4]
User avatar
xnview
Author of XnView
Posts: 44583
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: Ubuntu packages

Post by xnview »

djcj wrote:It's libphonon_gstreamer.so:

Code: Select all

djcj ~ $ LANG=C readelf -d /usr/lib/xnviewmp/lib/phonon_backend/libphonon_gstreamer.so | grep libQtOpenGL
 0x0000000000000001 (NEEDED)             Shared library: [libQtOpenGL.so.4]
Video doen't work if libQtOpenGL is not here??
Pierre.
djcj
Posts: 60
Joined: Wed Jan 08, 2014 3:37 pm

Re: Ubuntu packages

Post by djcj »

xnview wrote:Video doen't work if libQtOpenGL is not here??
It does, but that wasn't my point. If I add libQtOpenGL it doesn't depend on any more system Qt libs. Though it's probably better to use more system libs, because of security updates.

Anyway, I did a check and video preview does work for me on Ubuntu 14.04 if the following libraries are included:
libphonon_gstreamer.so, libphonon.so, libQtCore.so.4, libQtDBus.so.4, libQtGui.so.4, libQtNetwork.so.4, libQtWebKit.so.4.
The rest can be removed so that system libraries are used instead.