[OpenIndiana-discuss] [oi-dev] [discuss] Making OI friendly to new users

Reginald Beardsley pulaskite at yahoo.com
Mon Aug 18 14:37:23 UTC 2025


 Till,


Thanks. That's very helpful. It also describes my problem encounters with autotools. Gnu make is an excellent means of building if the Makefile is even remotely sensible. Debugging the configure script is not fun.

I'd much rather have a set of symbols for all the features. I *almost* always know the quirks of the system I'm doing a build on. I don't need a machine generated script that is built from badly written .conf file. I can look up any items in the platform specific portion of the Makefile if I actually encounter something unfamiliar.

Maintained pkgs for Octave and dependencies is something I have a personal desire for. The dependencies are all familiar things I've built many time over the course of 40 years of programming. So that's something I have the skills and incentive for. It's also an additional responsibility I can put on my plate.

Have Fun!
Reg






     On Monday, August 18, 2025 at 04:35:21 AM CDT, Till Wegmüller <toasterson at gmail.com> wrote:  
 
 Hi Reg

IPS uses very simple tools called pkgmogrify and pkgsend to create a 
installable package from a built source tree. All those tools are 
documented in our manpages. What we have ontop of it, is oi-userland 
which is a set of Makfiles to wrangle autotools into compliance. 
Sometimes as you mentioned that can be daunting depending on how the 
autotools scripts where written by the Software author. Autotools added 
many features we rely on for packaging as an afterthought so features 
like seperated build and source directories and DESTDIR do not always 
work correctly and we have to interupt autotools and do those steps 
manually. Cmake and Meson are better in that regard but cmake is 
notorious for needing patches to it's own Library search system. meson 
always needs python patches because now all the logic is in the 
software. Which Andy Fiddaman (OmniOS) thankfully maintains for all 
illumos systems.

Anyway here is the PDF version of out docs about building with 
oi-userland https://docs.openindiana.org/pdf/dev/userland.pdf all of 
them can be found here 
https://docs.openindiana.org/handbook/pdfdocs/#contrib

The 5000 foot overview of how out oi-userland works is:

1. Download sources (git, tarball etc.) and check checksum
2. patch sources with patches in the patches directory
3. run preconfgure and configure scripts and targets (allows for 
customizations)
4. run build
5. run install with DESTDIR set to a local directory so all the final 
software ends up in a so called prototype directory
5 a. (manual) run sample-manifest to generate or regenerate the listing 
of files in the package (used to compare differences or if features got 
autodetected on the build system vs. the packagers system)
5 b. (manual) run REQUIRED_PACKAGES to update the REQUIRED_PACKAGES 
makefile section with the result from pkg tools. (IPS has code to auto 
detect dependencies)

After that it's basically tweaking metadata in the Makefile and some 
process knowledge which we guide people thorugh in the PR's

The trickyest bit is always to wrangle autotools, but it got better with 
newer releases.

-Till

On 17.08.25 22:38, Reginald Beardsley via openindiana-discuss wrote:
>  
> A link to a decent pkg tutorial PDF would help. I plan to try building Octave again. It's got a ludicrously complex set of dependencies. Octave is the one thing I will use Linux for. Because it uses autotools it completely failed to build the last time I tried. *Supposedly* that's been fixed, but it's terminally braindead at birth. During the workstation wars there was some justification for Larry Wall's configure concept, but today's computing universe doesn't have 20 flavors of Unix.
> 
> My S10_u8 instance has hundreds of things I compiled from scratch. At one time I maintained binaries for a huge amount of Gnu pre-autotools systems by knowing how to run Gnu make on all the systems, Intergraph Clix, AIX, SunOS, HP-UX, Ultrix and Irix. Autotools are the shell scripts from hell.
> 
> Before autoconf there was imake which was truly the spawn of the devil. That was when X11 was not yet available on SunOS so I had to supply binaries for ARCO's research lab and any affiliate who needed them. IIRC I also did binaries for the Alliant i860 based "super" computer. Imake tried to run Makefiles though the C preprocessor instead of the Bourne shell. Only to discover that some systems would not let you do that. I simply ported gmake and was done. Once I'd done all the system flavors I simply included a hand built set of make definitions in an include file in the standard Makefiles using gmake. This was what I did while waiting for the system compiles for the work I was paid.
> 
> Got a really nice email from an admin I knew. He'd been facing doing a huge system patch across the 6 OSes that I had built all the tools for. I had gotten a new contract and was no longer there.
> 
> "I was facing a long evening installing patches, but Reg had been here and expect(1m) was everywhere. I was done in almost no time at all."
> 
> I had to write the installer for an aggregate of 8 IIRC $100k/seat programs which ran a root and trashed each other. A worked, install B and it works, but A is broken. Reinstall A and B is broken. Now consider the fun when you get to system H. I had mentioned the problem at the end of a meeting once and was quite gob smacked when I was assigned to direct 2 full time employees to resolve the issue. The problem was doiing tap dances on the system configuration files. My install was a pair of tarballs which checked for conflicts and archived all the files I was fiddling with.
> 
> "Install" saved the files and unpacked the tarballs. "Uninstall" removed them and restored the archived files. Total was about 100 lines of /bin/sh. Completely bulletproof.
> 
> Have Fun!
> Reg
> 
> 
> On Sunday, August 17, 2025 at 10:50:08 AM CDT, Till Wegmüller <toasterson at gmail.com> wrote:
> 
> 
> Speaking of making OI more friendly for new users. what would
> incentivise people to make packages?
> 
> -Till
> 
> 
> On 17.08.25 16:57, Reginald Beardsley via openindiana-discuss wrote:
>> Till,
>>
>> I just signed up as a $100/month sponsor.
>>
>> Kudos to whoever set up the donation link and including PayPal. That was an excellent experience.
>>
>>
>> Have Fun!
>> Reg
>>
>    
> _______________________________________________
> openindiana-discuss mailing list
> openindiana-discuss at openindiana.org
> https://openindiana.org/mailman/listinfo/openindiana-discuss

_______________________________________________
openindiana-discuss mailing list
openindiana-discuss at openindiana.org
https://openindiana.org/mailman/listinfo/openindiana-discuss
  


More information about the openindiana-discuss mailing list