tweaks for consistency
This commit is contained in:
parent
7f26b8bb7b
commit
38bdaab8d6
@ -2,7 +2,8 @@ FROM debian:stretch-slim
|
||||
|
||||
#
|
||||
# cluster fuck of packages for neko, node, go and gstreamer
|
||||
RUN apt-get update; apt-get install -y --no-install-recommends autoconf ca-certificates curl netbase wget \
|
||||
RUN set -eux; apt-get update; apt-get install -y --no-install-recommends \
|
||||
autoconf ca-certificates curl netbase wget \
|
||||
bzr git mercurial openssh-client subversion procps automake bzip2 dpkg-dev file g++ gcc \
|
||||
libbz2-dev libc6-dev libcurl4-openssl-dev libdb-dev libevent-dev libffi-dev libgdbm-dev libglib2.0-dev libgmp-dev \
|
||||
libjpeg-dev libkrb5-dev liblzma-dev libmagickcore-dev libmagickwand-dev libmaxminddb-dev libncurses5-dev libncursesw5-dev \
|
||||
@ -11,7 +12,7 @@ RUN apt-get update; apt-get install -y --no-install-recommends autoconf ca-certi
|
||||
build-essential perl python autopoint bison flex \
|
||||
gettext openssl libopus-dev libvpx-dev libpulse-dev libx11-dev libxv-dev libxt-dev \
|
||||
libxfixes-dev apt-utils x11vnc libxtst-dev dialog \
|
||||
pulseaudio openbox chromium firefox-esr dbus-x11 xvfb xclip supervisor unzip; \
|
||||
pulseaudio openbox chromium firefox-esr dbus-x11 xvfb xclip supervisor; \
|
||||
if ! command -v gpg > /dev/null; then \
|
||||
apt-get install -y --no-install-recommends gnupg dirmngr; \
|
||||
fi
|
||||
@ -25,7 +26,8 @@ ENV PKG_CONFIG_PATH=/gst/local/lib/pkgconfig:$PKG_CONFIG_PATH
|
||||
#
|
||||
# add node
|
||||
ENV NODE_VERSION 12.14.1
|
||||
RUN ARCH= ; dpkgArch="$(dpkg --print-architecture)" \
|
||||
RUN set -eux; \
|
||||
ARCH= ; dpkgArch="$(dpkg --print-architecture)" \
|
||||
;case "${dpkgArch##*-}" in \
|
||||
amd64) ARCH='x64';; \
|
||||
ppc64el) ARCH='ppc64le';; \
|
||||
@ -36,7 +38,6 @@ RUN ARCH= ; dpkgArch="$(dpkg --print-architecture)" \
|
||||
*) echo "unsupported architecture"; exit 1 ;; \
|
||||
esac;\
|
||||
# gpg keys listed at https://github.com/nodejs/node#release-keys
|
||||
set -eux;\
|
||||
for key in \
|
||||
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
|
||||
FD3A5288F042B6850C66B31F09FE44734EB7990E \
|
||||
@ -97,7 +98,8 @@ ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
|
||||
|
||||
#
|
||||
# install Go tools w/module support
|
||||
RUN mkdir -p /tmp/gotools; \
|
||||
RUN set -eux; \
|
||||
mkdir -p /tmp/gotools; \
|
||||
cd /tmp/gotools; \
|
||||
GO111MODULE=on go get -v golang.org/x/tools/gopls@latest 2>&1; \
|
||||
GO111MODULE=on go get -v \
|
||||
@ -145,15 +147,19 @@ ARG USERNAME=neko
|
||||
ARG USER_UID=1000
|
||||
ARG USER_GID=$USER_UID
|
||||
|
||||
#
|
||||
# set to false to skip installing zsh and Oh My ZSH!
|
||||
ARG INSTALL_ZSH="true"
|
||||
|
||||
#
|
||||
# location and expected SHA for common setup script - SHA generated on release
|
||||
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/master/script-library/common-debian.sh"
|
||||
ARG COMMON_SCRIPT_SHA="dev-mode"
|
||||
|
||||
#
|
||||
# verify git, common tools / libs installed, add/modify non-root user, optionally install zsh
|
||||
RUN wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE; \
|
||||
RUN set -eux; \
|
||||
wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE; \
|
||||
if [ "$COMMON_SCRIPT_SHA" != "dev-mode" ]; then echo "$COMMON_SCRIPT_SHA /tmp/common-setup.sh" | sha256sum -c - ; fi; \
|
||||
/bin/bash /tmp/common-setup.sh "$INSTALL_ZSH" "$USERNAME" "$USER_UID" "$USER_GID"; \
|
||||
rm /tmp/common-setup.sh; \
|
||||
@ -176,5 +182,6 @@ RUN wget -q -O /tmp/common-setup.sh $COMMON_SCRIPT_SOURCE; \
|
||||
|
||||
ENV PATH=/usr/local/share/npm-global/bin:$PATH
|
||||
|
||||
#
|
||||
# switch back to dialog for any ad-hoc use of apt-get
|
||||
ENV DEBIAN_FRONTEND=dialog
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
# sudo docker run -p 80:8080 -p 59000-59100:59000-59100/udp --cap-add SYS_ADMIN nurdism/neko:chromium
|
||||
# sudo docker run -p 80:8080 -p 59000-59100:59000-59100/udp --shm-size=1gb nurdism/neko:firefox
|
||||
# sudo docker run --network host --shm-size=1gb -it nurdism/neko:latest /bin/bash
|
||||
# sudo docker run --network host --shm-size=1gb -it nurdism/neko:base /bin/bash
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )/.."
|
||||
|
||||
@ -13,9 +13,10 @@ build_gst() {
|
||||
sudo chown -R neko /workspace/.build
|
||||
fi
|
||||
|
||||
#
|
||||
# build & install gstreamer
|
||||
sudo su -c 'set -eux; \
|
||||
sudo rm -rf /gst/local; \
|
||||
rm -rf /gst/local; \
|
||||
cd /gst; \
|
||||
for MODULE in \
|
||||
gstreamer \
|
||||
|
@ -1,12 +1,13 @@
|
||||
FROM nurdism/neko:base
|
||||
|
||||
#
|
||||
# install neko chromium
|
||||
RUN set -eux; apt-get update; \
|
||||
apt-get install -y --no-install-recommends unzip chromium; \
|
||||
#
|
||||
# install widevine module
|
||||
WIDEVINE_VERSION=$(wget --quiet -O - https://dl.google.com/widevine-cdm/versions.txt | tail -n 1); \
|
||||
wget "https://dl.google.com/widevine-cdm/$WIDEVINE_VERSION-linux-x64.zip" -O /tmp/widevine.zip ; \
|
||||
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; \
|
||||
rm /tmp/widevine.zip; \
|
||||
|
@ -1,23 +1,26 @@
|
||||
#!/bin/bash
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
|
||||
#
|
||||
# chromium
|
||||
mkdir -p /etc/chromium/policies/managed
|
||||
|
||||
# https://cloud.google.com/docs/chrome-enterprise/policies/
|
||||
cp files/chromium/policies.json /etc/chromium/policies/managed/policies.json
|
||||
cp $DIR/policies.json /etc/chromium/policies/managed/policies.json
|
||||
#rm -f /etc/chromium/policies/managed/policies.json
|
||||
|
||||
cp files/chromium/preferences.json /usr/share/chromium/master_preferences
|
||||
cp $DIR/preferences.json /usr/share/chromium/master_preferences
|
||||
#rm -f /usr/share/chromium/master_preferences
|
||||
|
||||
cp files/chromium/supervisord.conf /etc/neko/supervisord/chromium.conf
|
||||
cp $DIR/supervisord.conf /etc/neko/supervisord/chromium.conf
|
||||
#rm -f /etc/neko/supervisord/firefox.conf
|
||||
|
||||
#
|
||||
# install widevine module
|
||||
if [ ! -f /usr/lib/chromium/libwidevinecdm.so ]; then
|
||||
WIDEVINE_VERSION=$(wget --quiet -O - https://dl.google.com/widevine-cdm/versions.txt | tail -n 1)
|
||||
wget "https://dl.google.com/widevine-cdm/$WIDEVINE_VERSION-linux-x64.zip" -O /tmp/widevine.zip
|
||||
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
|
||||
rm /tmp/widevine.zip
|
||||
|
@ -1,5 +1,6 @@
|
||||
FROM nurdism/neko:base
|
||||
|
||||
#
|
||||
# install firefox-esr
|
||||
RUN set -eux; apt-get update; \
|
||||
apt-get install -y --no-install-recommends firefox-esr; \
|
||||
@ -10,7 +11,6 @@ RUN set -eux; apt-get update; \
|
||||
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 --purge autoremove -y wget ca-certificates; \
|
||||
apt-get autoremove -y; \
|
||||
apt-get clean -y; \
|
||||
rm -rf /var/lib/apt/lists/* /var/cache/apt/*
|
||||
|
@ -1,32 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
|
||||
#
|
||||
# firefox
|
||||
cp files/firefox/neko.js /usr/lib/firefox-esr/mozilla.cfg
|
||||
cp $DIR/neko.js /usr/lib/firefox-esr/mozilla.cfg
|
||||
#rm -f /usr/lib/firefox-esr/mozilla.cfg
|
||||
|
||||
cp files/firefox/autoconfig.js /usr/lib/firefox-esr/defaults/pref/autoconfig.js
|
||||
cp $DIR/autoconfig.js /usr/lib/firefox-esr/defaults/pref/autoconfig.js
|
||||
#rm -f /usr/lib/firefox-esr/defaults/pref/autoconfig.js
|
||||
|
||||
#https://github.com/mozilla/policy-templates
|
||||
cp files/firefox/policies.json /usr/lib/firefox-esr/distribution/policies.json
|
||||
cp $DIR/policies.json /usr/lib/firefox-esr/distribution/policies.json
|
||||
#rm -f /usr/lib/firefox-esr/distribution/policies.json
|
||||
|
||||
cp files/firefox/supervisord.conf /etc/neko/supervisord/firefox.conf
|
||||
cp $DIR/supervisord.conf /etc/neko/supervisord/firefox.conf
|
||||
#rm -f /etc/neko/supervisord/firefox.conf
|
||||
|
||||
#
|
||||
# install extensions
|
||||
mkdir -p /usr/lib/firefox/distribution/extensions
|
||||
|
||||
# uBlock0
|
||||
#
|
||||
# uBlock
|
||||
if [ ! -f /usr/lib/firefox/distribution/extensions/uBlock0@raymondhill.net.xpi ]; then
|
||||
curl -o /usr/lib/firefox/distribution/extensions/uBlock0@raymondhill.net.xpi https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/addon-607454-latest.xpi
|
||||
wget -O /usr/lib/firefox/distribution/extensions/uBlock0@raymondhill.net.xpi https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/addon-607454-latest.xpi
|
||||
fi
|
||||
|
||||
#
|
||||
# nordvpnproxy
|
||||
if [ ! -f /usr/lib/firefox/distribution/extensions/nordvpnproxy@nordvpn.com.xpi ]; then
|
||||
curl -o /usr/lib/firefox/distribution/extensions/nordvpnproxy@nordvpn.com.xpi https://addons.mozilla.org/firefox/downloads/latest/nordvpn-proxy-extension/latest.xpi
|
||||
wget -O /usr/lib/firefox/distribution/extensions/nordvpnproxy@nordvpn.com.xpi https://addons.mozilla.org/firefox/downloads/latest/nordvpn-proxy-extension/latest.xpi
|
||||
fi
|
||||
|
||||
#
|
||||
|
Reference in New Issue
Block a user