-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ciaran McCreesh wrote:
> 
> I'm saying that there are plenty of past occurrences of arch teams
> applying arch-specific patches that were either outright wrong or
> really required on all archs. Most arch developers aren't familiar with
> the source of the packages they're patching, so they aren't qualified
> to judge whether they've really found one of those extremely rare
> situations where a conditional patch is the correct solution.
> 

The other side of this problem is that many maintainers aren't familiar
with the nature of the fixes being applied (such as fixing issues with
hardened profiles, or strange archs).  The arch team and the package
maintainer each have distinct set of skills - both of which are
necessary to fully understand the problem.  However, forcing them to
always work in conjunction can slow things down - either to the
detriment of users of the package (if the maintainer can't commit
ebuilds without talking to every arch team) or the users of the arch (if
the arch team can't commit ebuilds without talking to every maintainer).
 Gentoo has chosen the latter limitation - maintainers can commit
ebuilds without talking to arch teams (with keywording restrictions),
and if you have an obscure arch you don't get the same support as x86
(which is probably the lesser of the two evils).

One issue is that for an arch-team a patch might be essential (picture
some major package breaking on mips/sparc or a few years ago amd64).  To
the maintainer the package "just works" - sure they'd like to get the
package working for everybody but if the patch isn't clear to them they
might be inclined to take their time in applying it.  In the meantime
the arch suffers.

I think that this issue has been slowly going away - more code is
portable these days due to the prevalence of amd64, and more devs are
running amd64.  However, when I started on the amd64 arch on gentoo it
was quite common for mainstream packages to require patching to be
64-bit-clean.  The amd64 herd became specialists in such patching and
could quickly and efficiently apply it.  If the patches were conditional
nobody else was bothered or faced risk, and without the patches the
packages were useless on the target arch anyway.  I'm sure the patches
got submitted upstream where eventually everybody benefited.

I think that conditional patching isn't nearly as necessary these days
as more devs are aware of the 64-bit portability issues, as well as
issues that impact other archs as well.  Still, I'm sure
special-interests like the hardened users will always have a need to
tweak packages to work in a particular environment.  Ideally the patch
gets applied to everybody and is coordinated with the maintainer, but if
the maintainer doesn't want to deal with niche users we might as well
let those with a vested interest do so.  If the patches are conditional
then nobody else is affected anyway.  And everybody will eventually
benefit when the patches get widespread use and validation and are
passed on to upstream.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGuHAmG4/rWKZmVWkRAiKFAKCbyWznWQekhBs/Win+Dta6nrKAOACgn4Bp
tYmOwbEi4XptHET06/s7nBU=
=EcpI
-----END PGP SIGNATURE-----

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to