Synth: Introducing new custom package repository builder for DragonFly (call for testing)

John Marino dragonflybsd at marino.st
Fri Jan 8 05:03:53 PST 2016


I've been working on new software for the past few weeks.  It's called
"Synth" and one of its main purposes is to replace
portmaster/portupgrade.  It it similar to poudriere in that it supports
concurrent building and local respository creation, but it's aimed at
the regular user.  It is a drop-in tool, and there is no "jail building"
or "ports tree" installing or anything like that.  It uses the features
of the system it builds on by default, but it builds everything in a
clean environment and it builds exactly what is needed.

It's particular aimed at users that:
1) Insist on building ports from source no matter what
2) Need ports with options other than defaults
3) Want system upgrades to be painless
4) Have multiple systems that they want to share a common, customized
package repository
5) Think postmaster is great
6) Want to gain concurrent package building locally
7) Don't like package surprises
8) Don't understand or want to deal with poudriere

The software works on both DragonFly and FreeBSD, but I haven't pushed
it to FreeBSD yet.  I'm hoping to get some limited testing by you guys
first.  I've written a graphic how to that is published on github:
https://github.com/jrmarino/synth  (scroll down to README.md)

It's already in dports, but here's how you can install it immediately:

DF 4.4 users:
1) pkg ins ncurses
2) fetch http://leaf.dragonflybsd.org/~marino/synth-img/DF44/synth-0.95.txz
3) pkg add ./synth-0.95.txz
4) synth configure

DF MASTER users:
1) pkg ins ncurses
2) fetch http://leaf.dragonflybsd.org/~marino/synth-img/DF46/synth-0.95.txz
3) pkg add ./synth-0.95.txz
4) synth configure

Synth should actually work without configuring, but check the default
configuration to make sure it's going to use areas that have plenty of
hard disk space.

The best place to provide testing feedback is github
(https://github.com/jrmarino/synth/issues) but if you don't have an
account you can just write back here.

If your initial feedback is good, I'll push this to FreeBSD ports to the
FreeBSD users can have it as well (I still have to write the man page
and linux package support needs to be added).  Note that currently, it
will not leverage pre-built packages but likely in the future there will
be an option to fetch and use official packages if they are suitable.

I highly recommend that you review the README link above.  There are
screenshots!

John





More information about the Users mailing list