@@ -9,48 +9,44 @@ RUN KERNEL_VERSION="$(rpm -q kernel-core --queryformat '%{VERSION}-%{RELEASE}.%{
99# Segundo estágio: Configuração do sistema e imagem final
1010FROM quay.io/fedora/fedora-bootc:44 AS final
1111
12- # 1. Estrutura de diretórios do sistema e links simbólicos (compatibilidade bootc)
13- RUN mkdir -vp /var/roothome /data /var/home && \
14- rm -rf /opt && mkdir -vp /var/opt && ln -vs /var/opt /opt && \
15- mkdir -vp /var/usrlocal && mv -v /usr/local/* /var/usrlocal/ 2>/dev/null || true && \
16- rm -rf /usr/local && ln -vs /var/usrlocal /usr/local
17-
18- # 2. Instalação dos módulos NVIDIA compilados
12+ # 1. Instalação dos módulos e drivers NVIDIA compilados (Via dnf download + rpm em /tmp)
1913COPY --from=builder /etc/yum.repos.d/fedora-nvidia-580.repo /etc/yum.repos.d/
20- COPY --from=builder /var/cache/akmods/nvidia/kmod-nvidia*.rpm /tmp/kmod/
21- RUN dnf5 install -y nvidia-kmod-common nvidia-driver-cuda /tmp/kmod/*.rpm && \
22- rm -rf /tmp/kmod && \
23- dnf5 clean all
14+ COPY --from=builder /var/cache/akmods/nvidia/kmod-nvidia*.rpm /tmp/
15+ RUN cd /tmp && \
16+ dnf5 download nvidia-kmod-common nvidia-driver-cuda && \
17+ rpm -vi --nodeps nvidia-kmod-common*.rpm && \
18+ rpm -vi --nodeps nvidia-driver-cuda*.rpm && \
19+ dnf5 -y install ./kmod-nvidia-*.rpm && \
20+ dnf5 clean all && \
21+ rm -rfv /var/cache/* /var/lib/dnf/* /var/log/* /tmp/* /var/tmp/* /var/roothome/.*
2422
25- # 3 . Instalação Unificada: Kernel Extra + GNOME + Pacotes Personalizados
23+ # 2 . Instalação Unificada do Kernel Extra, GNOME e Pacotes das Listas (com --nodocs)
2624COPY pacotes_necessarios pacotes_desktop /tmp/
27- RUN KVER="$(rpm -q kernel-core --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}')" && \
28- PKGS_BASE=$(grep -v '^#' /tmp/pacotes_necessarios | tr '\n ' ' ' ) && \
29- PKGS_DESK=$(grep -v '^#' /tmp/pacotes_desktop | tr '\n ' ' ' ) && \
30- dnf5 install -y --setopt=install_weak_deps=False \
31- "kernel-modules-extra-${KVER}" \
32- gnome-shell \
33- $PKGS_BASE \
34- $PKGS_DESK && \
25+ RUN dnf5 install -y --nodocs --setopt=install_weak_deps=False gnome-shell "kernel-modules-extra-$(rpm -q kernel-core --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}')" && \
26+ grep -h -v '^#' /tmp/pacotes_necessarios /tmp/pacotes_desktop | xargs dnf5 install -y --nodocs && \
3527 rm -f /tmp/pacotes_necessarios /tmp/pacotes_desktop && \
3628 dnf5 clean all
3729
38- # 4 . Cópia Direta de Arquivos de Configuração e Scripts (Modificações Frequentes)
30+ # 3 . Cópia dos arquivos de configuração e scripts
3931COPY zram-generator.conf /etc/systemd/zram-generator.conf
4032COPY vconsole.conf /etc/vconsole.conf
4133COPY locale.conf /etc/locale.conf
4234COPY 10-nvidia-args.toml /usr/lib/bootc/kargs.d/10-nvidia-args.toml
4335COPY post-install.sh /usr/bin/post-install.sh
4436COPY post-install.service /usr/lib/systemd/system/post-install.service
4537
46- # 5. Ativação de Serviços e Limpeza Final
47- RUN chmod +x /usr/bin/post-install.sh && \
38+ # 4. Estrutura de diretórios, compatibilidade bootc, permissões e serviços
39+ RUN mkdir -vp /var/roothome /data /var/home && \
40+ rm -rf /opt && mkdir -vp /var/opt && ln -vs /var/opt /opt && \
41+ mkdir -vp /var/usrlocal && \
42+ rm -rf /usr/local && ln -vs /var/usrlocal /usr/local && \
43+ chmod +x /usr/bin/post-install.sh && \
4844 systemctl enable post-install.service && \
4945 systemctl mask systemd-remount-fs.service && \
5046 systemctl mask akmods-keygen@akmods-keygen.service && \
5147 systemctl enable libvirtd.service && \
5248 systemctl enable spice-vdagentd.service && \
5349 rm -rf /var/cache/* /var/lib/dnf/* /var/log/* /tmp/* /var/tmp/* /var/roothome/.*
5450
55- # 6 . Validação do bootc
51+ # 5 . Validação do bootc
5652RUN bootc container lint
0 commit comments