DracoPKG
DracoPKG is a humble attempt at merging pkgtools and pkgsrc through a simple wrapper. Hiding the complexity through simple commands.
Features
DracoPKG supports the following features:
Install
$ dp install foobar
Install selected package and dependencies*.
Options
$ dp options foobar
Some packages support various compile options, use this command to see available and default options. You can change the options with USE="options".
$ USE="enable_option -disable_option" dp install|replace|upgrade|options foobar
This feature requires the pkgsrc tree, please note that not all packages support this feature.
Upgrade
$ dp upgrade foobar
Upgrade selected package*. Note that if you have the pkgsrc tree installed, 'upgrade' will compile the selected package and everything that depends on this package. If you are using a stable branch, or the package version is minor. Just use 'replace' instead.
Replace
$ dp replace foobar
Replace selected package. The end result is the same as 'upgrade', but you don't need to recompile other packages. Use with caution. Feature only available with pkgsrc tree.
Remove
$ dp remove foobar
Remove selected package. Also removes dependencies.
Info
$ dp info foobar
Request package information. 'dp info' prints installed packages.
Search
$ dp search foobar
Search for package in pkgsrc tree.
Audit
$ dp audit update
Download third-party vulnerability list and system file list.
$ dp audit package
Search installed third-party packages for vulnerability s.
$ dp audit system
Check system for updated and outdated packages.
Update
$ dp update pkgsrc
Update pkgsrc tree to latest revision, if pkgsrc-wip is installed, it also will be updated.
$ dp update packages
Update third-party packages to latest version*.
$ dp update system
Update system packages (verbose).
Overlay
$ dp overlay pkgsrc-<VERSION>
Apply overlay to pkgsrc tree. The purpose of this overlay is to fix issues on Draco/Linux, and add Linux-only features.
Switch
$ dp switch pkgsrc-<VERSION>
Switch to selected pkgsrc branch.
$ dp switch current
Switch to the -current pkgsrc branch.
sysinst
$ dp sysinst foobar
Install (or upgrade) system package.
sysre
$ dp sysre foobar
Reinstall system package.
sysrm
$ dp sysrm foobar
Remove system package.
sysbuild
$ dp sysbuild foobar
Build (and optional install) system package.
Service
$ dp service stop|start
Stop (or start) third-pary services.
* if you don't have a pkgsrc tree installed, DracoPKG will access a mirror and download the latest package available. If you have the pkgsrc tree installed, DracoPKG will ask the tree for which package to download, if no package is found, pkgsrc will compile one for you (same goes for dependencies)**.
** using default mk.conf from pkgsrc-bootstrap and default 03-BOOTSTRAP.conf from DracoPKG. If you don't want to use precompiled packages from Draco, add BOOTSTRAP_BMAKE_DEFAULT=${BOOTSTRAP_BMAKE_INSTALL} to /etc/dp/local.conf. Also remove DEPENDS_TARGET=bin-install from /usr/local/etc/mk.conf.
