Skip to content

Custom Fedora immutable desktop images with unfiltered Flathub, distrobox, automatic updates, and drivers (nvidia and xbox)

License

Notifications You must be signed in to change notification settings

johnmmcgee/ublue-custom

 
 

Repository files navigation

ublue-custom

build-ublue

These are mostly stock images that I created for my own personal use.
Intial work was forked from: [https://github.com/bsherman/ublue-custom/] (https://github.com/bsherman/ublue-custom/)

What is this?

Custom uBlue image based on Team UBlue os. This is a custom version of [Fedora Silverblue] (https://fedoraproject.org/silverblue/), essentially.

Images built:

  • Silverblue (Fedora GNOME immutable desktop)

Based on:

  • ublue-os/main for good foundations
    • adds distrobox, freeworld mesa and media codecs, gnome-tweaks (on gnome), just, openssl, pipewire-codec-aptx, ratbagd, vim
    • sets automatic staging of updates to system
    • sets flatpaks to update at 04:00 and on start
    • v4l2loopback driver from ublue-os/akmods
    • xpadneo/xone xbox controller drivers from ublue-os/akmods
  • ublue-os/nvidia for nvidia variants adds:
    • nvidia kernel drivers
    • nvidia container runtime
    • nvidia vaapi driver
    • nvidia selinux config

NOTE: this project is not formally affiliated with ublue-os and is not supported by their team.

Features

In addition to the packages/config provided by base images, this image:

  • Removes from the base image:
    • firefox
  • Adds the following packages to the base image:
  • Sets faster timeout on systemd waiting for shutdown
  • Sets gnome's "APP is not responding" check to 30 seconds
  • Sets some custom gnome settings (see etc/dconf)

Applications

  • The following applications are installed system-wide:

Communications

  • Discord
  • Slack
  • Signal
  • Telegram

Gaming

  • Minecraft
  • Steam

Gnome

  • Disk Usage
  • Calculator
  • Calendar
  • Characters
  • Documenation Viewer
  • Extension Manager
  • Firmware Updater
  • Font Viewer
  • Image Viewer
  • Log Viewer
  • Nautilus Previwer
  • Password / Secrets Manager
  • Text Editor
  • Weather

Internet

  • Firefox
  • Tor Browser

Multimedia

  • Spotify
  • Clapper

Productivity

  • LibreOffice

Utilities

  • Joplin
  • KeePassXC

Further Customization

Upon the first time booting and on each update, the system will check if $HOME/.config/ublue-os/firstboot/.firstboot-ran exist and if it does not it will go through a series of scripts that do things like install flatpaks and... well that is all it does at the moment. You can remove this file if you wish for it to run again on next update.

Usage

We build latest which points to Fedora 40:

Standard

rpm-ostree rebase ostree-unverified-registry:ghcr.io/johnmmcgee/silverblue-custom:latest
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/johnmmcgee/silverblue-custom:latest

NVidia drivers

rpm-ostree rebase ostree-unverified-registry:ghcr.io/johnmmcgee/silverblue-nvidia-custom:latest
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/johnmmcgee/silverblue-nvidia-custom:latest

Or you can revert back to 39:

Standard

rpm-ostree rebase ostree-unverified-registry:ghcr.io/johnmmcgee/silverblue-custom:39
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/johnmmcgee/silverblue-custom:39

NVidia drivers

rpm-ostree rebase ostree-unverified-registry:ghcr.io/johnmmcgee/silverblue-nvidia-custom:39
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/johnmmcgee/silverblue-nvidia-custom:39

Use the latest tag to follow the current latest. Or you can use the release tag, such as 40, which is current.

Verification

These images are signed with sigstore's cosign. You can verify the signature by downloading the cosign.pub key from this repo and running the appropriate command:

cosign verify --key cosign.pub ghcr.io/johnmmcgee/ublue-custom
cosign verify --key cosign.pub ghcr.io/johnmmcgee/ublue-nvidia-custom

About

Custom Fedora immutable desktop images with unfiltered Flathub, distrobox, automatic updates, and drivers (nvidia and xbox)

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • Shell 70.0%
  • Dockerfile 26.4%
  • Just 3.6%