ublue-os / bluefin

The next generation Linux workstation, designed for reliability, performance, and sustainability.
https://projectbluefin.io
Apache License 2.0
1.24k stars 163 forks source link

Define bluefin release stream structure #1941

Open castrojo opened 4 hours ago

castrojo commented 4 hours ago

We should start talking about this. Leaving out stable-daily it's:

gts: Fedora 40 stable: CoreOS Stable beta: CoreOS Testing latest: Fedora 41

How about:

gts: Fedora 40 stable: CoreOS Stable testing: CoreOS Testing latest: Fedora 41 beta: whatever, probably fedora's next release, undefined and YOLO if you opt in

I don't think we need to bring CoreOS next over. But, I'd also like to talk about making testing be where we land Bluefin changes that need a shakedown. Then we can maybe do a thing where we can use a bot or something to selectively merge features from testing to gts/stable. Don't make me use the git cli pls lol.

tulilirockz commented 4 hours ago

The beta thing seems really really useful to ship/test new features and integration w/ the freshest stuff but wasnt that the purpose of :latest? - Dont the main images not have rawhide or something? Idk if we could even do that

castrojo commented 4 hours ago

I think by now latest just should be vanilla current version of Fedora. There will be people who want that but don't want to be beta testers of bluefin features. And if you see testing you know you're going to be a guinea pig, where as latest doesn't explain that.

As for the rawhide thing that's never been tenable for us for practical reasons, that's the distro's test channel anyway, not ours. We're kind of only interested in the final thing they publish.

tulilirockz commented 4 hours ago

Sounds pretty nice! Testing seems like a really nice name for that! - I also propose we should try using separate branches for each stream, kinda like nixpkgs does. It would be a stream like testing -> latest -> stable -> gts or something like that, that would allow us to have stream-specific fixes for temporary things, and would make it so recently merged changes dont affect the other branches straight away (then we dont need to wait till the :stable/:gts tags are built until we can merge a PR). I'm 99.9% sure there are github bots that do that kind of work for us too

tulilirockz commented 4 hours ago

Thinking about it, this probably should be a separate issue if you guys think this is a good idea we can try to go through

tulilirockz commented 4 hours ago

But I 100% ACK the new proposed bluefin stream layout

m2Giles commented 3 hours ago

GTS - Fedora -1 w/ gated kernel + zfs Stable - CoreOS version w/ gated kernel + zfs

Latest - Fedora Current, current kernel, no zfs. Since we have a latest tag, this I think is the least surprise and is the closest to upstream Fedora. While you will experience bugs, this is most of the time due to Fedora current version. If anything this could be where coreos-testing exists if we want to make that a more permanent thing.

Beta - this is for testing. While right now it's being used as a smoke test by following coreOS testing, it really should be thought of our one tag that is for playing around.

We are already offering a lot of dials between GTS, stable, stable-daily, and latest.

Like having beta on coreOS testing around the bump for stable was nice to be able to test it out. Before latest bumped again being able to preview and see that ISO builds would be broken was nice. Beta to me is that playground tool.

castrojo commented 3 hours ago

Ok to clarify what m2 means:

gts -> stable -> latest

beta: whatever is incoming, either via bluefin or if we're enabling the next release branch. m2 says: Add a directory called Beta under system_files and boom it's separated out.

+1 to that!

castrojo commented 3 hours ago

Also let's give this one a few days so we can get input from others.

tulilirockz commented 2 hours ago

+1 for M2's proposal too! - The "beta" folder seems like such a good idea LOL i didnt even think about that