OpenPGP verification (was Re: [gentoo-dev] Git, GPG Signing, and Manifests)

2015-07-17 Thread Kristian Fiskerstrand
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 07/17/2015 03:13 AM, NP-Hardass wrote:

> Additionally, I feel that a signature is a means of acknowledging
> that a package has been looked over, and that developer has stated
> that they approve of the existing state.  I'm not sure if others
> agree with that sentiment,

I appreciate that you bring up this point. I would expect that part of
that state is for the developer to verify the source distfile from
upstream using OpenPGP / GnuPG as well, i.e not just rely on TOFU
(trust on first use). This also means keeping a (locally) certified
copy of the upstream distribution key that is reasonably verified by
the developer.

- -- 
Kristian Fiskerstrand
Public PGP key 0xE3EDFAE3 at hkp://pool.sks-keyservers.net
fpr:94CB AFDD 3034 5109 5618 35AA 0B7F 8B60 E3ED FAE3
-BEGIN PGP SIGNATURE-

iQEcBAEBCgAGBQJVqLpCAAoJECULev7WN52FtmYH/3ySS/fM62KcRyxHrfDswNzA
sL0lj43JxWAwCcPI46X8ag7nUBYwuo/x9E6IDQotAe1MoiV3vPGLIDugrCHIE0Ai
AxVKhPwCXFDxtNwSKDIxiaupssLSt9uLB5rCMP+eJoFl3wiQb7rI4ly/qXE2DI6O
U6sLABiq/7nmRSsCzakyNionknSU60HLo3V1o8/KdoyBfaup9FsHdFYMZmbn+w0T
0Rv2FJV6z0BsjmaOJQ4qCrOqtcNLnrUaXGdRm153LfAWoWiBMhM/mlOsDk73j4zw
NtMSJpKbfIHsNrF8d9c6xrni5zlmaEjGoeQKSVJILEwO4ROnUKh2M1LwOiTkhzo=
=bVWz
-END PGP SIGNATURE-



Re: OpenPGP verification (was Re: [gentoo-dev] Git, GPG Signing, and Manifests)

2015-07-17 Thread hasufell
On 07/17/2015 10:18 AM, Kristian Fiskerstrand wrote:
> On 07/17/2015 03:13 AM, NP-Hardass wrote:
> 
>> Additionally, I feel that a signature is a means of acknowledging
>> that a package has been looked over, and that developer has stated
>> that they approve of the existing state.  I'm not sure if others
>> agree with that sentiment,
> 
> I appreciate that you bring up this point. I would expect that part of
> that state is for the developer to verify the source distfile from
> upstream using OpenPGP / GnuPG as well, i.e not just rely on TOFU
> (trust on first use). This also means keeping a (locally) certified
> copy of the upstream distribution key that is reasonably verified by
> the developer.
> 

This really depends. In general, a signed commit can and should only say
that the _patch_ comes from or was approved by a particular person. If
it's a version bump on a single package, you can probably assume that he
had a rough lookover. But you can't expect the same when e.g. the python
herd has to do mass commits because of USE flag changes.

That "approve of existing state" thing is rather implicit in a review
workflow, where the package maintainer does the merge. We currently
don't have any plans to enforce this globally, so signatures just say
"this patch comes from...".



Re: OpenPGP verification (was Re: [gentoo-dev] Git, GPG Signing, and Manifests)

2015-07-17 Thread Kristian Fiskerstrand
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 07/17/2015 11:48 AM, hasufell wrote:
> On 07/17/2015 10:18 AM, Kristian Fiskerstrand wrote:
>> On 07/17/2015 03:13 AM, NP-Hardass wrote:
>> 
>>> Additionally, I feel that a signature is a means of
>>> acknowledging that a package has been looked over, and that
>>> developer has stated that they approve of the existing state.
>>> I'm not sure if others agree with that sentiment,
>> 
>> I appreciate that you bring up this point. I would expect that
>> part of that state is for the developer to verify the source
>> distfile from upstream using OpenPGP / GnuPG as well, i.e not
>> just rely on TOFU (trust on first use). This also means keeping a
>> (locally) certified copy of the upstream distribution key that is
>> reasonably verified by the developer.
>> 
> 
> This really depends. In general, a signed commit can and should
> only say that the _patch_ comes from or was approved by a
> particular person. If it's a version bump on a single package, you
> can probably assume that he had a rough lookover. But you can't
> expect the same when e.g. the python herd has to do mass commits
> because of USE flag changes.
> 

I was referring to process during a version bump, the manifest entry
for the distfile shouldn't be changed during a USE flag change, so in
this case that verification would be brought along from the developer
doing the bump.

> That "approve of existing state" thing is rather implicit in a
> review workflow, where the package maintainer does the merge. We
> currently don't have any plans to enforce this globally, so
> signatures just say "this patch comes from...".

Not all do, as mentioned the push can be signed, e.g while an
individual commit is signed by another (potentially a non-gentoo-dev).

All I'm trying to say is really (and this isn't specific to the git
workflow); Please take it as a reminder to verify upstream OpenPGP
signatures when bumping packages, and please make an effort to
maintain proper key management practices while doing so so you can do
it properly.

If we don't we have a case of purgamentum init, exit purgamentum
(garbagin in, garbage out)

- -- 
Kristian Fiskerstrand
Public PGP key 0xE3EDFAE3 at hkp://pool.sks-keyservers.net
fpr:94CB AFDD 3034 5109 5618 35AA 0B7F 8B60 E3ED FAE3
-BEGIN PGP SIGNATURE-

iQEcBAEBCgAGBQJVqNEnAAoJECULev7WN52FohUIAIQrKGb7urSmzWFyIfF00FSr
i+arpIMbClzyUf6fwulf22fkE0UjBykoodA6p67dxakgWOEpHkpoUW7Z3v8eyPu8
+UHzV67sNgoEnJW4PASyrOABMkpi5oHr2nGSq6oHwHG5oXnw9askEH8srThBTwNx
Kflo4mzxSpbgIrbfawFERWPBTtwU1P1WLAVSKRz6GkPAKuY/ypjMeFJ2TSdPeapR
TYLhgSUa/3gUOZx7OBJpYxqU2j7WOnGwxMsReJVnMykB4LOv7SRXzXSM+6r0Q+os
bWv2wKUfOPwoOCMD+F0nIFZ/85T7wSiZxemM5T85+FFL6xl4hXgZr8GUwJU9iB4=
=NylE
-END PGP SIGNATURE-



[gentoo-dev] Any deptree stabilization/keywording path finder?

2015-07-17 Thread Andrew Savchenko
Hello,

TL;DR Is there any tool to build dependency tree for all packages
needed to be stabilized (or keyworded) in order stabilize (keyword)
foo/bar?

