From fc86a2447741ab4f7741182359ee8adc5ed9161c Mon Sep 17 00:00:00 2001 From: Bob Mottram Date: Thu, 25 May 2017 19:37:49 +0100 Subject: [PATCH] Start of koel documentation --- doc/EN/app_koel.org | 44 ++++++ doc/EN/apps.org | 4 + img/koel.jpg | Bin 0 -> 36846 bytes img/koelsettings.jpg | Bin 0 -> 10143 bytes website/EN/app_koel.html | 330 +++++++++++++++++++++++++++++++++++++++ website/EN/apps.html | 206 ++++++++++++------------ 6 files changed, 487 insertions(+), 97 deletions(-) create mode 100644 doc/EN/app_koel.org create mode 100644 img/koel.jpg create mode 100644 img/koelsettings.jpg create mode 100644 website/EN/app_koel.html diff --git a/doc/EN/app_koel.org b/doc/EN/app_koel.org new file mode 100644 index 00000000..20625960 --- /dev/null +++ b/doc/EN/app_koel.org @@ -0,0 +1,44 @@ +#+TITLE: +#+AUTHOR: Bob Mottram +#+EMAIL: bob@freedombone.net +#+KEYWORDS: freedombone, koel, music +#+DESCRIPTION: How to use Koel +#+OPTIONS: ^:nil toc:nil +#+HTML_HEAD: + +#+BEGIN_CENTER +[[file:images/logo.png]] +#+END_CENTER + +#+BEGIN_EXPORT html +
+

Koel

+
+#+END_EXPORT + +This enables you to store your music on the Freedombone server and then access it from any internet connected device. If you just want to make music accessible within your home network then [[./app_dlna.html][DLNA]] is usually sufficient, but if you want to be able to play your music from anywhere then Koel is a better option. + +#+BEGIN_CENTER +[[file:images/koel.jpg]] +#+END_CENTER + +* Installation +Log into your system with: + +#+begin_src bash +ssh myusername@mydomain -p 2222 +#+end_src + +Using cursor keys, space bar and Enter key select *Administrator controls* and type in your password. + +Select *Add/Remove Apps* then *koel*. You will then be asked for a domain name and if you are using FreeDNS also the code for the domain which can be found under *Dynamic DNS* on the FreeDNS site (the random string from "/quick cron example/" which appears after /update.php?/ and before />>/). For more details on obtaining a domain and making it accessible via dynamic DNS see the [[./faq.html][FAQ]]. Typically the domain name you use will be a subdomain, such as /music.mydomainname.net/. It will need to be a domain which you have bought somewhere and own and not one of the FreeDNS subdomains, otherwise you won't be able to get a SSL/TLS certificate for it. + +Go back to the *Administrator control panel*, select *Passwords* then *koel*. You can then use this password together with your email address to initially log in. + +Once logged in go to settings and set the media path to */music*. + +#+BEGIN_CENTER +[[file:images/koelsettings.jpg]] +#+END_CENTER + +* Importing music diff --git a/doc/EN/apps.org b/doc/EN/apps.org index a1713697..50c7b2da 100644 --- a/doc/EN/apps.org +++ b/doc/EN/apps.org @@ -71,6 +71,10 @@ Run your own IRC chat channel which can be secured with a password and accessibl * Jitsi Meet Experimental WebRTC video conferencing system, similar to Google Hangouts. This may not be fully functional, but is hoped to be in the near future. +* Koel +Access your music collection from any internet connected device. + +[[./app_koel.html][How to use it]] * Lychee Make your photo albums available on the web. diff --git a/img/koel.jpg b/img/koel.jpg new file mode 100644 index 0000000000000000000000000000000000000000..df47e1bc63823d03ff18b02e09ec48f71e81c09c GIT binary patch literal 36846 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

