103 lines
3.3 KiB
Docker
Executable file
103 lines
3.3 KiB
Docker
Executable file
FROM ghcr.io/ublue-os/silverblue-nvidia:41
|
|
|
|
COPY etc /etc
|
|
|
|
RUN dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm && \
|
|
dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm && \
|
|
dnf clean all
|
|
|
|
RUN dnf remove -y \
|
|
ptyxis \
|
|
gnome-software \
|
|
htop \
|
|
gnome-classic-session \
|
|
gnome-shell-extension-apps-menu \
|
|
gnome-shell-extension-background-logo \
|
|
gnome-shell-extension-launch-new-instance \
|
|
gnome-shell-extension-places-menu \
|
|
gnome-shell-extension-window-list \
|
|
open-vm-tools \
|
|
open-vm-tools-desktop \
|
|
qemu-guest-agent \
|
|
spice-vdagent \
|
|
spice-webdavd \
|
|
virtualbox-guest-additions && \
|
|
dnf swap -y ffmpeg-free ffmpeg --allowerasing && \
|
|
dnf swap -y libavcodec-free libavcodec-freeworld --allowerasing && \
|
|
dnf group install -y multimedia --setopt="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin && \
|
|
dnf copr enable -y alternateved/eza && \
|
|
dnf install -y \
|
|
acpi \
|
|
akmod-v4l2loopback \
|
|
btop \
|
|
direnv \
|
|
distrobox \
|
|
eza \
|
|
git \
|
|
gnome-boxes \
|
|
gstreamer1-vaapi \
|
|
helm \
|
|
kubectl \
|
|
util-linux \
|
|
lm_sensors \
|
|
ncdu \
|
|
pavucontrol \
|
|
qemu-guest-agent \
|
|
sysstat \
|
|
tailscale \
|
|
vdpauinfo \
|
|
vulkan-tools \
|
|
zsh \
|
|
zsh-syntax-highlighting && \
|
|
# Clean up
|
|
dnf clean all
|
|
|
|
# Remove btop and nvtop shortcuts
|
|
RUN rm /usr/share/applications/btop.desktop /usr/share/applications/nvtop.desktop
|
|
|
|
# Don't use the ghostty copr for now, it's broken on 42. Download the appimage in userland.
|
|
# Todo: Try again when 42 is final.
|
|
# RUN dnf copr enable -y pgdev/ghostty && \
|
|
# dnf install -y ghostty
|
|
|
|
# Don't install 1password, the browser integration breaks because 1Password uses /opt.
|
|
# I think this is polkit related.
|
|
# RUN mkdir -p /var/opt
|
|
# COPY scripts/1password.sh /tmp/1password.sh
|
|
# RUN /bin/sh /tmp/1password.sh
|
|
|
|
RUN authselect enable-feature with-fingerprint
|
|
|
|
LABEL org.opencontainers.image.description="Built on ublue-os/silverblue-main, adding more batteries" \
|
|
org.opencontainers.image.source="https://cremin.dev/jonathan/bootc" \
|
|
org.opencontainers.image.title="ublue-silverblue-nvidia" \
|
|
org.opencontainers.image.url="https://cremin.dev/jonathan/bootc" \
|
|
org.opencontainers.image.created="" \
|
|
org.opencontainers.image.licenses="Unlicensed" \
|
|
org.opencontainers.image.revision="" \
|
|
org.opencontainers.image.version=""
|
|
|
|
|
|
|
|
|
|
# FROM cremin.dev/jonathan/fedora-bootc-base:42
|
|
|
|
# RUN echo "blacklist nouveau" > /etc/modprobe.d/blacklist_nouveau.conf
|
|
|
|
# RUN dnf install -y --allowerasing \
|
|
# akmod-nvidia \
|
|
# libva-nvidia-driver \
|
|
# nvidia-container-toolkit \
|
|
# nvidia-vaapi-driver \
|
|
# xorg-x11-drv-nvidia \
|
|
# xorg-x11-drv-nvidia-cuda \
|
|
# xorg-x11-drv-nvidia-cuda-libs \
|
|
# xorg-x11-drv-nvidia-power && \
|
|
# # Clean up
|
|
# dnf clean all
|
|
|
|
# RUN akmods --force --kernels `rpm -q --queryformat '%{VERSION}-%{RELEASE}.%{ARCH}' kernel-devel`
|
|
|
|
# RUN systemctl enable nvidia-toolkit-firstboot.service
|
|
|
|
# COPY kargs-nvidia.toml /usr/lib/bootc/kargs.d/nvidia.toml
|