sintonia/docs/releases/3.0.0-alpha.02.md

187 lines
9.7 KiB
Markdown
Raw Normal View History

2022-02-21 13:18:15 +01:00
The complete LibreTime documentation is available at [libretime.org](http://libretime.org).
The full tarball for the `3.0.0-alpha.2` release of LibreTime is available [here](https://github.com/LibreTime/libretime/releases/download/3.0.0-alpha.2/libretime-3.0.0-alpha.2.tar.gz).
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](https://github.com/LibreTime/libretime/issues).
## Table of Contents
- <a href="#features-3.0.0-alpha.2">Features</a>
- <a href="#bugfixes-3.0.0-alpha.2">Bugfixes</a>
- <a href="#deprecated-3.0.0-alpha.2">Deprecated Features</a>
- <a href="#update-3.0.0-alpha.2">Updating</a>
- <a href="#wheezy-deprecation-3.0.0-alpha.2">Deprecation Announcement for Debian 7 (Wheezy)</a>
- <a href="#issues-3.0.0-alpha.2">Known Issues</a>
- <a href="#issues-silan-3.0.0-alpha.2">Outdated silan reports unreliable cue in/out information</a>
- <a href="#issues-liquidsoap-3.0.0-alpha.2">Liquidsoap >= 1.3.0 Support</a>
- <a href="#colophon-3.0.0-alpha.2">Colophon</a>
<a id="features-3.0.0-alpha.2"/>
## Features
- Updated [upgrade docs](http://libretime.org/manual/upgrading/)
- PHP 7.0 support
- Native systemd unit files on all supported distros
<a id="bugfixes-3.0.0-alpha.2">
## 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
<a id="deprecated-3.0.0-alpha.2">
## 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.
<a id="update-3.0.0-alpha.2">
## Updating
See [the docs](http://libretime.org/manual/upgrading/) for complete information on updating. Please ensure that you have proper [backups](http://libretime.org/manual/backing-up-the-server/) 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.
<a id="wheezy-deprecation-3.0.0-alpha.2">
## 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.
<a id="issues-3.0.0-alpha.2">
## Known Issues
The following issues need a workaround for the time being. Please search the [issues](https://github.com/LibreTime/libretime/issues) before reporting problems not listed below.
<a id="issues-silan-3.0.0-alpha.2">
### 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](https://github.com/radiorabe/centos-rpm-silan) from [RaBe APEL](https://build.opensuse.org/project/show/home:radiorabe:audio).
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](https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=855319) 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 (https://github.com/LibreTime/libretime/issues/177#issuecomment-299195796)
Works for all relevant Debian and Ubuntu distros and installs silan `0.3.3~nmu1`.
```bash
# install package signing key from obs
wget -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 Wheezy
echo 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/Debian_7.0 ./' \
> /etc/apt/sources.list.d/hairmare_silan.list
# Debian Jessie
echo 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/Debian_8.0 ./' \
> /etc/apt/sources.list.d/hairmare_silan.list
# Ubuntu Trusty
echo 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/xUbuntu_14.04 ./' \
> /etc/apt/sources.list.d/hairmare_silan.list
# Ubuntu Xenial
echo 'deb http://download.opensuse.org/repositories/home:/hairmare:/silan/xUbuntu_16.04 ./' \
> /etc/apt/sources.list.d/hairmare_silan.list
# update local package database
apt-get update
# install silan 0.3.3 from obs packages
apt-get install silan
```
#### Local armhf builds for Raspberry Pi 3 (https://github.com/LibreTime/libretime/issues/214#issuecomment-305988355)
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.
```bash
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 (https://github.com/LibreTime/libretime/issues/197)
Legacy upstream hosts patched packages for Ubuntu Trusty on `apt.sourcefabric.org`. They install as `0.3.2~trusty~sfo-1`.
```bash
sudo tee -a /etc/apt/sources.list <<EOD
deb http://apt.sourcefabric.org/ trusty main
EOD
sudo 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 (https://github.com/LibreTime/libretime/issues/193#issuecomment-299174997)
It is worth mentioning that you can disable cue point detection by removing silan from the system.
```bash
sudo apt-get uninstall silan
```
Reportedly this might wake the :cat2: (![happy-cuteness-overload-small](https://user-images.githubusercontent.com/116588/26853726-6d5bd6be-4b13-11e7-9dbd-9d7333e828c5.png) _aww_) or have other [side effects](https://github.com/LibreTime/libretime/issues/214#issuecomment-305748757).
<a id="issues-liquidsoap-3.0.0-alpha.2">
### 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](http://liquidsoap.fm/download.html) or through the [Rabe Liquidsoap Distribution for CentOS (RaBe LSD)](build.opensuse.org/project/show/home:radiorabe:liquidsoap) 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.
```bash
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 https://github.com/LibreTime/libretime/compare/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.
```bash
opam install "liquidsoap<1.3.0"
```
<a id="colophon-3.0.0-alpha.2">
## Colophon
I made some [git of theseus graphs](https://erikbern.com/2016/12/05/the-half-life-of-code.html) 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](https://user-images.githubusercontent.com/116588/26903309-efa373ce-4bdc-11e7-8ce7-c60a72635639.png)
[More GoT graphs](https://github.com/LibreTime/libretime/wiki/Git-of-Theseus) can be found in [the wiki](https://github.com/LibreTime/libretime/wiki). I didn't originally know that the code started out as not much PHP (0e968e62887f3f87f5e90845867dd90c8950deb1), with C++ making an early entry soon after (9c60b17e7e9e9830f103d387780bee555c0283b4). At the time (2004) LibreTime seems to have been called livesupport. In 2006(ish) it was rebranded to CampCaster (fe31d2dfabc83f57d7a5dbb1864022dca76fd604), with the rename to Airtime being worked on somewhere in 2010 (169c4ec214659876d797c025793cb8bd45e088c3).