From Fedora Project Wiki

< Changes

Revision as of 11:31, 24 April 2014 by Jreznik (talk | contribs) (Change accepted by FESCo on 2014-04-23 meeting)


Playground repository

Summary

The Playground repository gives contributors a place to host packages that are not up to the standards of the main Fedora repository but may still be useful to other users. For now the Playground repository contains both packages that are destined for eventual inclusion into the main Fedora repository and packages that are never going to make it there. Users of the repository should be willing to endure a certain amount of instability when using packages from there.


Important.png
What the Playground repository will NOT include
To avoid any potential confusion, we want to make it clear that in the Playground repository all packages must meet the same legal guidelines as packages in Fedora proper.

Owner

Current status

  • Targeted release: Fedora 21
  • Last updated: 2014-04-08
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

We are still working on the details but the main ideas are finished and described in the Playground repository draft.

Packages for the repository are built in COPR. The COPR owner can propose the repository as a whole for inclusion into the Playground repository by marking it as such in COPR. Repositories/packages successfully built and satisfying the Playground repository's Policies are provided in the Playgroud repository by dnf plugin. The one Playground repository includes many Copr repositories.

Playground repository is only meant to provide packages for Fedora 21 and later versions. Initially, the repository will be provided as a Beta for a limited number of packagers and testers, so we'll be able to incrementally define the remaining details of the workings of the repository. To enable the repository, testers will need to use DNF along with its Copr plugin.

Benefit to Fedora

Users will be able to find and install interesting packages from ONE place, instead of using several COPRs or downloading packages from various third party sites.

Upstream developers and (new) Fedora contributors will be able to more easily and quickly package their applications, since they won't need to follow the current strict Packaging:Guidelines. Also, their applications will be easier to find by all being at a common place.

If packages are first included in the Playground repository, potential bugs can be discovered early, before their inclusion in the main Fedora repository.

The main benefit of the Playground repository will be easier access to software, which is currently not available in the main Fedora repository due to falling into one of the following categories:

  • its review is taking very long time (due to its code being lower quality, due to it bundling some libraries, etc.)
  • it requires an exact version of some other software not included in the main Fedora repository
  • its upstream decided to bundle some libraries and it is *unnatural* and painful to maintain patches that unbundle these bundled libraries

Scope

  • Proposal owners: Env and Stack WG
    • Document process, setting, guidelines (if any)
    • Communicate with Copr developers
  • Other developers:
    • Copr devs
      • Ability to mark an individual COPR for inclusion in the Playground repository.
      • Copr deployment that's considered reliable enough to build packages for this repo
  • Policies and guidelines:
    • Packages must follow the Legal Guidelines. In particular, the license for all packages must be approved in the Legal Guidelines.
    • Packages may violate other Fedora Packaging Guidelines.

Upgrade/compatibility impact

Main repository won't be harmed by Playground.

How To Test

0. Build your package or set of packages in Copr

1. Mark your packages as Playground wanted

2. Wait for addition into Playground repository

3. Add Playground repo and install by PackageKit/dnf

User Experience

User should be able add new repository providing lot of new stuff easily.

Dependencies

  • Copr - partially done
  • dnf - plugin for Coprs must replace yum, otherwise Playground stays in Beta

Contingency Plan

  • Contingency mechanism: Do not add the repo during F21.
  • Contingency deadline: It doesn't matter, it doesn't influence Fedora main repo.
  • Blocks release? No
  • Blocks product? Doesn't block a product. Another repo, different than Playground, could be, but we are not providing any other at this moment.

Documentation

There will be user documentation of the repository, how to work it and and so on, when we finally figure out all details.

Release Notes