linuxserver / docker-chromium

Web accessible Chromium inside an Alpine Container
GNU General Public License v3.0
93 stars 29 forks source link

[FEAT] Ungoogled Chromium support #4

Closed extremelyonline closed 1 year ago

extremelyonline commented 1 year ago

Is this a new feature request?

Wanted change

Hello, is there any plan to incorporate Ungoogled Chromium instead of Chromium?

Reason for change

To improve privacy

Proposed code change

It may be difficult to build Ungoogled Chromium in the Dockerfile, perhaps the flatpak version can be used?

github-actions[bot] commented 1 year ago

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

thelamer commented 1 year ago

That would actually be a new image (this one does what it is supposed to), and would likely need to be built from source.

Given the current state of the ungoogled project probably Arch Linux using AUR would be the best base.

If you want to get the wheels turning take a look at how AUR packages get installed here: https://github.com/linuxserver/docker-baseimage-kasmvnc/blob/arch/Dockerfile#L304-L307 Use the arch baseimage and try it out yourself, or from an arch webtop to see how it works: https://github.com/linuxserver/docker-webtop#version-tags

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

extremelyonline commented 1 year ago

Thanks. I was able to get the ungoogled-chromium-bin binary running on amd64.

I am not sure if there should be a new image giving the state of the ungoogled project and the security implications. Besides, I have not tested this on multi-arch. For anyone who's interested, please check below:

Dockerfile

FROM ghcr.io/linuxserver/baseimage-kasmvnc:arch

# title
ENV TITLE=Ungoogled-chromium

## Install required packages
RUN pacman -Syu --noconfirm \
    base-devel \
    git \
    gtk3 \
    xdg-utils \
    libxss \
    libcups \
    ttf-liberation \
    desktop-file-utils \
    woff2 \
    snappy \
    minizip \
    re2 \
    jsoncpp \
    libxslt \
    pipewire \
    kdialog \
    qt5-base \
    org.freedesktop.secrets \
    kwallet

RUN cd /tmp && \
    git clone https://aur.archlinux.org/ungoogled-chromium-bin.git && \
    chown -R abc:abc ungoogled-chromium-bin && \
    cd ungoogled-chromium-bin && \
    sudo -u abc makepkg -sAci --skipinteg --noconfirm --needed

# add local files
COPY /root /

# ports and volumes
EXPOSE 3000

VOLUME /config

/root/defaults/autostart

#!/bin/bash
/usr/sbin/chromium ${CHROME_CLI}

You can probably build from source with the following but I haven't tested it:

RUN cd /tmp && \
    git clone https://github.com/ungoogled-software/ungoogled-chromium-archlinux && \
    git config --global --add safe.directory /tmp/ungoogled-chromium-archlinux && \
    chown -R abc:abc ungoogled-chromium-archlinux && \
    cd ungoogled-chromium-archlinux && \
    git checkout $(git describe --abbrev=0 --tags) && \
    sudo -u abc makepkg -sAci --skipinteg --noconfirm --needed
github-actions[bot] commented 1 year ago

This issue is locked due to inactivity