Re: cvs commit: src/usr.sbin/pkg_install/add main.c pkg_add.1 src/usr.sbin/pkg_install/create main.c pkg_create.1 src/usr.sbin/pkg_install/delete main.c pkg_delete.1 src/usr.sbin/pkg_install/info main.c pkg_info.1 ...

From: Garrett Cooper <yanefbsd_at_gmail.com>
Date: Wed, 4 Jun 2008 22:51:06 -0700
On Jun 4, 2008, at 8:00 AM, Steve Kargl wrote:

> On Wed, Jun 04, 2008 at 08:36:31AM +0200, Wilko Bulte wrote:
>> Quoting Steve Kargl, who wrote on Tue, Jun 03, 2008 at 09:39:55PM  
>> -0700 ..
>>>
>>> I personally believe that commit should be backed out and core
>>> should establish a policy against adding long options to BSD
>>
>> Gimme a break..
>>
>
> Note I wrote "I personally believe".  You don't have to agree
> with me.

I don't see establishing this point as another issue, because many  
things along these lines are already covered by style(9).

I personally believe that the issue with the short options isn't the  
fact that they're short, but the fact that many of the options tend to  
vary, between pkg_* applications.

Before I ventured off and was working on other projects for school and  
work I actually wrote down a matrix of all of the given options that  
were in pkg_* -- as well as options which I thought would be helpful  
in new commands I was going to add to pkg_*, and I was able to draw  
more points of consistency between the current pkg_* commands and  
options.

So, while long options may be better in some places, I don't think  
they will do more other than lengthen manpages and "help messages" --  
a GNU~ish behavior that I don't think we will benefit from here  
because the help message will span more than one terminal screen,  
unless you pipe the output to less or more.

Thus, that's why I vote (for the unfortunate non-POLA change) to make  
the options consistent amongst all pkg_* apps.

I've attached the matrix I made a few months ago, just for reference.  
Some options may not exist anymore due to the phasing out of options  
within pkg_add as well as pkg_check/pkg_sign going out the window as  
well...

Thanks,
-Garrett



   add create delete info version
   a Delete all packages Show all installed packages
   A
   b Use blocksize var
   B
   c Fetch packing list (- or file) Do one-liner for each pkg
   C Chrootdir Set conflicts
   d Fetch desc (- or file) Prune directories Do long desc for each pkg
   D Set display file Don't exec deinstall script Display install file
   for each pkg
   e
   E Use extended regex Exact match only
   f Force install Fetch the packing list Force deinstall Show pkg list
   instructions for each pkg
   F Don't report already installed pkgs as errors
   g Show pkgs w/ non-matching checksums
   G Match exact pkg name Don't expand glob patterns Don't expand glob
   patterns
   h Make tar follow symlinks Print help msg
   H
   i Set preinstall script Request for confirmation Show install script
   for each pkg
   I Don't exec install scripts Set postinstall script Show index line
   for each pkg Use INDEX for determining versioning info
   j Use bzip2 compression Show reqs script
   J
   k Set deinstall script Show deinstall script
   K Keep pkg Set postdeinstall script Keep downloaded pkg
   l Prefix each header w/ str Positive limit to expression char
   L Show all files in pkg Negative limit to expression char
   m Show mtree file
   M
   n Don't install pkg Don't deinstall pkg
   N Default -> no
   o Set ports origin Show origin path Show origin instead of pkg name
   O Use packing list mode for creating packing lists from ports Show
   only pkgs by origin
   p Prefix to install to Prefix to create from Prefix to delete from
   Show install prefix
   P Same as -p, but applies to leaf packages (-r only) Set package
   dependencies to the list provided Show revision of pkg tools
   q Be quiet, but print out non-human compat printouts Be quiet
   Q Do -q, but also prefix with pkg name
   r Remote fetch pkgs Set reqs script Recursive removal Show list of
   dependent pkgs
   R Don't record pkg install Do the same as -r, recursively
   s Set src dir Show total size of all pkg files Limit output to
   provided str
   S Set base dir
   t Use arg for mkstemp(3) Use arg for mkstemp(3) Use arg for mkstemp(3)
   Compare pair of expressions
   T Do same as -t, but return appropriate exit code
   u
   U
   v Verbose Verbose Verbose Verbose Verbose
   V Packing list format version
   w
   W Determine what pkg a file belongs to
   x Use basic regex Use basic regex Use basic regex
   X Exclude file Use extended regex Use extended regex Use extended
   regex
   y
   Y Default -> yes
   z Use gzip compression
   Z

Received on Thu Jun 05 2008 - 06:16:26 UTC