diff --git a/tools/docker/README.md b/tools/docker/README.md index fea946830f..5b96dd0e8d 100644 --- a/tools/docker/README.md +++ b/tools/docker/README.md @@ -6,6 +6,7 @@ - focal (Ubuntu 20.04) - jammy (Ubuntu 22.04) - kinetic (Ubuntu 22.10) + - lunar (Ubuntu 23.04) - Debian - stretch (Debian 9.0) - buster (Debian 10.0) @@ -16,7 +17,7 @@ Use the following command to create a docker image and tag it with `libreelec`. ``` -docker build --pull -t libreelec tools/docker/focal +docker build --pull -t libreelec tools/docker/jammy ``` See https://docs.docker.com/engine/reference/commandline/build/ for details on `docker build` usage. diff --git a/tools/docker/jammy/Dockerfile b/tools/docker/jammy/Dockerfile index 38554071af..e03055dd41 100644 --- a/tools/docker/jammy/Dockerfile +++ b/tools/docker/jammy/Dockerfile @@ -18,13 +18,17 @@ RUN adduser --disabled-password --gecos '' docker \ && echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers RUN apt-get update && apt-get install -y \ - wget bash bc gcc sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip unzip diffutils lzop make file \ - g++ xfonts-utils xsltproc default-jre-headless python3 \ - libc6-dev libncurses5-dev \ - libjson-perl libxml-parser-perl libparse-yapp-perl \ - golang-go \ - git openssh-client \ + wget bash bc gcc-12 sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip \ + unzip diffutils lzop make file g++-12 xfonts-utils xsltproc default-jre-headless python3 \ + libc6-dev libncurses5-dev libjson-perl libxml-parser-perl libparse-yapp-perl \ + golang-go git openssh-client \ --no-install-recommends \ && rm -rf /var/lib/apt/lists/* +RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100 \ + --slave /usr/bin/cpp cpp /usr/bin/cpp-12 \ + --slave /usr/bin/g++ g++ /usr/bin/g++-12 \ + --slave /usr/bin/gcov gcov /usr/bin/gcov-12 +RUN update-alternatives --config gcc + USER docker diff --git a/tools/docker/kinetic/Dockerfile b/tools/docker/kinetic/Dockerfile index 5d15869eb5..7e8efdfd05 100644 --- a/tools/docker/kinetic/Dockerfile +++ b/tools/docker/kinetic/Dockerfile @@ -18,12 +18,10 @@ RUN adduser --disabled-password --gecos '' docker \ && echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers RUN apt-get update && apt-get install -y \ - wget bash bc gcc sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip unzip diffutils lzop make file \ - g++ xfonts-utils xsltproc default-jre-headless python3 \ - libc6-dev libncurses5-dev \ - libjson-perl libxml-parser-perl libparse-yapp-perl \ - golang-go \ - git openssh-client \ + wget bash bc gcc sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip \ + unzip diffutils lzop make file g++ xfonts-utils xsltproc default-jre-headless python3 \ + libc6-dev libncurses5-dev libjson-perl libxml-parser-perl libparse-yapp-perl \ + golang-go git openssh-client \ --no-install-recommends \ && rm -rf /var/lib/apt/lists/* diff --git a/tools/docker/lunar/Dockerfile b/tools/docker/lunar/Dockerfile new file mode 100644 index 0000000000..a7f20f2cb0 --- /dev/null +++ b/tools/docker/lunar/Dockerfile @@ -0,0 +1,28 @@ +FROM ubuntu:lunar + +ARG DEBIAN_FRONTEND=noninteractive + +RUN apt-get update \ + && apt-get dist-upgrade -y \ + && apt-get install -y adduser locales sudo \ + && rm -rf /var/lib/apt/lists/* + +RUN locale-gen en_US.UTF-8 \ + && update-locale LANG=en_US.UTF-8 LANGUAGE=en_US:en +ENV LANG=en_US.UTF-8 \ + LANGUAGE=en_US:en \ + LC_ALL=en_US.UTF-8 + +RUN adduser --disabled-password --gecos '' docker \ + && adduser docker sudo \ + && echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +RUN apt-get update && apt-get install -y \ + wget bash bc gcc sed patch patchutils tar bzip2 gzip xz-utils zstd perl gawk gperf zip \ + unzip diffutils lzop make file g++ xfonts-utils xsltproc default-jre-headless python3 \ + libc6-dev libncurses5-dev libjson-perl libxml-parser-perl libparse-yapp-perl \ + golang-go git openssh-client \ + --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +USER docker