adriano2005 commited on
Commit
b116a47
·
verified ·
1 Parent(s): e14b00a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +138 -18
Dockerfile CHANGED
@@ -6,16 +6,21 @@ FROM linuxserver/webtop:ubuntu-xfce
6
  RUN grep -rl "3000" /defaults | xargs sed -i 's/3000/7860/g'
7
 
8
  # --------------------------------------------------------
9
- # 2. PERMISSIONS & ENVIRONMENT
10
  # --------------------------------------------------------
11
  ENV PUID=1000
12
  ENV PGID=1000
13
  ENV TZ=America/Sao_Paulo
14
 
 
 
 
 
 
 
15
  # --------------------------------------------------------
16
- # 3. INSTALL APPS & UTILS
17
  # --------------------------------------------------------
18
- # Adicionei 'wget' na lista para poder baixar o wallpaper novo
19
  RUN apt-get update && apt-get install -y \
20
  python3 \
21
  python3-pip \
@@ -26,16 +31,22 @@ RUN apt-get update && apt-get install -y \
26
  iputils-ping \
27
  dnsutils \
28
  wget \
 
 
 
 
 
 
29
  && apt-get clean
30
 
31
  # --------------------------------------------------------
32
- # 4. FIREFOX "BOSS MODE" (Enterprise Policy)
33
  # --------------------------------------------------------
34
  RUN mkdir -p /etc/firefox/policies && \
35
  echo '{ "policies": { "DNSOverHTTPS": { "Enabled": true, "ProviderURL": "https://mozilla.cloudflare-dns.com/dns-query", "Locked": true } } }' > /etc/firefox/policies/policies.json
36
 
37
  # --------------------------------------------------------
38
- # 5. CHROMIUM "BOSS MODE" (Managed Policy)
39
  # --------------------------------------------------------
40
  RUN mkdir -p /etc/chromium/policies/managed && \
41
  echo '{ "DnsOverHttpsMode": "secure", "DnsOverHttpsTemplates": "https://chrome.cloudflare-dns.com/dns-query" }' > /etc/chromium/policies/managed/managed_policies.json
@@ -45,24 +56,133 @@ RUN mkdir -p /etc/opt/chrome/policies/managed && \
45
  cp /etc/chromium/policies/managed/managed_policies.json /etc/opt/chrome/policies/managed/managed_policies.json
46
 
47
  # --------------------------------------------------------
48
- # 6. DISFARCE VISUAL (WALLPAPER PRO)
49
  # --------------------------------------------------------
50
- # Substitui o fundo padrão azul do XFCE por um wallpaper estilo "Hacker/Tech"
51
- # Se quiser outra imagem, basta trocar o link entre aspas.
52
- RUN wget -O /usr/share/backgrounds/xfce/xfce-stripes.png "https://images.unsplash.com/photo-1526374965328-7f61d4dc18c5?q=80&w=1920&auto=format&fit=crop"
 
 
53
 
54
  # --------------------------------------------------------
55
- # 7. LIMPEZA DE RASTROS (TERMINAL STEALTH)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
  # --------------------------------------------------------
57
- # Aqui removemos as variáveis de ambiente que o Hugging Face injeta.
58
- # Também forçamos o prompt a mostrar "root@vps-pro" em vez do ID do container.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
 
60
- RUN echo 'unset SPACE_ID' >> /etc/bash.bashrc && \
61
- echo 'unset HUGGINGFACE_HUB_TOKEN' >> /etc/bash.bashrc && \
62
- echo 'unset SPACE_AUTHOR_NAME' >> /etc/bash.bashrc && \
63
- echo 'unset SPACE_REPO_NAME' >> /etc/bash.bashrc && \
64
- echo 'unset SPACE_HOST' >> /etc/bash.bashrc && \
65
- echo 'export PS1="\[\e[32m\]root@vps-pro\[\e[m\]:\[\e[34m\]\w\[\e[m\]# "' >> /etc/bash.bashrc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
 
67
  # --------------------------------------------------------
68
  # 8. START
 
6
  RUN grep -rl "3000" /defaults | xargs sed -i 's/3000/7860/g'
7
 
8
  # --------------------------------------------------------
9
+ # 2. PERMISSIONS & ENVIRONMENT (QUALIDADE MÁXIMA)
10
  # --------------------------------------------------------
11
  ENV PUID=1000
