pkg_mgr: a package browser for OpenBSD
What is it ?
pkg_mgr
is a user-friendly graphical tool which allows you to manage installed packages, browse available packages by categories, and finally install/uninstall/update packages.
It has its roots in pkg_select
, and takes some ideas too from FreeBSD's sysinstall
. And as pkg_* tools, it's written in OO-ish perl (at least i tried..)
History:
- 2008-01-26: git log says 'initial import of pkg_mgr', but i had the idea in mind since months :)
- 2008-03-10: abandon
DBIx::Class
in favor of DBD::SQLite
- 2008-04-15: announce first release on ports@, pkg_mgr is featured on undeadly!
- 2008-04-17: imported in ports-tree!
- 2010-12-26: Release 0.2, finally. Mostly rewritten, and properly integrates with pkg_* tools. Likely to have bugs, as it heavily depends on underlying pkg_* code..
- 2011-01-07: Release 0.2.1, fixes a bug when simulating updates/installs as user and files in the system can't be accessed.
Features:
- Browse available packages, sorted by categories.
- See package details.
- Search for a keyword in package names and comments.
- Show installed package list.
- Install/uninstall packages through standard OpenBSD tools
pkg_add/pkg_delete
(simulations are possible).
- Simulate removal.
- Simulate installation.
- Show post-installation messages.
- Make a choice between alternatives.
- Update a package (and its dependencies first).
- Confirm an action.
Various notes and ideas:
- At the moment, only the curses GUI is available, but a menu-driven and a GTK2 interfaces are in the TODO-list. If someone unfucks p5-Gtk2.
- It is in no way a drop-in replacement for existing working tools, and it uses them.
- It doesn't need to be run as root, though it will only perform simulations if running as user.
- The ports-tree is not needed, but in the future it could be used to permit to build packages and select flavors.
- It uses sqlports as data-provider backend, and a plain
DBD::SQLite
model layer.
- I've tried using an higher-level model like
DBIx::Class
and Rose::DB
, but it was far slower than plain SQL.
- It doesn't do a lot of things, and bugs are probably lying around, but i have lots of plans for it (and i suppose users will have some too..)
- It should normally work for OpenBSD 4.3 and higher. Version 0.2 requires at least 4.8-current as of its release date.
Ah, and btw the mandatory download link, or you can just grab it in sysutils/pkg_mgr
.
Feedback, ideas and critics are welcomed at
landry at openbsd dot org.