[oi-dev] some Newbie questions

Tim Mooney Tim.Mooney at ndsu.edu
Mon Dec 27 22:11:08 UTC 2021


In regard to: [oi-dev] some Newbie questions, Friedrich Kink via oi-dev...:

Hello and welcom, Fritz!

> reading silently for a couple of years this mailing list I decided now to 
> contribute to the community my extensions I made over the years to my system 
> (at least I'd like to try ;-)). The main purpose of my system is to act as 
> mail server supporting all modern security features like DANE, SPF, DKIM, 
> DMARC etc (which works btw for couple of years already, basically I started 
> with opensolaris). That's why I'll focus on those packages. Of course I've 
> some questions after starting this endeavor. Especially when trying to build 
> Spamassassin which requires a lot of additional Perl modules. While start 
> building these modules it turned out that the provided 64bit Perl version 5.24 
> is pretty outdated. So I built the current stable version 5.34 based on the 
> existing 5.24 setup. Worked like a charm ;-). Now first question: Is there a 
> reason/dependency for not upgrading to a newer version?

It's likely a combination of

- limited contributor time
- contributor interest
- complexity of the task

I do have an update to perl planned, but there are some details
to work out and I probably won't be back to looking at the perl modules
until I'm done with some MATE-related stuff.

>Next question:  Some 
> Perl modules have odd version like 1.04 which makes publishing a package 
> impossible because of the padding zero in the number after the dot. What is 
> the reason for bailing out on a padding zero (just a question for me and my 
> understanding ;-))?

That reason for that is probably documented in the documentation for pkg,

 	http://docs.openindiana.org/dev/pdf/ips-dev-guide.pdf

though I would have to do some searching to find the exact section.  I
think it comes down to "design choice".

As much as I like perl and have done lots of programming with it over
the years, its module numbering system leaves a lot to be desired.  The
standardization on "semantic versioning" that most other software has
done would be a welcome change in the perl module community, IMHO.  That,
of course, will never happen, but it sure would be nice if it did.

>Also, some packages will require a new user and/or group. 
> Are uids/gids managed centrally or can I just choose some numbers <100 not 
> used to my best knowledge?

There is a file in oi-userland that documents the reserved IDs:

 	https://github.com/OpenIndiana/oi-userland/blob/oi/hipster/doc/reserved_uids_and_gids.md

If you need to add to that list, starting with a PR for that file is
probably the way to go.

>How to store test results (I haven't found the 
> trick where the results get stored in the test directory while comparing 
> existing packages with mine).

Create the test directory and within there create (touch)

 	results-32.master		# if your component has a 32 bit build
 	results-64.master		# if your component has a 64 bit build

there are other possible variants the file could be named, for special
build conditions.  Look through the test directories for the various
components in oi-userland to get an idea of other possibilities.

Then, add various COMPONENT_TEST_TRANSFORMS to your Makefile, to filter
out any of the test output that will vary between build systems (PATHs,
timing, etc.).

Once you have (empty) results files, the test target will start outputting
diffs.  Incorporate the output into your results files until there are
no more diffs.

>And finally when I think I'm ready to release my 
> package would this list be the place to ask for integration?

You can mention it here if you want, but following the "Building with
oi-userland" guide has a section on preparing your Github pull request
(PR).  Most of the component update work happens following that guide,
and the final integration piece comes via the pull request.

 	http://docs.openindiana.org/dev/userland/

Tim
-- 
Tim Mooney                                             Tim.Mooney at ndsu.edu
Enterprise Computing & Infrastructure /
Division of Information Technology    /                701-231-1076 (Voice)
North Dakota State University, Fargo, ND 58105-5164


More information about the oi-dev mailing list