Sometimes in order to stabilize a single version bump a whole lot
of packages needs to be stabilized as dependencies. A good example
is [1]. What I really need here is to stabilize
dev-haskell/pandoc-siteproc (I don't even care about exact version,
since any version looks ok for app-doc/root-docs), but this
triggers a whole lot of haskell packages to be stabilized. There
are several issues here:

1. There are many solutions for this issue, since version
requirements usually allow some range of versions. Looks like this
is a classical graph path finding task. It would be great to have a
tool for best effort solution: e.g. for a tree with minimal number
of dependencies of with most recent packages possible (for those
which are in the tree for at least 30 days).

2. It is very tedious to build such dependency tree manually (this
is how it was done in [1]). To make it worse such work is
error-prone, because it is near to impossible to check that each
stabilization in the dependency tree will not trigger any blocker
in the whole portage tree. Actually at least one such error was made
[2]. The best that can be done by hand is to verify that the
stabilization dependency tree is self-consistent, but even this
check requires a lot of time and effort.

All these problems should be solvable with an appropriate tool, but
I can't find such tool. Apparently it should inherit some of emerge
and repoman functionality for deptree building and checking
respectively.

Any ideas? I suppose arch teams should have something similar for
their goals.

P.S. Note for the record: I filed a lot of stabilization request
for dev-haskell/* packaged I do not maintain, because haskell team
had not responded in a reasonable amount of time for my stable
request [3]. I'm not blaming anyone here, just explaining why such
action was taken.

[1] https://bugs.gentoo.org/showdependencytree.cgi?id=529538&hide_resolved=0
[2] https://bugs.gentoo.org/show_bug.cgi?id=552388
[3] https://bugs.gentoo.org/show_bug.cgi?id=546260

Best regards,
Andrew Savchenko


pgpC9sdzKQcPH.pgp
Description: PGP signature


Re: [gentoo-dev] Any deptree stabilization/keywording path finder?

2015-07-17 Thread Jason Zaman
On Fri, Jul 17, 2015 at 01:15:53PM +0300, Andrew Savchenko wrote:
> Hello,
> 
> TL;DR Is there any tool to build dependency tree for all packages
> needed to be stabilized (or keyworded) in order stabilize (keyword)
> foo/bar?

gnome team has this, its pretty good and has a --check-dependencies too.
Gilles has done a bunch of cleanups on it but not merged back in yet.
https://gitweb.gentoo.org/proj/gnome.git/tree/scripts/gen_archlist.py?h=gen_archlist_cleanup
> 
> Sometimes in order to stabilize a single version bump a whole lot
> of packages needs to be stabilized as dependencies. A good example
> is [1]. What I really need here is to stabilize
> dev-haskell/pandoc-siteproc (I don't even care about exact version,
> since any version looks ok for app-doc/root-docs), but this
> triggers a whole lot of haskell packages to be stabilized. There
> are several issues here:
> 
> 1. There are many solutions for this issue, since version
> requirements usually allow some range of versions. Looks like this
> is a classical graph path finding task. It would be great to have a
> tool for best effort solution: e.g. for a tree with minimal number
> of dependencies of with most recent packages possible (for those
> which are in the tree for at least 30 days).

it does not check this yet tho, but thats not too bad i suppose.
> 
> 2. It is very tedious to build such dependency tree manually (this
> is how it was done in [1]). To make it worse such work is
> error-prone, because it is near to impossible to check that each
> stabilization in the dependency tree will not trigger any blocker
> in the whole portage tree. Actually at least one such error was made
> [2]. The best that can be done by hand is to verify that the
> stabilization dependency tree is self-consistent, but even this
> check requires a lot of time and effort.
> 
> All these problems should be solvable with an appropriate tool, but
> I can't find such tool. Apparently it should inherit some of emerge
> and repoman functionality for deptree building and checking
> respectively.
> 
> Any ideas? I suppose arch teams should have something similar for
> their goals.
> 
> P.S. Note for the record: I filed a lot of stabilization request
> for dev-haskell/* packaged I do not maintain, because haskell team
> had not responded in a reasonable amount of time for my stable
> request [3]. I'm not blaming anyone here, just explaining why such
> action was taken.
> 
> [1] https://bugs.gentoo.org/showdependencytree.cgi?id=529538&hide_resolved=0
> [2] https://bugs.gentoo.org/show_bug.cgi?id=552388
> [3] https://bugs.gentoo.org/show_bug.cgi?id=546260
> 
> Best regards,
> Andrew Savchenko





Verification of installed packages (was Re: OpenPGP verification (was Re: [gentoo-dev] Git, GPG Signing, and Manifests))

2015-07-17 Thread Andrew Savchenko
Hi,

On Fri, 17 Jul 2015 10:18:14 +0200 Kristian Fiskerstrand wrote:
> > Additionally, I feel that a signature is a means of acknowledging
> > that a package has been looked over, and that developer has stated
> > that they approve of the existing state.  I'm not sure if others
> > agree with that sentiment,
> 
> I appreciate that you bring up this point. I would expect that part of
> that state is for the developer to verify the source distfile from
> upstream using OpenPGP / GnuPG as well, i.e not just rely on TOFU
> (trust on first use). This also means keeping a (locally) certified
> copy of the upstream distribution key that is reasonably verified by
> the developer.

Let me point another issue related to discussion above. It would be
nice to have cryptographic verification of already installed
packages. This will help in forensics and security audit of the
systems, so that even without external snapshot of the system it
will be possible to check for malicious changes of installed
packages.

Right now we have /var/db/pkg/$cat/$name/CONTENTS file with such
data, but:
1. It uses md5 for file checksums.
2. It is not signed.

So my proposal is:
1. Switch to more cryptographically secure hash (e.g. sha512 or
whirlpool).
2. Add an optional feature to emerge (or even to PMS?) allowing user
to provide a usable GPG key for signing packages CONTENTS files
after its generation. In order for such key to be usable during
emerge run, gpg-agent should be used; alternatively it may be
allowed to sign already installed packages on a trusted system.
3. Of course backward compatibility with old CONTENTS format should
be kept.

This proposal is not my own whim: I have requests from users for
such functionality which is quite wanted on production setups.

Best regards,
Andrew Savchenko


pgp4K_suNHEWK.pgp
Description: PGP signature


Re: Verification of installed packages (was Re: OpenPGP verification (was Re: [gentoo-dev] Git, GPG Signing, and Manifests))

2015-07-17 Thread Kent Fredric
On 17 July 2015 at 22:34, Andrew Savchenko  wrote:
> 2. Add an optional feature to emerge (or even to PMS?) allowing user
> to provide a usable GPG key for signing packages CONTENTS files
> after its generation. In order for such key to be usable during
> emerge run, gpg-agent should be used; alternatively it may be
> allowed to sign already installed packages on a trusted system.
> 3. Of course backward compatibility with old CONTENTS format should
> be kept.


To keep things simple, I'd suggest storing the signature externally to
the CONTENTS file.

This would be more convenient for any tools that are trying to scrape
the CONTENTS files with regex/grep not needing to first unwrap them. (
Not to mention trivial to determine which packages have signatures
without needing to actually read the files )

Though, seeing we're going down this road, you could sign the whole vdb dir.

-- 
Kent

KENTNL - https://metacpan.org/author/KENTNL



Re: [gentoo-dev] Any deptree stabilization/keywording path finder?

2015-07-17 Thread Andrew Savchenko
Hi,

On Fri, 17 Jul 2015 14:22:23 +0400 Jason Zaman wrote:
> On Fri, Jul 17, 2015 at 01:15:53PM +0300, Andrew Savchenko wrote:
> > Hello,
> > 
> > TL;DR Is there any tool to build dependency tree for all packages
> > needed to be stabilized (or keyworded) in order stabilize (keyword)
> > foo/bar?
> 
> gnome team has this, its pretty good and has a --check-dependencies too.
> Gilles has done a bunch of cleanups on it but not merged back in yet.
> https://gitweb.gentoo.org/proj/gnome.git/tree/scripts/gen_archlist.py?h=gen_archlist_cleanup

Thanks, it helps a lot.

Any way to get output in form of tree and not a list? Now I have a
list of packages to be stabilized, but still have to figure out
dependencies between them in order to file stabilization requests
properly.

In the ideal world I'd like to write some script to submit this
bunch of stabilization request bugs using www-cient/pybugz.

Any way to have this tool somewhere in app-portage/gentoolkit-dev
(or other package) so that all devs may benefit from it?

Best regards,
Andrew Savchenko


pgpNodf8OBdz4.pgp
Description: PGP signature


Re: [gentoo-dev] Git, GPG Signing, and Manifests

2015-07-17 Thread Rich Freeman
On Fri, Jul 17, 2015 at 12:42 AM, Brian Dolbec  wrote:
>
> I don't know tbh, most are already signed, with the git migration, the
> strongly recommended commit signing will become MANDATORY.
>
> So, we are at 50 devs with valid gpg keys now, with 200 more gpg keys
> listed in LDAP that fail to meet the new spec.  PLEASE fix them or
> create new keys...

How does somebody know whether their key meets the spec or not?  I
looked at the gentoo-keys website and didn't see any simple way to
check.

There was documentation on the gkeys utility for checking keys, but I
ran into a few issues with this.  First, it can't be installed on a
stable system with mirrorselect.

On a clean ~arch stage3 when trying to run "gkeys fetch-seed -C
gentoo-devs" it outputs:
Connector.connect_url(); Failed to retrieve the content from:
https://api.gentoo.org/gentoo-keys/seeds/gentoo-devs.seeds
Error was: Invalid header value 'Wed, 15 Jul 2015 17:50:17 GMT\n'


After removing the files in /var/lib/gentoo/gkeys/seeds the fetch
works.  However, attempting to run "gkeys install-key -C gentoo-devs"
results in:
 Found GKEY seeds:
Traceback (most recent call last):
  File "/usr/lib/python-exec/python2.7/gkeys", line 50, in 
success = main()
  File "/usr/lib64/python2.7/site-packages/gkeys/cli.py", line 63, in __call__
return self.run(args)
  File "/usr/lib64/python2.7/site-packages/gkeys/base.py", line 303, in run
success, results = func(args)
  File "/usr/lib64/python2.7/site-packages/gkeys/actions.py", line
264, in installkey
self.output(['', gkey], "\n Found GKEY seeds:")
  File "/usr/lib64/python2.7/site-packages/gkeys/base.py", line 323,
in output_results
print("\n".join([x.pretty_print for x in msg]))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u017b' in
position 1233: ordinal not in range(128)


It might not hurt to publish the list of keys that fail checks.  If
that list is going to be used to block commits then obviously it needs
to be updated very frequently.  I do not know if there are any plans
to block commits with signatures that do not conform to the GLEP.

-- 
Rich



Re: [gentoo-dev] Git, GPG Signing, and Manifests

2015-07-17 Thread Alon Bar-Lev
On 17 July 2015 at 15:36, Rich Freeman  wrote:
> On Fri, Jul 17, 2015 at 12:42 AM, Brian Dolbec  wrote:
>>
>> I don't know tbh, most are already signed, with the git migration, the
>> strongly recommended commit signing will become MANDATORY.
>>
>> So, we are at 50 devs with valid gpg keys now, with 200 more gpg keys
>> listed in LDAP that fail to meet the new spec.  PLEASE fix them or
>> create new keys...
>
> How does somebody know whether their key meets the spec or not?  I
> looked at the gentoo-keys website and didn't see any simple way to
> check.
>
> There was documentation on the gkeys utility for checking keys, but I
> ran into a few issues with this.  First, it can't be installed on a
> stable system with mirrorselect.

The use of keys should be by counter signature, when pushing the
counter signature service should check if signature is valid and dev
key is valid using the internal ldap for example, and counter sign
with its own key and add timestamp. Users should trust only the
counter signature service key which is formal and should be valid for
long time.

This is yet another reason why it is best to not use signature within
git but remain the signed manifest. When commit one can sign the
manifest, send the manifest to the counter signature service and
obtain a formal signed manifest to be committed into tree.

Using signed manifest also reduce the merge conflict, survive rebase,
enable code review without loosing original signer and will enable
future migration to other technology.

Regards,
Alon



Re: [gentoo-dev] Git, GPG Signing, and Manifests

2015-07-17 Thread Rich Freeman
On Fri, Jul 17, 2015 at 8:36 AM, Rich Freeman  wrote:
> On Fri, Jul 17, 2015 at 12:42 AM, Brian Dolbec  wrote:
>>
>> I don't know tbh, most are already signed, with the git migration, the
>> strongly recommended commit signing will become MANDATORY.
>>
>> So, we are at 50 devs with valid gpg keys now, with 200 more gpg keys
>> listed in LDAP that fail to meet the new spec.  PLEASE fix them or
>> create new keys...
>
> How does somebody know whether their key meets the spec or not?  I
> looked at the gentoo-keys website and didn't see any simple way to
> check.
>
> There was documentation on the gkeys utility for checking keys, but I
> ran into a few issues with this.
>

After waking up a bit more I configured a utf8 locale in my "clean
stage3" and the errors went away, and I was able to verify that my key
passed, with no encryption subkey (I don't intend to use this key for
anything but gentoo main repository signing).

Even so, it might not hurt to have a one-line way to check an
arbitrary gpg key for conformity by ID.  Otherwise we invite trial and
error with devs uploading what they hope are compliant keys, fixing
LDAP, waiting for seeds to be repopulated, then checking them.

-- 
Rich



Re: [gentoo-dev] Git, GPG Signing, and Manifests

2015-07-17 Thread Brian Dolbec
On Fri, 17 Jul 2015 08:36:25 -0400
Rich Freeman  wrote:

> On Fri, Jul 17, 2015 at 12:42 AM, Brian Dolbec 
> wrote:
> >
> > I don't know tbh, most are already signed, with the git migration,
> > the strongly recommended commit signing will become MANDATORY.
> >
> > So, we are at 50 devs with valid gpg keys now, with 200 more gpg
> > keys listed in LDAP that fail to meet the new spec.  PLEASE fix
> > them or create new keys...
> 
> How does somebody know whether their key meets the spec or not?  I
> looked at the gentoo-keys website and didn't see any simple way to
> check.
> 
> There was documentation on the gkeys utility for checking keys, but I
> ran into a few issues with this.  First, it can't be installed on a
> stable system with mirrorselect.
> 
> On a clean ~arch stage3 when trying to run "gkeys fetch-seed -C
> gentoo-devs" it outputs:
> Connector.connect_url(); Failed to retrieve the content from:
> https://api.gentoo.org/gentoo-keys/seeds/gentoo-devs.seeds
> Error was: Invalid header value 'Wed, 15 Jul 2015 17:50:17 GMT\n'
> 
> 
> After removing the files in /var/lib/gentoo/gkeys/seeds the fetch
> works.  However, attempting to run "gkeys install-key -C gentoo-devs"
> results in:
>  Found GKEY seeds:
> Traceback (most recent call last):
>   File "/usr/lib/python-exec/python2.7/gkeys", line 50, in 
> success = main()
>   File "/usr/lib64/python2.7/site-packages/gkeys/cli.py", line 63, in
> __call__ return self.run(args)
>   File "/usr/lib64/python2.7/site-packages/gkeys/base.py", line 303,
> in run success, results = func(args)
>   File "/usr/lib64/python2.7/site-packages/gkeys/actions.py", line
> 264, in installkey
> self.output(['', gkey], "\n Found GKEY seeds:")
>   File "/usr/lib64/python2.7/site-packages/gkeys/base.py", line 323,
> in output_results
> print("\n".join([x.pretty_print for x in msg]))
> UnicodeEncodeError: 'ascii' codec can't encode character u'\u017b' in
> position 1233: ordinal not in range(128)
> 
> 

Yes, the ssl-fetch issue is fixed with ssl-fetch-0.3 and it is now
stabilized.  So that conflict is fixed.


> It might not hurt to publish the list of keys that fail checks.  If
> that list is going to be used to block commits then obviously it needs
> to be updated very frequently.  I do not know if there are any plans
> to block commits with signatures that do not conform to the GLEP.
> 

Yeah, I was thinking of putting up a gkeys spec-check report, but we
were (unsuccessfully) trying to get more wiki pages help done on how to
fix those issues reported.  Before we did such a report.  Also I need
to make another release, currently gkeys- and gkeys-gen-999 is the
best option with the most fixes, best functionality.   Hopefully I'll
get those release this weekend.

-- 
Brian Dolbec 




Re: [gentoo-dev] Git, GPG Signing, and Manifests

2015-07-17 Thread Brian Dolbec
On Fri, 17 Jul 2015 08:50:43 -0400
Rich Freeman  wrote:

> On Fri, Jul 17, 2015 at 8:36 AM, Rich Freeman 
> wrote:
> > On Fri, Jul 17, 2015 at 12:42 AM, Brian Dolbec 
> > wrote:
> >>
> >> I don't know tbh, most are already signed, with the git migration,
> >> the strongly recommended commit signing will become MANDATORY.
> >>
> >> So, we are at 50 devs with valid gpg keys now, with 200 more gpg
> >> keys listed in LDAP that fail to meet the new spec.  PLEASE fix
> >> them or create new keys...
> >
> > How does somebody know whether their key meets the spec or not?  I
> > looked at the gentoo-keys website and didn't see any simple way to
> > check.
> >
> > There was documentation on the gkeys utility for checking keys, but
> > I ran into a few issues with this.
> >
> 
> After waking up a bit more I configured a utf8 locale in my "clean
> stage3" and the errors went away, and I was able to verify that my key
> passed, with no encryption subkey (I don't intend to use this key for
> anything but gentoo main repository signing).
> 
> Even so, it might not hurt to have a one-line way to check an
> arbitrary gpg key for conformity by ID.  Otherwise we invite trial and
> error with devs uploading what they hope are compliant keys, fixing
> LDAP, waiting for seeds to be repopulated, then checking them.
> 

One of the things I really wanted to get into gkeys is a way to add a
users ~/.gnupg dir imported into the gkeys system, that will help in
that reagrds and make it more of a one stop shop for common gpg tasks.

Also, I will try to get at least the gkeys-gen target keydir added to
gkeys visibility in the next release.

Oh, forgot to mention.  I will send the gkeys spec-check report
to the gentoo-core list for a start.  Perhaps some of the devs can help
us get the wiki help pages completed when they fix their keys and know
the steps.  I'm sure both Kristian and myself would appreciate a little
help with that while we are explaining how to fix the failures.

One of the slowdowns in completing those pages is creating anomymous
gpg keys output for the wiki examples.  I do not want to use devs real
keys as examples (which of course would be easiest).

-- 
Brian Dolbec 




[gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Brian Evans
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Title: MySQL client libraries and server packaging changes
Author: Brian Evans 
Content-Type: text/plain
Posted: 2015-07-17
Revision: 1
News-Item-Format: 1.0
Display-If-Installed: virtual/mysql

The future of the mysql packages is changing.

First off, a new virtual is being introduced, virtual/libmysqlclient.
virtual/mysql will represent the server and tools while
virtual/libmysqlclient will represent the shared and static libraries.

Developers and ebuild writers should reference virtual/libmysqlclient
when linking against the libraries as the package will keep the
subslot the same as the soversion for easy rebuilds.  This is getting
more difficult in the current virtual situation as MySQL and MariaDB
start to diverge versions and features.  The old method could force
users to mask new versions or delay the posting of one server package
which advances the soversion until the others catch up.

As for the server packages themselves, the minimal USE is being
replaced. The new USE flags are client-libs, +server, and +tools.
The server and tools flags are on by default to signify the primary
purpose of those builds.

The primary provider for libraries will be a new package
dev-db/mysql-connector-c.  A tinderbox run did not turn up any issues,
but packagers are permitted to block any provider of
virtual/libmysqlclient that does not work correctly.  A comment in the
ebuild would be helpful to track this.  The server packages can still
provide libraries if the client-libs USE is enabled.
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.17 (MingW32)

iQIcBAEBAgAGBQJVqUGzAAoJENH3ge/59KO22R4P/0ejDl6NQ6+ZP7RjbA23yjcb
+R0GVSL6ibO42di3dcjIGBgsehlzIqFqk+bcRocvX8wk8k5aZgc+pjjYkPQ3mXc6
x/CFE8q3JkUVZOUK25rtO6jnats4zwQ1o6KpvgXfdwRTvY0nN7EU6Ee01QveSKc4
ZGZA7t4cFrAhfNdhUb6rt8iaI/PddbEXKErbfdAklGYHnDLs9+LR0aANIW5TJNWR
fUtpgbqbZe/TjOQQMrbKHeZxQ38NJANqVNX2K/yVc0wH3WKsZUmFH7Pz3M9wtBOi
06GVk7vx+/7pXA/rK/H0jxTObH7UFdO6/2Y5j8DdViQVLSYEAv2/N1gtyfoRWeBo
brX2OSwxKkGpnuA/5Vf0vKyf9wJ0VLL76jqzbmxEzHzOsN3GKGpudSIFASTsv4uz
jZMLCdVXy3/VDVhLojMJGvA2exGjiuq9MY8eJsgZzy69aG658YZMtEvW6v++QWW1
JWKCszypy3OXJzkLP0OsvcYvQzpp4QAxCS4WmI0rBDasjrfB371MPtqprd7EgRn9
xIpYHQ8b6MZ+dQbLtHKf7jROgsc115sBMKbiZtBW8dbUgMRqM3EtV2kMDUNl9b3V
GgirafjP/1z4AYM9M0W6q9d2rnI8jMXLZY3ySQ7HSamXunJAjGHqXKOoaZLQUiWR
1UsLxiGWSXuTWPAcmSjw
=orFZ
-END PGP SIGNATURE-



Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread NP-Hardass
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA256

On 07/17/2015 01:56 PM, Brian Evans wrote:
> Title: MySQL client libraries and server packaging changes Author:
> Brian Evans  Content-Type: text/plain Posted:
> 2015-07-17 Revision: 1 News-Item-Format: 1.0 Display-If-Installed:
> virtual/mysql
> 
> The future of the mysql packages is changing.
> 
> First off, a new virtual is being introduced,
> virtual/libmysqlclient. virtual/mysql will represent the server and
> tools while virtual/libmysqlclient will represent the shared and
> static libraries.
> 
> Developers and ebuild writers should reference
> virtual/libmysqlclient when linking against the libraries as the
> package will keep the subslot the same as the soversion for easy
> rebuilds.  This is getting more difficult in the current virtual
> situation as MySQL and MariaDB start to diverge versions and
> features.  The old method could force users to mask new versions or
> delay the posting of one server package which advances the
> soversion until the others catch up.
> 
> As for the server packages themselves, the minimal USE is being 
> replaced. The new USE flags are client-libs, +server, and +tools. 
> The server and tools flags are on by default to signify the
> primary purpose of those builds.
> 
> The primary provider for libraries will be a new package 
> dev-db/mysql-connector-c.  A tinderbox run did not turn up any
> issues, but packagers are permitted to block any provider of 
> virtual/libmysqlclient that does not work correctly.  A comment in
> the ebuild would be helpful to track this.  The server packages can
> still provide libraries if the client-libs USE is enabled.
> 

It's my understanding that news items are geared to end users,
however, this may be incorrect.  Assuming that is the case, apart from
notifying the users about the USE flag changes, the bulk of this news
item is geared toward devs and package maintainers.  As such, I feel
like the user relevant content might go unnoticed as they skim and see
it is primarily maintainer related.

Apologies for the weird mail issue.  I got rid of the cron plugin, but
it is still acting up, so I'm switching back to claws mail from
thunderbird.

- -- 
NP-Hardass
-BEGIN PGP SIGNATURE-
Version: GnuPG v2
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCAAGBQJVqUO4AAoJEBzZQR2yrxj7KxEP/jJgo0HPs3t3cTaThswt8/eV
gJGWyaelKeQNQ34QrI4YxnLsZgQHNdAqo0qsbvpxKMNW1wZUHIhfZH4g562h8sJi
7eUilmn1TZdbQu/gOqV3Z3AECpyxc/SVZMTkOdfbBrDkoAmZpNYp1Jmr+rx01THs
ZqmXcD+JkO3p6KOAXbnU2v5Gv74AKLXCwaKslUf9ewMH2iYcDnSivo4nmfNZCAsi
t7bYYpEjb0Y2pjUDwAYyELsGABRN2nSircYiXVeGxpnuYJF3/0xLySrPAWEySPHE
ucMaCB5fnz/vpSVzRciAQhFb0w/y1zHBlGa82aYPRl++cmaw53HvF88TfmAzRdJ6
iD9BdER1KpM1wERUhypstENmAxvLYxHdT7P/+vId+D5cFmIiN1N9JM61yg/4A2+Q
ScGeQuCZkme+qqvvybD4KjVsP9fN+Oj2kMhKpLsVbnmLbxbM+rnAkgChxbEy3wzf
Z0HM0HviwKSWqjN7E9Eanc2UKYpuujODd8/++cvnVRkrGJqjfDO39Pgi4nSVoCis
+QzsFhr5Mi0k96naBNY5fFgDoSvFy/qJyN62NJEL0dFo4UxhJ4j7ul72+viQsGD9
eIuopVZVHSm4qnwkUwrwUdln9HRMSKI4t5iWOZZBxbTjBEyzc98Kv3fLFmN394SZ
mmqkBb2xkQPtS6cnU/eR
=xZEh
-END PGP SIGNATURE-



[gentoo-dev] Re: [RFC] News item about mysql client and server packages

2015-07-17 Thread Rich Freeman
On Fri, Jul 17, 2015 at 1:56 PM, Brian Evans  wrote:
>
> Developers and ebuild writers should reference virtual/libmysqlclient
> when linking against the libraries as the package will keep the
> subslot the same as the soversion for easy rebuilds.

This isn't super-relevant to the news item itself, but is relevant for
the developer community.

Do you plan to make these changes to ebuilds yourself in a mass-update
at the appropriate time, or do you expect maintainers to clean up
their own ebuilds.  If the latter, please provide instructions as to
when/etc.

-- 
Rich



Re: [gentoo-dev] Re: [RFC] News item about mysql client and server packages

2015-07-17 Thread Brian Evans
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 7/17/2015 2:19 PM, Rich Freeman wrote:
> On Fri, Jul 17, 2015 at 1:56 PM, Brian Evans wrote:
>> 
>> Developers and ebuild writers should reference 
>> virtual/libmysqlclient when linking against the libraries as the 
>> package will keep the subslot the same as the soversion for easy 
>> rebuilds.
> 
> This isn't super-relevant to the news item itself, but is relevant 
> for the developer community.
> 
> Do you plan to make these changes to ebuilds yourself in a 
> mass-update at the appropriate time, or do you expect maintainers 
> to clean up their own ebuilds.  If the latter, please provide 
> instructions as to when/etc.
> 

The virtual/mysql will pull in virtual/libmysqlclient so current
packages will be unaffected and can easily transition to the new virtual
.

Brian
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.17 (MingW32)

iQIcBAEBAgAGBQJVqUkLAAoJENH3ge/59KO2zPwQAKiXCSVnbLd+3m4AuVFMGzoo
8GlnM3fvAtjnCp/Xr0oYqQjHobj043EsHtd9pk11wqt2+J2bIx+3eh54bu5LXsgp
VdQEgBQVdVtqMSzYhROeELpjtGcgnqmMsAnlni0lp+DpKKiQ/ELDyN8X1dS0j3KZ
cESoBpvMebEtejfSF/rkYjBAaGrXK6nuZGXe09kdcymNJfnZ1L72Jl3rH2h2weri
Hlvw80+WkGYBywZ/CuwSQsxPTY2Aek9mUaQ31uiCkYPALhiufCx9yCt4Fhejlhsw
4oQZYS88WEwV4nUWKbvo4HJC011TrjFqDtUy+v6qAvEijyVf44lmSy0TtjDuaRmu
YRbUZzssKHeah0N9cER4vPnOXhFdz+MtUG0sc5EAzWTUwARuVAm+th4Ua7/LjqLL
ttDL8PfLvMtlegDkWoVjBgU3Mb5rWpeJ3Z9QIgIryYEwG1bWzg6JhZKzTvajxeFG
7d5fSPcODk12L+Y3JvepYSGvzTCZJeMMh3EKglHmXHdNcNF+ZbSV2Q4nzqCukqjh
AEFpcwvydodfJBBsMO28i3c9d5EU5A3GTmaHKe5vosEf42JniX3fbrqC8gI27N/r
F/avUFJC0MV7E1PEy11F2YY75EOH6n3Kd05Q+bvYuU2+QfzrD4jB218XeZTjr4rR
U6KUpR5CArpEz0hlXdss
=+EPw
-END PGP SIGNATURE-



Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Brian Evans
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 7/17/2015 2:04 PM, NP-Hardass wrote:
> On 07/17/2015 01:56 PM, Brian Evans wrote:
>> Title: MySQL client libraries and server packaging changes
>> Author: Brian Evans  Content-Type:
>> text/plain Posted: 2015-07-17 Revision: 1 News-Item-Format: 1.0
>> Display-If-Installed: virtual/mysql
> 
>> The future of the mysql packages is changing.
> 
>> First off, a new virtual is being introduced, 
>> virtual/libmysqlclient. virtual/mysql will represent the server
>> and tools while virtual/libmysqlclient will represent the shared
>> and static libraries.
> 
>> Developers and ebuild writers should reference 
>> virtual/libmysqlclient when linking against the libraries as the 
>> package will keep the subslot the same as the soversion for easy 
>> rebuilds.  This is getting more difficult in the current virtual 
>> situation as MySQL and MariaDB start to diverge versions and 
>> features.  The old method could force users to mask new versions
>> or delay the posting of one server package which advances the 
>> soversion until the others catch up.
> 
>> As for the server packages themselves, the minimal USE is being 
>> replaced. The new USE flags are client-libs, +server, and +tools.
>>  The server and tools flags are on by default to signify the 
>> primary purpose of those builds.
> 
>> The primary provider for libraries will be a new package 
>> dev-db/mysql-connector-c.  A tinderbox run did not turn up any 
>> issues, but packagers are permitted to block any provider of 
>> virtual/libmysqlclient that does not work correctly.  A comment
>> in the ebuild would be helpful to track this.  The server
>> packages can still provide libraries if the client-libs USE is
>> enabled.
> 
> 
> It's my understanding that news items are geared to end users, 
> however, this may be incorrect.  Assuming that is the case, apart
> from notifying the users about the USE flag changes, the bulk of
> this news item is geared toward devs and package maintainers.  As
> such, I feel like the user relevant content might go unnoticed as
> they skim and see it is primarily maintainer related.

Unfortunately, I am a terrible writer and just spill thoughts out.

The users might still have to know about setting client-libs or using
the new virtual if they set the minimal flags in the past.  Will have
to think on that.

Brian

-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.17 (MingW32)

iQIcBAEBAgAGBQJVqUw2AAoJENH3ge/59KO2LYEQANdHnvjYBTTB5NLmvoFUBmF+
ekZEeoEsfIcSSQ9JISlNoZy05AKFqK1C+zd4+OnS+uVcaSId/MdEAXDD5ahtE8Je
F9EuTaT3xAFaR2RG/OxiW8iyqV+2iX2126h3YrkHC+4zRQyf8S7dYaQqUzYtsv/H
GAkyFD+F5f3MOXYsEsFVPvSn5BKQ5AmTnAGUpsr/RwEE9YaXVc1lyldPtPPMk527
Pc4wiZWRUBRxAe0NKuzFr0DM/7nOqBDVbsdsD9YtSMsLlvNu0qQtfActY0mgl4FU
CZSfRhyvhzwKD4i9Bf/BODbOc8RgThVV0Vcpl/XxHzyPNxCCALDYAoNFEvfnV251
Fj8oGrmheVrM/DGqV0uKL+1jS2zrYQiTk5GlQut8KN7FGIz3//DOCnXt3BepdrIr
AdgUdThc3Tz09PrGipya8C3T89tGQ7Q1H/8bI2v9ZvLjF5f81TG+s1KtSk2TRobd
GXaplNHSjzLU98SPXshXddG0e7fWbjDXZP0J0k+PdRX0gDokN+YjWGiDAjHPj5n7
aLpWLRw3qdb/895Cgw1J5LyWSQ0W8dwa2/7c1N+ZP6eignPy/1b2p+yNORkjE5Y4
tmoJZYLbHihjoHPr6EFIB5UCxPvy7NqFQeU+iKTr5YNVblkhZqX1XrlR8JijiiRk
KReddKPprFtanFiUmkFQ
=EuG2
-END PGP SIGNATURE-



Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Manuel RĂ¼ger
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 17.07.2015 19:56, Brian Evans wrote:
> Title: MySQL client libraries and server packaging changes
Be more specific, call it "split" instead of changing.
> Author: Brian Evans  Content-Type: text/plain 
> Posted: 2015-07-17 Revision: 1 News-Item-Format: 1.0 
> Display-If-Installed: virtual/mysql
> 
> The future of the mysql packages is changing.
> 
That is probably the reason, write you write that news. I'd drop it,
as it is kind of redundant.
> First off, a new virtual is being introduced,
> virtual/libmysqlclient. virtual/mysql will represent the server and
> tools while virtual/libmysqlclient will represent the shared and
> static libraries.
> 
Explain first what virtual/libmysqlclient is and then what
virtual/mysql does. Makes it better to read.

> Developers and ebuild writers should reference
> virtual/libmysqlclient when linking against the libraries as the
> package will keep the subslot the same as the soversion for easy
> rebuilds.  This is getting more difficult in the current virtual
> situation as MySQL and MariaDB start to diverge versions and
> features.  The old method could force users to mask new versions or
> delay the posting of one server package which advances the
> soversion until the others catch up.
> 
I'm not sure if this is necessary to know for a user.

> As for the server packages themselves, the minimal USE is being 
> replaced. The new USE flags are client-libs, +server, and +tools. 
> The server and tools flags are on by default to signify the
> primary purpose of those builds.
This is probably one of the most important things (plus maybe the
following sentence in the next paragraph), when targeting users. If
you don't drop the part directed at ebuild writers, you should move
that paragraph up to the beginning (plus the following sentence).
Otherwise users might skip reading the news if they have to read
"unrelated" notes first.
> 
> The primary provider for libraries will be a new package 
> dev-db/mysql-connector-c.  A tinderbox run did not turn up any
> issues, but packagers are permitted to block any provider of 
> virtual/libmysqlclient that does not work correctly.  A comment in
> the ebuild would be helpful to track this.  The server packages can
> still provide libraries if the client-libs USE is enabled.
> 
Probably many users don't know what a tinderbox is, so drop that or
rephrase it, e.g., "We tested the new packaging style thoroughly.".


Cheers,

Manuel.
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.1

iQJ8BAEBCgBmBQJVqVIlXxSAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ4MDA1RERERkM0ODM2QkE4MEY3NzY0N0M1
OEZCQTM2QzhEOUQ2MzVDAAoJEFj7o2yNnWNc0wQP/2rSN7tb03yPZUh5UNK1xk21
kj8ihGo9RgccE+iMTpTz3Yo/Bd4WMWgSdrkiPwTay3MoS55V8DfHbmDfxoPEJgWC
w7IUR02VLxyrFXOqOmEFYCbzwtglFXq5yXPX+QWALJMU0nNckpHMjW9LxqySbu2b
2oMyT2clPWUtcNi0tSsTmRdFCfCvmHCS1xsGBJ6ziTwVfrJIzKWAB/tlbz8E1kzs
vAIjOaODNRz67XVebu2RAjqIebd1iF6EgPUvMIITBjBuR3dzc3ojEtOFpNnvGLWB
RTX2xmekY6sUvN1IuH1lp/o5+E3ODfdUaTOX+BMcyvSYVKQUfe9yXSEmUErZJjME
7hDLd0Ts8PloXkuCK14AI2QqfCyuLRmIfEhC6ZyFPEIfsriK+pzHt/UN7DgBMoXn
t0kiYSAH6oAGLg7J0tbKJCIF/X8TFYs/HIRRdEHwJagcbZpzmrJjqpjl1bxwgwUM
i/LqHZLY/FnmHjvIZriB5k3aI8vlzdhZ40JxC73lPK+8pHbNUOUe4SQVUN8EcBQo
Ueeqf1sNJXGTny94cfUfcz11jTkewBBBLItmaWNUaAjmjacPth6STlcmZQA/FvpN
sjcDvrJdoUJ34VWzYyb/09G6x1/BT6xRD5SoH3ALI1tOusjUa75IMjmtr1lcQFbf
6uZAg4x9COvGPjluyh/J
=hCUC
-END PGP SIGNATURE-



Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Brian Evans
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Here is a second Draft based on comments


Title: MySQL client libraries and server packaging changes
Author: Brian Evans 
Content-Type: text/plain
Posted: 2015-07-17
Revision: 1
News-Item-Format: 1.0
Display-If-Installed: virtual/mysql

First off, a new virtual is being introduced, virtual/libmysqlclient.
virtual/mysql will represent the server (mysqld) and tools (mysqldump,
mysql, mysqladmin, etc) while virtual/libmysqlclient will represent
the mysql client shared and static libraries, libmysqlclient.so for
example.

Ebuilds that only link the libraries may not pull in the server
packages with this change in the future. Because of this, you may have
to add a virtual/mysql or one of the providers; i.e. dev-db/mysql,
dev-db/mariadb, or dev-db/percona-server; to your world file if you
require a server to be installed locally.  This will be phased in
slowly as other packages are updated.

As for the server packages themselves, the minimal USE is being
replaced. The new USE flags are client-libs, server, and tools.
The server and tools flags are on by default to signify the primary
purpose of those builds.

The primary provider for libraries will be a new package
dev-db/mysql-connector-c.  Thorough testing did not turn up any
issues, but packagers are permitted to block any provider of
virtual/libmysqlclient that does not work correctly. Enabling the
client-libs USE on a server package may be the necessary solution for
the rare case of a block on an incompatible provider.

-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.17 (MingW32)

iQIcBAEBAgAGBQJVqWLCAAoJENH3ge/59KO2/JkP+QGpz+M93Mn2C1EopzTG01WZ
66ELrIle/bkvVCtEdfhJXERUqMsyPr5sH6bn2aRC8x7XI7zZWgXBlVrvG4swO7Ul
/2BBArnO0lv/ck5P8QHZTkZuT4W5zZzQP9ORjKel7p/1Cc96kAlgyFd33ACgtjuV
O2zc1mjpKSFhRhybP7FdFsVCpo3PkSYyhmACMkXlbsBmeo8I2u94bzGzuEe5olpM
DOhbwjkeyPix2EacP5pLWmUOIwy/mv+1i+a7sqmkIk54EPuDqDV4dBWQWqyccUl/
puKhnCMsqwzVVRRni5DKK2q4vXC6DdSsuRT0E6/9EVUfSwPyLijYZTI4TNvpB+bn
iz8UWkMcuovOBubycxhvDnx2c5+dmMgh1ykIu7Uq04hCFscP2bHmeON8EJLl3YvA
RoDbc2AvDZnAo9Jbln5YfopNvZGKG5Ya9GFA9Wi1tbR/TxaxQ5w+ussKCEKsIrVT
fqqyQyqALH84G00+PKAf1fbvG0COCl+vjrXnWNnl6j2302VnF6c1esfM5BdCkML0
5BN1jisy8bcjD2b3q/iFFpS5y530y8w46pb8Ad2EOja72GsuzUxRlfWtxDSp35o1
xP7fH7FYMEuxraEM4Ej4nQU2YCUX/n5xA9DEmMebwA069QDHKaJvalR8lBi4O0lP
VAJLLUEs4uITSjMveDvv
=DC98
-END PGP SIGNATURE-



Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Ulrich Mueller
> On Fri, 17 Jul 2015, Brian Evans wrote:

> Here is a second Draft based on comments

> Title: MySQL client libraries and server packaging changes

Title is too long (51 chars). Maximum is 44 chars by GLEP 42.

Ulrich


pgptu4Duj5yI5.pgp
Description: PGP signature


Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Ciaran McCreesh
On Fri, 17 Jul 2015 23:32:10 +0200
Ulrich Mueller  wrote:
> > On Fri, 17 Jul 2015, Brian Evans wrote:
> 
> > Here is a second Draft based on comments
> 
> > Title: MySQL client libraries and server packaging changes
> 
> Title is too long (51 chars). Maximum is 44 chars by GLEP 42.

Every other news item seems to hit this. Maybe eselect news needs to be
made to render news item titles over two lines if necessary.

-- 
Ciaran McCreesh


signature.asc
Description: PGP signature


Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Alan McKinnon
On 17/07/2015 22:17, Brian Evans wrote:
> Here is a second Draft based on comments
> 
> 
> Title: MySQL client libraries and server packaging changes
> Author: Brian Evans 
> Content-Type: text/plain
> Posted: 2015-07-17
> Revision: 1
> News-Item-Format: 1.0
> Display-If-Installed: virtual/mysql
> 
> First off, a new virtual is being introduced, virtual/libmysqlclient.
> virtual/mysql will represent the server (mysqld) and tools (mysqldump,
> mysql, mysqladmin, etc) while virtual/libmysqlclient will represent
> the mysql client shared and static libraries, libmysqlclient.so for
> example.

This reads oddly. There's a "first" but I'm left wondering what the
"second" is, and I have to re-read "mysql client shared and static"
several times to figure out what is probably the noun and the adjective.
If I were writing the news, I'd probably do this:

Ebuild packaging for the various mysql packages is changing; including
the addition of a new virtual virtual/libmysqlclient.

The existing virtual/mysql will represent the server (mysqld) and tools
(mysqldump, mysql, mysqladmin, etc), while virtual/libmysqlclient will
represent the shared and static libraries for mysql clients, e.g.
libmysqlclient.so

> Ebuilds that only link the libraries may not pull in the server
> packages with this change in the future. Because of this, you may have
> to add a virtual/mysql or one of the providers; i.e. dev-db/mysql,
> dev-db/mariadb, or dev-db/percona-server; to your world file if you
> require a server to be installed locally.  This will be phased in
> slowly as other packages are updated.
> 
> As for the server packages themselves, the minimal USE is being
> replaced. The new USE flags are client-libs, server, and tools.
> The server and tools flags are on by default to signify the primary
> purpose of those builds.

It's not obvious that "minimal" is a USE flag, I first thought you meant
USE is short :-). I suggest:

The USE flag "minimal"


> The primary provider for libraries will be a new package
> dev-db/mysql-connector-c.  Thorough testing did not turn up any
> issues, but packagers are permitted to block any provider of
> virtual/libmysqlclient that does not work correctly. Enabling the
> client-libs USE on a server package may be the necessary solution for
> the rare case of a block on an incompatible provider.

Finally, I'd flesh this out a little more so that users know what *they*
need to with this change. You've done a good job of explaining what you
have done.

It's not completely clear what the user must do to retain their existing
mysql clients, and many of them will think mysql-connector-c provides
it. I'd suggest a wording myself, but I'm still not 100% clear how it
will really work.

-- 
Alan McKinnon
alan.mckin...@gmail.com




Re: [gentoo-dev] [RFC] News item about mysql client and server packages

2015-07-17 Thread Ulrich Mueller
> On Fri, 17 Jul 2015, Ciaran McCreesh wrote:

>> Title is too long (51 chars). Maximum is 44 chars by GLEP 42.

> Every other news item seems to hit this. Maybe eselect news needs to
> be made to render news item titles over two lines if necessary.

It already does this for the "read" action. For the "list" action,
behaviour is modeled on mail readers, most of which truncate titles
when necessary.

Actually, we could loosen the requirements for news items in the
gentoo repository (since the repository name is not displayed for
these) and allow up to 56 characters in the title.

On the other hand, shortening the title to be within the 44 char limit
made them more concise and therefore was an improvement in most cases.

Ulrich


pgp2WmsCJm7OX.pgp
Description: PGP signature


[gentoo-dev] Re: [RFC] News item about mysql client and server packages

2015-07-17 Thread Duncan
Alan McKinnon posted on Fri, 17 Jul 2015 23:38:44 +0200 as excerpted:

>> First off, a new virtual is being introduced, virtual/libmysqlclient.
>> virtual/mysql will represent the server (mysqld) and tools (mysqldump,
>> mysql, mysqladmin, etc) while virtual/libmysqlclient will represent the
>> mysql client shared and static libraries, libmysqlclient.so for
>> example.
> 
> This reads oddly. There's a "first" but I'm left wondering what the
> "second" is,

Was just going to point this out myself.

1) "First off,", specifically the "off" sounds informal (I checked myself 
on wiktionary, which lists "first off" as "idiomatic).  It's fine, indeed 
great, for informal conversations, but news items are more formal 
announcements and should be worded as such.

So strike the "off".  That leaves simply "First,".

2) As Alan mentions, "first" is sequential.  Don't use "first" unless 
your intent is to enumerate a sequential list.  That implies you need at 
least a "second" or "last/finally", if not more than two sequential/
numbered points.

That isn't to say you must strike "first" here, if you add further 
sequence keywords, because such sequential numbering indicates moving on 
to the next main point, separate from paragraph structure, with such 
points commonly being found both within a single paragraph if small 
enough, or with multiple paragraphs per point, as I'm doing here.  In 
fact, such transitional keywords tend to be extremely helpful to the 
reader, since they do identify the author's intended key points, thus 
being very helpful when overview- or fast-scanning.


(As you see here, I used digit numbering demarced by closing parenthesis, 
as opposed to the words.  That's simply personal preference, tho I 
believe a convincing argument can be made that it's easier to pick out.  
Some may argue using the words is more formal, however, and could thus 
make the same point I made about "first off" above, for the digit 
choice.  YMMV in that regard, but I personally still prefer the digits.  
Then of course there's the question of whether a ")" or "." demarc is 
better.  As a reader I've absolutely no preference there, but I believe I 
favor the ")" in my own writing.)

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman