My interactive version of pkg_add

Marin Atanasov dnaeon at
Fri Oct 3 08:08:49 UTC 2008

Michel Talon wrote:
> Marcin Wisnicki wrote:
>> Unless I'm missing something there needs to be a MOVED file or ideally
>> something like it that has pkgnames (with versions) for a binary
>> package update tool to work.
> First, congratulations to Marin Atanasov for having completed his
> program! As far as i understand, Marin's goal was simpler that an
> upgrade tool for binary packages, it was simply an install tool,
> allowing to choose interactively on various repositories. I think this
> goal is fulfilled and is useful. 
> For upgrading, the situation is vastly more complicated, indeed one
> needs to read MOVED and use information here, in particular follow the
> name changes of ports. For example you may have a port whose proper
> upgrade has a different name, etc. or ports have disappeared, etc.
> I am not even sure that a completely bullet proof system can be written
> within the limits of the present FreeBSD ports system. 
> I am quite sure that one of the keys of Marcin's success is having
> limited his aims. Similarly the excellent portmaster tool for upgrading
> owes its success to strict limitation to upgrade from source, using the
> available preexisting pkg_* tools - plus a lot of polishing.
Yeap, as Michel Talon noticed I'm not trying to create a package upgrade 
but just a tool for installing packages in an interactive manner. I 
think that
there are already enough and good package upgrade tools - portmaster for
example would do the job.

My program is designed to make easier the process of finding and install 
the packages.
I've written some functions which search for a file pattern when we are 
performing a
local and remote search - then the information is being stored in a 
stack and at the end
of the code we have a single system() call which executes `pkg_add 
So if one have looked at the code will see that actually my program 
gives the
interactive interface and for installing - it uses the existing pkg_add 

Other pkg_* commands could be supported by the program, but I don't see 
a use of it - except maybe
the purpose mentioned above for a package upgrade tool.

Btw, what would you say about this name `pkg_add_it' - 'pkg_add 
Interactive Tool'? :)


Marin Atanasov
dnaeon AT gmail DOT com
daemon AT unix-heaven DOT org

More information about the freebsd-ports mailing list