12
  ENV PGID=1000
13
  ENV TZ=America/Sao_Paulo
14
 
15
+ # Configurações para forçar ALTA QUALIDADE no KasmVNC (Webtop)
16
+ ENV KASMVNC_QUALITY=100
17
+ ENV KASMVNC_FPS=60
18
+ ENV KASMVNC_COMPRESSION_LEVEL=0
19
+ ENV KASMVNC_ENCODING=webp
20
+
21
  # --------------------------------------------------------
22
+ # 3. INSTALL APPS (CHROMIUM LEVE + EXTRAS)
23
  # --------------------------------------------------------
 
24
  RUN apt-get update && apt-get install -y \
25
  python3 \
26
  python3-pip \
 
31
  iputils-ping \
32
  dnsutils \
33
  wget \
34
+ xdg-utils \
35
+ thunar \
36
+ mousepad \
37
+ xfce4-taskmanager \
38
+ xfce4-screenshooter \
39
+ xfce4-appfinder \
40
  && apt-get clean
41
 
42
  # --------------------------------------------------------
43
+ # 4.1 FIREFOX "BOSS MODE" (Enterprise Policy)
44
  # --------------------------------------------------------
45
  RUN mkdir -p /etc/firefox/policies && \
46
  echo '{ "policies": { "DNSOverHTTPS": { "Enabled": true, "ProviderURL": "https://mozilla.cloudflare-dns.com/dns-query", "Locked": true } } }' > /etc/firefox/policies/policies.json
47
 
48
  # --------------------------------------------------------
49
+ # 4.2 CHROMIUM "BOSS MODE" (Managed Policy)
50
  # --------------------------------------------------------
51
  RUN mkdir -p /etc/chromium/policies/managed && \
52
  echo '{ "DnsOverHttpsMode": "secure", "DnsOverHttpsTemplates": "https://chrome.cloudflare-dns.com/dns-query" }' > /etc/chromium/policies/managed/managed_policies.json
 
56
  cp /etc/chromium/policies/managed/managed_policies.json /etc/opt/chrome/policies/managed/managed_policies.json
57
 
58
  # --------------------------------------------------------
59
+ # 4.3 DISFARCE VISUAL (PAPEL DE PAREDE FORÇADO)
60
  # --------------------------------------------------------
61
+ # Copiamos a imagem para múltiplos locais para garantir que o XFCE a encontre
62
+ COPY papel.png /usr/share/backgrounds/xfce/custom-wallpaper.png
63
+ RUN cp /usr/share/backgrounds/xfce/custom-wallpaper.png /usr/share/backgrounds/xfce/xfce-stripes.png && \
64
+ cp /usr/share/backgrounds/xfce/custom-wallpaper.png /usr/share/backgrounds/xfce/xfce-teal.png && \
65
+ cp /usr/share/backgrounds/xfce/custom-wallpaper.png /usr/share/backgrounds/xfce/xfce-blue.png
66
 
67
  # --------------------------------------------------------
68
+ # 5. CONFIGURAÇÃO DE PERFIL PADRÃO (O SEGREDO)
69
+ # --------------------------------------------------------
70
+ # O Webtop usa o diretório /defaults/profile para criar o usuário 'abc' na primeira vez.
71
+ # Vamos injetar a configuração do XFCE diretamente lá.
72
+ # Ajustado para image-style=0 (Original/Centered) ou 5 (Stretched) para evitar interpolação ruim.
73
+ RUN mkdir -p /defaults/profile/.config/xfce4/xfconf/xfce-perchannel-xml/ && \
74
+ echo '<?xml version="1.0" encoding="UTF-8"?>\n\
75
+ <channel name="xfce4-desktop" version="1.0">\n\
76
+ <property name="backdrop" type="empty">\n\
77
+ <property name="screen0" type="empty">\n\
78
+ <property name="monitor0" type="empty">\n\
79
+ <property name="workspace0" type="empty">\n\
80
+ <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/custom-wallpaper.png"/>\n\
81
+ <property name="image-style" type="int" value="5"/>\n\
82
+ </property>\n\
83
+ </property>\n\
84
+ <property name="monitorVNC" type="empty">\n\
85
+ <property name="workspace0" type="empty">\n\
86
+ <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/custom-wallpaper.png"/>\n\
87
+ <property name="image-style" type="int" value="5"/>\n\
88
+ </property>\n\
89
+ </property>\n\
90
+ <property name="monitorrdp0" type="empty">\n\
91
+ <property name="workspace0" type="empty">\n\
92
+ <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/custom-wallpaper.png"/>\n\
93
+ <property name="image-style" type="int" value="5"/>\n\
94
+ </property>\n\
95
+ </property>\n\
96
+ </property>\n\
97
+ </property>\n\
98
+ <property name="desktop-icons" type="empty">\n\
99
+ <property name="file-icons" type="empty">\n\
100
+ <property name="show-filesystem" type="bool" value="false"/>\n\
101
+ <property name="show-home" type="bool" value="true"/>\n\
102
+ <property name="show-trash" type="bool" value="false"/>\n\
103
+ </property>\n\
104
+ </property>\n\
105
+ </channel>' > /defaults/profile/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
106
+
107
  # --------------------------------------------------------
