LibreTime v3.0.0-alpha.2 Release Notes

Release Date: 2017-07-12 // almost 5 years ago
  • ๐Ÿ“š The complete LibreTime documentation is available at libretime.org.

    ๐Ÿš€ The full tarball for the 3.0.0-alpha.2 release of LibreTime is available here.

    ๐Ÿš€ Since this is an alpha release there will be bugs in the code. Please report new issues and/or feature requests in the issue tracker.

    Table of Contents

    • ๐Ÿ”‹ Features
    • ๐Ÿ›  Bugfixes
    • ๐Ÿ—„ Deprecated Features
    • โšก๏ธ Updating
    • ๐Ÿ—„ Deprecation Announcement for Debian 7 (Wheezy)
    • Known Issues
      • Outdated silan reports unreliable cue in/out information
      • Liquidsoap >= 1.3.0 Support
    • Colophon

    ๐Ÿ”‹ Features

    • โšก๏ธ Updated upgrade docs
    • ๐Ÿ‘ PHP 7.0 support
    • ๐Ÿ‘ Native systemd unit files on all supported distros

    ๐Ÿ›  Bugfixes

    • ๐Ÿ›  Fix reversed name & description fields in stream 3 additional options
    • ๐Ÿ“ฆ Use file-magic instead of python-magic for working install with distro packages
    • ๐Ÿ‘‰ Use local angular install on radio page instead of cdn
    • ๐Ÿ‘ Allow deleting of initial admin user
    • ๐Ÿ›  Fix gitattribute issues with the docs
    • and some more small stuff

    ๐Ÿ—„ Deprecated Features

    • ๐Ÿš€ The installer distro selection process has been upgraded and the --distribution and --release parameters are not needed anymore. They are still supported for the time being but their use is not recommended.

    โšก๏ธ Updating

    โšก๏ธ See the docs for complete information on updating. Please ensure that you have proper backups and a rollback scenario in place before updating.
    โšก๏ธ If the update does not go smoothly, it may cause significant downtime, so you should always have a fallback system available during the update to ensure broadcast continuity.

    ๐ŸŒ If you installed from GitHub you can git pull in you local working copy and re-run the ./install script with the same --web-root and --web-user arguments you used during the initial install. Tarball users can leave out the git pull part and just call the new version of the install script.

    ๐Ÿ—„ Deprecation Announcement for Debian 7 (Wheezy)

    ๐Ÿ‘ Up until 3.0.0-alpha.2 Debian 7 (Wheezy) was in the list of supported distros.

    ๐Ÿš€ Given that Debian 9 (Stretch) is now available and installing LibreTime on Wheezy probably never worked properly out of the box LibreTime has to update its support matrix. This info is in the release notes as an early warning since we are deprecating a major os version with an upcoming release.

    Known Issues

    โ†ช The following issues need a workaround for the time being. Please search the issues before reporting problems not listed below.

    Outdated silan reports unreliable cue in/out information

    ๐Ÿ— Out of the box the installer installs a broken, outdated version of silan on all Debian based Platforms (ie. Ubuntu). This affects all distros supported by the installer except CentOS which does not have upstream packages and you may either install from source or use the 0.3.3 packages from RaBe APEL.

    ๐Ÿ“ฆ You can check the version of silan by running with silan --version which should report 0.3.3 or with sudo dpkg -s silan | awk '/Version/ {print $2}' that will show the exact package version you installed. Please include this information if you file bugs concerning silan.

    โšก๏ธ There are multiple workarounds to this issue and a bug against the upstream has been opened with Debian. Until this is sorted you should pre-install silan from a source you trust. If your distro has not updated to 0.3.3 yet you can also help by asking your distros maintainers for a bump.

    LibreTime is looking for a Debian Maintainer willing to adopt silan. This would be a much appreciated good deed to the open source broadcast community, both terrestrial and online. Your contribution to silan could literally make a difference to millions of listeners daily.

    The following solutions have been reported to work.

    ๐Ÿ— Silan from OBS build (#177 (comment))

    Works for all relevant Debian and Ubuntu distros and installs silan 0.3.3~nmu1.

    # install package signing key from obswget -qO- http://download.opensuse.org/repositories/home:/hairmare:/silan/Debian\_7.0/Release.key \ | apt-key add -# add OBS repo to sources list (pick the distro you need)# Debian Wheezyecho 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/Debian\_7.0 ./' \ \> /etc/apt/sources.list.d/hairmare\_silan.list# Debian Jessieecho 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/Debian\_8.0 ./' \ \> /etc/apt/sources.list.d/hairmare\_silan.list# Ubuntu Trustyecho 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/xUbuntu\_14.04 ./' \ \> /etc/apt/sources.list.d/hairmare\_silan.list# Ubuntu Xenialecho 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/xUbuntu\_16.04 ./' \ \> /etc/apt/sources.list.d/hairmare\_silan.list# update local package databaseapt-get update# install silan 0.3.3 from obs packagesapt-get install silan
    

    ๐Ÿ— Local armhf builds for Raspberry Pi 3 (#214 (comment))

    ๐Ÿ— Since build.opensuse.org can't build Debian packages on arm due to missing dependencies, the 0.3.3~nmu1 arm package was built in a docker crossdev environment. This is reported to work on Debian Jessie on a Raspberry Pi 3 Model B.

    curl -L -O https://github.com/LibreTime/libretime/files/1049738/silan\_0.3.3.nmu1\_armhf.deb.tar.gz tar xvf silan\_0.3.3.nmu1\_armhf.deb.tar.gz sudo dpkg -i silan\_0.3.3~nmu1\_armhf.deb
    

    ๐Ÿ“ฆ Legacy upstream silan packages (#197)

    ๐Ÿ“ฆ Legacy upstream hosts patched packages for Ubuntu Trusty on apt.sourcefabric.org. They install as 0.3.2~trusty~sfo-1.

    sudo tee -a /etc/apt/sources.list \<\<EODdeb http://apt.sourcefabric.org/ trusty mainEODsudo apt-get update sudo apt-get install sourcefabric-keyring sudo apt-get update sudo apt-get install --reinstall silan=0.3.2~trusty~sfo-1
    

    โœ‚ Remove silan completely (#193 (comment))

    It is worth mentioning that you can disable cue point detection by removing silan from the system.

    sudo apt-get uninstall silan
    

    Reportedly this might wake the ๐Ÿˆ (happy-cuteness-overload-small aww) or have other side effects.

    ๐Ÿ‘ Liquidsoap >= 1.3.0 Support

    ๐Ÿ— Libretime currently only supports liquidsoap < 1.3.0 out of the box. If you install a current version of liquidsoap using OPAM or through the Rabe Liquidsoap Distribution for CentOS (RaBe LSD) you will most likely have liquidsoap 1.3.1 installed.

    You can check your liquidsoap version by running liquidsoap --version.

    If you already have liquidsoap >= 1.3.0 you have a couple of options.

    Liquidsoap 1.3.0 Patchset (#192)

    ๐Ÿ‘ You can patch your installation of LibreTime to support liquidsoap 1.3.0.

    An up to date patch is available through GitHub and can be applied to an unpacked tarball as follows.

    cd libretime-3.0.0-alpha.2/ curl -L https://github.com/LibreTime/libretime/compare/master...radiorabe:feature/liquidsoap-1.3.0.patch | patch -p1
    

    Git users can pull from the branch at master...radiorabe:feature/liquidsoap-1.3.0 directly.

    Install old liquidsoap from opam (#192)

    โฌ‡๏ธ You can downgrade an OPAM install of liquidsoap by running the following command.

    opam install "liquidsoap\<1.3.0"
    

    Colophon

    I made some git of theseus graphs on the history of LibreTime. What makes these interesting is that the project started in CVS, was migrated to Subversion and then to Git the commit history always being preserved. Let's have a look down the shoulders of the giants we are standing on.

    stack_plot

    ๐Ÿ‘€ More GoT graphs can be found in the wiki. I didn't originally know that the code started out as not much PHP (0e968e6), with C++ making an early entry soon after (9c60b17). At the time (2004) LibreTime seems to have been called livesupport. In 2006(ish) it was rebranded to CampCaster (fe31d2d), with the rename to Airtime being worked on somewhere in 2010 (169c4ec).