Fp OS

A custom image of Bazzite for personal needs.

View on GitHub

Fp OS Logo Fp OS

Build Status Artifact Hub

Website: os.fpt.icu


Introduction

Welcome to Fp OS! This project is a customized, bootable OS image based on Bazzite (a Fedora KDE variant), built using the Universal Blue image template.

While this is my personal daily driver OS, tailored to my specific workflow and preferences, it’s also publicly available as a learning resource or a starting point for your own custom OS image. You can see how certain customizations are made, fork the project to suit your needs, or just draw inspiration for your own builds.

Disclaimer: This project includes personal branding and specific configurations that may not be suitable for everyone. It is recommended to review the customizations before use.

Core Concept

Features & Customizations

Here’s a summary of what makes Fp OS unique:

Branding

System-Level Changes & Additions

Included RPM Packages

In addition to the standard Bazzite set, a variety of packages are installed for development (VS Code, Go, buildah), networking (NordVPN, Tailscale, Netbird), system utilities (yadm, kitty, zsh), and many more.

Default Flatpaks

Comes with a curated selection of default applications including Bitwarden, Spotify, Vesktop (a Discord client), GIMP, Thunderbird, Mission Center, and many more. To be installed on the first start by the system.

How to Use

You can switch an existing bootc-compatible system (like Fedora, Bazzite, or Bluefin) to this image.

Rebase Command:

sudo rpm-ostree rebase ostree-image-signed:docker://ghcr.io/fptbb/fp-os:latest

After the command completes, reboot your system. You can check the status at any time with sudo bootc status.

Building from Source

If you want to customize this image or build it yourself, you can use the provided Justfile.

Prerequisites

Build Instructions

  1. Clone the repository:
    git clone https://github.com/Fptbb/fp-os.git
    cd fp-os
    
  2. Build the container image:
    just build
    
  3. (Optional) Build a bootable disk image: You can create an ISO, QCOW2, or other disk image formats.
    # Build an ISO for installation
    just build-iso
    
    # Build a QCOW2 image for use in VMs
    just build-qcow2
    

    The generated images will be in the output/ directory.

Container Signing

This repository is configured for container signing with cosign. If you fork this project, it is highly recommended to set up your own signing keys to ensure the integrity of your images. For instructions, please refer to the TUTORIAL.md file in this repository.

Acknowledgements

This project is made possible by the work of the open-source community. Special thanks to:

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.