From Fedora Project Wiki



  • we need to define the terms Environments and Stacks (at least to some degree, which is "workable")
  • we need to tell people that our WG incubates ideas, some will be later abandoned, some will be re-iterated and formalized and then put into Fedora *proper* (What is Fedora *proper*?)
    • In this case, Fedora Proper does not mean the mainstream yum repo... Means something more like Officially Released and Supported by the Fedora Project.
  • Coordinate with entities within Fedora and outside of Fedora to bring in new technologies
    • Example: Let's say we want to create an addon repository of OpenShift Cartridges with the eventual goal of providing cartridges via git repos much like EPEL provides RHEL with rpms.
      • Conversation with Fedora Infrastructure
        • Us: "We need git repos for hosting experimental openshift cartridges with the eventual goal of providing them similar to how we provide yum repositories".
        • Infra: "We currently have git hosting via fedorahosted"
        • Us: "Once we get to $Size or $Officialness or $Other we probably want something more that satisfies those needs better"
        • Infra: "Okay, let's talk about budget and timeframe for that"
      • Conversation with Openshift:
        • Us: "Hey, openshift is great but people want to have $RandomSoftware available, what do you think of Fedora providing something like EPEL for Openshift?"
        • Openshift: "Hmmm... we'd want to make sure it had good quality."
        • Us: "We agree. How about we just offer experimental cartridges for a year until we figure out best practices together?"
        • Openshift: "Sounds like a plan"


  • From Matt's slides: "Environments are where you run the code you care about"
  • Examples: desktop environments (I'm not sure this is really our scope, taken from Matt's slides)


  • From Matt's slides: "Stacks are modular collections of software which is used by other software"
  • Examples: Python 2, Python 3, PyPy; Ruby 1.9.x, Ruby 2.0.x; Perl 5.16, Perl 5.18, Perl 6; Java 7, Java 8; MySql, MariaDB; JBoss AS 7, Wildfly; ...

Main deliverables

  • one of the things we want to deliver is anything-goes repositories.
    • This is for experimenting with rpm packaging of things automatic packaging of modules (Perl, Ruby, ...)
    • better way of handling patches through git
    • some too un-stable rpms not ready even for rawhide
      • Maybe implement as one or more EnvAndStack curated copr repos.
      • Could also have other repositories that are not rpm-based
      • Note -- would still need to follow Legal/Licensing Policy as the goal is for things here to eventually end up officially distributed by Fedora
      • This could include packaging of software that would be impossible under the current Fedora Packaging guidelines (e.g. bundled libs okay, overriding versions of software in Base/Core)
        • We probably want separate repositories for things that are working towards inclusion in the main Fedora Repos (No insurmountable conflicts with the packaging guidelines, for instance) and another one for things that are going to become some new sort of repository (overrides things in Base/Core, etc).
  • Drafts of Packaging Guidelines once a technology is sufficiently advanced in the experimental repos to go on to the main Fedora Packaging Guidelines (and leave the anything-goes repo)

Specific things that could go into the anything-goes repo

  • SCLs v2