here two options

http://dpaste.com/hold/86438/ option1
http://dpaste.com/hold/86439/ option2

El 27/08/09 10:11, Andres Vargas escribió:
> the only what i can add its the Metada file format can change a
> little... for fix/fill/reuse a python module what can parse. example
> configobject
> http://www.voidspace.org.uk/python/configobj.html#configobj-in-the-real-world
>
> 2009/8/27 António Meireles <s...@reboot.sh>
>
>
>     the end-goal of any (product) development model is to get discipline,
>     accountability, predictability, scalability in order to get stability
>     and quality on the goods deliverable. Everything else is subsidiary
>     to this.
>
>     As i've written before, conary is 'just' a packaging/configuration
>     management technology, the best one, but still just that. And, that kind
>     of technology, per definition, as good or evolved as it may be, will
>     never be a substitute to understand what is being handled in concrete,
>     and it's role in the environment it runs.  Also, no one, on sane
>     grounds, should expect anyone to be fluent on all packages, all stacks,
>     all levels. More, the core basis of the whole open source development
>     model, what really makes it scale, is openness and collaboration. We do
>     not have the resources, the people, the money, nor we should have the
>     ego, to try, even pretend to, reinvent the wheel. If something is well
>     done/maintained elsewhere, and it works and suits our needs, and we can
>     legally leverage it, we should just use it, and move ahead. We should
>     just invest our time, which is our most precious resource, in places
>     where we can add value and make a difference, for the better. Being just
>     different will not bring us any good, being better will.
>
>     With this lines draw clearly draw in the wall, here's what i envision
>     for foresight3, and beyond...
>
>     ... on package naming and package Specing
>
>         Foresight will be a from the ground, up from the source (:recipe)
>         full distribution. We will just follow Fedora's package
>         naming/splitting conventions, wherever they are sane or not. We need
>         this in order to leverage the works that will come from 'boots'.
>         Please do note that we will have to follow rigidly fedora at their
>         naming conventions at binary package level, at recipe level, we have
>         more flexibility, anyway, for consistence, we will use _not_ cheaply
>         that flexibility, and if and when we do, we should document properly
>         why we did it, for future memory.  In order to get lightweight on
>         size we will need more granularity in the way we deliver binaries.
>         This implies more fine grained pkgSpecing. Again we will follow
>         fedora on this.  A tool will be provided that for any given package,
>         will give us the fedora spec rpm name of it, and all the different
>         binary packages it will produce.
>
>
>     ... on file layout
>
>         We will follow exactly RHs/Fedora file layout conventions, for
>         compatibility and convenience. Exception, will be hooks, to preserve
>         existing behavior, or to assure migration paths. If, and when, we
>         deviate, it should be properly documented why, and the benefits we
>         get from that.
>
>
>     ... on package versions, and patchsets
>
>         For all the packages, to which we do not have proper know-how, or
>         which are not core to the value we intend to deliver, we will use
>         strictly Fedora as our upstream. When we do not, it should be clear
>         on our side why, and who is responsible to handle those packages.
>         The major goal, is to have just two kinds of bugs - either upstream
>         ones (Fedora) or ones for which we have people savvy enough to
>         tackle them. Please do note that there are at any given times two
>         Fedora trees that matter to us - shipped one (N), and rawhide (that
>         will turn into N+1). Our immediate goal, is to match feature wise a
>         given stable Fedora release, and then, start leveraging the work
>         they do in N + 1, as our tools allow that. With that said, we will
>         not be blindly  bleeding edge, and things only should get in
>         production  after it is clear that there's is really added value
>         there.  Again, remember "" At any given time, not try to provide
>         the "best new technology of tomorrow", but the best "*working*
>         technology of today" """.
>         Exceptions are support for 'legacy/corner' technologies like selinux
>         and  gcj support. Regarding selinux. which is largely irrelevant for
>         our use cases, we have two options either _actively_ ignoring it,
>         dropping all patches related to it, and all configs selinux related,
>         or simply have it around, and still ignoring it, as it will be
>         always off  by default. Which one we choose  is a matter of what
>         gets cheaper resource-wise for us. Regarding gcj & associates, which
>         is largely superseded by the icedtea/openjdk stuff, is adds an
>         overhead that we can clearly stay without, so we will pretend it
>         does not exist.
>
>         Again, anytime we deviate from fedora, we should document properly .
>         At higher levels we can, and should, track the goodies elsewhere,
>         but always in a consistent and documented manner. Picking random
>         patches from random places is not the way to go.
>
>
>     ... on package maintenance
>
>         Packaging is not the hardest part. Maintaining a package is. A
>         logical result of everything said above, is that we should only have
>         to worry with the stuff we feel confortable with. all else we follow
>         upstream decisions. When not, we should document.
>
>     ... on metadata
>
>         Albeit conary has good support for metadata (it swallows happily
>         rpm's and deb's one), we, at foresight, are not actively, yet,
>         leveraging it. We will, from now. In order to ease maintainability,
>         scalability, scriptability and integration with 3rd party tools,
>         metadata for each :source package will  start to get stored
>         separately, say in a INFO file.  the goal is to make it easily
>         parsable. a prototype skeleton bellow
>
>             -- x--
>
>             [packageName] < -- needs to match recipeName
>             summary ...
>             description ...
>             URL
>             arch x86 x86_64  # or x86 or x86_64 or noarch
>             [[license]]
>     < --  we should have a canonical list of licenses to accept, and if
>     fetching
>             something new one, force us to add it to list. also, we may
>     need to to support packagings with multiple licenses and
>             comments  see bellow
>              GPLv3
>              CC # for documentation
>             [[patches]]
>             patchName patchOrigin - Fxx/rpath/foresight/add otherSources
>     here)) patchPristiness(optional field only used for non
>             foresight patches, either does not exist or says modified)
>             this last field is to warn against too fast patch
>     application if they
>             have to be modded first.  also this will allow to track
>     patch lifetime
>     'upstream', with info bellow in tracks
>
>             [tracks] <-- what we are tracking/following
>             Fxx (optionalAliasIfRhNamingDifferentFromOurs)
>     srpm/tarball/whatever.version.XX.f1Y
>
>             [sets]
>             # this will be used in future for dynamic group creation.
>             # syntax to be refined.
>             gnome
>             gnome-lite
>
>              [[subpackage and or :component]]
>              summary
>              description
>
>             [sets]
>
>             --x--
>
>
>          the fields to be populated above have two main purposes, to get
>         plain metadata (descriptions, etc) fetched by our conary policies at
>         build time (to be consumed by packageKit, etc) and to help on
>         maintenace (more on this later). For economy, we will reuse,
>         whenever is possible Fedora's work on metadata (package descriptions
>         et al, as, again, we have no point in reinventing the wheel.
>
>     ... on management tools.
>
>         mirrorball (http://hg.rpath.com/mirrorball) has already some nice
>         hooks to compare what is in a rpm repository and what got already in
>         a conary one. Right now it cares most about binary packages. We will
>         extend it to introspect source rpms and debs too, and cross the data
>         we get from that to the data we are putting in the meta-data, as
>         described above.  This way, we will get close to real time reports,
>         on how we are re: the alternatives, etc. This new tool, whose
>         development will be lead by Scott Parkerson, who kindly volunteered,
>         will be the center of all our development activities and will
>         integrate closely with our issue tracker, and upstream ones. This is
>         absolutely key to keep us focused and disciplined, and ultimately
>         for us to scale. The extensions we provide for mirrorball
>         funtionality will naturally will be provided back to upstream,
>         rather than being a fork.
>
>     ... on editions / profiles
>
>         Gnome, XFCE, KDE, as we already have people who understand these
>         well. Would like to have moblin too in the future, allelse we get
>         commited people too.
>
>
>     ... on priorities
>
>         get feature parity with the parts we care of F12, at time of F12
>         release, and go from there. If not possible, F13.
>
>
>     ... on groups
>
>         Groups are way too complicated right now. We will have a base group,
>         roughly equivalent to the rPL's appliance one, a minimal GUI one,
>         with X and the libs/services we want common to all variations, and
>         all else edition specific (or devel groups). One single top level
>         group will assure dep closure, per arch.
>
>
>     ... on community
>
>         our (marketing) focus strategy wise, short term, should be not to
>         try, 'too hard' to recruit new plain end users, whose will better
>         served by 'boots',  but to make dead easy for power users, and
>         existing and wannabe developers elsewhere, to integrate in our
>         community. We really need to cut down on the Signal/Noise ratio we
>         wave right now, if we ever want to get things to scale.
>
>         Why would ogthers come to join us ? - one single reason, not to
>         think different but to act differently and helping to shape how
>         things should really become. The fact that we are a small, friendly,
>         community needs to get leveraged right versus the too big, too gray,
>         too bureaucratic ones, that exist elsewhere.
>
>
>
>
>     -- to be continued
>
>
>     All the best,
>
>     António
>
>     P.S. This paper does not pretend to be the perfect or definitive answer
>     to anything. It must be seen as a small part of an ongoing effort to
>     help us separate what is for us, core, and what isn't, what is
>     essential, and what is accessory.
>     _______________________________________________
>     Foresight-devel mailing list
>     Foresight-devel@lists.rpath.org <mailto:Foresight-devel@lists.rpath.org>
>     http://lists.rpath.org/mailman/listinfo/foresight-devel
>
>

_______________________________________________
Foresight-devel mailing list
Foresight-devel@lists.rpath.org
http://lists.rpath.org/mailman/listinfo/foresight-devel

Reply via email to