From 208735a305e17e5076b03fdb09b68bc627e9ad0f Mon Sep 17 00:00:00 2001 From: mbattista Date: Sat, 3 Apr 2021 12:10:42 +0100 Subject: [PATCH 1/6] ARM container do need their own Dockerfile --- .m1k1o/build | 2 +- .m1k1o/chromium/Dockerfile | 6 +++--- .m1k1o/chromium/DockerfileARM | 19 +++++++++++++++++++ .m1k1o/chromium/supervisord.conf | 2 +- .m1k1o/firefox/DockerfileARM | 24 ++++++++++++++++++++++++ 5 files changed, 48 insertions(+), 5 deletions(-) create mode 100644 .m1k1o/chromium/DockerfileARM create mode 100644 .m1k1o/firefox/DockerfileARM diff --git a/.m1k1o/build b/.m1k1o/build index 70f1a00..ec5a987 100755 --- a/.m1k1o/build +++ b/.m1k1o/build @@ -55,7 +55,7 @@ build_arm() { docker build -t "${BUILD_IMAGE}:arm-base" -f arm-base/Dockerfile "${BASE}" else # buld ARM image - docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/Dockerfile" "$1/" + docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/DockerfileARM" "$1/" fi } diff --git a/.m1k1o/chromium/Dockerfile b/.m1k1o/chromium/Dockerfile index a6e7d62..5a1dd1b 100644 --- a/.m1k1o/chromium/Dockerfile +++ b/.m1k1o/chromium/Dockerfile @@ -4,13 +4,13 @@ FROM $BASE_IMAGE # # install neko chromium RUN set -eux; apt-get update; \ - apt-get install -y --no-install-recommends unzip chromium openbox; \ + apt-get install -y --no-install-recommends unzip chromium-browser openbox; \ # # install widevine module WIDEVINE_VERSION=$(wget --quiet -O - https://dl.google.com/widevine-cdm/versions.txt | tail -n 1); \ wget -O /tmp/widevine.zip "https://dl.google.com/widevine-cdm/$WIDEVINE_VERSION-linux-x64.zip"; \ - unzip -p /tmp/widevine.zip libwidevinecdm.so > /usr/lib/chromium/libwidevinecdm.so; \ - chmod 644 /usr/lib/chromium/libwidevinecdm.so; \ + unzip -p /tmp/widevine.zip libwidevinecdm.so > /usr/lib/chromium-browser/libwidevinecdm.so; \ + chmod 644 /usr/lib/chromium-browser/libwidevinecdm.so; \ rm /tmp/widevine.zip; \ # # clean up diff --git a/.m1k1o/chromium/DockerfileARM b/.m1k1o/chromium/DockerfileARM new file mode 100644 index 0000000..1d23fc6 --- /dev/null +++ b/.m1k1o/chromium/DockerfileARM @@ -0,0 +1,19 @@ +ARG BASE_IMAGE=m1k1o/neko:base +FROM $BASE_IMAGE + +# +# install neko chromium +RUN set -eux; apt-get update; \ + apt-get install -y --no-install-recommends unzip chromium-browser openbox libwidevinecdm0; \ + # + # clean up + apt-get --purge autoremove -y unzip; \ + apt-get clean -y; \ + rm -rf /var/lib/apt/lists/* /var/cache/apt/* + +# +# copy configuation files +COPY supervisord.conf /etc/neko/supervisord/chromium.conf +COPY --chown=neko preferences.json /home/neko/.config/chromium/Default/Preferences +COPY policies.json /etc/chromium/policies/managed/policies.json +COPY openbox.xml /etc/neko/openbox.xml diff --git a/.m1k1o/chromium/supervisord.conf b/.m1k1o/chromium/supervisord.conf index a972017..635fb03 100644 --- a/.m1k1o/chromium/supervisord.conf +++ b/.m1k1o/chromium/supervisord.conf @@ -1,6 +1,6 @@ [program:chromium] environment=HOME="/home/%(ENV_USER)s",USER="%(ENV_USER)s",DISPLAY="%(ENV_DISPLAY)s" -command=/usr/bin/chromium --window-position=0,0 --display=%(ENV_DISPLAY)s --user-data-dir=/home/neko/.config/chromium --no-first-run --start-maximized --bwsi --force-dark-mode --disable-file-system --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage +command=/usr/bin/chromium-browser --window-position=0,0 --display=%(ENV_DISPLAY)s --user-data-dir=/home/neko/.config/chromium --no-first-run --start-maximized --bwsi --force-dark-mode --disable-file-system --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage autorestart=true priority=800 user=%(ENV_USER)s diff --git a/.m1k1o/firefox/DockerfileARM b/.m1k1o/firefox/DockerfileARM new file mode 100644 index 0000000..3ea8b72 --- /dev/null +++ b/.m1k1o/firefox/DockerfileARM @@ -0,0 +1,24 @@ +ARG BASE_IMAGE=m1k1o/neko:base +FROM $BASE_IMAGE + +# +# install firefox-esr +RUN set -eux; apt-get update; \ + apt-get install -y --no-install-recommends openbox firefox-esr libwidevinecdm0; \ + # + # install extensions + mkdir -p /usr/lib/firefox-esr/distribution/extensions; \ + wget -O '/usr/lib/firefox-esr/distribution/extensions/uBlock0@raymondhill.net.xpi' https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi; \ + wget -O /usr/lib/firefox-esr/distribution/extensions/nordvpnproxy@nordvpn.com.xpi https://addons.mozilla.org/firefox/downloads/latest/nordvpn-proxy-extension/latest.xpi; \ + # + # clean up + apt-get clean -y; \ + rm -rf /var/lib/apt/lists/* /var/cache/apt/* + +# +# copy configuation files +COPY supervisord.conf /etc/neko/supervisord/firefox.conf +COPY neko.js /usr/lib/firefox-esr/mozilla.cfg +COPY autoconfig.js /usr/lib/firefox-esr/defaults/pref/autoconfig.js +COPY policies.json /usr/lib/firefox-esr/distribution/policies.json +COPY openbox.xml /etc/neko/openbox.xml From f9aaabd831ccf79e83a6d7430d9f92ba27962322 Mon Sep 17 00:00:00 2001 From: m1k1o Date: Sat, 3 Apr 2021 13:50:54 +0200 Subject: [PATCH 2/6] change ARM Dockerfile base & names. --- .m1k1o/{arm-base/Dockerfile => base/Dockerfile.arm} | 0 .m1k1o/build | 4 ++-- .m1k1o/chromium/{DockerfileARM => Dockerfile.arm} | 2 +- .m1k1o/firefox/{DockerfileARM => Dockerfile.arm} | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) rename .m1k1o/{arm-base/Dockerfile => base/Dockerfile.arm} (100%) rename .m1k1o/chromium/{DockerfileARM => Dockerfile.arm} (94%) rename .m1k1o/firefox/{DockerfileARM => Dockerfile.arm} (96%) diff --git a/.m1k1o/arm-base/Dockerfile b/.m1k1o/base/Dockerfile.arm similarity index 100% rename from .m1k1o/arm-base/Dockerfile rename to .m1k1o/base/Dockerfile.arm diff --git a/.m1k1o/build b/.m1k1o/build index ec5a987..4a484c2 100755 --- a/.m1k1o/build +++ b/.m1k1o/build @@ -52,10 +52,10 @@ build_arm() { if [ "$1" = "base" ] then # build ARM base - docker build -t "${BUILD_IMAGE}:arm-base" -f arm-base/Dockerfile "${BASE}" + docker build -t "${BUILD_IMAGE}:arm-base" -f base/Dockerfile.arm "${BASE}" else # buld ARM image - docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/DockerfileARM" "$1/" + docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/Dockerfile.arm" "$1/" fi } diff --git a/.m1k1o/chromium/DockerfileARM b/.m1k1o/chromium/Dockerfile.arm similarity index 94% rename from .m1k1o/chromium/DockerfileARM rename to .m1k1o/chromium/Dockerfile.arm index 1d23fc6..4cbb4ac 100644 --- a/.m1k1o/chromium/DockerfileARM +++ b/.m1k1o/chromium/Dockerfile.arm @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=m1k1o/neko:base +ARG BASE_IMAGE=m1k1o/neko:arm-base FROM $BASE_IMAGE # diff --git a/.m1k1o/firefox/DockerfileARM b/.m1k1o/firefox/Dockerfile.arm similarity index 96% rename from .m1k1o/firefox/DockerfileARM rename to .m1k1o/firefox/Dockerfile.arm index 3ea8b72..a307aed 100644 --- a/.m1k1o/firefox/DockerfileARM +++ b/.m1k1o/firefox/Dockerfile.arm @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=m1k1o/neko:base +ARG BASE_IMAGE=m1k1o/neko:arm-base FROM $BASE_IMAGE # From 5931123bb314dbf7503ceafadffdc80434a6010b Mon Sep 17 00:00:00 2001 From: m1k1o Date: Sat, 3 Apr 2021 13:56:41 +0200 Subject: [PATCH 3/6] arm build with common dockerfile. --- .m1k1o/build | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.m1k1o/build b/.m1k1o/build index 4a484c2..e084846 100755 --- a/.m1k1o/build +++ b/.m1k1o/build @@ -43,7 +43,7 @@ build() { # build base docker build -t "${BUILD_IMAGE}:base" -f base/Dockerfile "${BASE}" else - # buld image + # build image docker build -t "${BUILD_IMAGE}:$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:base" -f "$1/Dockerfile" "$1/" fi } @@ -53,9 +53,13 @@ build_arm() { then # build ARM base docker build -t "${BUILD_IMAGE}:arm-base" -f base/Dockerfile.arm "${BASE}" - else - # buld ARM image + elif [ -f "$1/Dockerfile.arm" ] + then + # build dedicated ARM image docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/Dockerfile.arm" "$1/" + else + # try to build ARM image with common Dockerfile + docker build -t "${BUILD_IMAGE}:arm-$1" --build-arg="BASE_IMAGE=${BUILD_IMAGE}:arm-base" -f "$1/Dockerfile" "$1/" fi } From d530be49f3acf31c053efcb9eb34fbbb43e1a3c3 Mon Sep 17 00:00:00 2001 From: mbattista Date: Sat, 3 Apr 2021 13:11:00 +0100 Subject: [PATCH 4/6] chromium on debian buster --- .m1k1o/chromium/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.m1k1o/chromium/Dockerfile b/.m1k1o/chromium/Dockerfile index 5a1dd1b..a6e7d62 100644 --- a/.m1k1o/chromium/Dockerfile +++ b/.m1k1o/chromium/Dockerfile @@ -4,13 +4,13 @@ FROM $BASE_IMAGE # # install neko chromium RUN set -eux; apt-get update; \ - apt-get install -y --no-install-recommends unzip chromium-browser openbox; \ + apt-get install -y --no-install-recommends unzip chromium openbox; \ # # install widevine module WIDEVINE_VERSION=$(wget --quiet -O - https://dl.google.com/widevine-cdm/versions.txt | tail -n 1); \ wget -O /tmp/widevine.zip "https://dl.google.com/widevine-cdm/$WIDEVINE_VERSION-linux-x64.zip"; \ - unzip -p /tmp/widevine.zip libwidevinecdm.so > /usr/lib/chromium-browser/libwidevinecdm.so; \ - chmod 644 /usr/lib/chromium-browser/libwidevinecdm.so; \ + unzip -p /tmp/widevine.zip libwidevinecdm.so > /usr/lib/chromium/libwidevinecdm.so; \ + chmod 644 /usr/lib/chromium/libwidevinecdm.so; \ rm /tmp/widevine.zip; \ # # clean up From c501b108de944d0ddb68f7a62aaed95f6b9c2882 Mon Sep 17 00:00:00 2001 From: m1k1o Date: Sat, 3 Apr 2021 14:18:38 +0200 Subject: [PATCH 5/6] fix chromium path. --- .m1k1o/chromium/Dockerfile.arm | 1 + .m1k1o/chromium/supervisord.conf | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.m1k1o/chromium/Dockerfile.arm b/.m1k1o/chromium/Dockerfile.arm index 4cbb4ac..6ac2e04 100644 --- a/.m1k1o/chromium/Dockerfile.arm +++ b/.m1k1o/chromium/Dockerfile.arm @@ -5,6 +5,7 @@ FROM $BASE_IMAGE # install neko chromium RUN set -eux; apt-get update; \ apt-get install -y --no-install-recommends unzip chromium-browser openbox libwidevinecdm0; \ + ln -s /usr/bin/chromium-browser /usr/bin/chromium; \ # # clean up apt-get --purge autoremove -y unzip; \ diff --git a/.m1k1o/chromium/supervisord.conf b/.m1k1o/chromium/supervisord.conf index 635fb03..a972017 100644 --- a/.m1k1o/chromium/supervisord.conf +++ b/.m1k1o/chromium/supervisord.conf @@ -1,6 +1,6 @@ [program:chromium] environment=HOME="/home/%(ENV_USER)s",USER="%(ENV_USER)s",DISPLAY="%(ENV_DISPLAY)s" -command=/usr/bin/chromium-browser --window-position=0,0 --display=%(ENV_DISPLAY)s --user-data-dir=/home/neko/.config/chromium --no-first-run --start-maximized --bwsi --force-dark-mode --disable-file-system --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage +command=/usr/bin/chromium --window-position=0,0 --display=%(ENV_DISPLAY)s --user-data-dir=/home/neko/.config/chromium --no-first-run --start-maximized --bwsi --force-dark-mode --disable-file-system --disable-gpu --disable-software-rasterizer --disable-dev-shm-usage autorestart=true priority=800 user=%(ENV_USER)s From 657d0f55f4666dafba06713346f769d19dd22eac Mon Sep 17 00:00:00 2001 From: m1k1o Date: Sat, 3 Apr 2021 14:20:43 +0200 Subject: [PATCH 6/6] arm chromium remove unused package. --- .m1k1o/chromium/Dockerfile.arm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.m1k1o/chromium/Dockerfile.arm b/.m1k1o/chromium/Dockerfile.arm index 6ac2e04..208b51a 100644 --- a/.m1k1o/chromium/Dockerfile.arm +++ b/.m1k1o/chromium/Dockerfile.arm @@ -4,11 +4,10 @@ FROM $BASE_IMAGE # # install neko chromium RUN set -eux; apt-get update; \ - apt-get install -y --no-install-recommends unzip chromium-browser openbox libwidevinecdm0; \ + apt-get install -y --no-install-recommends chromium-browser openbox libwidevinecdm0; \ ln -s /usr/bin/chromium-browser /usr/bin/chromium; \ # # clean up - apt-get --purge autoremove -y unzip; \ apt-get clean -y; \ rm -rf /var/lib/apt/lists/* /var/cache/apt/*