-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathDockerfile
More file actions
57 lines (39 loc) · 2.41 KB
/
Dockerfile
File metadata and controls
57 lines (39 loc) · 2.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
FROM debian:trixie
COPY tcfiles/debian.sources /etc/apt/sources.list.d/debian.sources
RUN apt update && apt install sudo curl wget freerdp3-x11 yad fvwm xterm xinit light mingetty polkitd net-tools iw wpasupplicant systemd-resolved ifupdown ethtool enca nano udiskie mc mtr cups mesa-utils firmware-linux firmware-linux-nonfree firmware-iwlwifi firmware-realtek firmware-atheros firmware-brcm80211 open-vm-tools ffmpeg pulseaudio pamixer x11-xserver-utils adwaita-icon-theme-legacy libfuse2 -y
COPY icaclient.deb* /tmp/
RUN apt install /tmp/icaclient.deb -y && rm /tmp/icaclient.deb || true
COPY Moonlight.AppImage* /usr/bin/moonlight
COPY tcfiles/thinclient /usr/bin/thinclient
COPY tcfiles/set-hostname /usr/bin/set-hostname
COPY tcfiles/firstboot /usr/bin/firstboot
COPY tcfiles/auto-maintenance.debian /usr/bin/auto-maintenance
COPY tcfiles/099_tc /etc/sudoers.d/099_tc
COPY tcfiles/usb-access.rules /etc/udev/rules.d/usb-access.rules
RUN chmod +x /usr/bin/*
RUN mkdir -p /etc/systemd/system/getty@tty1.service.d
COPY tcfiles/autologin /etc/systemd/system/getty@tty1.service.d/override.conf
RUN systemctl enable getty@tty1.service
COPY tcfiles/tc-copyconfig.service /etc/systemd/system/tc-copyconfig.service
RUN systemctl enable tc-copyconfig.service
COPY tcfiles/tc-copywpa.service /etc/systemd/system/tc-copywpa.service
RUN systemctl enable tc-copywpa.service
COPY tcfiles/tc-wifipower.service /etc/systemd/system/tc-wifipower.service
RUN systemctl enable tc-wifipower.service
COPY tcfiles/dhcp.network /etc/systemd/network/dhcp.network
COPY tcfiles/interfaces /etc/network/interfaces
COPY tcfiles/xorg.conf /etc/X11/xorg.conf.d/thinclient.conf
#This line is for pipewire, because pipewire has limited mic support its currently replaced with pulseaudio
#Pulseaudio has the auto switch behavior by default
#COPY tcfiles/pipewire-pulse.conf /etc/pipewire/pipewire-pulse.conf.d/thinclient.conf
RUN useradd -ms /bin/bash thinclient -G video,audio,netdev,render,cdrom,plugdev
COPY tcfiles/.fvwm /home/thinclient/.fvwm
COPY tcfiles/bashrc /home/thinclient/.bashrc
COPY tcfiles/xinitrc /home/thinclient/.xinitrc
COPY Version /tcversion
COPY tcconfig_override* /home/thinclient/
# Block stock files from being tampered with to harden even more
RUN chown -R root:thinclient /home/thinclient/ && chmod 1775 /home/thinclient/
USER thinclient
WORKDIR /home/thinclient
RUN touch dynamic_hostname