History log of /haiku/src/bin/package/package.cpp
Revision Date Author Comments
# 0fae96c5 26-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

package command: Enable zstd compression by default.

Note that zstd-compressed packages cannot be installed unless the
running system can already read them, even as part of a system
update transaction. This has been possible for some months now,
but if one has an older EFI bootloader, you may need to upgrade it.

Change-Id: I9e561459477723e498a871ee5c5caad560861b79
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4663
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# fd276f19 26-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

package command: -z now takes an argument to specify the compression method.

The upcoming change to use zstd by default will make the -z no-argument
variant obsolete, so instead we need to support passing "zstd" or "zlib"
to actually indicate the compression method we want to use.


# 04a7f3ed 26-Oct-2021 Augustin Cavalier <waddlesplash@gmail.com>

package command: De-wrap help lines.

Now that the coding style limit is 100. Slight tweaks as well.


# 81375d4f 11-Jul-2018 Jérôme Duval <jerome.duval@gmail.com>

Package Kit: add Zstd compression.

Change-Id: Idbdb7cf1bde659046a88ea69a76e3b5fc4cd7013
Reviewed-on: https://review.haiku-os.org/323
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# fa50ee85 13-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add checksum command


# 3cc6297e 12-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package recompress: Add stdin/stdout support

stdin doesn't work quite yet. We'll need to convince the BPackageReader
to skip parsing the TOC and package attributes sections.


# a629567a 08-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add command recompress

The streaming feature for -0 is missing yet.


# 302a8fc8 10-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Escape \ in usage text


# db74c31d 09-Oct-2013 Rene Gollent <rene@gollent.com>

Fix #10081.

- The format specifiers for the literal % symbols in the help text
weren't correct, leading to vfprintf attempting to parse them, and
winding up hitting garbage pointers as a consequence, leading to a crash.


# 16c83730 08-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add "info" command

It allows to print individual information from the package meta data.


# 4e6141b8 13-Jul-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package list: add option '-i' to list only the meta info


# 796343ed 18-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Allow specifying the compression level for package creation

* Introduce BPackageWriterParameters which comprises all parameters
for package creation, currently flags and compression level. Such an
object can be passed to BPackageWriter::Init() and is passed on to
PackageWriterImpl and WriterImplBase.
* PackageFileHeapWriter: Add compressionLevel property and pass the
value on to ZlibCompressor.
* package add/create: Add options -0 ... -9 to specify the compression
level to be used.


# 330cb41e 29-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package list: Add option "-p"

It prints just a list of paths for all entries.


# 1fc3ceed 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add options -b and -I to package command

* With -b building a build package can be requested. It will be empty
save for the .PackageInfo. No license check is performed.
* -I allows to specify an install path.


# 2fac6eaa 02-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add "package add" command.


# 37d971d3 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for extracting only specified entries


# 006056b7 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add package extract -i option

Allows to specify an alternate location for the .PackageInfo.


# 7395bf8a 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add create -i option for specifying a package info


# 6f0f81ef 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add options -b and -I to package command

* With -b building a build package can be requested. It will be empty
save for the .PackageInfo. No license check is performed.
* -I allows to specify an install path.


# c1b5ec40 02-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add "package add" command.


# 4796acbc 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for extracting only specified entries


# 4f5d405e 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add package extract -i option

Allows to specify an alternate location for the .PackageInfo.


# 6707be54 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add create -i option for specifying a package info


# 0d68f6af 09-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d77c6cd2 08-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* implemented checking of licenses, such that it is no longer possible
to create a package that refers to a license that is not a system
license or contained in the package
* added package-info flags (currently only approve_license and
system_package)
* adjusted package-reader/writer and pkgman accordingly

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0d6b3b20 27-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

