[arch-general] asd

Moritz Bunkus moritz at bunkus.org
Wed Sep 30 07:26:19 UTC 2015


Hey,

the MKVToolNix author here. First of all I appreciate all the effort of
packaging MKVToolNix for Arch. Thanks for that.

The orignal PKGBUILD in the repositories builds the whole of MKVToolNix
twice, once configured with GUI support, once configured without
it. However, this is not really necessary.

Being configured with and without GUI support only affects two programs:
mkvinfo and mkvtoolnix-gui. If configured with GUI support then mkvinfo
will be built including a Qt-based GUI in addition to the
always-included text mode interface, and mkvtoolnix-gui will be built in
the first place. If configured without GUI support then mkvinfo will
only include that text mode interface and mkvtoolnix-gui will not be
built at all.

Therefore the PKGBUILD in the pastebin cuts down on compilation time by
only compiling the whole of MKVToolNix once when it's configured with
GUI support. For the text-mode only version of mkvinfo you only have to
configure MKVToolNix and build mkvinfo (and then preserve that binary
over the »drake clean«, of course); nothing else has to be built. Hence
the pastebin'ed PKGBUILD being a lot faster.

There's only one version of mkvinfo's man page in my upstream MKVToolNix
source, and the installed version is identical in both cases (configured
with/without GUI). Therefore including it in each Arch package is indeed
wasting space.

The mkvtoolnix-gui (and therefore the Arch mkvtoolnix-qt package) cannot
work without the mkvmerge executable as the GUI uses the CLI-only
mkvmerge for all of its actual work. Therefore the mkvtoolnix-qt package
must depend on the mkvtoolnix package, and preferably of the same
version: I only guarantee that mkvtoolnix-gui version a.b.c will work
with mkvmerge version a.b.c, nothing else. The GUI will even emit
warnings if the mkvmerge executable's version differs. Therefore
upgrading the mkvtoolnix-qt package without upgrading the mkvtoolnix
package should ideally not be possible.

If you don't want to include mkvinfo's Qt GUI then you still have to do
both builds. Well, you could leave out mkvinfo during the with-GUI-
configured build, but that wouldn't cut down on compilation time a lot
as mkvinfo only consists of three source files on top of the common
library.

I don't particularly care whether or not mkvinfo's GUI is included in
the mkvtoolnix-qt package. I've created it mostly for Windows users as
those are pretty resilient to the advice of using the command line
version ;) On the other hand I can really understand them when I think
of cmd.exe…

Kind regards,
mosu
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.archlinux.org/pipermail/arch-general/attachments/20150930/59433c6c/attachment.asc>


More information about the arch-general mailing list