# base [![build-ublue](https://github.com/ublue-os/base/actions/workflows/build.yml/badge.svg)](https://github.com/ublue-os/base/actions/workflows/build.yml) A base image with a (mostly) stock Fedora Silverblue. Help us make a sweet base image: Pull requests and improvements appreciated and encouraged! ## Usage Warning: This is an experimental feature and should not be used in production, try it in a VM for a while, you have been warned! sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/base:latest We build date tags as well, so if you want to rebase to a particular day's release: sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/base:20221217 The `latest` tag will automatically point to the latest build. ## Features - Start with a base Fedora Silverblue 37 image - Removes Firefox from the base image - Adds the following packages to the base image: - distrobox and gnome-tweaks - Sets automatic staging of updates for the system - Sets flatpaks to update twice a day - Everything else (desktop, artwork, etc) remains stock so you can use this as a good starting image ## Applications - All applications installed per user instead of system wide, similar to openSUSE MicroOS, they are not on the base image. Thanks for the inspiration Team Green! - Mozilla Firefox, Mozilla Thunderbird, Extension Manager, Libreoffice, DejaDup, FontDownloader, Flatseal, and the Celluloid Media Player - Core GNOME Applications installed from Flathub - GNOME Calculator, Calendar, Characters, Connections, Contacts, Evince, Firmware, Logs, Maps, NautilusPreviewer, TextEditor, Weather, baobab, clocks, eog, and font-viewer ## Further Customization The `just` task runner is included for further customization after first boot. It will copy the template from `/etc/justfile` to your home directory. After that run the following commands: - `just` - Show all tasks, more will be added in the future - `just bios` - Reboot into the system bios (Useful for dualbooting) - `just changelogs` - Show the changelogs of the pending update - Set up distroboxes for the following images: - `just distrobox-boxkit` - `just distrobox-debian` - `just distrobox-opensuse` - `just distrobox-ubuntu` - `just setup-flatpaks` - Install a selection of flatpaks, use this section to add your own apps - `just setup-gaming` - Install Steam, Heroic Game Launcher, OBS Studio, Discord, Boatswain, Bottles, and ProtonUp-Qt. MangoHud is installed and enabled by default, hit right Shift-F12 to toggle - `just update` - Update rpm-ostree, flatpaks, and distroboxes in one command Check the [just website](https://just.systems) for tips on modifying and adding your own recipes. ## Verification These images are signed with sisgstore's [cosign](https://docs.sigstore.dev/cosign/overview/). You can verify the signature by downloading the `cosign.pub` key from this repo and running the following command: cosign verify --key cosign.pub ghcr.io/ublue-os/base If you're forking this repo you should [read the docs](https://docs.github.com/en/actions/security-guides/encrypted-secrets) on keeping secrets in github. You need to [generate a new keypair](https://docs.sigstore.dev/cosign/overview/) with cosign. The public key can be in your public repo (your users need it to check the signatures), and you can paste the private key in Settings -> Secrets -> Actions.