Prior to GCI 2014, I already have some experiences in packaging because my involvement in the MXE project. The way haikuports operates is very similar to MXE (which uses a makefile-based system), so it was not extremely hard for me get started in the packaging fun.
The 3 most important challenges or unexpected situations for me were:
- How to build a package with
haikuporter(i.e.--no-dependencies) - How secondary architectures work
- The use of chroot in
haikuporter
As of now, I am proud to say that I know the answer to all these questions,
mostly because of all the awesome people on #haiku.
I have compiled a list of some possible improvements in the documentation of
haikuporter, that will benefit new users of it:
- Make it clear(er) that all builds are done in a chroot, so only the packages declared in the recipe as dependencies will be available
- Update gentle intro to
haikuporterto use SHA256 instead of MD5
On a coding side, it would be better if the following is possible:
- Directly drop the developer into the chroot if the
haikuporterrecipe failed. - Instead of manually building all packages including coreutils and gcc, use the existing copy on the system
First and foremost, read ALL of the gentle intro to haikuporter. That
will answer absolutely most of the questions you are having.
Second, do not be afraid to ask questions on the IRC channel, and be patient.