I think the best way to get involved at this early stage is to come to the weekly [meetings] and follow the discussions on the [issue tracker].
Ok sounds good! I should probably anchor a chatbot in there too.
We are taking this opportunity to evaluate a lot of fundamental design choices when it comes to defining and delivering an OS. yum/dnf -> rpm-ostree. cloud-init -> ignition. The atomic toolset, not sure exactly, but see [#37]for a partial discussion there. As for python, discussion ongoing in [#32].
By atomic toolset, I was referencing the early adoption of a cli at https://github.com/projectatomic/atomic. I wasn’t sure why this was needed but I understand that it represents a high level abstraction of starting containers (but the docker cli is already pretty high level). But yes, CoreOS’s philosophy on not shipping python is very important given long term support of certain tools which might break if python needs a security update. “If you need to run python scripts, just containerize them.” So using the atomic cli is counterintuitive to CoreOS.
I’m hoping toolbox, etcd-member, and kubelet-wrapper will see some use in fedora coreos. With ignition, I’d really like to see something like stateless baremetal through matchbox.
What about kickstart or anaconda? Will those see any use in coreos? They are also Python but kickstart feels like the fedora equivalent of ignition.
Specifically regarding the SDK, we are trying to make some pretty radical changes there as well. For example we have created a POC project called the [coreos-assembler ] that should make it fairly easy for anyone to hack on Fedora CoreOS on their own hardware/infra. We will still have to integrate this with Fedora Releng at some point (see [#44]), but we are trying to drive some changes of these changes because we believe they will ultimately foster a healthier project.
Oh brilliant! I’d been seeing issues and prs in mantle about the sdk but I wasn’t sure where that sdk was being generated. I’ll totally check that out! Does it only generate VM images tho?
Would you be interested in helping us decrease our dependencies on python? I think there will definitely be opportunities here.
Absolutely. So far, I’m messing with local repositories kind of like the coreos emerge overlay did. That and building some analytical dependency tools. Containers-selinux proved the stickiest dependency to remove because there were no equivalents to it.
I’m not sure about the exact bugs you are referring to but maybe something like coreos-assembler will help with that?
Possibly? It’s a hard bug to explain. So, imagine that remote repo A has packageX 0.1 and local repo B has packageX 0.2. Repo A is using priority 2, repo B is using priority 1. PackageY which exists only on Repo A requires packageX. If I make a dnf repoquery --recursive --resolve --requires PackageY it’ll return packageX 0.1 as from Repo A rather than from Repo B. Additionally, if I add the exclude=packageX to repo A, the dnf query still ignores it and returns packageX 0.1 as a depend of packageY. dnf repoquery --recursive --resolve --repo repoA --exclude packageX --repo repoB packageY. However, with this setup, rpm-ostree honors the correct depend trees and I see packageX 0.2 in the build.
This seems to be a fundamental flaw in dnf repoquery?