108
+ # 6. SCRIPT DE AUTO-REPARO (REFORÇADO)
109
+ # --------------------------------------------------------
110
+ RUN echo '#!/bin/bash' > /usr/local/bin/force-desktop-icons.sh && \
111
+ echo 'sleep 10' >> /usr/local/bin/force-desktop-icons.sh && \
112
+ echo 'mkdir -p $HOME/Desktop' >> /usr/local/bin/force-desktop-icons.sh && \
113
+ \
114
+ # Atalhos Chrome/Chromium
115
+ echo 'if [ -f /usr/share/applications/chromium-browser.desktop ]; then' >> /usr/local/bin/force-desktop-icons.sh && \
116
+ echo ' cp /usr/share/applications/chromium-browser.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
117
+ echo 'elif [ -f /usr/share/applications/chromium.desktop ]; then' >> /usr/local/bin/force-desktop-icons.sh && \
118
+ echo ' cp /usr/share/applications/chromium.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
119
+ echo 'fi' >> /usr/local/bin/force-desktop-icons.sh && \
120
+ \
121
+ # Atalhos Padrão e Utilitários
122
+ echo 'cp /usr/share/applications/firefox.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
123
+ echo 'cp /usr/share/applications/xfce4-terminal.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
124
+ echo 'cp /usr/share/applications/thunar.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
125
+ echo 'cp /usr/share/applications/mousepad.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
126
+ echo 'cp /usr/share/applications/xfce4-taskmanager.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
127
+ echo 'cp /usr/share/applications/xfce4-screenshooter.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
128
+ echo 'cp /usr/share/applications/xfce4-appfinder.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
129
+ echo 'cp /usr/share/applications/vlc.desktop $HOME/Desktop/' >> /usr/local/bin/force-desktop-icons.sh && \
130
+ \
131
+ # Downloads
132
+ echo 'mkdir -p $HOME/Downloads' >> /usr/local/bin/force-desktop-icons.sh && \
133
+ echo 'ln -sf $HOME/Downloads $HOME/Desktop/Downloads' >> /usr/local/bin/force-desktop-icons.sh && \
134
+ \
135
+ # Permissões
136
+ echo 'chmod +x $HOME/Desktop/*.desktop' >> /usr/local/bin/force-desktop-icons.sh && \
137
+ \
138
+ # FORÇAR WALLPAPER VIA XFCONF (Múltiplos alvos)
139
+ echo 'IMG="/usr/share/backgrounds/xfce/custom-wallpaper.png"' >> /usr/local/bin/force-desktop-icons.sh && \
140
+ echo 'export DISPLAY=:1' >> /usr/local/bin/force-desktop-icons.sh && \
141
+ # FIX: Usar xfconf-query de forma agressiva para todos os monitores possíveis
142
+ echo 'for p in $(xfconf-query -c xfce4-desktop -l | grep "last-image"); do' >> /usr/local/bin/force-desktop-icons.sh && \
143
+ echo ' xfconf-query -c xfce4-desktop -p "$p" -s "$IMG" --create -t string' >> /usr/local/bin/force-desktop-icons.sh && \
144
+ echo 'done' >> /usr/local/bin/force-desktop-icons.sh && \
145
+ echo 'for p in $(xfconf-query -c xfce4-desktop -l | grep "image-style"); do' >> /usr/local/bin/force-desktop-icons.sh && \
146
+ echo ' xfconf-query -c xfce4-desktop -p "$p" -s 5 --create -t int' >> /usr/local/bin/force-desktop-icons.sh && \
147
+ echo 'done' >> /usr/local/bin/force-desktop-icons.sh && \
148
+ \
149
+ # Desativa suavização de fonte e outros ajustes que podem causar borrão na interface
150
+ echo 'xfconf-query -c xsettings -p /Xft/Antialias -s 1' >> /usr/local/bin/force-desktop-icons.sh && \
151
+ echo 'xfconf-query -c xsettings -p /Xft/Hinting -s 1' >> /usr/local/bin/force-desktop-icons.sh && \
152
+ echo 'xfconf-query -c xsettings -p /Xft/HintStyle -s "hintfull"' >> /usr/local/bin/force-desktop-icons.sh && \
153
+ echo 'xfdesktop --reload' >> /usr/local/bin/force-desktop-icons.sh
154
 
