Opened 8 years ago

Closed 7 years ago

#50972 closed update (fixed)

mkvtoolnix Upgrade to 9.0.0?

Reported by: skycrawl@… Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: mojca (Mojca Miklavec)
Port: mkvtoolnix

Description

Hello, thank you very much for the port. Is it possible to ask to upgrade it to a newer version? 7.9.0 is nearing an age of one year and since a couple of hours ago, with 2 major releases in the meantime it seems. But perhaps it would be better to wait until any potential critical problems get fixed with the next minor release.

Attachments (2)

mkvtoolnix-9.7.1.Portfile-v3 (3.4 KB) - added by johnrosshunt 7 years ago.
MKVToolNix 9.7.1 Portfile
Portfile-mkvtoolnix.diff (3.2 KB) - added by johnrosshunt 7 years ago.
mkvtoolnix Portfile patch

Download all attachments as: .zip

Change History (12)

comment:1 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned

I had tried updating the port to version 8.x some time ago but got stuck on a few issues... the GUI we have been building with 7.x is deprecated and a new GUI is available with 8; I need to figure out how to build that.

comment:2 Changed 8 years ago by skycrawl@…

I just successfully built and installed v9.0.0 locally, including the new GUI. Although there were some issues, it was rather simple following the github repo guide: https://github.com/mbunkus/mkvtoolnix/tree/release-9.0.0#2-installation

Simply install the listed dependencies with MacPorts, except for:

  1. Compliant compiler is already present in the system (Apple LLVM).
  2. A Ruby package needs to be installed (e.g. ruby23) and ruby_select to alias ruby23 as ruby. Drake doesn't impose version limitation on Ruby it seems (https://rubygems.org/gems/drake/versions/0.9.2.0.3.1). MKVToolnix comes with drake so no need to install it.
  3. I installed Qt with MacPorts: sudo port install qt5.
  4. libFlac dependency can be satisfied with: sudo port install flac.
  5. libCurl dependency can be satisfied with: sudo port install curl. Probably also curl-ca-bundle (an HTTPS update site is checked) despite it's not listed. I have it installed too.
  6. No need to build libEBML and libMatroska (MacPorts does that for us).

Also, the later steps complained about missing libiconv for some reason, so:
sudo port install libiconv

And then simply:

  1. Cd to the distro (make sure to have autoconf installed).
  2. Execute: ./autogen.sh
  3. Temporarily link the environment with QT5: PATH=/opt/local/libexec/qt5/bin:$PATH. This was by far the worst part for me to figure out. There are other official options but none of them worked for me (configure didn't find the QT distro). The PATH alteration is not listed anywhere and I simply tried it to make sure... lucky for me, it worked.
  4. Now on to configure in cooperation with MacPorts: ./configure --with-extra-libs=/opt/local/lib --with-extra-includes=/opt/local/include.
  5. Execute: ./drake.
  6. Execute: ./drake install. This apparently installs to /usr/local/bin/, you'll probably want to change prefix in step 4.

Then, it should only be a matter of making this work as a MacPorts package:

  1. +gui variant (probably). Build a Mac app around the /usr/local/bin/mkvtoolnix-gui command and link it to /Applications. Path to icons (./mkvtoolnix/share/icons/), and integrating them (https://discussions.apple.com/thread/827809?start=0&tstart=0).
  2. Probably also +lzo and +bzip2 variants (didn't install those myself).
  3. Requiring and using ruby_select might be a problem for some users that prefer other Ruby distro somewhere on the system.
  4. Other problems that you know of and I don't because I have no experience with developing MacPorts packages.

Hope I didn't forget anything and that it helps :).

Last edited 8 years ago by skycrawl@… (previous) (diff)

comment:3 Changed 8 years ago by mojca (Mojca Miklavec)

Cc: mojca@… added

Cc Me!

comment:4 Changed 8 years ago by ctreleaven (Craig Treleaven)

Related: #44000

comment:5 Changed 7 years ago by l2dy (Zero King)

Below is extracted from https://mkvtoolnix.download/doc/ChangeLog. I'm not sure whether it affects 7.9.0.

  • Note: most of the bugs fixed on 2016-09-06 and 2016-09-07 for issue #1780 are potentially exploitable. The scenario is arbitrary code execution with specially-crafted files. Updating is highly recommended.
Last edited 7 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

Changed 7 years ago by johnrosshunt

MKVToolNix 9.7.1 Portfile

comment:6 Changed 7 years ago by johnrosshunt

Here's my Portfile. Hopefully, somebody finds it useful.

comment:7 Changed 7 years ago by mf2k (Frank Schima)

Thanks. Per the guidelines, please instead attach a unified diff of the Portfile so we can easily see what changes you are proposing.

Changed 7 years ago by johnrosshunt

Attachment: Portfile-mkvtoolnix.diff added

mkvtoolnix Portfile patch

comment:8 Changed 7 years ago by mf2k (Frank Schima)

Keywords: haspatch added

comment:9 Changed 7 years ago by johnrosshunt

I should probably note pugixml was added as a dependency because the system version was newer than the mkvtoolnix included version. In my limited testing, I didn't notice any difference. Also, po4a & pandoc were added as optional dependencies.

comment:10 Changed 7 years ago by ctreleaven (Craig Treleaven)

Resolution: fixed
Status: assignedclosed

In e4f1cd74b10d62f2d597b58b96e345c51519a317/macports-ports:

mkvtoolnix: update to 13.0.0

Various changes to bring the port up to the current release.
Based in part on a patch from johnrosshunt. Thanks!

Closes: #50972

#44000

Note: See TracTickets for help on using tickets.