39Z^2HsNS8zw>(afvd5;@FOT~2Cw@FM-#85E= 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 literal 0 HcmV?d00001 diff --git a/img/koelsettings.jpg b/img/koelsettings.jpg new file mode 100644 index 0000000000000000000000000000000000000000..25da2c7e751d93d353701d3a8294809371f056be GIT binary patch literal 10143 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 G$o~OaZAx_j literal 0 HcmV?d00001 diff --git a/website/EN/app_koel.html b/website/EN/app_koel.html new file mode 100644 index 00000000..17e410f3 --- /dev/null +++ b/website/EN/app_koel.html @@ -0,0 +1,330 @@ + + + + + + + + + + + + + + + + + +

+ +
+
+
+ +
+

logo.png +

+
+
+ +
+

Koel

+
+ +

+This enables you to store your music on the Freedombone server and then access it from any internet connected device. If you just want to make music accessible within your home network then DLNA is usually sufficient, but if you want to be able to play your music from anywhere then Koel is a better option. +

+ +
+ +
+

koel.jpg +

+
+
+ +
+

Installation

+
+

+Log into your system with: +

+ +
+
ssh myusername@mydomain -p 2222
+
+
+ +

+Using cursor keys, space bar and Enter key select Administrator controls and type in your password. +

+ +

+Select Add/Remove Apps then koel. You will then be asked for a domain name and if you are using FreeDNS also the code for the domain which can be found under Dynamic DNS on the FreeDNS site (the random string from "quick cron example" which appears after update.php? and before >>). For more details on obtaining a domain and making it accessible via dynamic DNS see the FAQ. Typically the domain name you use will be a subdomain, such as music.mydomainname.net. It will need to be a domain which you have bought somewhere and own and not one of the FreeDNS subdomains, otherwise you won't be able to get a SSL/TLS certificate for it. +

+ +

+Go back to the Administrator control panel, select Passwords then koel. You can then use this password together with your email address to initially log in. +

+ +

+Once logged in go to settings and set the media path to /music. +

+ +
+ +
+

koelsettings.jpg +

+
+
+
+
+ +
+

Importing music

+
+
+
+ + + + +
+ + diff --git a/website/EN/apps.html b/website/EN/apps.html index 78ab5d83..4e4aa9ea 100644 --- a/website/EN/apps.html +++ b/website/EN/apps.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + @@ -264,9 +264,9 @@ The base install of the system just contains an email server and Mutt client, bu -
-

DLNA

-
+
+

DLNA

+

Enables you to use the system as a music server which any DLNA compatible devices can connect to within your home network.

@@ -276,9 +276,9 @@ Enables you to use the system as a music server which any DLNA compatible device

-
-

Dokuwiki

-
+
+

Dokuwiki

+

A databaseless wiki system.

@@ -288,9 +288,9 @@ A databaseless wiki system.

-
-

Emacs

-
+
+

Emacs

+

If you use the Mutt client to read your email then this will set it up to use emacs for composing new mail.

@@ -300,9 +300,9 @@ If you use the Mutt client to read your email then this will set it up to use em

-
-

Etherpad

-
+
+

Etherpad

+

Collaborate on creating documents in real time. Maybe you're planning a holiday with other family members or creating documentation for a Free Software project along with other volunteers. Etherpad is hard to beat for simplicity and speed. Only users of the system will be able to access it.

@@ -312,9 +312,9 @@ Collaborate on creating documents in real time. Maybe you're planning a holiday

-
-

Friendica

-
+
+

Friendica

+

Federated social network system.

@@ -324,9 +324,9 @@ Federated social network system.

-
-

Ghost

-
+
+

Ghost

+

Modern looking blogging system.

@@ -336,9 +336,9 @@ Modern looking blogging system.

-
-

GNU Social

-
+
+

GNU Social

+

Federated social network. You can "remote follow" other users within the GNU Social federation.

@@ -348,9 +348,9 @@ Federated social network. You can "remote follow" other users within the

-
-

Gogs

-
+
+

Gogs

+

Lightweight git project hosting system. You can mirror projects from Github, or if Github turns evil then just host your own projects while retaining the familiar fork-and-pull workflow. If you can use Github then you can also use Gogs.

@@ -360,9 +360,9 @@ Lightweight git project hosting system. You can mirror projects from Github, or

-
-

HTMLy

-
+
+

HTMLy

+

Databaseless blogging system. Quite simple and with a markdown-like format.

@@ -372,9 +372,9 @@ Databaseless blogging system. Quite simple and with a markdown-like format.

-
-

Hubzilla

-
+
+

Hubzilla

+

Web publishing platform with social network like features and good privacy controls so that it's possible to specify who can see which content. Includes photo albums, calendar, wiki and file storage.

@@ -384,9 +384,9 @@ Web publishing platform with social network like features and good privacy contr

-
-

IRC Server (ngirc)

-
+
+

IRC Server (ngirc)

+

Run your own IRC chat channel which can be secured with a password and accessible via an onion address. A bouncer is included so that you can receive messages sent while you were offline. Works with Hexchat and other popular clients.

@@ -396,18 +396,30 @@ Run your own IRC chat channel which can be secured with a password and accessibl

-
-

Jitsi Meet

-
+
+

Jitsi Meet

+

Experimental WebRTC video conferencing system, similar to Google Hangouts. This may not be fully functional, but is hoped to be in the near future.

-
-

Lychee

-
+
+

Koel

+
+

+Access your music collection from any internet connected device. +

+ +

+How to use it +

+
+
+
+

Lychee

+

Make your photo albums available on the web.

@@ -417,9 +429,9 @@ Make your photo albums available on the web.

-
-

Mailpile

-
+
+

Mailpile

+

Modern email client which supports GPG encryption.

@@ -429,9 +441,9 @@ Modern email client which supports GPG encryption.

-
-

Matrix

-
+
+

Matrix

+

Multi-user chat with some security and moderation controls.

@@ -441,9 +453,9 @@ Multi-user chat with some security and moderation controls.

-
-

Mediagoblin

-
+
+

Mediagoblin

+

Publicly host video and audio files so that you don't need to use YouTube/Vimeo/etc.

@@ -453,9 +465,9 @@ Publicly host video and audio files so that you don't need to use YouTube/Vimeo/

-
-

Mumble

-
+
+

Mumble

+

The popular VoIP and text chat system. Say goodbye to old-fashioned telephony conferences with silly dial codes. Also works well on mobile.

@@ -465,9 +477,9 @@ The popular VoIP and text chat system. Say goodbye to old-fashioned telephony co

-
-

NextCloud

-
+
+

NextCloud

+

Store files on your server and sync them with laptops or mobile devices. Includes many plugins including videoconferencing and collaborative document editing.

@@ -477,9 +489,9 @@ Store files on your server and sync them with laptops or mobile devices. Include

-
-

PI-Hole

-
+
+

PI-Hole

+

The black hole for web adverts. Block adverts at the domain name level within your local network. It can significantly reduce bandwidth, speed up page load times and protect your systems from being tracked by spyware.

@@ -489,9 +501,9 @@ The black hole for web adverts. Block adverts at the domain name level within yo

-
-

PostActiv

-
+
+

PostActiv

+

An alternative federated social networking system compatible with GNU Social. It includes some optimisations and fixes currently not available within the main GNU Social project.

@@ -501,9 +513,9 @@ An alternative federated social networking system compatible with GNU Social. It

-
-

Profanity

-
+
+

Profanity

+

A shell based XMPP client which you can run on the Freedombone server via ssh.

@@ -513,9 +525,9 @@ A shell based XMPP client which you can run on the Freedombone server via ssh.

-
-

Radicale

-
+
+

Radicale

+

Calendar system compatible with CalDAV and CardDAV. Synch your calendar events easily and securely across all your devices.

@@ -525,9 +537,9 @@ Calendar system compatible with CalDAV and CardDAV. Synch your calendar events e

-
-

Riot Web

-
+
+

Riot Web

+

A browser based user interface for the Matrix federated communications system, including WebRTC audio and video chat.

@@ -537,9 +549,9 @@ A browser based user interface for the Matrix federated communications system, i

-
-

Scuttlebot

-
+
+

Scuttlebot

+

A pub service to help synchronize your messages.

@@ -550,9 +562,9 @@ A pub service to help synchronize your messages.

-
-

SearX

-
+
+

SearX

+

A metasearch engine for customised and private web searches.

@@ -562,9 +574,9 @@ A metasearch engine for customised and private web searches.

-
-

tt-rss

-
+
+

tt-rss

+

Private RSS reader. Pulls in RSS/Atom feeds via Tor and is only accessible via an onion address. Have "the right to read" without the Surveillance State knowing what you're reading. Also available with a user interface suitable for viewing on mobile devices via a browser such as OrFox.

@@ -574,9 +586,9 @@ Private RSS reader. Pulls in RSS/Atom feeds via Tor and is only accessible via a

-
-

Syncthing

-
+
+

Syncthing

+

Possibly the best way to synchronise files across all of your devices. Once it has been set up it "just works" with no user intervention needed.

@@ -586,9 +598,9 @@ Possibly the best way to synchronise files across all of your devices. Once it h

-
-

Tahoe-LAFS

-
+
+

Tahoe-LAFS

+

Robust and encrypted storage of files on one or more server.

@@ -598,9 +610,9 @@ Robust and encrypted storage of files on one or more server.

-
-

Tox

-
+
+

Tox

+

Client and bootstrap node for the Tox chat/VoIP system.

@@ -610,9 +622,9 @@ Client and bootstrap node for the Tox chat/VoIP system.

-
-

Turtl

-
+
+

Turtl

+

A system for privately creating and sharing notes and images, similar to Evernote but without the spying.

@@ -622,18 +634,18 @@ A system for privately creating and sharing notes and images, similar to Evernot

-
-

Vim

-
+
+

Vim

+

If you use the Mutt client to read your email then this will set it up to use vim for composing new mail.

-
-

XMPP

-
+
+

XMPP

+

Chat server which can be used together with client such as Gajim or Conversations to provide end-to-end content security and also onion routed metadata security. Includes advanced features such as client state notification to save battery power on your mobile devices, support for seamless roaming between networks and message carbons so that you can receive the same messages while being simultaneously logged in to your account on more than one device.