This commit is contained in:
+55
-28
@@ -1,46 +1,66 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-kasmvnc:ubuntunoble AS build
|
||||
FROM ghcr.io/linuxserver/baseimage-selkies:ubuntunoble AS build
|
||||
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
ENV TITLE="XPipe Webtop"
|
||||
ARG XPIPE_VERSION
|
||||
ARG XPIPE_REPOSITORY
|
||||
ARG XPIPE_PACKAGE
|
||||
ARG TARGETPLATFORM
|
||||
ARG XPIPE_VERSION=20.2
|
||||
ARG XPIPE_REPOSITORY=xpipe-io/xpipe
|
||||
ARG XPIPE_PACKAGE=xpipe
|
||||
ARG TARGETPLATFORM=linux/amd64
|
||||
|
||||
# prevent Ubuntu's firefox stub from being installed
|
||||
COPY /root/etc/apt/preferences.d/firefox-no-snap /etc/apt/preferences.d/firefox-no-snap
|
||||
# COPY /root/etc/apt/preferences.d/firefox-no-snap /etc/apt/preferences.d/firefox-no-snap
|
||||
|
||||
RUN echo "**** install base packages ****" && \
|
||||
add-apt-repository -y ppa:mozillateam/ppa && \
|
||||
# title
|
||||
ENV TITLE="XPipe Webtop" \
|
||||
NO_GAMEPAD=true
|
||||
|
||||
RUN \
|
||||
echo "**** add icon ****" && \
|
||||
curl -o \
|
||||
/usr/share/selkies/www/icon.png \
|
||||
https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/webtop-logo.png && \
|
||||
echo "**** install packages ****" && \
|
||||
add-apt-repository ppa:xtradeb/apps && \
|
||||
# add-apt-repository -y ppa:mozillateam/ppa && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install --no-install-recommends -y \
|
||||
chromium \
|
||||
# firefox \
|
||||
dolphin \
|
||||
firefox \
|
||||
gwenview \
|
||||
kde-config-gtk-style \
|
||||
kdialog \
|
||||
kfind \
|
||||
khotkeys \
|
||||
kio-extras \
|
||||
knewstuff-dialog \
|
||||
konsole \
|
||||
ksystemstats \
|
||||
kubuntu-settings-desktop \
|
||||
kubuntu-wallpapers \
|
||||
kubuntu-web-shortcuts \
|
||||
kwin-addons \
|
||||
kwin-x11 \
|
||||
kwrite \
|
||||
wget \
|
||||
git \
|
||||
zip \
|
||||
unzip \
|
||||
kmod \
|
||||
nano \
|
||||
mousepad \
|
||||
vim \
|
||||
plasma-desktop \
|
||||
plasma-workspace \
|
||||
plymouth-theme-kubuntu-logo \
|
||||
qml-module-qt-labs-platform \
|
||||
fonts-noto \
|
||||
fonts-noto-cjk \
|
||||
zip \
|
||||
unzip \
|
||||
git \
|
||||
wget \
|
||||
systemsettings && \
|
||||
apt-get remove -y plasma-welcome && \
|
||||
echo "**** application tweaks ****" && \
|
||||
sed -i \
|
||||
's#^Exec=.*#Exec=/usr/local/bin/wrapped-chromium#g' \
|
||||
/usr/share/applications/chromium.desktop && \
|
||||
echo "**** kde tweaks ****" && \
|
||||
sed -i \
|
||||
's/applications:org.kde.discover.desktop,/applications:org.kde.konsole.desktop,/g' \
|
||||
/usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml && \
|
||||
echo "**** cleanup ****" && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/config/.cache \
|
||||
@@ -64,11 +84,18 @@ EXPOSE 3000
|
||||
EXPOSE 3001
|
||||
VOLUME /config
|
||||
|
||||
RUN \
|
||||
echo "**** add icon ****" && \
|
||||
curl -L -o \
|
||||
/kclient/public/icon.png \
|
||||
"https://rawcdn.githack.com/xpipe-io/xpipe/a097ae7a41131fa358b5343345557ad00a45c309/dist/logo/logo.png"
|
||||
# RUN \
|
||||
# echo "**** add icon ****" && \
|
||||
# curl -L -o \
|
||||
# /kclient/public/icon.png \
|
||||
# "https://rawcdn.githack.com/xpipe-io/xpipe/a097ae7a41131fa358b5343345557ad00a45c309/dist/logo/logo.png"
|
||||
|
||||
RUN echo "**** Wezterm ****" && \
|
||||
curl -fsSL https://apt.fury.io/wez/gpg.key | sudo gpg --yes --dearmor -o /usr/share/keyrings/wezterm-fury.gpg && \
|
||||
echo 'deb [signed-by=/usr/share/keyrings/wezterm-fury.gpg] https://apt.fury.io/wez/ * *' | sudo tee /etc/apt/sources.list.d/wezterm.list && \
|
||||
chmod 644 /usr/share/keyrings/wezterm-fury.gpg && \
|
||||
apt-get update && \
|
||||
apt-get install --no-install-recommends -y wezterm
|
||||
|
||||
RUN echo "**** VsCode **** ($TARGETPLATFORM)" && \
|
||||
if [ "$TARGETPLATFORM" = "linux/amd64" ]; then VSCODE_LINK="https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-x64"; else VSCODE_LINK="https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-arm64"; fi && \
|
||||
@@ -152,13 +179,13 @@ RUN echo "**** XPipe **** ($TARGETPLATFORM)" && \
|
||||
apt-get install --no-install-recommends -y "./${XPIPE_ARTIFACT}" && \
|
||||
rm "./${XPIPE_ARTIFACT}"
|
||||
|
||||
RUN mkdir -p "/etc/xdg/autostart/" && ln -s "/usr/share/applications/$XPIPE_PACKAGE.desktop" "/etc/xdg/autostart/$XPIPE_PACKAGE.desktop"
|
||||
# RUN mkdir -p "/etc/xdg/autostart/" && ln -s "/usr/share/applications/$XPIPE_PACKAGE.desktop" "/etc/xdg/autostart/$XPIPE_PACKAGE.desktop"
|
||||
|
||||
RUN echo "**** kde tweaks ****" && \
|
||||
sed -i \
|
||||
"s/applications:org.kde.discover.desktop,/,/g" \
|
||||
/usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml && \
|
||||
sed -i \
|
||||
"s#preferred://browser#applications:firefox.desktop,applications:org.kde.konsole.desktop,applications:code.desktop,applications:org.remmina.Remmina.desktop,applications:$XPIPE_PACKAGE.desktop#g" \
|
||||
"s#preferred://browser#applications:chromium.desktop,applications:org.kde.konsole.desktop,applications:code.desktop,applications:org.remmina.Remmina.desktop,applications:$XPIPE_PACKAGE.desktop#g" \
|
||||
/usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml
|
||||
|
||||
|
||||
+171
@@ -0,0 +1,171 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-selkies:ubuntunoble AS build
|
||||
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
ENV TITLE="XPipe Webtop"
|
||||
ARG XPIPE_VERSION=20.2
|
||||
ARG XPIPE_REPOSITORY=xpipe-io/xpipe
|
||||
ARG XPIPE_PACKAGE=xpipe
|
||||
ARG TARGETPLATFORM=linux/amd64
|
||||
|
||||
# prevent Ubuntu's firefox stub from being installed
|
||||
COPY /root/etc/apt/preferences.d/firefox-no-snap /etc/apt/preferences.d/firefox-no-snap
|
||||
|
||||
RUN echo "**** install base packages ****" && \
|
||||
add-apt-repository -y ppa:mozillateam/ppa && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install --no-install-recommends -y \
|
||||
dolphin \
|
||||
firefox \
|
||||
gwenview \
|
||||
# kde-config-gtk-style \
|
||||
# kdialog \
|
||||
# kio-extras \
|
||||
# kubuntu-settings-desktop \
|
||||
# kwin-x11 \
|
||||
# kwrite \
|
||||
wget \
|
||||
git \
|
||||
zip \
|
||||
unzip \
|
||||
# kmod \
|
||||
nano \
|
||||
mousepad \
|
||||
vim \
|
||||
# plasma-desktop \
|
||||
# plasma-workspace \
|
||||
plymouth-theme-kubuntu-logo \
|
||||
qml-module-qt-labs-platform \
|
||||
fonts-noto \
|
||||
fonts-noto-cjk \
|
||||
systemsettings && \
|
||||
#apt-get remove -y plasma-welcome && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/config/.cache \
|
||||
/config/.launchpadlib \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
|
||||
RUN echo "**** nerdfonts ****" && \
|
||||
curl -LO "https://github.com/ryanoasis/nerd-fonts/releases/latest/download/UbuntuMono.zip" && \
|
||||
mkdir -p "/usr/share/fonts/ubuntu-mono-nerd" && \
|
||||
unzip "UbuntuMono.zip" -d "/usr/share/fonts/ubuntu-mono-nerd" && \
|
||||
rm "UbuntuMono.zip" && \
|
||||
fc-cache -fv
|
||||
|
||||
# add local files
|
||||
#COPY /root /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 3000
|
||||
EXPOSE 3001
|
||||
VOLUME /config
|
||||
|
||||
# RUN \
|
||||
# echo "**** add icon ****" && \
|
||||
# curl -L -o \
|
||||
# /kclient/public/icon.png \
|
||||
# "https://rawcdn.githack.com/xpipe-io/xpipe/a097ae7a41131fa358b5343345557ad00a45c309/dist/logo/logo.png"
|
||||
|
||||
# RUN echo "**** Wezterm ****" && \
|
||||
# curl -fsSL https://apt.fury.io/wez/gpg.key | sudo gpg --yes --dearmor -o /usr/share/keyrings/wezterm-fury.gpg && \
|
||||
# echo 'deb [signed-by=/usr/share/keyrings/wezterm-fury.gpg] https://apt.fury.io/wez/ * *' | sudo tee /etc/apt/sources.list.d/wezterm.list && \
|
||||
# chmod 644 /usr/share/keyrings/wezterm-fury.gpg && \
|
||||
# apt-get update && \
|
||||
# apt-get install --no-install-recommends -y wezterm
|
||||
#
|
||||
# RUN echo "**** VsCode **** ($TARGETPLATFORM)" && \
|
||||
# if [ "$TARGETPLATFORM" = "linux/amd64" ]; then VSCODE_LINK="https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-x64"; else VSCODE_LINK="https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-arm64"; fi && \
|
||||
# wget -O vscode.deb "${VSCODE_LINK}" && \
|
||||
# DEBIAN_FRONTEND=noninteractive \
|
||||
# apt-get update && \
|
||||
# apt-get install --no-install-recommends -y "./vscode.deb" && \
|
||||
# rm "./vscode.deb"
|
||||
|
||||
# RUN echo "**** install tool packages ****" && \
|
||||
# DEBIAN_FRONTEND=noninteractive \
|
||||
# apt-get install --no-install-recommends -y \
|
||||
# konsole \
|
||||
# gnome-console \
|
||||
# gnome-terminal \
|
||||
# xfce4-terminal \
|
||||
# alacritty \
|
||||
# kitty \
|
||||
# tilix \
|
||||
# kate \
|
||||
# gedit \
|
||||
# terminator \
|
||||
# freerdp2-x11 \
|
||||
# remmina \
|
||||
# tmux \
|
||||
# screen \
|
||||
# remmina-plugin-rdp && \
|
||||
# apt-get autoclean
|
||||
|
||||
# RUN echo "**** tailscale ****" && curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null && \
|
||||
# curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/noble.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list && \
|
||||
# sudo apt-get update && \
|
||||
# DEBIAN_FRONTEND=noninteractive sudo apt-get install -y tailscale
|
||||
#
|
||||
# RUN echo "**** netbird ****" && \
|
||||
# sudo apt-get update && \
|
||||
# sudo apt-get install ca-certificates curl gnupg -y && \
|
||||
# curl -sSL https://pkgs.netbird.io/debian/public.key | sudo gpg --dearmor --output /usr/share/keyrings/netbird-archive-keyring.gpg && \
|
||||
# echo 'deb [signed-by=/usr/share/keyrings/netbird-archive-keyring.gpg] https://pkgs.netbird.io/debian stable main' | sudo tee /etc/apt/sources.list.d/netbird.list && \
|
||||
# sudo apt-get update && \
|
||||
# sudo apt-get install netbird
|
||||
#
|
||||
# RUN echo "**** teleport ****" && sudo curl https://apt.releases.teleport.dev/gpg -o /etc/apt/keyrings/teleport-archive-keyring.asc && \
|
||||
# . /etc/os-release && \
|
||||
# echo "deb [signed-by=/etc/apt/keyrings/teleport-archive-keyring.asc] https://apt.releases.teleport.dev/${ID?} ${VERSION_CODENAME?} stable/v17" | sudo tee /etc/apt/sources.list.d/teleport.list > /dev/null && \
|
||||
# sudo apt-get update && \
|
||||
# DEBIAN_FRONTEND=noninteractive sudo apt-get -y install teleport
|
||||
#
|
||||
# RUN echo "**** kubectl **** ($TARGETPLATFORM)" && \
|
||||
# if [ "$TARGETPLATFORM" = "linux/amd64" ]; then KUBECTL_LINK="https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"; else KUBECTL_LINK="https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl"; fi && \
|
||||
# curl -LO "${KUBECTL_LINK}" && \
|
||||
# sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl && \
|
||||
# rm kubectl
|
||||
|
||||
# RUN echo "**** aws ****" && curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "/tmp/awscliv2.zip" && \
|
||||
# unzip "/tmp/awscliv2.zip" -d "/tmp" && \
|
||||
# sudo "/tmp/aws/install" && \
|
||||
# rm -rf "/tmp/aws" "/tmp/awscliv2.zip"
|
||||
#
|
||||
# RUN echo "**** aws ssm **** ($TARGETPLATFORM)" && \
|
||||
# if [ "$TARGETPLATFORM" = "linux/amd64" ]; then SSM_LINK="https://s3.amazonaws.com/session-manager-downloads/plugin/latest/ubuntu_64bit/session-manager-plugin.deb"; else SSM_LINK="https://s3.amazonaws.com/session-manager-downloads/plugin/latest/ubuntu_arm64/session-manager-plugin.deb"; fi && \
|
||||
# curl "${SSM_LINK}" -o "/tmp/session-manager-plugin.deb" && \
|
||||
# sudo dpkg -i "/tmp/session-manager-plugin.deb" && \
|
||||
# rm -rf "/tmp/aws" "/tmp/session-manager-plugin.deb"
|
||||
#
|
||||
# RUN echo "**** zellij **** ($TARGETPLATFORM)" && \
|
||||
# if [ "$TARGETPLATFORM" = "linux/amd64" ]; then ZELLIJ_LINK="https://github.com/zellij-org/zellij/releases/latest/download/zellij-x86_64-unknown-linux-musl.tar.gz"; else ZELLIJ_LINK="https://github.com/zellij-org/zellij/releases/latest/download/zellij-aarch64-unknown-linux-musl.tar.gz"; fi && \
|
||||
# curl -LO "${ZELLIJ_LINK}" && \
|
||||
# tar -xvf zellij*.tar.gz && \
|
||||
# sudo install -o root -g root -m 0755 zellij /usr/local/bin/zellij && \
|
||||
# rm zellij && \
|
||||
# rm zellij*.tar.gz
|
||||
|
||||
# RUN echo "**** dolphin tweaks ****" && printf "x-scheme-handler/file=org.kde.dolphin.desktop\n" >> /usr/share/applications/kde-mimeapps.list
|
||||
|
||||
RUN echo "**** XPipe **** ($TARGETPLATFORM)" && \
|
||||
if [ "$TARGETPLATFORM" = "linux/amd64" ]; then XPIPE_ARTIFACT="xpipe-installer-linux-x86_64.deb"; else XPIPE_ARTIFACT="xpipe-installer-linux-arm64.deb"; fi && \
|
||||
wget "https://github.com/$XPIPE_REPOSITORY/releases/download/$XPIPE_VERSION/${XPIPE_ARTIFACT}" && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get update && \
|
||||
apt-get install --no-install-recommends -y "./${XPIPE_ARTIFACT}" && \
|
||||
rm "./${XPIPE_ARTIFACT}"
|
||||
|
||||
# RUN mkdir -p "/etc/xdg/autostart/" && ln -s "/usr/share/applications/$XPIPE_PACKAGE.desktop" "/etc/xdg/autostart/$XPIPE_PACKAGE.desktop"
|
||||
|
||||
# RUN echo "**** kde tweaks ****" && \
|
||||
# sed -i \
|
||||
# "s/applications:org.kde.discover.desktop,/,/g" \
|
||||
# /usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml && \
|
||||
# sed -i \
|
||||
# "s#preferred://browser#applications:firefox.desktop,applications:org.kde.konsole.desktop,applications:code.desktop,applications:org.remmina.Remmina.desktop,applications:$XPIPE_PACKAGE.desktop#g" \
|
||||
# /usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
services:
|
||||
webtop:
|
||||
image: xpipe/xpipe-selkies
|
||||
container_name: xpipe-webtop
|
||||
cap_add:
|
||||
- NET_ADMIN # optional, to enable tailscale
|
||||
privileged: true # optional, to enable tailscale
|
||||
# environment:
|
||||
# - SUBFOLDER=/ #optional, to run in a subfolder reverse proxy
|
||||
volumes:
|
||||
- ./config:/config
|
||||
# - ./temp_data:/tmp
|
||||
# - /var/run/docker.sock:/var/run/docker.sock #optional, to access host containers
|
||||
ports:
|
||||
- 13000:3000
|
||||
- 13001:3001
|
||||
restart: unless-stopped
|
||||
@@ -0,0 +1,2 @@
|
||||
local/e34b80372b49:@/tmp/.ICE-unix/1024,unix/e34b80372b49:/tmp/.ICE-unix/1024
|
||||
1024
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1 @@
|
||||
Xft.dpi: 96
|
||||
@@ -0,0 +1 @@
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1011
|
||||
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1015
|
||||
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1018
|
||||
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1019
|
||||
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1025
|
||||
@@ -0,0 +1,8 @@
|
||||
[KCrash]
|
||||
exe=/usr/bin/ksmserver
|
||||
platform=xcb
|
||||
display=:1
|
||||
appname=ksmserver
|
||||
apppath=/usr/bin
|
||||
signal=6
|
||||
pid=1039
|
||||
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user