From 527952e6631bc112bb8b7add561aacadbe0b71a3 Mon Sep 17 00:00:00 2001 From: Eric Hough Date: Mon, 22 Feb 2021 20:45:40 -0800 Subject: [PATCH] bump to matrix and focal --- CHANGELOG.md | 23 ++++++++++++++++++++++- Dockerfile | 20 ++++++++++++-------- README.md | 6 ++++++ doc/advanced.md | 28 +++++++++++++++++++++++----- entrypoint.sh | 2 +- 5 files changed, 64 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a66f0b9..a7c1dbd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,28 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -## [2.8.0] - unreleased +## [3.0.0] - 2021-02-22 + +### Changed + +* Bump to [Kodi 19.0 "Matrix"](https://kodi.tv/article/kodi-190-matrix-release) +* Bump to [Ubuntu 20.04 LTS "Focal Fossa"](https://wiki.ubuntu.com/FocalFossa/ReleaseNotes) + +### Added + +* Ability to customize installation of Kodi add-on packages via new build argument: `KODI_EXTRA_PACKAGES` + +### Deprecated + +* This image will no longer bundle all known Kodi add-ons (screensavers, PVR add-ons, games, etc), and existing add-ons will be removed in version 4.0.0 of this image (with Kodi 20). Please use the `KODI_EXTRA_PACKAGES` feature instead. + +### Removed + +* Libretro core `fbalpha` as it is not available with Kodi 19 + +## Fixed + +* Missing video acceleration libraries ([#17](https://github.com/ehough/docker-kodi/issues/17)) ## Changed diff --git a/Dockerfile b/Dockerfile index 91d689b..f74dd62 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ # https://github.com/ehough/docker-kodi # https://hub.docker.com/r/erichough/kodi/ # -# Copyright 2018-2020 - Eric Hough (eric@tubepress.com) +# Copyright 2018-2021 - Eric Hough (eric@tubepress.com) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,9 +18,9 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -FROM ubuntu:bionic +FROM ubuntu:focal -ARG KODI_VERSION=18.8 +ARG KODI_VERSION=19.0 # https://github.com/ehough/docker-nfs-server/pull/3#issuecomment-387880692 ARG DEBIAN_FRONTEND=noninteractive @@ -33,18 +33,21 @@ RUN apt-get update && \ apt-get -y --purge autoremove && \ rm -rf /var/lib/apt/lists/* +ARG KODI_EXTRA_PACKAGES= + # besides kodi, we will install a few extra packages: # - ca-certificates allows Kodi to properly establish HTTPS connections # - kodi-eventclients-kodi-send allows us to shut down Kodi gracefully upon container termination # - kodi-game-libretro allows Kodi to utilize Libretro cores as game add-ons -# - kodi-game-libretro-* Libretro cores # - kodi-inputstream-* input stream add-ons # - kodi-peripheral-* enables the use of gamepads, joysticks, game controllers, etc. -# - kodi-pvr-* PVR add-ons -# - kodi-screensaver-* additional screensavers # - locales additional spoken language support (via x11docker --lang option) # - pulseaudio in case the user prefers PulseAudio instead of ALSA # - tzdata necessary for timezone selection +# - va-driver-all the full suite of drivers for the Video Acceleration API (VA API) +# - kodi-game-libretro-* Libretro cores (DEPRECATED: WILL BE REMOVED IN VERSION 4 OF THIS IMAGE) +# - kodi-pvr-* PVR add-ons (DEPRECATED: WILL BE REMOVED IN VERSION 4 OF THIS IMAGE) +# - kodi-screensaver-* additional screensavers (DEPRECATED: WILL BE REMOVED IN VERSION 4 OF THIS IMAGE) RUN packages=" \ \ ca-certificates \ @@ -58,7 +61,6 @@ RUN packages=" \ kodi-game-libretro-bsnes-mercury-balanced \ kodi-game-libretro-bsnes-mercury-performance \ kodi-game-libretro-desmume \ - kodi-game-libretro-fbalpha \ kodi-game-libretro-fbalpha2012 \ kodi-game-libretro-fuse \ kodi-game-libretro-gambatte \ @@ -103,7 +105,9 @@ RUN packages=" \ kodi-screensaver-stars \ locales \ pulseaudio \ - tzdata" && \ + tzdata \ + va-driver-all \ + ${KODI_EXTRA_PACKAGES}" && \ \ apt-get update && \ apt-get install -y --no-install-recommends $packages && \ diff --git a/README.md b/README.md index 6c3f4ec..1a7690e 100644 --- a/README.md +++ b/README.md @@ -83,10 +83,16 @@ You can also [terminate the container from the command line](doc/advanced.md#com The [advanced topics](doc/advanced.md) documentation describes a few more useful features and functionality: + * [Custom add-ons](doc/advanced.md#custom-add-ons) * [Image Variants](doc/advanced.md#image-variants) * [Custom Startup Behavior](doc/advanced.md#custom-startup-behavior) * [Command-Line Shutdown](doc/advanced.md#command-line-shutdown) +## Help! + +Something not working quite right? Are you stuck? Please ask your questions in the +[discussion group](https://github.com/ehough/docker-kodi/discussions), where we exchange help and share ideas. + ## Contributing Constructive criticism and contributions are welcome! Please diff --git a/doc/advanced.md b/doc/advanced.md index 52a00a4..d33a496 100644 --- a/doc/advanced.md +++ b/doc/advanced.md @@ -2,20 +2,38 @@ This page details available features that most users won't likely need. +* [Custom add-ons](#custom-add-ons) * [Image Variants](#image-variants) * [Custom Startup Behavior](#custom-startup-behavior) * [Command-Line Shutdown](#command-line-shutdown) --- +## Custom add-ons + +In an effort to control the size of this image, some optional Kodi add-ons (e.g. PVRs, audio formats, screensavers, games, and visualizations) are not bundled by default. If we included each add-on, the image would grow to over 1 GB in size and continue to expand over time. + +Since this image is based on Linux, add-ons will [need to be installed manually](https://kodi.wiki/view/Ubuntu_binary_add-ons). So how can you install the add-ons you need? Easily build your own custom image using the `KODI_EXTRA_PACKAGES` [build argument](https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables---build-arg). Its value is a space-separated list of additional packages that you'd like to install into the image. + +As an example, let's say that you want to run Kodi using this image, but you also want the [Pluto TV PVR add-on](https://kodi.wiki/view/Add-on:Pluto.TV) and a [Libretro core](https://kodi.wiki/view/Libretro) for [Atari](https://kodi.wiki/view/Game_add-ons#Libretro_cores). You could build a custom image using the command: + +```shell script +docker build \ + --build-arg="kodi-pvr-plutotv kodi-game-libretro-atari800" \ + erichough/kodi +``` + +Add-on package names can be found [here](https://launchpad.net/~team-xbmc/+archive/ubuntu/ppa?field.series_filter=focal), and you can install *any* Ubuntu package that you'd like. + ## Image Variants You can run an older version of Kodi, if you'd like to, by using the appropriate image tag. -| tag | Kodi -|--------------|---------| -| `latest` | v18 "Leia" | -| `krypton` | v17 "Krypton" +| tag | Kodi +|-----------|--------------| +| `latest` | v19 "Matrix" | +| `leia` | v18 "Leia" | +| `krypton` | v17 "Krypton" ## Custom Startup Behavior @@ -55,4 +73,4 @@ match your desired timeout. e.g. $ docker stop --time=120 Unless you really need more than 10 seconds, and for simplicity's sake, it's better to signal `x11docker` instead of -using `docker stop`. \ No newline at end of file +using `docker stop`. diff --git a/entrypoint.sh b/entrypoint.sh index f8ace52..c05d751 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -5,7 +5,7 @@ # https://github.com/ehough/docker-kodi # https://hub.docker.com/r/erichough/kodi/ # -# Copyright 2018-2020 - Eric Hough (eric@tubepress.com) +# Copyright 2018-2021 - Eric Hough (eric@tubepress.com) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by