Making ProteanOS development "easy"
- From: "Patrick 'P. J.' McDermott" <pj+proteanos-ml АТ pehjota DОТ net>
- To: proteanos-dev АТ lists DОТ proteanos DОТ com
- Date: Thu, 28 Aug 2014 12:15:13 -0400
- Message-id: <53FF5591 DОТ 1070204 АТ pehjota DОТ net>
Last October I started working on prokit, the ProteanOS Development Kit.
I had to set it aside for a while to work on the amd64-linux-glibc and
i686-linux-glibc architecture bootstraps. Then in March I wrote
miniprokit as a quick and "temporary" replacement; five months later
we're still using miniprokit.
I've recently resumed development of prokit, and I released version
0.1.0 two days ago . This version approximately matches miniprokit
in user-facing features and is intended as a preview release for
testing. Additional preview releases will follow soon.
There are two known "issues", neither of which is fatal. The first is
that prokit warns about badly formatted control fields in the Packages
index files; this is an issue in opkbuild which has been fixed in the
Git repository  and will be fixed in ProteanOS soon. The second is
that `opkg update` in the ProteanOS system will return an HTTP 404 error
for the "feeds/dev/trunk/all/dev/base/Packages" index file (but will
continue updating the feeds); this happens because the "dev" platform
currently has no platform-dependent and architecture-independent
packages. Both of these warnings/errors can be safely ignored and will
eventually be resolved.
If you find any other issues with prokit, please let me know.
With toolchain packages, the architecture bootstraps, and miniprokit,
development of ProteanOS (within ProteanOS) became /possible/. With
prokit, development of ProteanOS will become /easy/.
Using miniprokit it's not really easy to prepare a package outside of
ProteanOS (on your workstation system with your favorite text editor and
tools like Git and licensecheck) and then build it within ProteanOS.
In time, prokit will make this as easy as running `sudo prokit build
$root_dir .`. prokit will handle getting the package into the ProteanOS
system (using a bind mount), installing build dependencies, and building
the package under chroot.
There are several things that need to happen outside of prokit before I
can declare prokit feature-complete and claim that ProteanOS development
is "easy" and secure.
I'll be adjusting many packages to simplify some package selection logic
and remove some installation code in prokit. I'll modify pro-archman to
generate lists of valid architectures and platforms and to support
compression and digital signing of Packages feed index files.
And finally, cryptography packages need to be prepared so that opkg can
be configured to verify the signed feed index files. I've left these
packages as somewhat low-hanging fruit for anyone interested in getting
started with contributing to ProteanOS. See the thread from June 
for more details. Of course I'll be happy to help anyone who'd like to
work on any of these (or any other) packages.
Patrick "P. J." McDermott
Lead Developer, ProteanOS