This package would fail when a non-privileged user would try to install it.
That's because it was trying to create /usr/pkg/var/log directory. Another
directory was getting installed into DESTDIR but no further.
Added patch:
1) Removes attempt of Makefile to install ${VARBASE}/log
2) ..and directory ${VARBASE}/cache/PackageKit/downloads creation
3) ..which fixes non-root installations
The INSTALL file was removed, instead of installing directories in ${VARBASE},
it was installing directories at /. The functionality was replaced with
OWN_DIRS+= in the Makefile and verified to work as expected.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
The GTK+ module is designed to be loaded using gnome-settings-daemon by the
gnome-packagekit package.
It can however be launched for testing using:
GTK_MODULES="$GTK_MODULES:/usr/lib/gtk-2.0/modules/pk-gtk-module.so" application
The module installs a custom default pangocairo font map during gtk_init().
Pango will then call back with any languages which need installing, and these
are queued up. In an idle callback these are emitted as an asyncronous D-BUS
method to the session PackageKit InstallFonts() method.
If configured to do so, this will prompt the user to install new fonts.
PackageKit is a system designed to make installing and updating software on
your computer easier. The primary design goal is to unify all the software
graphical tools used in different distributions, and use some of the latest
technology like PolicyKit to make the process suck less.
The actual nuts-and-bolts distro tool (yum, apt, conary, etc) is used by
PackageKit using compiled and scripted helpers. PackageKit isn't meant to
replace these tools, instead providing a common set of abstractions that can
be used by standard GUI and text mode package managers.
PackageKit itself is a system activated daemon called packagekitd. Being
system activated means that it's only being run when the user is using a text
mode or graphical tool, and quits when it's no longer being used. This means
we don't delay the boot sequence or session startup and don't consume memory
when not being used.