On May 6, 2016, at 7:41 PM, Warren Young <w...@etr-usa.com> wrote:
> 
> On May 6, 2016, at 3:53 AM, Thomas Wolff <t...@towo.net> wrote:
>> 
>> after a recent fresh installation of cygwin, I was surprised that `cmp` was 
>> missing, which is part of the traditional Unix base commands.
>> I think the diffutils package should be part of the base installation.
> 
> I wonder if the rule should just be “POSIX”?

I’ve come up with a much better rule: mimic the Minimal package set for RHEL.[1]

Not only is this a nice nod toward the primary corporate sponsor for Cygwin, it 
turns out that the current Base set is already almost exactly the same thing 
after applying some fairly obvious exclusion rules:


1. We can exclude from consideration all of those packages that do something 
for RHEL that Cygwin leaves to Windows.  e.g. chrony, dmidecode, iptables, the 
Linux kernel, etc.

2. We can also exclude any user space program that is included in RHEL not for 
its own sake but instead primarily to satisfy a dependency for some other user 
space program that Cygwin doesn’t need.  Examples are curl, gpg, lua, make, and 
python.

3. We can also exclude all libraries.  Discussions of which libraries the Base 
packages should depend on are wholly separate from this one.  For example, 
RHEL’s coreutil depends on gmp, while Cygwin’s does not, but this does not tell 
us that Cygwin’s coreutils should be rebuilt to depend on gmp.

4. Perhaps controversially, I think we can also leave out anything where the 
use case set is far narrower on Cygwin due to the nature of the platform.  This 
is my justification for excluding openssh-server and postfix: you’re not likely 
to find a rack full of 1U Windows boxes running Cygwin in a datacenter, 
accessible only via SSH and sending important messages to the local mail spool. 
 Therefore, RHEL’s justification for including such packages in its Minimal set 
simply doesn’t apply to Cygwin.


After applying all of those rules, the only packages in RHEL 7 Minimal that 
aren’t in RHEL Base are diffutils and openssh-client, both of which I’d be 
happy to see in Cygwin Base.

I welcome anyone else to go through the RHEL/CentOS 7 Minimal package set[1] 
and see if they can provide a justification for one that currently isn’t in 
Cygwin Base which doesn’t run up against any of the exclusion rules above.

In terms of my original reply to this thread, adopting this rule removes one of 
the “standards” from the running, a good thing IMHO.



[1] https://gist.github.com/wyoung/42e7f6081e8d695f9656621be0f58eae
--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Reply via email to