fiftydinar / gidro-os

My personalized custom OS image.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gidro-OS

My customized image, based on slightly customized Silverblue-main base image, which is derived from the amazing Universal Blue project.
Thanks to Fedora for developing the original Fedora Silverblue Linux distribution.

This image is created using the easy & robust BlueBuild tooling for creating & maintaining container-based Linux desktop images.
It is similar to making custom ROMs in the Android community, but in a much easier & more reliable way.

Why did I make the custom image?

Modifications

Removed packages (RPMs):

Replaced packages (RPMs):

Replaced packages (RPMs) with flatpaks:

  • LibreWolf instead of Firefox
    (it has better defaults, like Ublock Origin out-of-the-box, doesn't send telemetry & it offers easy customization to fix some LibreWolf quirks)
  • Mission Center instead of Gnome System Monitor, nvtop & htop
    (it's a much better looking task manager with more useful functionality)

Installed packages (RPMs):

  • Additional Game ROM Properties for Nautilus
  • Nautilus Python (for Python Nautilus extensions)
  • Python3-icoextract (for .exe icons thumbnailing support)
  • Gnome-randr-rust (xrandr equivalent for Gnome Wayland)
  • Langpacks-EN (for avoiding Gnome Software's message about it & for potentially solving flatpak mixed locale issues)
  • Zsync (Needed dependency for some AppImage auto-updates)
  • Miniaturo (RAW pictures thumbnailing for Nautilus)
  • BrLaser (Driver which supports additional Brother printers)
  • Epson-inkjet-printer-escpr 1 & 2 (Driver which supports some additional Epson printers)
  • HPlip (Driver which supports some additional HP printers)
  • Foo2zjs (Driver which supports some additional Konica Minolta printers)
  • sg3_utils (Package which contains utilities that send SCSI commands to devices - used by Apple SuperDrive)
  • bootc (Required package for the bootloader update when using ISO)

Installed akmods:

  • NCT6687D (AMD B550 chipset temperature driver)
  • OpenRazer (for supporting Razer devices)
  • OpenRGB (for supporting RGB devices)
  • V4L2-loopback (for allowing you to create virtual video devices to apply some cool effects to real video devices)
  • XOne (Xbox One RF driver)
  • XPadNeo (Xbox One Bluetooth driver)
  • XPad (Xbox/Xbox 360 USB & RF driver + Xbox One USB driver - built-in into upstream kernel)
  • Zenergy (AMD Ryzen/Threadripper CPU sensor reading driver)

Installed extensions:

Installed flatpaks:

Optional config:

  • Hide close button from windows (useful for mouses which have a special key for closing applications window)
  • Scheduled nightly reboot (useful for applying system updates if you're leaving your PC turned on 24/7)
  • Management of official Android platform-tools (useful for easy installing, updating & removing of Android platform-tools pulled from official Google source. android-tools official package is broken, so relying on this solution is better + it pairs nicely with existing Android udev rules)

Settings applied by default:

Installation (ISO) [Recommended]

Please read the Wiki before proceeding with the installation.

ISO doesn't require an active internet connection during its usage.

TORRENT LINK
(higher download speed)

ISO CHECKSUM
(verify the checksum if ISO is downloaded correctly with apps like Collision)

Just download the ISO & proceed with installation.

If you are on UEFI system, you will notice blue MOK screen after installer, which is used for enrolling security keys. You will need to "Enroll key" with a password universalblue. This needs to be done even if you're not using Secure Boot.

Otherwise, continue boot.

Installation (Rebase)

Please read the Wiki before proceeding with the installation.

Rebasing is only supported from Fedora Silverblue edition.

You will need to enroll security key before rebase with the command below, even if you're not using Secure Boot (requires internet). It will prompt you for sudo user password, so type that, then type the password for secure key, which is universalblue:

wget -q https://github.com/ublue-os/akmods/raw/main/certs/public_key.der -O /tmp/akmods-ublue.der && sudo mokutil --timeout -1 && sudo mokutil --import /tmp/akmods-ublue.der && rm /tmp/akmods-ublue.der

To rebase an existing Silverblue installation to the latest build:

  • Reset any package overrides that you might have:

    rpm-ostree override reset --all
    
  • Remove all packages that you layered:

    rpm-ostree uninstall --all
    
  • Reset any initramfs modifications that you might have:

    rpm-ostree initramfs --disable
    
    rpm-ostree initramfs-etc --untrack-all
    
  • Rebase to the unsigned image, to get the proper signing keys and policies installed:

    rpm-ostree rebase ostree-unverified-registry:ghcr.io/fiftydinar/gidro-os:latest
    
  • Reboot to complete the rebase:

    systemctl reboot
    
  • You will be prompted with blue MOK screen, which is used for enrolling security keys. Choose "Enroll key" & type universalblue as a password. Continue boot afterwards.

  • Then rebase to the signed image, like so:

    rpm-ostree rebase ostree-image-signed:docker://ghcr.io/fiftydinar/gidro-os:latest
    
  • Reboot again to complete the installation

    systemctl reboot
    

COPR repos used for some installed RPM packages

Note for myself regarding what I do after install

  • I use amd_pstate=active kernel argument to force pstate for my supported CPU (Ryzen 5 5600X, waiting for upstream to enable it by default)

About

My personalized custom OS image.

License:Apache License 2.0


Languages

Language:Shell 61.7%Language:Just 38.3%