(评论)
(comments)

原始链接: https://news.ycombinator.com/item?id=38828040

Bazzite 发行版使用 OCI(开放容器倡议)镜像格式作为其基本操作系统。 作者建议探索 Fedora,因为它最近开始支持使用 OCI 容器作为内容寻址图像后端。 然而,“针对内容”的确切含义仍不清楚。 本质上,作者建议探索 Fedora 是因为它最近采用了 OCI 容器格式。 此外,虽然 Bazzite 发行版可以在容器中运行游戏,但它提供了整个操作系统,而不仅仅是用于游戏目的。 此外,Bazzite Gnome 的全新首发版本显示,与 KDE Plasma 镜像相比,它预装的 Flatpaks 更少。 在探索 Fedora 时,人们可能想要研究 OCI 图像后端的实现,以及其他创新,例如 OSTree 及其对内容寻址图像层的支持。 关于 Flatpaks,预安装的 Flatpaks 数量在各种映像中各不相同,其中 KDE 映像提供的预安装较少。 这些细节提供了对 Fedora 生态系统中正在开发的各种流行发行版背后的技术实现的深入了解,特别是在容器化策略、镜像管理技术和包存储库选择方面。 此外,读者还可以获得有关如何在本地配置中实施 OCI 和 OSTree 等新技术的深刻建议。

相关文章

原文
Hacker News new | past | comments | ask | show | jobs | submit login
Bazzite – a SteamOS-like OCI image for desktop, living room, and handheld PCs (github.com/ublue-os)
363 points by goncalossilva 1 day ago | hide | past | favorite | 102 comments










Love it! Living-room media servers will be the Trojan horse that brings self-hosting back into existence, and will inevitably transform the internet back into a more peer-to-peer oriented existence. Once most folks have symmetrical connections and powerful Linux systems, it’s only a software problem keeping people from using the internet as it was intended, equally publishers as they are consumers.


I love this take and absolutely hate what the centralized internet has become. My god, even basic searches don’t work on major platforms.


> Living-room media servers will be the Trojan horse that brings self-hosting back into existence…

I had a living-room media server for many years. My recommendation: Don't put a media server in your living room.

Instead, get a tiny, quiet, privacy-respecting client (e.g. Apple TV) and put the media on a NAS that lives elsewhere. Depending on your preferred client UX, you may (Plex) or may not (Infuse) need a separate app to serve the media.

Whether the server lives in your living room or office/homelab doesn't really matter in terms of its effect on the popularity of "self-hosting". If anything, local media library management is likely to become less popular, and any "Trojan horse" effect has happened by now since people have been doing this for a couple of decades.



I've tried at several points to roll my own media center PC/server setup and it's always been a very far cry from what the fire stick does for like a tenth the price and zero effort.

So yeah, I'm very keen for something plug and play in this space.



This is probably a bit too custom, but I did the same, and it works really well after it's set up. Plex/Jellyfin just works for everyone (you do need to use the app, because I disabled transcoding).

