mirror of
https://github.com/gabehf/Koito.git
synced 2026-03-07 13:38:15 -08:00
docs: update docs
This commit is contained in:
parent
22f899ace3
commit
aa21a81980
5 changed files with 73 additions and 45 deletions
|
|
@ -3,7 +3,20 @@ title: Importing Data
|
|||
description: How to import your existing listening history from other services into Koito.
|
||||
---
|
||||
|
||||
Koito currently supports two sources to import data from: **Spotify** and **Maloja**.
|
||||
Koito currently supports the following sources to import data from:
|
||||
- Spotify
|
||||
- Maloja
|
||||
- LastFM (using https://lastfm.ghan.nl/export/)
|
||||
- ListenBrainz
|
||||
|
||||
:::note
|
||||
ListenBrainz and LastFM imports can take a long time for large imports due to MusicBrainz requests being throttled at one per second. If you want
|
||||
these imports to go faster, you can [disable MusicBrainz](/reference/configuration/#koito_disable_musicbrainz) in the config while running the importer. However, this
|
||||
means that artist aliases will not be automatically fetched for imported artists. This also means that artists will not be associated with their MusicBrainz IDs internally,
|
||||
which can lead to some artist matching issues, especially for people who listen to lots of foreign music. You can also use
|
||||
[your own MusicBrainz mirror](https://musicbrainz.org/doc/MusicBrainz_Server/Setup) and
|
||||
[disable MusicBrainz rate limiting](/reference/configuration/#koito_musicbrainz_url) in the config if you want imports to be faster.
|
||||
:::
|
||||
|
||||
## Spotify
|
||||
|
||||
|
|
@ -25,4 +38,14 @@ Koito relies on file names to find files to import. If the files aren't being im
|
|||
:::note
|
||||
Maloja may have missing or inconsistent track duration information, which means that the 'Hours Listened' statistic may be incorrect after a Maloja import. However, track
|
||||
durations will be filled in as you submit listens using the API.
|
||||
:::
|
||||
:::
|
||||
|
||||
## LastFM
|
||||
|
||||
First, create an export file using [this tool from ghan.nl](https://lastfm.ghan.nl/export/) in JSON format. Then, place the resulting file into the `import` folder in your config directory.
|
||||
Once you restart Koito, it will automatically detect the file as a Last FM import, and begin adding your listen activity immediately.
|
||||
|
||||
## ListenBrainz
|
||||
|
||||
Create a ListenBrainz export file using [the export tool on the ListenBrainz website](https://listenbrainz.org/settings/export/). Then, place the resulting `.zip` file into the `import`
|
||||
folder in your config directory. Once you restart Koito, your ListenBrainz activity will immediately start being imported.
|
||||
|
|
@ -12,7 +12,6 @@ services:
|
|||
container_name: koito
|
||||
depends_on:
|
||||
- db
|
||||
user: 1000:1000
|
||||
environment:
|
||||
- KOITO_DATABASE_URL=postgres://postgres:secret_password@db:5432/koitodb
|
||||
- KOITO_ALLOWED_HOSTS=koito.example.com,192.168.0.100
|
||||
|
|
@ -34,39 +33,12 @@ services:
|
|||
- ./db-data:/var/lib/postgresql/data
|
||||
|
||||
```
|
||||
Or, you can use `docker run` commands. First, you need to run Postgres:
|
||||
```sh
|
||||
docker run \
|
||||
--name psql \
|
||||
--restart unless-stopped \
|
||||
-e POSTGRES_DB=koitodb \
|
||||
-e POSTGRES_USER=postgres \
|
||||
-e POSTGRES_PASSWORD=secret_password \
|
||||
-v ./db-data:/var/lib/postgresql/data \
|
||||
-p 5432:5432 \
|
||||
-d \
|
||||
postgres:16
|
||||
```
|
||||
Then, run Koito:
|
||||
```sh
|
||||
docker run \
|
||||
--name koito \
|
||||
-u 1000:1000 \
|
||||
-e KOITO_DATABASE_URL=postgres://postgres:secret_password@postgres_ip:5432/koitodb \
|
||||
-e KOITO_ALLOWED_HOSTS=koito.example.com,192.168.0.100 \
|
||||
-p 4110:4110 \
|
||||
-v ./koito-data:/etc/koito \
|
||||
--restart unless-stopped \
|
||||
-d \
|
||||
gabehf/koito:latest
|
||||
```
|
||||
|
||||
Be sure to replace `secret_password` with a random password of your choice, and set `KOITO_ALLOWED_HOSTS` to include the domain name or IP address you will be accessing Koito
|
||||
from when using either of the Docker methods described above.
|
||||
|
||||
Those are the two required environment variables. You can find a full list of configuration options in the [configuration reference](/reference/configuration).
|
||||
|
||||
When using `docker run`, you will also need to fill in the IP address of your postgres instance.
|
||||
|
||||
:::caution
|
||||
Setting `KOITO_ALLOWED_HOSTS=*` will allow requests from any host, but this is not recommended as it introduces security vulnerabilities.
|
||||
:::
|
||||
|
|
@ -75,13 +47,15 @@ Setting `KOITO_ALLOWED_HOSTS=*` will allow requests from any host, but this is n
|
|||
|
||||
If you don't want to use docker, you can also build the application from source.
|
||||
|
||||
First, you need to install dependencies. Koito relies on `libvips-dev` to process images.
|
||||
First, you need to install dependencies. Koito relies on `make`, `yarn` for building the client, and `libvips-dev` to process images.
|
||||
|
||||
```sh
|
||||
sudo apt install libvips-dev
|
||||
sudo apt install libvips-dev make npm
|
||||
sudo npm install --global yarn
|
||||
```
|
||||
|
||||
If you aren't installing on an Ubuntu or Debian based system, you can find other ways to install `libvips-dev` on the [libvips wiki](https://github.com/libvips/libvips/wiki/)
|
||||
If you aren't installing on an Ubuntu or Debian based system, you can easily find ways to install make, npm, and yarn by googling, and
|
||||
you can find other ways to install `libvips-dev` on the [libvips wiki](https://github.com/libvips/libvips/wiki/).
|
||||
|
||||
Then, clone the repository and execute the build command using the included Makefile:
|
||||
|
||||
|
|
|
|||
|
|
@ -33,6 +33,9 @@ Koito is configured using **environment variables**. This is the full list of co
|
|||
##### KOITO_MUSICBRAINZ_URL
|
||||
- Default: `https://musicbrainz.org`
|
||||
- Description: The URL Koito will use to contact MusicBrainz. Replace this value if you have your own MusicBrainz mirror.
|
||||
##### KOITO_MUSICBRAINZ_RATE_LIMIT
|
||||
- Default: `1`
|
||||
- Description: The number of requests to send to the MusicBrainz server per second. Unless you are using your own MusicBrainz mirror, __do not touch this value__.
|
||||
##### KOITO_ENABLE_LBZ_RELAY
|
||||
- Default: `false`
|
||||
- Description: Set to `true` if you want to relay requests from the ListenBrainz endpoints on your Koito server to another ListenBrainz compatible server.
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
---
|
||||
title: Example Reference
|
||||
description: A reference page in my new Starlight docs site.
|
||||
---
|
||||
|
||||
Reference pages are ideal for outlining how things work in terse and clear terms.
|
||||
Less concerned with telling a story or addressing a specific use case, they should give a comprehensive outline of what you're documenting.
|
||||
|
||||
## Further reading
|
||||
|
||||
- Read [about reference](https://diataxis.fr/reference/) in the Diátaxis framework
|
||||
Loading…
Add table
Add a link
Reference in a new issue