root/README.org

1 media-u (worktitle)

A Qt media library management program (for TV screens)
that is ment to be remote controlled via a web interface from a portable device.

1.1 How to Build

1.1.1 build & install with guix (https://gnu.org/s/guix)

run

git submodules update --init
guix package -f package.scm

to run the installed software, see environment variables below.

1.1.2 pure build environment with guix

guix environment --pure -l package.scm

TODO
might need to replace (source (origin …)) with (source #f)

1.1.3 manually

  • download the git submodules in src/libs/
  • build each submodule manually (see their respective readmes)
  • cd back to projectroot
  • qmake && make
  • add the LIBPATH entries listed in src/libs.pri file to LD_LIBRARY_PATH
    alternative: install the libraries to your system's LD_LIBRARY_PATH
  • run the compiled binary with src/ as workingpath

1.1.4 build variables

You can set variables with qmake.
qmake PREFIX=/usr # sets the install directory to /usr/bin, /usr/share
qmake USE_MPV=1 # use libmpv instead of
To set multiple variables use only one command with multiple arguments:
qmake PREFIX=/usr USE_MPV=1

1.2 dependencies (run and build)

1.2.1 following packages must be present at build time:

qt (libqt 5.5)
curl (tested with libcurl 4 and libcurl 7)
gnutls / openssl

1.2.2 following binaries must be present at runtime:

  • mplayer (mplayer2)
    alternative: libmpv (mpv 0.15) you must build with qmake USE_MPV=1 to use it
  • avconv (0.8.6)
  • xdg-mime (xdg-utils 1.0.2) (only on linux)

1.2.3 also check package.scm for the guix recipe

1.3 Environment variables

When you build this with guix,
libcurl will not know the path to your ssl certifictes.

You must define the ENV variable
export SSL_CERT_DIR=/etc/ssl/certs/
or
export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
to the path that is correct on your system.