Latest Package Article

I enjoyed the latest packaging article and look forward to the
followup on QPG files.

With regard to vendor identifiers, I note that
packager recommends using ‘public’ for publicly available
software, but I also gather from looking under /pkgs that
QNX has used ‘gnu’ for GNU software, which is of course
publicly available. Also cdm identified his port of vim by
the vendor id ‘cdm’. I’d like to see a discussion
of the conventions for packaging public software.
It may well be useful to distinguish between gnu and other
public packages, but if there is a choice, the packager
should give a bigger hint when it asks for vendor ID.

I think part of the reason for the confusion is that there
isn’t a separate set of questions about the ‘packager’
(or ‘porter’). It seems reasonable to expect, when faced with
a binary installation package, that you could find out
as much as possible not only about who wrote the package, but
also about who put the binary together. Asking us to withhold
that information (in the vendor inquiries) in favor of
Vendor Name ‘Public’ and Vendor ID ‘public’ is troubling.
Heck, even the QUICS /usr/free submission form has a separate
field for ‘Ported-by’.

You could always use ‘Author Name’ for that purpose. Might be confusing
when you prepare package, but easily visible for users in the Installer.
And I guess most people will figure out that a package with vendor
‘public’ or ‘gnu’ but author ‘Joe Smith’ is some free source ported by
Joe Smith.

  • igor

Norton Allen wrote:

I enjoyed the latest packaging article and look forward to the
followup on QPG files.

With regard to vendor identifiers, I note that
packager recommends using ‘public’ for publicly available
software, but I also gather from looking under /pkgs that
QNX has used ‘gnu’ for GNU software, which is of course
publicly available. Also cdm identified his port of vim by
the vendor id ‘cdm’. I’d like to see a discussion
of the conventions for packaging public software.
It may well be useful to distinguish between gnu and other
public packages, but if there is a choice, the packager
should give a bigger hint when it asks for vendor ID.

I think part of the reason for the confusion is that there
isn’t a separate set of questions about the ‘packager’
(or ‘porter’). It seems reasonable to expect, when faced with
a binary installation package, that you could find out
as much as possible not only about who wrote the package, but
also about who put the binary together. Asking us to withhold
that information (in the vendor inquiries) in favor of
Vendor Name ‘Public’ and Vendor ID ‘public’ is troubling.
Heck, even the QUICS /usr/free submission form has a separate
field for ‘Ported-by’.

I’m glad you enjoyed the article.

My suggestion would be to always use ‘public’ as the vendor
identifier QPM:VendorInstallName, because that is the field
that package installer uses (along with QPM:ProductIdentifier)
to uniquely identify your package. If two people both package
up a public piece of software, they should both have those
two fields identical; otherwise, the software will show up as
a new package which has not already been installed!

If you want to have identification of who the vendor is, change
the vendor name field QPM:VendorName to be explicit as to
the person who did the port. This is just a text string which will
be shown to operators, and is not used for unique identification
purposes.

Jerry Chappell
jchappell@qnx.com

Igor Kovalenko wrote:

You could always use ‘Author Name’ for that purpose. Might be confusing
when you prepare package, but easily visible for users in the Installer.
And I guess most people will figure out that a package with vendor
‘public’ or ‘gnu’ but author ‘Joe Smith’ is some free source ported by
Joe Smith.

I’d disagree with that. I think that if I package perl, say,
the author should be listed as Larry Wall, not Norton Allen.
I think Jerry’s suggestion of using Vendor Name is reasonable,
and that keeping the vendor ID as ‘public’ is a good idea
also.

-Norton

“Norton Allen” <allen@huarp.harvard.edu> wrote in message
news:3B8FD1A2.807D4402@huarp.harvard.edu

Igor Kovalenko wrote:

You could always use ‘Author Name’ for that purpose. Might be confusing
when you prepare package, but easily visible for users in the Installer.
And I guess most people will figure out that a package with vendor
‘public’ or ‘gnu’ but author ‘Joe Smith’ is some free source ported by
Joe Smith.

I’d disagree with that. I think that if I package perl, say,
the author should be listed as Larry Wall, not Norton Allen.
I think Jerry’s suggestion of using Vendor Name is reasonable,
and that keeping the vendor ID as ‘public’ is a good idea
also.

GNU software rarely has concept of single author anyway. Larry might be
original author of Perl but he’s not the only one these days, I’d assume.
Which means ‘Author’ does not have real meaning unless you list them all.
Besides, ‘Author’ could be treated as ‘Author of package’. ‘Publisher’ so to
speak.

  • igor

Igor Kovalenko wrote:

GNU software rarely has concept of single author anyway. Larry might be
original author of Perl but he’s not the only one these days, I’d assume.
Which means ‘Author’ does not have real meaning unless you list them all.
Besides, ‘Author’ could be treated as ‘Author of package’. ‘Publisher’ so to
speak.

Well you could certainly argue that. Perl comes with a file in the
distribution called ‘AUTHORS’ with many people who have contributed,
including myself, but even so, credit is always given to
Larry for getting the ball rolling, and deference is paid when
important decisions come up. Many of the GNU packages I have
ported recently trace their lineage back to one or a few people
who did the original work. In as much as recognition is their
only compensation, I’d prefer to give credit where possible. For
that matter, listing oneself as the ‘Author’ of a GNU distribution
might well be a violation of the GPL. I think the vendor name is
the right place to put that information.

-Norton