@@ -122,6 +122,28 @@ RUN DOCKER_TMP_DIR="/tmp/.docker" && \
122122 # Install Microsoft OpenJDK 25, OpenJDK 8, and Google Antigravity
123123 apt-get install -y msopenjdk-25 openjdk-8-jre antigravity && \
124124 \
125+ # Patch the Antigravity desktop entry to launch with a clean D-Bus session
126+ # and stable software-rendering defaults inside the container.
127+ desktop_file="/usr/share/applications/antigravity.desktop" && \
128+ main_exec_old='Exec=/usr/share/antigravity/antigravity %F' && \
129+ main_exec_new='Exec=env -u DBUS_SESSION_BUS_ADDRESS dbus-run-session -- /usr/share/antigravity/antigravity --password-store=basic --disable-gpu --disable-gpu-compositing %F' && \
130+ new_window_exec_old='Exec=/usr/share/antigravity/antigravity --new-window %F' && \
131+ new_window_exec_new='Exec=env -u DBUS_SESSION_BUS_ADDRESS dbus-run-session -- /usr/share/antigravity/antigravity --password-store=basic --disable-gpu --disable-gpu-compositing --new-window %F' && \
132+ if [ -f "$desktop_file" ]; then \
133+ if grep -Fqx "$main_exec_old" "$desktop_file" ; then \
134+ sed -i "s|^${main_exec_old}$|${main_exec_new}|" "$desktop_file" ; \
135+ else \
136+ echo "WARNING: expected main Exec line not found in ${desktop_file}; leaving it unchanged" >&2; \
137+ fi; \
138+ if grep -Fqx "$new_window_exec_old" "$desktop_file" ; then \
139+ sed -i "s|^${new_window_exec_old}$|${new_window_exec_new}|" "$desktop_file" ; \
140+ else \
141+ echo "WARNING: expected new-window Exec line not found in ${desktop_file}; leaving it unchanged" >&2; \
142+ fi; \
143+ else \
144+ echo "WARNING: ${desktop_file} not found; skipping Antigravity desktop entry patch" >&2; \
145+ fi && \
146+ \
125147 # Install InCommon cert system-wide (download -> sha256 verify -> DER->PEM -> trust store)
126148 wget -O /tmp/InCommon.der https://s.joefang.org/InCommon.crt && \
127149 echo "87e01cc4dd0c9d92a3dbd49092ff13f9cd387445cdc57e5b984e1b7721b5b029 /tmp/InCommon.der" | sha256sum -c - && \
0 commit comments