I have a repo that uses a Harbormaster (a Comppse-based deployment tool I wrote, https://harbormaster.readthedocs.io/) to set everything up and keep it up to date, so all you need to do is run the Harbormaster container, point it to the above repo config, and the apps will run. Then, you just need to configure each app, but the directories will be set up properly.

It's a bit of work, but probably not as intimidating as it sounds.

https://github.com/skorokithakis/mediacenter-in-a-box/



> you do need to use the app, because I disabled transcoding

You can use Plex as a DLNA server together with a DLNA client (like players built into most TVs), so Direct Play and Direct Streaming should work just the same.



I tried DLNA served from iTunes and Jellyfin and fiber there player experiences mostly pretty terrible— hard to browse, seeking was bad, UI ugly, etc.


It's not running locally, sadly, but the Plex app somehow also supports more codecs, so I've found it's generally better.


Piracy is super evil and I would never and have never pirated anything in my life. but I do know that Stremio + Torrentio + RealDebrid takes at max 30 minutes to set up and for a few bucks you can essentially stream everything in higher quality than most streaming platforms, it works great on a google tv chromecast (a friend told me).


The Roku of the internet, I love this idea so much.


Never thought about it like that. Very possible.


TIL about various things for rpm-ostree distros:

gnome-randr-rust: https://github.com/maxwellainatchi/gnome-randr-rust :

> `xrandr` for Gnome/wayland, on distros that don't support `wlr-randr`

Kernel-fsync: https://copr.fedorainfracloud.org/coprs/sentry/kernel-fsync/

gnome-vrr: https://copr.fedorainfracloud.org/coprs/kylegospo/gnome-vrr/ :

  gsettings set org.gnome.mutter experimental-features "['variable-refresh-rate']"
obs-vkcapture: https://copr.fedorainfracloud.org/coprs/kylegospo/obs-vkcapt...

system76-scheduler: https://copr.fedorainfracloud.org/coprs/kylegospo/system76-s...



Glad to see this finally up here. I posted it a couple weeks ago and was shocked that I hadn't heard of it sooner. I expected it to rocket to the top, but instead it just languished (https://news.ycombinator.com/item?id=38642298).

I've been blown away by Bazzite. I haven't yet (so far at least) run into any downsides of being on Bazzite instead of SteamOS, yet have had numerous upsides. I've wanted my Decks to be on my tailnet for a long time, but that was not an easy proposition. There's numerous packages that don't flatpak well that I've wanted to install into my base OS but haven't been able to until now! An example, I use Remote Play to run the games on my beastly desktop while viewing them on my TV. Something I routinely do is SSH into the host machine and run htop in one tmux pane and nvtop (for my AMD card, yes it works great with AMD now!) in another pane. To me this feels like the difference between driving with a speedometer and tachometer vs. driving without. Such a simple thing, so hard to do with Steam OS, yet so easy with Bazzite.



I also have my steam deck on my tailnet via `services.tailscale.enable = true` on NixOS.

I might have to do a comparison of NixOS and bazzite since bazzite has me curious.





extest is in a nixpkgs PR and SteamOS is packaged by Jovian. Any reason you're doing it all manually?


JovianOS is also similar to Bazzite, ChimeraOS and SteamOS but its based on Nix.


I can’t find anything online about this one (Jovian). Do you have a link at hand? Happy new year!




I wasn't sure whether to start with Bazzite or Jovian (NixOS), but I started with Jovian and haven't looked back.

I'd be curious to know what you find.



Oooh, looks cool ! I was just googling for something like "pc with steamdeck like specs" because I don't need the portability, I can't stand fan noise but I'd like Steam's ease of use. Now there is a path to a "normal"/quiet/dedicated PC to easily run games. But I suppose there won't be optimizations for any combinations of GPU/CPU/RAM like Valve and AMD do for the Steamdeck ?

Also:

> - Comes with patches from SteamOS BTRFS for full BTRFS support for the SD card by default.

Interesting, what advantages does BTRFS bring in gaming/steamdeck scenarios ?

edit: juste read on https://gitlab.com/popsulfr/steamos-btrfs:

> Btrfs with its transparent compression and deduplication capabilities can achieve impressive storage gains but also improve loading times because of less data being read. It also supports instant snapshotting which is very useful to roll back to a previous state.

I guess it's for easier rollbacks on the system and maybe rollback different versions of the same game ?



Copy-on-write filesystems are inherently better for flash media because they never overwrite in place. They always allocate a new block and mark the "old" block freed when it is no longer referenced by the active filesystem (or snapshots if supported).

Flash Media HATES overwriting data in place because it requires the block to be freed, then re-written.

Now, modern flash firmware tries its best to allocate new blocks anyway, so some of it is a wash, but it is overall a better way to write to flash media.



> But I suppose there won't be optimizations for any combinations of GPU/CPU/RAM like Valve and AMD do for the Steamdeck?

I run a homegrown gaming htpc with an R5-5600, Radeon 6800XT, and then the Xbox wireless dongle and 4 Xbone controllers with Bazzite.

You'd be surprised at how much of heavy lifting is done by the kernel and mesa stacks, that's where the real work is done. Fedora does a good job pulling in kernel and mesa updates relatively quickly and the steam client handles the proton updates.

There's also great synergy between Bazzite, ChimeraOS, and Nobara, which are all gaming focused distros. Lots of code sharing and teamwork happening there, which is awesome to see. Everything is open for people to hack on.

It acts like a big steamdeck, all the performance overlays work, all the xbox controllers work ootb, fsr works, etc. - you do need to pair the controllers with each controller but that's a one time thing. I've personally completed God of War, Horizon Zero Dawn, Baldur's Gate 3 and other AAA campaigns in 4k. And then when I need to travel all my game progress is on my deck. It's a full multi device experience.

But to set expectations: VR and multiplayer games that don't opt into EAC or use kernel-level anti cheat are a no-op, as well as anything Epic makes. To me it's just like any console platform, you get lots of games, and some games you can't play. At this stage in the game both Windows and Linux suffer from the same UX shit show, horrible third party launchers are the worst problem with either set up.

Disclaimer: I'm involved in universal blue but don't directly contribute to bazzite.



Interesting that you don't contribute to Bazzite - your name is the only one I associate with it, because I've seen your YouTube videos.


Totally off point, but as a gardener and systems builder, I love phrase "homegrown gaming htpc" gives it a sense of organically growing over time.


I've also built myself an HTPC for gaming on, and it works amazing since Valve gave us the Steam OS 3 UI.

However I did it a while ago and went down the HoloISO route. Would you recommend that I switch out for something like Bazzite, or are the benefits good but not *that* good that I'd have to spend a day reinstalling all my games?



I ran chimeraOS for years and it worked fine, I switched to dogfood more than anything else. If your system is working there's no reason to mess with it.


Awesome, cheers!


I use BTRFS with compression because my SD card is old (like, a decade old) and slow. (De)ompressing the assets takes a bit of CPU time but the slow I/O is noticeably faster because of it.

Deduplication can be useful if you store the Proton/Wine runtimes on the same disk. Different games may need different runtimes, the latest version isn't always the best, and a Wine environment without any games inside of it can take up a couple hundred megabytes just for DLLs and other common dependencies. Deduplicating can save a chunk of wasted storage, although with current flash storage prices that's probably not worth worrying about in practice.

Some people like the checksumming but IMO that's not all that useful without ECC memory.



Fedora actually defaults to BTRFS, in the case of SteamOS the system is BTRFS out of the box, and only home and the SD card are ext4.

Main benefits are compression, and increased read speeds from compressed drives, especially from the MicroSD.

BTRFS de-duplication also solves the issue of wine prefixes with similar dependencies taking up more space than needed.



Why is it not the default? Compatibility issues with Windows games somehow?


BTRFS is probably mature and stable by now, but it's been a rocky road with several premature declarations of maturity.


I can only speculate Valve's reasoning, but there are a very select few games that require actual case folding and not the simulated case folding that wine offers. I know of literally only one.


SteamOS dev here - lack of case folding is one (but solvable, we supported development on native case folding for ext4), but general stability issues are the main concern. Our testing with btrfs has not been promising for deploying it in a zero-maintenance manner to many users and finnicky SD cards and have it Just Work, but we're keeping an eye on things and weighing where we could contribute.


Have you done any performance testing with btrfs compression?

I have a Legion Go. I don't have the specs handy now, but the SSD was rated fast enough that I suspected compression would harm my overall performance.



Is there a way for adventurous users to opt into using BTRFS on SD cards?




Can you help me with some searchable terms for learning about case folding? Is that something specific to games? Specific to disk formats?


It's a file system feature, all it means to be case folding is that capital and non-capital letters are treated the same, as NTFS does.

All Linux filesystems will by default allow "TEST" and "test" and "Test" to exist in the same folder, which no Windows application is ever intended to handle. Wine works around this by default.



NTFS is also case sensitive, however case folding is done at search time according to default windows settings.

Windows apps are expected to handle case sensitivity gracefully in non-FAT filesystems.



> But I suppose there won't be optimizations for any combinations of GPU/CPU/RAM like Valve and AMD do for the Steamdeck ?

Every single one of these should be present, along with our own tweaks and changes made upstream at Fedora.



compression is good, checksums are good.

It's a shame other FS's don't have it.



Slightly related, but just today I discovered this SteamOS redistribution for generic machines (as long as they don’t have Nvidia graphics): https://github.com/HoloISO/holoiso


https://chimeraos.org/ I've been using this one, it updates the system atomically.


Okay, so I read that page and I understand that nvidia graphics are very much a no-go for that distribution. I’m just wondering why? Full disclosure, I know very little about the finer points of GPU compatibility on Linux, but why isn’t it just a matter of installing nvidia’s closed source packages?


This video (it's just a clip of the original) might give you a bit of context:

Title: Linus Torvalds: Nvidia, F** You! Duration: 0:39 https://www.youtube.com/watch?v=iYWzMvlj2RQ



IIUC As the SteamDeck does only use AMD GPUs they have no incentive to support their UI on Nvidia GPUs.


Gamescope leans on Wayland features that the Nvidia proprietary driver either doesn't have support for or only preliminary support. It's on Nvidia to catch up. It's not about incentives for Valve, they can't change the driver themselves.

Proton has received patches for Nvidia support in particular, some from Nvidia themselves.



What’s the motivation for the creators of this? And who’s backing it? Doesn’t feel like a weekend hobby project but rather a strategic open source play of some sort.

Maybe something Nvidia related?



Hi, I'm the original creator of this project. I'm happy to say the motivation is purely organic, we've no backing and have never received donations of any kind, project is totally out of pocket.

Originally I wanted something akin to SteamOS that allowed packages to be installed and maintained through updates, and knew Fedora could offer that after using Silverblue for about a year, and it just kept evolving and growing from there.

We just launched HDR in testing, and are working on custom kernel signing so we can move that to stable without breaking secure boot support.

If you want to support us for the time being, all I can ask is that you give it a try and report any bugs you may find to us. The more users the better!



Hi, it's probably not your focus, but since you have Nvidia specific flavors, it would be great if browsers had hardware video decoding working. Either Firefox or chromium/brave. I did a fair bit of distrohopping and yet to find a distro doing that easily for nvidia native drivers.


This should be working on AMD, Nvidia, and Intel. At most you may need to make minor configuration changes which we document in our wiki.


That was my hope but it doesn't work on bazzite-gnome-nvidia. I believe I tried bazzite-nvidia as well but it's been a while. Mind pointing me to a relevant doc? - it's not googleable.




When you say "we" do you mean other members of the Fedora community? Do any of you work at RedHat? Just wondering how you got a complex project like this up and running.


"We" is myself and two others that call ourselves maintainers, and the group at Universal Blue who brought us into their circle and shared knowledge. My personal repo at https://GitHub.com/KyleGospo/Bazzite is a time capsule of the project at it's beginning when it was only me.

Universal blue has a ton of different people contributing to it, but there's no corporate backing there either.



Thanks for the info. Looks really interesting.


That explains why the name seems so off brand for Universal Blue.


Do you know of NixOS and jovian NixOS? Did you consider either of those?

I may compare them in detail in the future, any thoughts on how they compare?



Similar premise, but not as technically reproducible. You can create and manage your own custom images using the blue-os build systems, it's dead simple. Basically you're just writing a Dockerfile. Most of the filesystem is read-only like NixOS, but it acts like a traditional Linux system with FHS support.

It's that last part that made me switch to it from NixOS. I was tired of random things not working because of Nix's opinions on how things should work. I run Bluefin Linux with Fleek and get all the benefits I liked about Nix with none of the nonsense.



Thanks for the detailed response. I'll have to take a look.


I'm not well versed in NixOS, but the team over at Jovian are all very helpful and are running a great project.


No problem, thanks for the response! You have a very impressive project as well. Even if I don't switch there is a ton of generally useful things to learn from.


It’s a variant of Universal Blue (https://universal-blue.org)


I'm competing with this for the attention of my girlfriend and losing.


Can anyone report how well this would work on a pure touch device (tablet)? I have a Thinkpad X1 Tablet (gen3) and am still looking for the best Linux distribution to work with it as a plain tablet, without the keyboard attached. Plain Fedora has some very annoying bugs with the on-screen keyboard. Installing the Phosh extension fixed most of these, but this introduces other annoying things that make it tedious to use. Also, the disk encryption still requires to attach a keyboard at boot, since Grub does not feature an on-screen keyboard, so I'm wondering how this was solved here.


Not sure if you are to do any super sensitive work on the tablet or not.

But a home folder encryption rather than full disk might solve the touch input problem.



We're working on porting unl0kr from postmarketOS to Fedora to allow for LUKS on the Steam Deck without an external keyboard, that should also work well for a tablet use case once it's done.


I would love to hear how people are building HTPC/media streaming setups using this kind of stack in 2024. I am very interested in replacing all my aging fire sticks with something custom built.

Was considering just doing some RPi based dongles on bedroom TVs and a higher spec gaming PC with Steam Big Picture on the main TV, but with all the innovation recently I feel a bit of choice paralysis.

Anyone willing to share what their setup looks like, or what they're planning to do in the coming year?



I did the HTPC thing for many years. Finally, I just got tired of the noise, heat, and occasional maintenance requirements of having a PC in the media room.

My recommendation: Get a tiny, quiet, privacy-respecting client (e.g. Apple TV) and put the media on a NAS that lives elsewhere. Depending on your preferred client UX, you may (Plex) or may not (Infuse) need a separate app to serve the media.



Erulabs is all about Bazzite shaking things up and bringing back the good old peer-to-peer days of the internet - it's like a digital revolution waiting to happen. And heyoni? Totally feels the pain of how clunky and centralized the web's gotten lately, especially when you can't even get a straight answer from a simple search. Then there's mikepurvis, who's been down the DIY media center road and found it's not all it's cracked up to be, making the dream of a simple, plug-and-play system super appealing.


Behold: Bazzite on the trash can Mac Pro!

https://youtu.be/te1AEj_RA64



Ill take this as an opportunity to explore fedora (i guess?), ive been using ubuntu for ~2 years and am ready for a change. This looks like it has a lot of what I would want built in, im not tech savvy enough to get some of this stuff working.


> Bazzite is an OCI image that serves as an alternative operating system for the Steam Deck

I'm not quite following - this is a host OS that runs things in containers, or the OS inside a container?



Fedora's OSTree recently-ish started supporting using OCI containers as the content-addressed image backend in addition to their original git-like one:

https://coreos.github.io/rpm-ostree/container/ https://fedoraproject.org/wiki/Changes/OstreeNativeContainer...



Are OCI images content-addressed?


What does content-addressed mean?


The identifier for the content (image layers + manifest) is the hash of the content, and the has serves as an "address", the registry repo + tag is basically a pointer to a hash.


Thank you. Would other type of addressing be something like offset-based or address-based? Just trying to imagine different ways a file can be packed as I never gave it much thought.


Yes


The OS is delivered to you via a container (via the github registry), but can also run things in containers.

The OS itself is run on the bare metal.



Could this replace a media center like Kodi for playing music and movies or is it just for games?


Kodi could for sure be installed on this, we're open to any suggestions that make that task easier for you as well.


> Could this replace a media center like Kodi for playing music and movies or is it just for games?

I would like to know this too.



What’s with the 0 in the title?


This looks interesting, but what do I lose by switching to it? Does the Steam interface still work? The hardware? The games?


Yep! Everything works as it does with SteamOS but better (more fixes) and a better desktop environment.

Installation is pretty quick too! Here’s a video I made showing the process https://youtu.be/doQW1FyAISQ



This is great, thank you!


Any one know if there is a reason not to install this on my SD? The Waydroid installation is very interesting. How well does it work? Would you consider this a bit bloated?


Makes me wonder - how viable is it to install actual SteamOS on devices that aren't the Steam Deck (and use the Deck UI and all)? Are there any mods or something to make that work?


The Deck UI is two parts: the Steam client in Big Picture Mode (which is most of the Steam Deck UI and runs on Mac and Windows as well), and the gamescope compositor. Gamescope is open source and Steam is available for download on Linux.

You could run any of the replacement Steam Deck OSes (Jovian/NixOS, Bazzite, Chimera...) and get a UI that's identical to what's on the Steam Deck, down to the "Deck Verified" badges and sidebar sliders that may not work on your machine. They're all essentially running the Steam Deck UI atop whatever distribution each one chose.

I'm not sure you'd want the literal Steam Deck image on your machine. It's an older kernel with a bunch of patches that expect the SD's hardware. But if you want to explore that more, there was an excellent article on the front page this morning about building your own clone of Steam OS.



What does OCI mean in this context? My best guess is Oracle Cloud Infrastructure, but that doesn't seem right...


I guess this refers to OCI image format from Open Container Initiative: https://opencontainers.org/

Here is Containerfile from the repo: https://github.com/ublue-os/bazzite/blob/main/Containerfile



It refers to the OCI image format. Think of git for your base operating system. The host system is immutable with full support for easy rollbacks. Stable installs can be pinned permanently for maximum stability. Software installs happen in user space, typically via flatpack and distrobox, so you can reach for any packages you want with minimal fuss. It’s pretty great.


How does this compare to Winesapos?


I decided to ditch windows. Installed Budgie, and I installed Steam.

What is the advantage of Steam OS or Bazzite over Ubuntu variant + Steam?



Gamescope, the compositor used on the Steam Deck variants, is optimized for gaming. It can do things like integer scaling, so your game is always fullscreen regardless of what resolution it renders to.


What could be merged into Fedora and e.g. Gnome?


10Gb of "everything is a Flatpak" isn't exciting.


The only flatpaks here are ones installed by the user after setup, or ones installed by Fedora (Firefox for instance, you don't want your browser updating only when your OS does).

Steam, gamescope, and nearly every other listed feature are native packages.



Brand new first boot Bazzite Gnome. That's 7Gb of flatpaks.

  $ flatpak list --columns=size,name | grep MB| grep -Po '\d+\.\d+'| paste -sd+ | bc
  7025.2

  $ flatpak list --columns=size,name | wc -l
  54

  $ df -h /
  Filesystem      Size  Used Avail Use% Mounted on
  /dev/sda3       232G   15G  214G   7% /


The GNOME images have more Flatpaks preinstalled than the KDE Plasma images currently.

KDE image Flatpaks: https://github.com/ublue-os/bazzite/blob/main/system_files/d...

vs.

GNOME image Flatpaks: https://github.com/ublue-os/bazzite/blob/main/system_files/d...

If you're looking to save a few gigabytes, then I suggest using the KDE variants.







Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact



Search:
联系我们 contact @ memedata.com