Fork of ublue-os/aurora: stage 0 of Quine Linux, built and published here
Find a file
github-actions[bot] a61c1e60b0
chore(main): release 1.0.0 (#118)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jorge O. Castro <jorge.castro@gmail.com>
2023-04-02 01:25:36 +00:00
.github fix: replaced action step with run step (#122) 2023-04-02 00:48:36 +00:00
etc fix(yafti): Fix description stanza (#123) 2023-04-02 01:08:18 +00:00
usr revert: remove 1password (#95) 2023-03-28 15:38:45 +00:00
bluefin-nvidia.ks feat: add kickstart for Nvidia ISO generation (#97) 2023-03-30 18:03:35 +00:00
bluefin.ks feat: add kickstart for ISO generation (#96) 2023-03-30 18:04:17 +00:00
build.sh fix: remove rpmfusion install 2023-03-08 14:28:58 -05:00
CHANGELOG.md chore(main): release 1.0.0 (#118) 2023-04-02 01:25:36 +00:00
Containerfile feat: add fleek man and completions (#115) 2023-04-01 02:32:22 +00:00
cosign.pub chore: add files from other repos 2023-03-08 14:19:39 -05:00
LICENSE Initial commit 2023-03-08 13:39:33 -05:00
packages.json feat: add zsh (#80) 2023-03-21 14:13:35 +00:00
README.md docs: add fleek info, copyediting (#124) 2023-04-02 01:12:03 +00:00

bluefin

Fedora Silverblue for Ubuntu Expatriates

This image is not production ready yet

release-please

A familiar(ish) Ubuntu desktop for Fedora Silverblue.

For end users it provides a system as reliable as a Chromebook with near-zero maintainance, with the power of Ubuntu and Fedora fused together.

For developers we endeavour to provide the best cloud-native developer experience by enabling easy consumption of the industry's leading tools.

image

"Let's see what's out there." - Jean-Luc Picard

Usage

  1. Download and install test ISOs from here:
For existing Silverblue/Kinoite users
  1. After you reboot you should pin the working deployment so you can safely rollback.

  2. [AMD/Intel GPU users only] Open a terminal and rebase the OS to this image:

     sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bluefin:37
    
  3. [Nvidia GPU users only] Open a terminal and rebase the OS to this image:

     sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bluefin-nvidia:37
    
  4. Reboot the system and you're done!

  5. To revert back:

     sudo rpm-ostree rebase fedora:fedora/37/x86_64/silverblue
    

Check the Silverblue documentation for instructions on how to use rpm-ostree. We build date tags as well, so if you want to rebase to a particular day's release you can use the version number and date to boot off of that specific image:

sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bluefin:37-20230310 

The latest tag will automatically point to the latest build.

Features

This image heavily utilizes cloud-native concepts.

System updates are image-based and automatic. Applications are logically seperated from the system by using Flatpaks, and the CLI experience is contained within OCI containers:

For Users

  • Ubuntu-like GNOME layout
    • Includes the following GNOME Extensions
      • Dash to Dock - for a more Unity-like dock
      • Appindicator - for tray-like icons in the top right corner
      • GSConnect - Integrate your mobile device with your desktop
      • Blur my Shell - for dat bling
  • GNOME Software with Flathub
    • Use a familiar software center UI to install graphical software
  • Built on top of the the uBlue main image
    • Extra udev rules for game controllers and other devices included out of the box
    • All multimedia codecs included
    • System designed for automatic staging of updates
      • If you've never used an image-based Linux before just use your computer normally
      • Don't overthink it, just shut your computer off when you're not using it

For Developers

  • Built-in Ubuntu user space
    • Ctrl-Alt-u - will launch an Ubuntu image inside a terminal via Distrobox, your home directory will be transparently mounted
    • A BlackBox terminal is used just for this configuration
    • Use this container for your typical CLI needs or to install software that is not available via Flatpak or Fedora
    • Refer to the Distrobox documentation for more information on using and configuring custom images
    • GNOME Terminal
      • Ctrl-Alt-t - will launch a host-level GNOME Terminal if you need to do host-level things in Fedora (you shouldn't need to do much).
  • Cloud Native Tools
    • kind - Run a Kubernetes cluster on your machine. Do a kind create cluster on the host to get started!
    • kubectl - Administer Kubernetes Clusters
    • Podman-Docker - Automatically aliases the docker command to podman
  • Nix-powered Development Experience (Alpha)
    • Introducing Fleek - a user-friendly wrapper around Nix and Nix Home Manager
    • Run /usr/bin/ublue-nix-install to get started, then fleek help to learn more
    • This feature is experimental and not considered ready for production. It is for experienced users only, but is improving quickly
  • Quality of Life Improvements
    • systemd shutdown timers adjusted to 15 seconds
    • Tailscale for VPN
    • Just task runner for post-install automation tasks
    • zsh available as an optional shell, use sudo lcsh -i and follow the prompts to configure it

Future Features

These are currently unimplemented ideas that we plan on adding:

  • Provide a :lts tag derived from CentOS Stream for a more enterprise-like cadence
  • Firecracker - help wanted with this!

Applications

  • 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
  • All applications installed per user instead of system wide, similar to openSUSE MicroOS. Thanks for the inspiration Team Green!

The author recommends the following extensions if you'd like to round out your experience. Use the included "Extensions Manager" application to search for these extensions, everything you need to get them to run is already included:

(Note: Installing extensions via extensions.gnome.org won't work, the extensions must be installed via this application)

Verification

These images are signed with sisgstore's cosign. 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/bluefin

Building Locally

  1. Clone this repository and cd into the working directory

    git clone https://github.com/ublue-os/bluefin.git
    cd bluefin
    
  2. Make modifications if desired

  3. Build the image (Note that this will download and the entire image)

    podman build . -t bluefin
    
  4. Podman push to a registry of your choice.

  5. Rebase to your image to wherever you pushed it:

    sudo rpm-ostree rebase ostree-unverified-registry:whatever/bluefin:latest
    

Frequently Asked Questions

What about codecs?

Everything you need is included.

How do I get my GNOME back to normal Fedora defaults?

We set the default dconf keys in /etc/dconf/db/local, removing those keys and updating the database will take you back to the fedora default:

sudo rm -f /etc/dconf/db/local
sudo dconf update

If you prefer a vanilla GNOME installation check out silverblue-main or silverblue-nvidia for a more upstream experience.

Should I trust you?

This is all hosted, built, and pushed on GitHub. As far as if I'm a trustable fellow, here's my bio. If you've made it this far then hopefully you've come to the conclusion on how easy it would be to build all of this on your own trusted machinery. 😄

Repography logo / Recent activity Time period

Timeline graph Issue status graph Pull request status graph Trending topics Top contributors Activity map