155
+ # Torna executável e adiciona ao boot
156
+ RUN chmod +x /usr/local/bin/force-desktop-icons.sh
157
+ RUN mkdir -p /etc/xdg/autostart && \
158
+ echo '[Desktop Entry]' > /etc/xdg/autostart/force-icons.desktop && \
159
+ echo 'Type=Application' >> /etc/xdg/autostart/force-icons.desktop && \
160
+ echo 'Name=Fix Icons' >> /etc/xdg/autostart/force-icons.desktop && \
161
+ echo 'Exec=/usr/local/bin/force-desktop-icons.sh' >> /etc/xdg/autostart/force-icons.desktop
162
+
163
+ # --------------------------------------------------------
164
+ # 7. SISTEMA DE CAMUFLAGEM BLINDADA (V8)
165
+ # --------------------------------------------------------
166
+ RUN \
167
+ echo 'export HOSTNAME="vps-pro"' >> /etc/bash.bashrc && \
168
+ echo 'export SESSION_MANAGER="local/vps-pro:@/tmp/.ICE-unix/400"' >> /etc/bash.bashrc && \
169
+ echo 'unset SPACE_ID SPACE_SUBDOMAIN SPACE_TITLE SPACE_CREATOR_USER_ID HUGGINGFACE_HUB_TOKEN SPACE_AUTHOR_NAME SPACE_REPO_NAME SPACE_HOST' >> /etc/bash.bashrc && \
170
+ # Prompts
171
+ echo 'export PS1="\[\e[1;32m\]user@vps-pro\[\e[m\]:\[\e[1;34m\]\w\[\e[m\]$ "' >> /etc/bash.bashrc && \
172
+ echo 'export PS1="\[\e[1;31m\]root@vps-pro\[\e[m\]:\[\e[1;34m\]\w\[\e[m\]# "' >> /root/.bashrc && \
173
+ # Proteções
174
+ echo "alias env='/usr/bin/env | grep -vE \"hug|space|token|adrianorico|BASH_FUNC\"'" >> /etc/bash.bashrc && \
175
+ echo 'cat() {' >> /etc/bash.bashrc && \
176
+ echo ' /usr/bin/cat "$@" | sed -e "s/adri""anorico/client-id-8821/gI" -e "s/huggingface/aws-system/gI" -e "s/hf.space/compute.internal/gI";' >> /etc/bash.bashrc && \
177
+ echo '}' >> /etc/bash.bashrc && \
178
+ echo 'more() {' >> /etc/bash.bashrc && \
179
+ echo ' /usr/bin/more "$@" | sed -e "s/adri""anorico/client-id-8821/gI" -e "s/huggingface/aws-system/gI" -e "s/hf.space/compute.internal/gI";' >> /etc/bash.bashrc && \
180
+ echo '}' >> /etc/bash.bashrc && \
181
+ echo 'ping() {' >> /etc/bash.bashrc && \
182
+ echo ' /usr/bin/ping "$@" | sed -e "s/adri""anorico/client-id-8821/gI" -e "s/huggingface/aws-system/gI" -e "s/hf.space/compute.internal/gI";' >> /etc/bash.bashrc && \
183
+ echo '}' >> /etc/bash.bashrc && \
184
+ echo "alias hostname='echo vps-pro'" >> /etc/bash.bashrc && \
185
+ cp /etc/bash.bashrc /root/.bashrc
186
 
187
  # --------------------------------------------------------
188
  # 8. START