My spin based on Fedora Silverblue, which is derived from the amazing Universal Blue project. This image is created with BlueBuild tooling for making & maintaining container-based Linux desktop images.
cabos is inspired and borrows heavily from Bluefin-DX and gidro-os.
The main idea is to have an up-to-date, stable, and pre-configured base OS, and to use customized containers with Distrobox to do development work within it. You can see an example of a base Ubuntu container to get started with here.
ZSH is configured to use oh-my-zsh by default, but customizing the config has changed a little. If you use an Distrobox based on Jetskis, you can share zsh between the two, but also have seperate options as well:
By default, your new .zshrc
config for your machine will be located at ~/.config/contexts/localhost/.zshrc
. The default config for each Distrobox will be located in ~/.config/contexts/container-name/.zshrc
. To have shared config across both localhost and Distrobox containers, create a new config ending in .zsh
here: ~/.config/contexts/config.d/
. Please note, it is not recommended to modify the base ~/.zshrc
file since it will source the appropriate files for whatever you're running at the time.
Running SETUP_DEV_TOOLS=true distrobox enter jetskis
will setup nvm and pyenv in your container. You can modify the ~/.zshrc
file if you want to install other packages.
Removed packages (RPMs):
- Firefox
- nvtop (Except for Nvidia images)
- Gnome Software rpm-ostree package (not needed since we use rpm-ostree auto-updater)
- Gnome classic session
- Gnome Tour
- Gnome Initial Setup
- Gnome System Monitor
- Gnome system extensions
- Gnome Tweaks
- Gnome Terminal
Installed packages (RPMs):
- auto-cpufreq
- Android Tools (adb & fastboot)
- Zsh
- Mosh
- Micro
- Gnome Boxes
- VS Code
- p7zip & p7zip-plugins
- Podman
- Docker CE
- playerctl
- Samba
- Qemu
Installed akmods:
- v4l2loopback
- XOne (Xbox One RF driver)
- XPadNeo (Xbox One Bluetooth driver)
Installed extensions:
- Blur My Shell
- Caffeine
- Just Perfect
- Dash to Panel
- GSConnect
- AppIndicator Support
- Hibernate Status Button
Installed flatpaks:
- Firefox from Flathub instead of the system package
- Mission Center from Flathub instead of Gnome System Monitor
- Konsole Has font ligatures support
- Calculator
- Calendar
- Camera
- Contacts
- Clocks
- Document Viewer
- Text Editor
- G4Music
- Clapper
- Image Viewer
- Sticky Notes
- Flatseal
- Warehouse
- PinApp
- Extension Manager
- Gear Lever
Optional flatpaks at first login:
- Characters
- Disk Usage Analyzer
- Font Viewer
- Logs
- Maps
- Photos (Organizer)
- Sushi (Nautilus Previewer)
- Weather
- Fedora Media Writer
- Font Downloader
- Brave Browser
- GNOME Web
- Google Chrome
- Microsoft Edge
- Opera
- GNOME Builder
- PyCharm (Community)
- PyCharm (Professional)
- IntelliJ IDEA (Community)
- IntelliJ IDEA (Ultimate)
- Webstorm
- PhpStorm
- Rider
- CLion
- GoLand
- Android Studio
- Sublime Text 3
- Bruno
- Insomnia
- Postman
- Podman Desktop
- Meld
- Spotify
- Pithos (Pandora)
- VLC
- Kdenlive
- Shotcut
- Flowblade
- OpenShot
- Audacity
- GIMP
- Krita
- Inkscape
- Figma
- PrusaSlicer
- Cura
- FreeCAD
- OpenSCAD
- Discord
- Telegram
- Signal
- Slack
- Microsoft Teams
- Bottles
- Lutris
- Heroic Launcher
- Steam
- Gamescope
- MangoHUD
- SteamTinkerLaunch
- Proton Updater
- OnlyOffice
- LibreOffice
- Obsidian
- Standard Notes
- Thunderbird
- OBS Studio
- Boatswain
Settings applied by default:
- 4 static workspaces (dynamical workspaces disabled)
- Disabled workspaces only on primary monitor
- Disabled "hot corners"
- Disable middle-click paste
- Enable normal "Minimize, Maximize, and Close" buttons on application windows
- Use Alt+Left & Alt-Right to navigate workspaces
- Use Alt+, for Previous Track
- Use Alt+. for Next Track
- Use Alt+/ for Play/Pause
- Enabled two-finger scrolling
- Disabled "natural" scrolling direction
- Enabled tap-to-click
- Not using UI scaling - but set 1.5x font scaling
- Default to "dark" theme
- Enabled Night Light
- Enabled GSConnect
- Increased inotify limits (for preventing errors like "too many open files" when installing/using some huge applications & games)
ISOs are online-based & are constantly upgraded. There is no need to worry about the version & the date of the ISO.
ISO is available for download here.
Just download & proceed with installation.
After you get into the OS, type this command into Terminal & reboot:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/jitcos/cabos:latest
To rebase an existing Silverblue/Kinoite installation to the latest build:
- First rebase to the unsigned image, to get the proper signing keys and policies installed:
rpm-ostree rebase ostree-unverified-registry:ghcr.io/jitcos/cabos:<version>
- Reboot to complete the rebase:
systemctl reboot
- Then rebase to the signed image, like so:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/jitcos/cabos:<version>
- Reboot again to complete the installation
systemctl reboot
This repository builds date tags as well, so if you want to rebase to a particular day's build:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/jitcos/cabos:20230403
Optional config:
ujust configure-grub
: Hide GRUB text output on boot (if you want to make boot process faster [press Shift on boot if you need to see boot menu])ujust enable-hibernation
: Setup new swapfile and change configurations to allow your computer to hibernate or suspend-to-hibernate