Jag läste en blogg om fedora och rpm, han skrev om hur svårt och komplicerat det är att skapa paket till fedora och få in det i själva repo.
Jag vet inte själv hur det går till, men efter har läst hela blogginlägget så verkar det som att Fedora hela tiden strävar efter det perfekta paketet. Och skapar nya regler för paket att genomgå. Till sist orkar man inte med och börjar skippa vissa koll på paketen.
Ska det verkligen gå så långt att man inte orkar längre?
Och inte nog med det, så påpekar han conary i sitt blogginlägg. Det är det som är motorn i Foresight, grymheten sitter under huven.
Läs hans blogginlägg här
It is no so much about striving for perfection, it’s that a lot of the work is pointless. E.g. why doesn’t RPM have one policy that is easy to override that does the right thing in 90% of cases.
You can see this with libtool linking files, .la. These are required to be removed, in all cases but a few. So one would suppose the correct thing is to have the default be nuking them and then for the cases where they need to be there have there be work. It is however the exact opposite that is the case. Every single time there is such an issue, the default is picked for the most amount of work for the most amount of people and the highest chance of causing an error.. every d..m time.
It is most elegantly explained in this talk from FOSDEM 2008 on the Conary packaging system. This is how all packaging should work from a maintainers point of view.
[audio src="http://video.fosdem.org/2008/maintracks/FOSDEM2008-conary.ogg" /]
It is all about reducing the amount of work you need to do, the amount of things that can go wrong and the burden of maintaining the package – by picking good defaults and policy. RPM and especially Fedora has horrible policy (well it’s good in the sense that it is comprehensive but horrible in the way that the guidelines are designed towards the exact opposite of good defaults – namely making the maintainer do the most amount of work possible with the lowest amount of automated help). This is only getting worse and worse as more packaging policies are written, RPM is not making the right decisions here and allowing powerful policy making.
To you a Fedora user it will mean software will be updated less frequently, as it gets harder and harder to master all the policy manually fewer people will become maintainers. Reviews of new packages will either stall for a long time, require a masterful packager for the review or let packages in with lots of mistakes. Overall a poorer and poorer product over time. To me the maintainer it means more dull work, time which I could have spend interacting with users on bugs is spend in the jungle we call the packaging guidelines.
Unless this changes and fast, Fedora is doomed. The sadthing is that openSUSE, debian and Ubuntu are pretty much on the same train. Their defaults aren’t selected with this in mind either. The existing package managers are just not designed with making complex packaging easy and maintainable in mind.
The only two ways to fix this is keeping the guidelines and keep throwing increasing amount of maintainers at your package database hoping their skill level is equal to or above that required to follow all the guidelines, even as they change. Or you can do what Conary does and just do the right thing by default.
Again I urge that you watch the video linked above.
– David
I got inspired and expanded the above comment into a proper posting: