kodi

kodi

This role will install Kodi media player and configure it. This role only work on Ubuntu for the moment.

The role will do the following tasks:

  • Cleanup old installation (if needed)
  • Install Software Properties Common
  • Add Kodi PPA
  • Install Kodi
  • Configure the sources used by Kodi
  • Configure Kodi
  • Configure the database informations if needed.

Requirements

Ansible 2.4 required

If you want to store Kodi library in a MySQL/Mariadb database, you must install and configure it following the Kodi Wiki page: http://kodi.wiki/view/MySQL/Setting_up_MySQL

Role Variables

System settings

The role will drop all the configurations in the directory /home/{{ kodi_sysuser }}/.kodi:

kodi_sysuser: htpc
kodi_sysgroup: htpc

Package types

The role can use different PPA for the kodi installation (stable, unstable, nightly)

kodi_ppa_use: stable

If needed, you can cleanup an old installation of kodi

kodi_cleanup_old_install: false

GUI Settings

Theses settings are configured in the file guisettings.xml.

If you want to enable and configure the kodi webserver :

kodi_webserver_enable: True

# Kodi webserver configuration
kodi_webserver_username: kodi
kodi_webserver_password: kodi
kodi_webserver_port: 8080

If you want to activate upnp and zereconf :

kodi_zeroconf_enable: true
kodi_upnpserver_enable: true

If you want to activate scan of the video or music library on startup :

kodi_videolibrary_updateonstartup: true
kodi_musiclibrary_updateonstartup: true

If you want to specify a audio device as passthroughdevice, you must determine which interface you want to use :

$ aplay -L
iec958:CARD=MID,DEV=0
    HDA Intel MID, ALC887 Digital
    IEC958 (S/PDIF) Digital Audio Output

and add the following variable :

kodi_audiooutput_passthroughdevice: ALSA:iec958:CARD=MID,DEV=0

If you want to install addons from unknown sources in Kodi :

kodi_addons_unknownsource_enable: true

Samba configuration :

kodi_smb_winserver: ""
kodi_smb_workgroup: "WORKGROUP"

MySQL settings

By default, Kodi stores the library informations in a SQL lite database. But if you want to share this database between multiple Kodi installation, you must use a MySQL/Mariadb database.

kodi_usemysql: false

kodi_mysql:
  host: localhost
  port: 3306
  user: kodi
  pass: changeme

Sources configuration

You can configure kodi sources in advance but you still must use Kodi interface to finish the configuration.

Available Settings:

kodi_sources_video: []
kodi_sources_music: []
kodi_sources_programs: []
kodi_sources_files: []
kodi_sources_pictures: []

Example :

kodi_sources_video:
  - name: Movies
    path: /media/movies
    allowsharing: true
  - name: Tv Shows
    path: smb://192.168.1.1/tvshow
    allowsharing: false

Dependencies

None.

Example Playbook

Here an example of a Playbook:

- hosts: kodi
  become: true

  vars:
    kodi_sources_video:
      - name: Movies
        path: /media/movies
        allowsharing: true
      - name: Tv Shows
        path: smb://192.168.1.1/tvshow
        allowsharing: false

  roles:
     - role: Synehan.kodi

License

BSD

About

Kodi installation and configuration

Install
ansible-galaxy install Synehan/ansible-role-kodi
GitHub repository
License
Unknown
Downloads
33