From 22298163fbd9c2232907a961daf1c83b7e7795b9 Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Tue, 7 Oct 2008 19:47:16 +0200 Subject: Added pkg(7), describing the concept and internal functions of pkg. Not yet finished. --- man/7/pkg | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 man/7/pkg diff --git a/man/7/pkg b/man/7/pkg new file mode 100644 index 0000000..e8d81b0 --- /dev/null +++ b/man/7/pkg @@ -0,0 +1,117 @@ +=pod + +=head1 NAME + +pkg - Package maintenance utility, package format + +=head1 PACKAGE STRUCTURE + +Special (as in, mostly handled by pkg) directories and files in a package. + +Unless marked with [*], all files and directories are optional + +=over + +=item bin/ + +The place for executables to be in the user's PATH. For their processing, see B + +=item etc/ + +Configuration files, not threated specially though + +=item include/ + +Scripts used by the package that don't belong into B. Not threated specially + +=item man/ + +Manual files in POD format, separated by section (like man/7/pkg) + +=item provides/ + +Files for inclusion into other packages + +=item description + +Package description for B + +=item .links + +Sym- and hardlink descriptions. See checklinks(1) + +=item prereqs + +The package's prerequisites, mainly dependencies. See B + +=item priority + +Package priority as an [1;6] interval of integer numbers. + +=back + +=head1 MAJOR INTERNAL FUNCTIONS + +=over + +=item B I + +Checks a package's prerequisites as defined in B. +The prereqs file is a zsh script which is sourced by pkg. +The following pkg-related functions are available: + +* B I + +Returns true if I is installed, otherwise false + +* B I + +Returns true if I can be used by perl, otherwise false + +* B I + +Returns true if I was found in the users PATH, otherwise false + +* B I + +After completing the execution of B, +pkg will offer to install all the packages added by this command. +Use in conjunction with B, like + is_installed brain || offer_install brain + +=item B I + +This command does two things. +First, it creates the appropiate symlinks in F<~/bin> to the files in B. +Second, it runs podchecker(1) over the files in B and B and +uses pod2man(1) to create man pages from them, which will then be stored in +.collected (like .collected/man/man7/pkg.7). + +The commend is invoked with pkg upgrade and pkg add + +=item B I + +Revert the actions of populate_collected. Called with pkg delete. + +=item B I + +Walks through the directories in B and executes the post-update hooks +of the corresponding packages. + +=back + +=head1 AUTHOR + +Daniel Friesel + +=head1 LICENSE + + 0. You just DO WHAT THE FUCK YOU WANT TO. + +=head1 SEE ALSO + +checklinks(1), pkg(1) + +=cut + +vim:ft=pod -- cgit v1.2.3