Skip to content

Commit 5bbc4fc

Browse files
committed
wip: #5 Added GBM set color range script
1 parent 077cd5a commit 5bbc4fc

File tree

3 files changed

+49
-2
lines changed

3 files changed

+49
-2
lines changed

Dockerfile

+11-2
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,31 @@ FROM ubuntu:focal
22

33
ARG DEBIAN_FRONTEND=noninteractive
44
ARG FLAGS=-DX11_RENDER_SYSTEM=gl
5+
ENV KODI_CMD=kodi-standalone
6+
ENV KODI_GBM_OPTS=auto
57

68
RUN apt-get update && \
79
apt-get install -y --no-install-recommends python-pycryptodome git software-properties-common default-jdk tzdata ca-certificates && \
8-
apt-get install -y --no-install-recommends intel-media-va-driver-non-free mesa-va-drivers && \
10+
apt-get install -y --no-install-recommends intel-media-va-driver-non-free mesa-va-drivers meson libpciaccess-dev && \
911
add-apt-repository -s ppa:team-xbmc/xbmc-nightly && \
1012
apt-get update && \
1113
apt-get install -y --no-install-recommends libnss3 kodi-eventclients-kodi-send retroarch libretro-* && \
1214
apt-get build-dep -y kodi && \
1315
apt-get -y purge software-properties-common && \
1416
rm -rf /var/lib/apt/lists/* && \
1517
git clone -b master https://github.com/xbmc/xbmc /usr/src/kodi && \
18+
git clone git://anongit.freedesktop.org/mesa/drm /usr/src/drm && \
1619
git clone https://github.com/xbmc/platform.git /usr/src/platform && \
1720
git clone https://github.com/xbmc/kodi-platform.git /usr/src/kodi-platform && \
1821
git clone -b Matrix https://github.com/kodi-game/game.libretro /usr/src/game.libretro && \
1922
git clone -b master https://github.com/kodi-game/game.libretro.snes9x /usr/src/game.libretro.snes9x && \
2023
git clone -b master https://github.com/kodi-game/game.libretro.beetle-psx /usr/src/game.libretro.beetle-psx && \
2124
mkdir /usr/src/kodi-build && \
25+
mkdir /usr/src/drm-build && \
26+
cd /usr/src/drm-build && \
27+
meson /usr/src/drm-build && \
28+
ninja -c /usr/src/drm-build all && \
29+
cp /usr/src/drm-build/tests/modetest/modetest /usr/local/bin/ && \
2230
cd /usr/src/kodi-build && \
2331
cmake /usr/src/kodi -DCMAKE_INSTALL_PREFIX=/usr/local $FLAGS && \
2432
cmake --build . -- VERBOSE=1 -j$(getconf _NPROCESSORS_ONLN) && \
@@ -41,9 +49,10 @@ RUN apt-get update
4149
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local && \
4250
make -j$(getconf _NPROCESSORS_ONLN) && make install && \
4351
rm -rf /usr/src/* && \
44-
apt-get remove --purge -y libstdc++-9-dev:amd64 libstdc++-10-dev:amd64 libgcc-10-dev:amd64 libgphobos-10-dev:amd64 libgcc-9-dev:amd64 gcc-9 gdc-10 gcc-10 cpp-9 cpp-10 default-jdk autoconf automake autopoint cmake default-jre gawk gcc g++ cpp ninja-build waylandpp-dev && \
52+
apt-get remove --purge -y libstdc++-9-dev:amd64 libstdc++-10-dev:amd64 libgcc-10-dev:amd64 libgphobos-10-dev:amd64 libgcc-9-dev:amd64 gcc-9 gdc-10 gcc-10 cpp-9 cpp-10 default-jdk autoconf meson libpciaccess-dev automake autopoint cmake default-jre gawk gcc g++ cpp ninja-build waylandpp-dev && \
4553
apt-get -y --purge autoremove && \
4654
rm /usr/lib/*/*.a
4755

4856
COPY entrypoint.sh /
57+
COPY gbm-set-color-range.sh /
4958
ENTRYPOINT ["/entrypoint.sh"]

entrypoint.sh

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ stop_or_kill() {
77

88
init() {
99
command="${KODI_CMD:-kodi-standalone}"
10+
gbm_opts="${KODI_GBM_OPTS:-auto}"
11+
sh /gbm-set-color-range.sh $gbm_opts
1012
trap stop_or_kill EXIT
1113
$command
1214
}

gbm-set-color-range.sh

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#/bin/bash
2+
###
3+
# gbm-set-color-range.sh
4+
#
5+
# sets connected display output device to specified color range
6+
# must by run before starting kodi
7+
#
8+
# wsnipex 29.07.2018
9+
###
10+
11+
OPTS="$1"
12+
case "$OPTS" in
13+
auto)
14+
MODE=0
15+
;;
16+
full)
17+
MODE=1
18+
;;
19+
limited)
20+
MODE=2
21+
;;
22+
*)
23+
echo "usage $0 full|limited|auto"
24+
exit 2
25+
;;
26+
esac
27+
28+
while read -r CONNECTOR OUTPUT; do
29+
echo "setting $OUTPUT to $MODE"
30+
if [ -n "$CONNECTOR" ]; then
31+
modetest -w $CONNECTOR:"Broadcast RGB":$MODE || exit $?
32+
else
33+
echo "connector not found"
34+
exit 1
35+
fi
36+
done <<< $(modetest -c | awk '/\tconnected/ {print $1, $4}')

0 commit comments

Comments
 (0)