polaris/README.md

136 lines
6.9 KiB
Markdown
Raw Normal View History

2016-09-15 06:46:39 +00:00
[![Build Status](https://travis-ci.org/agersant/polaris.svg?branch=master)](https://travis-ci.org/agersant/polaris)
2016-12-01 05:30:37 +00:00
<img src="res/readme/logo.png?raw=true"/>
2016-11-29 07:23:09 +00:00
Polaris is a music streaming application, designed to let you enjoy your music collection from any computer or mobile device. Polaris works by streaming your music directly from your own computer, without uploading it to a third-party. It is free and open-source software, without any kind of premium version. The only requirement is that your computer stays on while it streams music!
2016-09-26 03:05:09 +00:00
# Getting Started
## Requirements
2017-05-31 05:34:17 +00:00
One of the following:
2016-09-26 03:05:09 +00:00
- Windows 7 or newer
2017-05-31 05:34:17 +00:00
- Linux (any reasonably modern distribution should do)
2016-09-26 03:12:59 +00:00
2016-09-26 03:05:09 +00:00
## Installation
2017-05-31 05:34:17 +00:00
### Windows
1. Download the [latest installer](https://github.com/agersant/polaris/releases/latest) (you want the .msi file)
2. Run the installer
3. That's it, you're done!
2016-09-26 03:05:09 +00:00
You can now start Polaris from the start menu or from your desktop, Polaris will also start automatically next time you restart your computer. You can tell when Polaris is running by its icon in the notification area (near the clock and volume controls).
2017-05-31 05:34:17 +00:00
### Linux
#### Dependencies
1. Install OpenSSL and its headers. This is most likely available from your distribution's package manager. For instance on Ubuntu, execute `sudo apt-get install libssl-dev`
2. Install the Rust compiler by executing `curl https://sh.rustup.rs -sSf | sh` or using an [alternative method](https://www.rust-lang.org/en-US/install.html)
#### Polaris installation
1. Download the [latest release]((https://github.com/agersant/polaris/releases/latest)) of Polaris (you want the .tar.gz file)
2. Extract the polaris archive in a directory and open a terminal in that directory
3. Execute `make install` (this may take several minutes)
This installation process puts the polaris executable in `~/.local/bin/polaris`, a configuration file in `~/.config/polaris` and several data files under `~/.local/share/polaris`.
From here, you might want to adjust your system to run Polaris on login using Cron, Systemd or whichever method your distribution endorses.
If you want to uninstall Polaris, executing `make uninstall` from the extracted archive's directory.
2016-09-26 03:05:09 +00:00
## Basic Configuration
2017-05-31 05:34:17 +00:00
All configuration is done by editing your configuration file. On Windows, the file is located at `%appdata%\Roaming\Permafrost\Polaris\polaris.toml`. On Linux, the file is located at `~/.config/polaris/polaris.toml`. Note that Polaris needs to be restarted for configuration changes to be taken into account.
2016-09-26 03:05:09 +00:00
### Locating Your Music
Locate the following block in the configuration file:
2016-09-26 03:12:59 +00:00
```
2016-09-26 03:05:09 +00:00
[[mount_dirs]]
source = 'C:/Users/your_name/Music' # Location of the directory on your computer
name = 'root' # Public-facing name for this directory
2016-09-26 03:12:59 +00:00
```
2016-09-26 03:05:09 +00:00
2016-09-26 03:12:59 +00:00
Edit the source field so it points to your music. You can set the name field to anything you like, or keep the default value.
2016-09-26 03:05:09 +00:00
2016-09-26 03:12:59 +00:00
If you would like to stream music from other directories, you can add similar `[[mount_dirs]]` blocks after this one. The default configuration file comes with another such block, prefixed with `#` signs which indicate comments. Feel free to uncomment and use this block.
2016-09-26 03:05:09 +00:00
### Setting Up Users
Locate the following block in the configuration file:
2016-09-26 03:12:59 +00:00
```
2016-09-26 03:05:09 +00:00
[[users]]
name = 'your_first_user'
password = 'your_first_password' # Passwords are stored unencrypted. Do not re-use a sensitive password!
2016-09-26 03:12:59 +00:00
```
2016-09-26 03:05:09 +00:00
Update the username and password to your liking. Heed the warning about password safety, do not re-use your email or banking password here!
Similar to the `[[mount_dirs]]` block, you can add additional `[[users]]` block to create additional users.
### Test Run
Now would be a good time to try out your installation!
- Start Polaris using the shortcut on your desktop
- In your Web browser, access http://localhost:5050
- If all goes well, you will see a login form
- Enter your credentials as you typed them in the `[[users]]` block of your polaris.toml file
- Enjoy the music!
![Polaris Web UI](res/readme/web_ui.png?raw=true "Polaris Web UI")
### Streaming From Other Devices
If you're only interested in streaming on your local network, you can skip this section. If you want to stream from school, from work, or on the go, this is for you.
#### Dynamic DNS
2017-05-31 05:34:17 +00:00
You can access your Polaris installation from anywhere via your computer's public IP address, but there are two problems with that:
2016-09-26 03:05:09 +00:00
- IP addresses are difficult to remember
- Most ISP don't give you a fixed IP address
2017-05-31 05:34:17 +00:00
A solution to these problems is to set up Dynamic DNS, so that your installation can always be reached at a fixed URL.
2016-09-26 03:05:09 +00:00
The steps below will walk you through setting up YDNS and Polaris to give your installation a fixed URL. If you have another solution in mind, or prefer using another Dynamic DNS service, skip to the next section.
1. Register for a free account on https://ydns.io
2. On the YDNS website, access the "My Hosts" page and press the + sign for "Add Host"
3. Fill the host form as described below:
- Domain: ydns.eu
- Name: This part is up to you, whatever you enter will be in the URL you use to access Polaris
- Content: Leave the default. Take a note whether the value looks like a IPv4 address (format: xxx.xxx.xxx.xxx) or a IPv6 address (format: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx)
- Type: Dynamic IP
4. If the content field looked like a IPv4 address: skip to step #6
5. If the content field looked like a IPv6 address:
- Click on your host name (eg. yourdomain.ydns.eu)
- You should now see a page which looks like this:
![YDNS Records](res/readme/ydns_records.png?raw=true "YDNS Records")
- Click on the green "+" icon on the right
- Fill out the new form as described:
2016-09-26 03:15:55 +00:00
- Make sure the `Type` field is set to `A`
2016-09-26 03:05:09 +00:00
- Set content to 0.0.0.0
- You should now be back on the "records" page which was pictured above
- Click on the ID number on the left (#28717 in the example above) of the column that has AAAA listed as its "Type".
- Click on the red trash can icon in the corner to delete this record
- Done!
6. Back to your Polaris configuration file, locate the following block:
2016-09-26 03:12:59 +00:00
```
2016-09-26 03:05:09 +00:00
# Use this section if you want Polaris to broadcast your IP to https://ydns.io
# [ydns]
# host = 'your_hostname.ydns.eu'
# username = 'your_username'
# password = 'your_ydns_password'
2016-09-26 03:12:59 +00:00
```
- Uncomment this block by removing the # signs and leading space from all the lines
2016-09-26 03:05:09 +00:00
- Update the hostname to match what you set in step 5. (eg. yourdomain.ydns.eu)
- Update the username to the email address you use when creating your YDNS account
2016-09-26 03:12:59 +00:00
- You can find your YDNS API password on https://ydns.io. Click on the "User" icon in the top right and then `Preferences > API`.
2016-09-26 03:05:09 +00:00
#### Port Forwarding
Configure port forwarding on your router to redirect port 80 towards port 5050 on the computer where you run Polaris. The exact way to do this depends on your router manufacturer and model.
Don't forget to restart Polaris to apply your configuration changes, and access your music from other computers at http://yourdomain.ydns.eu