Command Section

PKG_CREATE(3)          FreeBSD Library Functions Manual          PKG_CREATE(3)

NAME
     pkg_create, pkg_create_i, pkg_create_new, pkg_create_free,
     pkg_create_set_format, pkg_create_set_overwrite,
     pkg_create_set_compression_level, pkg_set_rootdir, pkg_set_output_dir,
     pkg_create_set_timestamp - create packages

LIBRARY
     library "libpkg"

SYNOPSIS
     #include <pkg.h>

     struct pkg_create *
     pkg_create_new();

     void
     pkg_create_free(struct pkg_create *);

     bool
     pkg_create_set_format(struct pkg_create *, const char *);

     void
     pkg_create_set_compression_level(struct pkg_create *, int);

     void
     pkg_create_set_overwrite(struct pkg_create *, bool);

     void
     pkg_create_set_rootdir(struct pkg_create *, const char *);

     void
     pkg_create_set_output_dir(struct pkg_create *, const char *);

     void
     pkg_create_set_timestamp(struct pkg_create *, time_t);

     int
     pkg_create(struct pkg_create *, const char *, const, char, *", bool);

     int
     pkg_create_i(struct pkg_create *, struct pkg *, bool);

DESCRIPTION
     pkg_create_new() Allocates a new struct pkg_create * which should be
     freed by the caller using pkg_create_free().

     pkg_create_set_format() will define the compresion format to use.  By
     default "txz" except if specified otherwise in pkg.conf(5).  It returns
     false if the compression format is unknown and fallback the the default
     format.

     pkg_create_set_compression_level() take a int arguments which represents
     the expect compression level.  3 special values are accepted:

     INT_MIN      Set the fastest compression format value

     0            Set the default (as specified in libarchive)

     INT_MAX      Set the best compression ratio

     pkg_create_set_overwrite() Accept Va a boolean to define the default
     behaviour when creating a package and a local file already exists.  The
     default behaviour is to overwrite.

     pkg_create_set_rootdir() tells the program where to find the root used
     for packaging (also called sometime staging area).  If none is provided
     pkg will consider `/'.

     pkg_create_set_output_dir() Tells the program where to create the new
     packages.  By default it will consider the current directory of the
     running program.

     pkg_create_set_timestamp() Define the timestamp to use ad creation and
     modification time for the files to be packaged.  By default it will use
     the timestamp of the files on the filesystem.

     pkg_create() create a package from scratch using the metadata and plist
     as input.  The metadata can be either directly a UCL manifest, or a
     directory containing multiple files:

     +MANIFEST  The UCL manifest

     +DESC      A textual description (optional)

     shell scripts (optional):

                +INSTALL            Shell script that will be run during both
                                    in post and pre install (DEPRECATED)

                +PRE_INSTALL        Shell script that will be run during pre
                                    install phase

                +POST_INSTALL       Shell script that will be run during post
                                    install phase

                +DEINSTALL          Shell script that will be run during both
                                    in post and pre deinstall (DEPRECATED)

                +PRE_DEINSTALL      Shell script that will be run during pre
                                    deinstall phase

                +POST_DEINSTALL     Shell script that will be run during post
                                    deinstall phase

                pkg-install         Shell script that will be run during both
                                    in post and pre install (DEPRECATED)

                pkg-pre-install     Shell script that will be run during pre
                                    install phase

                pkg-post-install    Shell script that will be run during post
                                    install phase

                pkg-deinstall       Shell script that will be run during both
                                    in post and pre deinstall (DEPRECATED)

                pkg-pre-deinstall   Shell script that will be run during pre
                                    deinstall phase

                pkg-post-deinstall  Shell script that will be run during post
                                    deinstall phase

     lua scripts (optional):

                pkg-pre-install.lua     Lua script that will be run during pre
                                        install phase

                pkg-post-install.lua    Lua script that will be run during
                                        post install phase

                pkg-pre-deinstall.lua   Lua script that will be run during pre
                                        deinstall phase

                pkg-post-deinstall.lua  Lua script that will be run during
                                        post deinstall phase

     pkg_create_i() create a package for the provided installed pkg.  If hash
     is set to true then the file name will in the form:
     <pkgname>-<pkgversion>-<shorthash>.<extention> instead of
     <pkgname>-<pkgversion>.<extension>.

FreeBSD 13.1-RELEASE-p6         April 24, 2020         FreeBSD 13.1-RELEASE-p6

Command Section

man2web Home...