Continuing to edit docs
This commit is contained in:
parent
121a9d1ea8
commit
c7caa442cc
15
backup.sh
15
backup.sh
|
@ -1,15 +0,0 @@
|
|||
#/bin/bash
|
||||
|
||||
# Replace /backup with backup folder location!
|
||||
# Used for backing up the media library
|
||||
rsync -aE --delete --info=progress2 /srv/airtime/stor/ /backup
|
||||
|
||||
# Used for backing up the database
|
||||
-u postgres pg_dumpall | gzip -c > libretime-db-backup.gz
|
||||
mv libretime-db-backup.gz /backup
|
||||
|
||||
# Used for backing up Libretime configs
|
||||
cp /etc/airtime/airtime.conf backup/airtime.conf.backup
|
||||
|
||||
# Write date/time of backup
|
||||
date >> /backup/datelog.txt
|
|
@ -6,6 +6,16 @@ category: admin
|
|||
|
||||
## Backup
|
||||
|
||||
A backup script is supplied for your convenience in the *utils/* folder of the Libretime repo.
|
||||
|
||||
```
|
||||
sudo bash libretime-backup.sh # backs up to user's home folder
|
||||
# or
|
||||
sudo bash libretime-backup.sh /backupdir/
|
||||
```
|
||||
|
||||
### Backup Methods
|
||||
|
||||
You can dump the entire *PostgreSQL* database to a zipped file with the combination of the
|
||||
**pg\_dumpall** command and **gzip**. The **pg\_dumpall** command is executed
|
||||
as the user *postgres*, by using the **sudo** command and the **-u** switch. It
|
||||
|
@ -26,21 +36,6 @@ preinstalled with Ubuntu Server.
|
|||
|
||||
> **Note:** Standard *rsync* backups cannot restore files deleted in the backup itself
|
||||
|
||||
```
|
||||
#/bin/bash
|
||||
|
||||
# Replace /backup with backup folder location!
|
||||
# Used for backing up the media library
|
||||
sudo rsync -aE --delete --info=progress2 /srv/airtime/stor/ /backup
|
||||
|
||||
# Used for backing up the database
|
||||
sudo -u postgres pg_dumpall | gzip -c > libretime-db-backup.gz
|
||||
sudo mv libretime-db-backup.gz /backup
|
||||
|
||||
# Write date/time of backup to file
|
||||
date >> /backup/datelog.txt
|
||||
```
|
||||
|
||||
## Restore from a Backup
|
||||
|
||||
When restoring a production database on a cleanly installed LibreTime system, it
|
||||
|
|
|
@ -5,7 +5,7 @@ category: dev
|
|||
permalink: /contribute
|
||||
---
|
||||
|
||||
> LibreTime is a fork of AirTime due to stalled development of the FLOSS version. For background on this,
|
||||
> LibreTime is a fork of AirTime due to stalled development of the open source version. For background on this,
|
||||
see this [open letter to the Airtime community](https://gist.github.com/hairmare/8c03b69c9accc90cfe31fd7e77c3b07d).
|
||||
|
||||
## Bug reporting
|
||||
|
@ -27,7 +27,7 @@ supported? Follow [this guide](/docs/interface-localization) to add your languag
|
|||
|
||||
## Help write documentation for LibreTime
|
||||
|
||||
Our site is now run by Jekyll, who has an installation guide [here](https://jekyllrb.com/docs/installation/) to help get you started.
|
||||
Our site is now built by Jekyll, which has an installation guide [here](https://jekyllrb.com/docs/installation/) to help get you started.
|
||||
After cloning our repo locally, enter the `/docs` directory and run
|
||||
|
||||
```
|
||||
|
|
|
@ -20,7 +20,7 @@ Conversely, you may have a music station which wants to stream at 160kbps or 192
|
|||
|
||||
When sending metadata about your stream to an Icecast server in non-Latin alphabets, you may find that Icecast does not display the characters correctly for an MP3 stream, even though they are displayed correctly for an Ogg Vorbis stream. In the following screenshot, Russian characters are being displayed incorrectly in the *Current Song* field for the MP3 stream:
|
||||
|
||||

|
||||

|
||||
|
||||
The solution is to specify that the metadata for the MP3 mount point you are using should be interpreted using UTF-8 encoding. You can do this by adding the following stanza to the */etc/icecast2/icecast.xml* file, where *libretime.mp3* is the name of your mount point:
|
||||
|
||||
|
@ -119,4 +119,4 @@ Another stream directory service is provided by the Liquidsoap Flows! site <http
|
|||
streams=[("ogg/128k","http://streaming.example.com/libretime_128")],
|
||||
ourstation)
|
||||
|
||||
For the time being, a stream can be registered on the Liquidsoap Flows! site with any username and password. Authenticated services may be offered in future.
|
||||
> **Note:** For the time being, a stream can be registered on the Liquidsoap Flows! site with any username and password. Authenticated services may be offered in future.
|
|
@ -4,10 +4,7 @@ layout: article
|
|||
category: install
|
||||
---
|
||||
|
||||
> Note: this guide is assuming you are using Ubuntu 18.04 LTS for installation, which comes with `ufw` and `netplan`,
|
||||
and that you have already installed `git` and configured `ntp`. NTP configuration instructions can be found [here](#configuring-ntp).
|
||||
While it is possible to install LibreTime on other OSes, such as CentOS 7, Debian 9 and 10, and Raspbian 9 and 10,
|
||||
these are less tested. Firewall and static IP address configuration will need to be done according to your OSes instructions.
|
||||
> Note: this guide is assuming you are using Ubuntu 18.04 LTS for installation, which comes with `ufw` and `netplan`.
|
||||
|
||||
## Minimum System Requirements
|
||||
|
||||
|
@ -52,18 +49,16 @@ Next, configure Ubuntu's firewall by running:
|
|||
|
||||
```
|
||||
sudo ufw enable
|
||||
sudo ufw allow 80/tcp
|
||||
sudo ufw allow 8000/tcp
|
||||
sudo ufw allow 22,80,8000/tcp
|
||||
```
|
||||
|
||||
Unblock ports 8001 and 8002 if you plan to use LibreTime's Icecast server to broadcast livestreams without an external Icecast server acting as a repeater.
|
||||
|
||||
```
|
||||
sudo ufw enable 8001/tcp
|
||||
sudo ufw enable 8002/tcp
|
||||
sudo ufw allow 8001,8002/tcp
|
||||
```
|
||||
|
||||
> If needed, instuctions for setting up a reverse proxy can be found [here](/docs/reverse-proxy).
|
||||
> If needed, instructions for setting up a reverse proxy can be found [here](/docs/reverse-proxy).
|
||||
|
||||
### Installing LibreTime
|
||||
|
||||
|
@ -72,7 +67,7 @@ Installing LibreTime consists of running the following commands in the terminal:
|
|||
```
|
||||
git clone https://github.com/LibreTime/libretime.git
|
||||
cd libretime
|
||||
sudo ./install -fiap
|
||||
sudo bash install -fiap
|
||||
```
|
||||
|
||||
After the install is completed, head to the IP address of the server LibreTime was just installed on
|
||||
|
@ -95,16 +90,12 @@ sudo systemctl enable apache2
|
|||
sudo systemctl enable rabbitmq-server
|
||||
```
|
||||
|
||||
If an error is returned, try adding `.service` to the end of each command. For example:
|
||||
|
||||
```
|
||||
sudo systemctl enable apache2.service
|
||||
```
|
||||
> If an error is returned, try adding `.service` to the end of each command.
|
||||
|
||||
### User Permissions
|
||||
|
||||
If you plan to have LibreTime output analog audio directly from its server to a mixing console or transmitter,
|
||||
the `www-data` user needs to be added to the `audio` user group using the command below.
|
||||
If you plan to have LibreTime output analog audio directly to a mixing console or transmitter,
|
||||
the `www-data` user needs to be added to the `audio` user group using the command below:
|
||||
|
||||
```
|
||||
sudo adduser www-data audio
|
||||
|
|
|
@ -6,7 +6,7 @@ category: admin
|
|||
---
|
||||
|
||||
|
||||
The LibreTime administration interface, as a web application, is fully customizable using the same methods that you might use to modify a website. For instance, you may wish to increase certain font sizes or change the colours in the LibreTime interface to better suit staff users with impaired vision. To do this, open one of the CSS files in the */public/css/* directory under the LibreTime *DocumentRoot* directory in an editor such as **nano**:
|
||||
The LibreTime administration interface, as a web application, is fully customizable using the same methods that you might use to modify a website. For instance, you may wish to increase certain font sizes or change the colours in the LibreTime interface to better suit staff users with impaired vision. To do so, open one of the CSS files in the */public/css/* directory under the LibreTime *DocumentRoot* directory in an editor such as **nano**:
|
||||
|
||||
sudo nano /usr/share/airtime/public/css/styles.css
|
||||
|
||||
|
@ -20,7 +20,7 @@ To change the background colour of the administration interface from dark gray t
|
|||
padding: 0;
|
||||
}
|
||||
|
||||
Save the file with **Ctrl+O**, then refresh your browser to see the change to the interface background colour.
|
||||
Save the file with **Ctrl+S**, then refresh your browser to see the change to the interface background colour.
|
||||
|
||||
Any custom changes that you make to the administration interface should be backed up before upgrading LibreTime to a newer version, otherwise they could be overwritten. If you have made improvements that you think might be useful to other LibreTime users, please contact LibreTime and tell us about them.
|
||||
|
||||
|
@ -36,4 +36,4 @@ Modifying the *status.xsl* page is a good place to start, because this is the de
|
|||
|
||||
After saving the file with Ctrl+O, refresh your web browser, and the new look should now be visible.
|
||||
|
||||

|
||||

|
||||
|
|
|
@ -36,7 +36,7 @@ for remote input connection details.
|
|||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/4GLsU9hPTtM" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
</html>
|
||||
|
||||
### Set Up
|
||||
**Setup**
|
||||
|
||||
1. Download and install butt from <https://danielnoethen.de/> for your OS.
|
||||
*Note: be sure you have butt version 0.1.17 or newer installed*
|
||||
|
@ -56,7 +56,7 @@ for remote input connection details.
|
|||
to use it but that is OS specific and outside of this tutorial. We are assuming
|
||||
you have a mic and mixer or a USB mixer hooked up to or as an external soundcard*
|
||||
|
||||
### Show Time
|
||||
**Show Time**
|
||||
|
||||
1. When its almost your show time go to your LibreTime page and look at the time
|
||||
in the top right when your show starts go to Butt.
|
||||
|
|
|
@ -18,7 +18,7 @@ Multipass isn't currently able to do an automated install from the cloud-init sc
|
|||
After you enter the shell for the first time, you will still need to run the install script for LibreTime.
|
||||
|
||||
```
|
||||
cd libretime
|
||||
cd /libretime
|
||||
sudo bash install -fiap
|
||||
```
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ makes extensive use of its API for some site functionality, which causes
|
|||
[Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS)
|
||||
to occur. By default, CORS requests are blocked by your browser and the origins
|
||||
need to be added to the **Allowed CORS URLs** block in
|
||||
[**General Settings**](settings). These origins should include any
|
||||
[**General Settings**](/docs/settings). These origins should include any
|
||||
domains that will be used externally to connect to your reverse proxy that you
|
||||
want handled by LibreTime. These URLS can also be set during the first run configuration
|
||||
that is displayed when you first install LibreTime
|
||||
|
@ -43,7 +43,7 @@ Nginx set up on `proxy` and LibreTime will be installed on `libretime`. You will
|
|||
access on both. `libretime` also needs to be able to be accessed from `proxy`
|
||||
(`ping libretime` on `proxy`).
|
||||
|
||||
On `libretime`, install LibreTime as described in the [install guide](quickstart). In short
|
||||
On `libretime`, install LibreTime as described in the [install guide](/install). In short
|
||||
this means run the following commands:
|
||||
|
||||
```
|
||||
|
@ -106,7 +106,7 @@ sudo certbot certonly -d libretime.example.com -a standalone
|
|||
sudo systemctl start nginx
|
||||
```
|
||||
|
||||
You can now go to [https://libretime.example.com](https://libretime.example.com) and go
|
||||
You can now go to *https://libretime.example.com* and go
|
||||
through the installer. On `General Settings`, you need to change the Webserver Port to
|
||||
`443` and add the following CORS URLs:
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ title: Scheduling Shows
|
|||
category: interface
|
||||
---
|
||||
|
||||
## Scheduling Shows
|
||||
|
||||
<html>
|
||||
<br>
|
||||
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/TJtWUzAlP08" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
|
|
|
@ -9,7 +9,7 @@ To increase the security of your server, you can enable encrypted access to the
|
|||
### Deploying a certificate with Certbot
|
||||
|
||||
One of the fastest, easiest, and cheapest ways to get an SSL certificate is through [Certbot](https://certbot.eff.org/), as created by the
|
||||
[Electronic Frontier Foundation](https://www.eff.org/). There are some requirements for this process:
|
||||
Electronic Frontier Foundation. There are some requirements for this process:
|
||||
- you have an HTTP website (already installed and configured by default by the LibreTime installer) and
|
||||
- this website is open to the public internet (likely via. port forwarding if your computer is behind a firewall) and
|
||||
- the server is accessible to the public via. port 80
|
||||
|
|
|
@ -32,9 +32,9 @@ Before upgrading a production LibreTime server, you should back up both the Post
|
|||
database and the storage server used by LibreTime. This is especially important if you have not already
|
||||
set up a regular back up routine. This extra back up is a safety measure in case of accidental data loss
|
||||
during the upgrade, for example due to the wrong command being entered when moving files. See
|
||||
[Backing up the server](backing-up-the-server) in this manual for details of how to perform these back ups.
|
||||
[Backing up the server](/docs/backing-up-the-server) in this manual for details of how to perform these back ups.
|
||||
|
||||
The LibreTime [installation script](install) will detect an existing LibreTime or Airtime deployment and back up any configuration files that it finds. We recommend taking your own manual backups of the configuration yourself nevertheless. The install script also tries to restart the needed services during an upgrade. In any case you should monitor if this happened and also take a quick look at the logs files to be sure everything is still fine. Now might be the time to reboot the system or virtual machine LibreTime is running on since regular reboots are part of a healthy system anyway.
|
||||
The LibreTime [installation script](/install) will detect an existing LibreTime or Airtime deployment and back up any configuration files that it finds. We recommend taking your own manual backups of the configuration yourself nevertheless. The install script also tries to restart the needed services during an upgrade. In any case you should monitor if this happened and also take a quick look at the logs files to be sure everything is still fine. Now might be the time to reboot the system or virtual machine LibreTime is running on since regular reboots are part of a healthy system anyway.
|
||||
|
||||
After the upgrade has completed, you may need to clear your web browser's cache before logging into the new version of the LibreTime administration interface. If the playout engine starts up and detects that a show should be playing at the current time, it will skip to the correct point in the current item and start playing.
|
||||
|
||||
|
@ -44,8 +44,4 @@ Airtime 2.5.x versions support upgrading from version 2.3.0 and above. If you ar
|
|||
running a production server with a version of Airtime prior to 2.3.0, you should
|
||||
upgrade it to version 2.3.0 before continuing.
|
||||
|
||||
In Airtime 1.9.0 onwards, the concept of *linked files* was replaced with the
|
||||
concept of *watched folders*. If you are upgrading from a version of Airtime
|
||||
earlier than 1.9.0 and you have previously linked files, the folders they are
|
||||
in will not be watched until you add them to your watched folder list. See
|
||||
[Media Folders](folders) for more details.
|
||||
> **Note:** Airtime's *linked files* and *watched folders* features currently do not work in Libretime.
|
||||
|
|
|
@ -4,40 +4,46 @@ title: Managing Users
|
|||
category: interface
|
||||
---
|
||||
|
||||
> Note: if your Airtime server is accessible from the public Internet (ex. being hosted in a cloud VM)
|
||||
it is recommended that you create a second administrator account with a secure password and then
|
||||
delete the `admin` account, for best security practice.
|
||||
> Note: if your Libretime server is accessible from the public Internet (ex. being hosted in a cloud VM)
|
||||
it is strongly recommended to create a second administrator account with a secure password and then
|
||||
delete the `admin` account.
|
||||
|
||||
## User Account Types
|
||||
|
||||
To add further user accounts to the system, one for each of your station staff that need access to Airtime, click the **New User** button with the plus icon. Enter a user name, password and contact details, and then select the **User Type** from the drop down menu, which can be *Admin*, *Program Manager*, *DJ*, or *Guest*. The difference between these user types is:
|
||||
|
||||
* Guests
|
||||
- Can view shows and the playout log on the Calendar and Dashboard, respectively
|
||||
- Listen to the output stream without leaving the interface
|
||||
* DJs
|
||||
- Everything Guests can do, plus
|
||||
- Upload media (music, PSAs, underwriting, shows, etc.) to their own library (DJs cannot view other libraries)
|
||||
- Edit metadata, delete, and schedule media in their own library to shows they are assigned to
|
||||
- Preview uploaded media _without_ affecting the live playout
|
||||
- Create Playlists, Smart Blocks, and connect Podcasts and Webstreams to LibreTime
|
||||
- Publish media items to LibreTime's built-in My Podcast function or 3rd party sources such as Soundcloud
|
||||
* Program Managers
|
||||
- Everything DJs can do, plus
|
||||
- Manage other users' libraries in addition to their own
|
||||
- Create, edit, and delete color-coded shows on the Calender and assign them to DJs (if needed)
|
||||
- Shows can be scheduled to repeat, with the option of linking content between the shows (helpful if a DJ livestreams in each week)
|
||||
- View listener statistics
|
||||
- Export playout logs for analysis or reporting for music royalties
|
||||
* Administrators
|
||||
- Everything Program Managers can do, plus
|
||||
- Manage all user accounts, including the ability to reset passwords
|
||||
- Configure Track Types for easy sorting of uploaded content
|
||||
- Change system settings
|
||||
**Guests**
|
||||
|
||||
- Can view shows and the playout log on the Calendar and Dashboard, respectively
|
||||
- Listen to the output stream without leaving the interface
|
||||
|
||||
**DJs**
|
||||
|
||||
- Everything Guests can do, plus
|
||||
- Upload media (music, PSAs, underwriting, shows, etc.) to their own library (DJs cannot view other libraries)
|
||||
- Edit metadata, delete, and schedule media in their own library to shows they are assigned to
|
||||
- Preview uploaded media _without_ affecting the live playout
|
||||
- Create Playlists, Smart Blocks, and connect Podcasts and Webstreams to LibreTime
|
||||
|
||||
**Program Managers**
|
||||
|
||||
- Everything DJs can do, plus
|
||||
- Manage other users' libraries in addition to their own
|
||||
- Create, edit, and delete color-coded shows on the Calender and assign them to DJs (if needed)
|
||||
- Shows can be scheduled to repeat, with the option of linking content between the shows (helpful if a DJ livestreams in each week)
|
||||
- View listener statistics
|
||||
- Export playout logs for analysis or reporting for music royalties
|
||||
|
||||
**Administrators**
|
||||
|
||||
- Everything Program Managers can do, plus
|
||||
- Manage all user accounts, including the ability to reset passwords
|
||||
- Configure Track Types for easy sorting of uploaded content
|
||||
- Change system settings
|
||||
|
||||
## Editing or deleting user accounts
|
||||
|
||||

|
||||

|
||||
|
||||
New user accounts that you add will be shown in the table on the left side of the **Users** page. If you have a
|
||||
large number of users on the system, you can use the search tool above the table (which has a magnifying glass icon)
|
||||
|
|
|
@ -4,4 +4,6 @@ category: interface
|
|||
layout: article
|
||||
---
|
||||
|
||||
One example of a widget.
|
||||
|
||||
<iframe frameborder="0" width="400" height="300" src="http://broadcast.wcrsfm.org/embed/player?stream=auto&title=Now Playing"></iframe>
|
|
@ -1,18 +0,0 @@
|
|||
# Installing Jekyll
|
||||
# This script does not work and exists as a skeleton for
|
||||
# someone to use to get Jekyll building outside of GitHub
|
||||
|
||||
echo "Installing Ruby"
|
||||
sudo apt-get install ruby-full build-essential zlib1g-dev
|
||||
|
||||
export GEM_HOME=".gems"
|
||||
export PATH=".gems/bin:$PATH"
|
||||
|
||||
echo "Installing Jekyll"
|
||||
cd docs
|
||||
gem install jekyll bundler
|
||||
|
||||
# Running Jekyll
|
||||
bundle exec jekyll serve --watch --port 8888
|
||||
|
||||
echo "Visit http://localhost:8888 to see the LibreTime website."
|
|
@ -11,7 +11,7 @@ fi
|
|||
|
||||
|
||||
airtime_conf_path=/etc/airtime/airtime.conf
|
||||
sound_folder=/srv/airtime/stor/
|
||||
uploads_folder=/srv/airtime/stor/
|
||||
|
||||
psdl_db=$(grep dbname ${airtime_conf_path} | awk '{print $3;}' )
|
||||
psql_user=$(grep dbuser ${airtime_conf_path} | awk '{print $3;}' )
|
||||
|
@ -29,10 +29,10 @@ echo 'db: Complete'
|
|||
|
||||
## Backup of sounds
|
||||
|
||||
mkdir $backup_folder'sounds/'
|
||||
mkdir $backup_folder'uploads/'
|
||||
|
||||
echo 'stor : Copying sounds...'
|
||||
rsync -r -a --info=progress2 $sound_folder $backup_folder'sounds/'
|
||||
echo 'stor : Copying uploaded files...'
|
||||
rsync -r -a --info=progress2 $uploads_folder $backup_folder'uploads/'
|
||||
echo 'stor: Complete'
|
||||
|
||||
## Backup of libretime config
|
||||
|
@ -42,3 +42,5 @@ mkdir $backup_folder'airtime_config/'
|
|||
echo 'config: Copying config...'
|
||||
rsync -r -a --info=progress2 /etc/airtime/ $backup_folder'airtime_config/'
|
||||
echo 'config: Complete'
|
||||
|
||||
date >> $backup_folder'datelog.txt'
|
||||
|
|
Loading…
Reference in New Issue