Matt Dillon has created dports, a DragonFly-local override of /usr/ports from FreeBSD. This way, DragonFly can continue to use the FreeBSD ports system and changes/overrides can be placed in /usr/dports to handle changes. This is not permanent; it’s supposed to last until a new package system is devised, which should be after things like the VFS work is done.
Complete text of his post follows, as there’s some notes on how to check this out of cvs:
“Ok developers, I have created a /usr/ports override hierarchy for
DragonFly. This will allow DragonFly developers to modify FreeBSD ports
without us having to dup the FreeBSD ports hierarchy.
I have made the following changes:
* Created a ‘dports’ import, which should be checked out into /usr/dports.
aka: cd /usr; cvs -d cvs checkout dports;
* Added /usr/src/usr.bin/relpath. You should cd into there ane
make obj; make; make install; make clean.
* Updated /usr/src/share/mk, so you should make install from
/usr/src/share/mk to install the new .mk files.
I have dup’d sysutils/cpdup as an example of a DragonFly port. The only
difference in the Makefile from a FreeBSD port is that it should include
instead of .
To create a DragonFly specific port override duplicate the FreeBSD port
from /usr/ports into a new DragonFly port in /usr/dports (e.g. using cpdup)
and modify the Makefile to .include instead of
, then make whatever additional modifications are needed
for the DragonFly version.
It should then be possible to build this new port either from the new
DragonFly directory or from the original FreeBSD directory (it will
detect the override, generating a warning, and then cd into the DFly
port to do the build).
Developers with commit privs: Please feel free to commit additional
cleanups in the new dports tree. Remember that this is (theoretically)
a temporary stopgap until we finalize how the new package management system
is going to work.”