More work on package kit:
* added class BPackageInfo, which contains packaging attributes of
a package (the values relevant for package management)
* implemented parser (mostly) for reading a BPackageInfo from a config
file (.PackageInfo) in order to pass them on to the PackageWriter
when creating a package
* pulled hpkg-related stuff from bin/package into the package kit
* adjusted packagefs-Volume to skip .PackageInfo files when populating
the mountpoint, as those files shouldn't appear as part of an
activated package


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40301 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 050aa61b 13-Nov-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented a tool ("package") that implements creation and extraction of
packages of the newly invented Haiku Package format
(http://dev.haiku-os.org/wiki/PackageFormat). It basically works, but it's
still work in progress (e.g. compression is not implemented yet), as is the
format itself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34018 a95241bf-73f2-0310-859d-f6bbb57e9c96


# fa50ee854d5e6d59e99144b26498067e2773c468 13-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add checksum command


# 3cc6297e22bc7d945612e50906c78326119b2e62 12-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package recompress: Add stdin/stdout support

stdin doesn't work quite yet. We'll need to convince the BPackageReader
to skip parsing the TOC and package attributes sections.


# a629567a9001547736cfe892cdf992be16868fed 08-Jul-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add command recompress

The streaming feature for -0 is missing yet.


# 302a8fc86ec3037f90af671c3976c9862f7656b5 10-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Escape \ in usage text


# db74c31d28aa578fcdebcc52eb3626e498ba11c1 09-Oct-2013 Rene Gollent <rene@gollent.com>

Fix #10081.

- The format specifiers for the literal % symbols in the help text
weren't correct, leading to vfprintf attempting to parse them, and
winding up hitting garbage pointers as a consequence, leading to a crash.


# 16c83730262f1e4f0fc69d80744bb36dcfbbe3af 08-Oct-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package: Add "info" command

It allows to print individual information from the package meta data.


# 4e6141b823043abc3e48acb48e45e43b8fa680fe 13-Jul-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package list: add option '-i' to list only the meta info


# 796343ed73b1707ed97e91e22b72b8ca81bcdbad 18-May-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Allow specifying the compression level for package creation

* Introduce BPackageWriterParameters which comprises all parameters
for package creation, currently flags and compression level. Such an
object can be passed to BPackageWriter::Init() and is passed on to
PackageWriterImpl and WriterImplBase.
* PackageFileHeapWriter: Add compressionLevel property and pass the
value on to ZlibCompressor.
* package add/create: Add options -0 ... -9 to specify the compression
level to be used.


# 330cb41ef54abf8a8a3a83e0853b473091a62b55 29-Apr-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

package list: Add option "-p"

It prints just a list of paths for all entries.


# 1fc3ceeda2c7ac2942fc92fe928f81e6899d47a0 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add options -b and -I to package command

* With -b building a build package can be requested. It will be empty
save for the .PackageInfo. No license check is performed.
* -I allows to specify an install path.


# 2fac6eaa6020569bf461de7a5884cb60362698dd 02-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add "package add" command.


# 37d971d3cc8b8b2e4796385000781183f12f1924 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for extracting only specified entries


# 006056b7ee7e8a2c448bfe6dc9dd49c2eadc6437 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add package extract -i option

Allows to specify an alternate location for the .PackageInfo.


# 7395bf8a768f1fb4467ddf88db03034bb97d7bb3 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add create -i option for specifying a package info


# 6f0f81ef9b73e662fb4cb70c3cc6dcff52fe2bf5 11-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add options -b and -I to package command

* With -b building a build package can be requested. It will be empty
save for the .PackageInfo. No license check is performed.
* -I allows to specify an install path.


# c1b5ec4065becc1c7bb35390ac88800de9012e34 02-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add "package add" command.


# 4796acbc8c8fa3a5325a27722746b999009988d1 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Support for extracting only specified entries


# 4f5d405e3468ab70499b2a31542817136fd9dd9a 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add package extract -i option

Allows to specify an alternate location for the .PackageInfo.


# 6707be54030e82f4e1a3ad38cdce7d1522f61cb1 30-Jun-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add create -i option for specifying a package info


# 0d68f6afb34d8e01421123b216e34771d1c7fbfe 09-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d77c6cd26a5cf3863ba4258a063d7d8645abf1e3 08-Feb-2011 Oliver Tappe <zooey@hirschkaefer.de>

* implemented checking of licenses, such that it is no longer possible
to create a package that refers to a license that is not a system
license or contained in the package
* added package-info flags (currently only approve_license and
system_package)
* adjusted package-reader/writer and pkgman accordingly

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0d6b3b20e15fe2cbeb5e81749f888c26ca289338 27-Jan-2011 Oliver Tappe <zooey@hirschkaefer.de>

More work on package kit:
* added class BPackageInfo, which contains packaging attributes of
a package (the values relevant for package management)
* implemented parser (mostly) for reading a BPackageInfo from a config
file (.PackageInfo) in order to pass them on to the PackageWriter
when creating a package
* pulled hpkg-related stuff from bin/package into the package kit
* adjusted packagefs-Volume to skip .PackageInfo files when populating
the mountpoint, as those files shouldn't appear as part of an
activated package


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40301 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 050aa61bd63287302e92e90154489a6d353ca743 13-Nov-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented a tool ("package") that implements creation and extraction of
packages of the newly invented Haiku Package format
(http://dev.haiku-os.org/wiki/PackageFormat). It basically works, but it's
still work in progress (e.g. compression is not implemented yet), as is the
format itself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34018 a95241bf-73f2-0310-859d-f6bbb57e9c96