This repository has been archived by the owner on Sep 29, 2024. It is now read-only.
forked from Schneegans/gnome-shell-pod
-
Notifications
You must be signed in to change notification settings - Fork 1
/
fedora.dockerfile
51 lines (42 loc) · 1.67 KB
/
fedora.dockerfile
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
ARG base_image=fedora-40
FROM docker.io/library/fedora:39@sha256:2922a1237abbb7f8517018e4f5d7a82a618f6ec09f386799e8595f9e1c39f021 AS fedora-39
FROM docker.io/library/fedora:40@sha256:5ce8497aeea599bf6b54ab3979133923d82aaa4f6ca5ced1812611b197c79eb0 AS fedora-40
FROM ${base_image}
RUN dnf install -y --nodocs --setopt install_weak_deps=False \
gnome-session-xsession \
gnome-extensions-app \
gjs \
gdm \
vte291 \
vte291-gtk4 \
xorg-x11-server-Xvfb \
mesa-dri-drivers \
wl-clipboard \
PackageKit \
PackageKit-glib \
libhandy \
&& dnf clean all -y
COPY common fedora /
RUN systemctl set-default gnome-session-x11.target && \
systemctl --global disable dbus-broker && \
systemctl --global enable dbus-daemon && \
systemctl mask systemd-oomd low-memory-monitor rtkit-daemon udisks2 && \
systemctl --global mask org.gnome.SettingsDaemon.Subscription && \
adduser -m -U -G users,adm gnomeshell && \
mkdir -p /var/lib/systemd/linger && \
touch /var/lib/systemd/linger/gnomeshell && \
su -l gnomeshell -c ' \
mkdir -p $HOME/.config/systemd/user/sockets.target.wants/ && \
ln -s /etc/xdg/systemd/user/[email protected] $HOME/.config/systemd/user/sockets.target.wants/[email protected] \
' && \
chmod u+rw /etc/shadow && \
truncate --size 0 /etc/machine-id && \
dconf update
# dbus port
EXPOSE 1234
LABEL user-dbus-port=1234
# X11 port
EXPOSE 6099
LABEL x11-port=6099 x11-display-number=99
HEALTHCHECK CMD busctl --watch-bind=true status && systemctl is-system-running --wait
CMD [ "/usr/sbin/init", "systemd.unified_cgroup_hierarchy=0" ]