--- /dev/null
+.TH zpm-newpackage 8 2019-02-20 "ZPM 0.3"
+.SH NAME
+zpm-newpackage \- run newpackage
+.SH SYNOPSIS
+ b) builddate="$OPTARG" ;;
+.B zpm newpackage
+[
+.BI \-f " pkgfile"
+]
+[
+.B \-CI
+]
+[
+.BI \-d description
+]
+[
+.BI \-u url
+]
+[
+.BI \-l licenses
+]
+[
+.BI \-p packager
+]
+[
+.BI \-b builddate
+]
+.I package
+.SH DESCRIPTION
+\fBzpm-newpackage\fR
+Creates a new package.
+.SH OPTIONS
+.TP
+.BI \-f package
+specify the package file to create the package in.
+.TP
+.B \-C
+Create the package file if it does not exist.
+.TP
+.B \-I
+Do nothing if the package already exists. Without this option,
+if the package already exists, it is an error.
+.TP
+.BI \-d description
+Set the package description.
+.TP
+.BI \-u url
+Set the package url.
+.TP
+.BI \-l license
+Set the package license.
+.TP
+.BI \-p packager
+Set the package packager.
+.TP
+.BI \-b builddate
+Set the package builddate. Defaults to the current timestamp.
+.SH EXAMPLES
+.TP
+.B zpm newpackage -f foo-1.0-1 foo-1.0-1
+Create a new package.
+.SH EXIT STATUS
+0 on success non zero on failure
+.SH FILES
+/var/lib/zpm/local.db
+.SH ENVIRONMENT
+ZPMDB
+.SH AUTHOR
+Nathan Wagner
+.SH SEE ALSO
+.BR zpm (8)
-.TH zpm-contents 8 2018-12-08 "ZPM 0.3"
+.TH zpm-pathmod 8 2019-02-20 "ZPM 0.3"
.SH NAME
zpm-pathmod \- modify package file metadata
.SH SYNOPSIS
. tap.sh
-plan 10
+plan 15
PF=test.db
pkgid=$(zpm list -f $PF)
okstreq "$pkgid" "basics-2.0-1" "have basics 2.0"
+tryrun zpm newpackage -f $PF -p foo -l bar -d baz -u quux valset-1.0-1
+val=$(zpm pkgmod -f $PF valset packager)
+okstreq "$val" 'foo' newpackage set packager
+val=$(zpm pkgmod -f $PF valset licenses)
+okstreq "$val" 'bar' newpackage set licenses
+val=$(zpm pkgmod -f $PF valset description)
+okstreq "$val" 'baz' newpackage set description
+val=$(zpm pkgmod -f $PF valset url)
+okstreq "$val" 'quux' newpackage set url
+
cd ..
rm -rf tmp
finish
package=$(zpm quote "$name")
pkgver=$(zpm quote "$version")
pkgrel=$(zpm quote "$release")
+if [ -n "$description" ]; then
+ description=$(zpm quote -q "$description")
+else
+ description=NULL
+fi
+
+if [ -n "$licenses" ]; then
+ licenses=$(zpm quote -q "$licenses")
+else
+ licenses=NULL
+fi
+
+if [ -n "$packager" ]; then
+ packager=$(zpm quote -q "$packager")
+else
+ packager=NULL
+fi
+if [ -n "$url" ]; then
+ url=$(zpm quote -q "$url")
+else
+ url=NULL
+fi
zpm shell $pkgfile <<EOS
-insert $idempotent into packages ("package", "version", "release", "build_time")
-values ('$package', '$pkgver', $pkgrel, $builddate)
+insert $idempotent into packages ("package", "version", "release",
+"build_time", licenses, description, url, packager)
+values ('$package', '$pkgver', $pkgrel, $builddate, $licenses, $description,
+$url, $packager
+)
;
EOS