#
5140a1bb |
|
24-Jun-2023 |
Niels Sascha Reedijk <niels.reedijk@gmail.com> |
Package Kit/Launch Server: avoid/ignore use of requires keyword In C++20 `requires` is a reserved keyword. GCC13 warns against its use. This change removes the use of the keyword in our own code, and ignores it in the external 'libsolv' code. Change-Id: I3319d20c0a3fdad89630683cdff5ea3b17f04e99 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6647 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
a22fa0c9 |
|
04-Jun-2019 |
Alexander G. M. Smith <agmsmith@ncf.ca> |
package kit: Add pre-uninstall scripts feature. Just like post-install scripts which run shortly after a package is installed, pre-uninstall scripts are run just before a package is removed. Implements enhancement #13427 * Fix script exit code handling vs script launch errors. * Bump package and repo file version numbers due to new attribute, unfortunately makes new .hpkg files not backwards compatible. * Add pre-uninstall functionality, mostly cloning the post-install except in a few places. * Discover that _RunQueuedScripts() is never called, a future TODO:? * Update package documentation for pre-uninstall scripts, and use of the boot/post-install directory. Change-Id: I45596255ce74bc102f6e5b606cbf83e4e4347a17 Reviewed-on: https://review.haiku-os.org/c/haiku/+/1504 Reviewed-by: Alexander G. M. Smith <agmsmith@ncf.ca> Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
a6a6e3a8 |
|
19-Feb-2019 |
Adrien Destugues <pulkomandy@gmail.com> |
Package kit: add likely-useful architectures Required for bootstrapping them. Change-Id: I179d8c73b08688946049bf18ff9151ef047e449b Reviewed-on: https://review.haiku-os.org/c/1071 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
01adde85 |
|
27-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add ArchitectureName()
|
#
88706cfa |
|
20-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: Add API for parsing resolvable expression strings * Add BPackageInfo::ParseResolvableExpressionString(). * Add BPackageResolvableExpression constructor and SetTo() taking an expression string.
|
#
624ba548 |
|
29-Sep-2013 |
François Revol <revol@free.fr> |
Add missing architectures for packages The list in packagefs wasn't in sync anyway.
|
#
6692db5c |
|
29-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add fileName property The property is archived and unarchived, but otherwise not yet stored. If not set, FileName() returns CanonicalFileName(). Can be used for packages like haiku.hpkg etc. that don't have a properly qualified file name (yet).
|
#
bc0491ae |
|
27-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add Matches() Checks whether the package satisfies the given BPackageResolvableExpression.
|
#
03d70b4e |
|
13-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add package architecture constant for x86-64
|
#
a28a0ac6 |
|
05-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::_ExtractUsers(): fix no group case
|
#
41741912 |
|
05-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: fix range check in c'tor
|
#
4489c88b |
|
05-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Generalize user/global settings file attributes * For all identifiers: Rename global settings file to global writable file. We want to use the respective attribute also for other writable files, not only settings files. * User settings file/global writable file info/attribute: Add isDirectory property/child attribute. This allows declaring global/ user settings directories associated with the package.
|
#
c0ab1409 |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attribute for declaring post install scripts
|
#
0f4e11e7 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring users and groups
|
#
daa10fc3 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package info string builder to its own header
|
#
6da0ce6f |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package info parser to its own file
|
#
fe707a23 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring settings files Global and user settings files can be declared. For global ones an update policy can be specified. If not specified, the settings file is not included in the package, but created by the program (or user) later. If an update type is specified, it defines what to do with the settings file when updating the package to a newer version. User settings files are never included in the package; they are always created by the program or the user. If the package contains a template/ default settings file, it can be declared, but for informative purposes only.
|
#
5dae1541 |
|
21-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "source" package architecture
|
#
bc306e21 |
|
21-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Declare some string constants actually const
|
#
7adfd76b |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "base package" package attribute
|
#
df295396 |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove resolvable provides type * Remove BPackageResolvableType and respective property from BPackageResolvable. * Remove package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE_PROVIDES_TYPE.
|
#
dd0b33cb |
|
12-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Support reading both HPKG format versions
|
#
0c661892 |
|
30-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Fix error output The "=" operator isn't actually allowed in a resolvable expression. It has to be "==" instead.
|
#
be8f5e00 |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add CanonicalFileName() The name of the package file is not part of the package-info. CanonicalFileName() constructs the name the file should have (not enforced anywhere (yet)).
|
#
7a27bcd1 |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Make use of BMessage::{Add,Find}Strings()
|
#
3c6784e9 |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Be a bit stricter wrt. names after all Also disallow the operator characters in names.
|
#
cba60307 |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Relax package/resolvable name rules Now we allow any character but '-', '/', and whitespace.
|
#
ea8b5c25 |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo parser: Allow '.' in micro version component Otherwise we'd have to encode e.g. "cvs-1.12.13.1" differently.
|
#
9d81dc76 |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackage{Info,Version}: Switch to '~' as pre-release separator Also allow '.' in the pre-release string (as in "alpha4.1") and in package and resolvable names.
|
#
defc1f77 |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackage{Version,Info}: Switch to new pre-release rule Also add several checks in the package-info parser to enforce the <alphanum_underscore> requirement of package/resolvable names and version components.
|
#
4210ed01 |
|
14-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Fix BMessage::GetInfo() return value check Since B_OK is 0, the change doesn't affect the semantics.
|
#
202c1daa |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageVersion: Rename property release to revision * ... to avoid confusion with the preRelease property. It's also called "revision" in the HaikuPorts recipes. * Update libsolv package. Was necessary due to the BPackageVersion change, but also includes a few more changes.
|
#
bd59e0d0 |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Fix Linux build ... including an actual bug (operator "|" instead of "||").
|
#
8a4ebe2c |
|
14-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make BPackageInfo archivable
|
#
6c6460e1 |
|
10-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add GetConfigString() and ToString()
|
#
a3dd6caf |
|
02-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add public package version parsing API * BPackageVersion: Add respective constructor and SetTo(). * BPackageInfo: Add static ParseVersionString() utility method. It's only there because the parser lives in the BPackageInfo implementation.
|
#
dfb5fa8b |
|
01-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add convenience methods BPackageInfo::ReadFromPackageFile()
|
#
9968845d |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
0a9478a7 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Force package names and versions to lower case
|
#
6ae0ecd4 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
cd8f03a8 |
|
30-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::ReadFromConfigFile() BFile& version
|
#
029f6d0d |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() further * Match the attribute in a loop, use an attribute ID switch, do the "seen" checks without the switch. * Explicitly handle the case when encountering an unknown attribute.
|
#
208b212c |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() This also fixes the memory leak due to the previously used on-stack BObjectLists not having been defined owning the elements.
|
#
eb7e8951 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add url and sourceURL properties to BPackageInfo Also extend the parser to accept "url" and "source-url" attributes.
|
#
1338e7b6 |
|
27-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make .PackageInfo more driver-settings-ish * Use braces instead of brackets for lists. * Semicolons and newlines separate items now. Remove handling for comma. * Allow '\'' as quotation character. * Remove assignment after variable name. This should make the .PackageInfo format driver settings compatible, but not vice versa. It is still stricter.
|
#
c53e9146 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow single-element string/flag lists without [] As syntactic sugar string and flag lists no longer need to be enclosed in brackets when they have exactly one element.
|
#
2df54411 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove "copyright" and "license" keywords There's "copyrights" and "licenses" which can be used.
|
#
53da7df2 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Small cleanup
|
#
dd2ab027 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support for parsing the compatible version In the .PackageInfo the compatible version for a resolvable can optionally be given after the resolvable version via "'compat[ible]' '>=' <version>".
|
#
8730aba2 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Coding style: Fix indentation
|
#
8f314372 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
323b6546 |
|
21-Nov-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Filtered flat import of Oliver's svn package management branch Bring the changes that aren't package management related and the ones that are but don't take effect as long as they are ignored by the build system into the master. Summary of changes: * Introduce private header <directories.h> with constants for a good deal of paths that should usually be retrieved via find_directory(). * Replace hard-coded paths by using find_directory() or the <directories.h> constants (e.g. in drivers and the kernel). * Add find_directory() constants needed for package management. * Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros. * src/apps/deskbar: BeMenu.* -> DeskbarMenu.*, DeskBarUtils.* -> DeskbarUtils.* * Change deskbar menu settings directory from ~/config/be to ~/config/settings/deskbar. * Other smaller cleanups, changes, and fixes.
|
#
2021c984 |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
437651ff |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Force package names and versions to lower case
|
#
f19957b8 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
bfbb410d |
|
30-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::ReadFromConfigFile() BFile& version
|
#
d4701a29 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() further * Match the attribute in a loop, use an attribute ID switch, do the "seen" checks without the switch. * Explicitly handle the case when encountering an unknown attribute.
|
#
122597e0 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() This also fixes the memory leak due to the previously used on-stack BObjectLists not having been defined owning the elements.
|
#
ee453e8b |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add url and sourceURL properties to BPackageInfo Also extend the parser to accept "url" and "source-url" attributes.
|
#
91698de9 |
|
27-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make .PackageInfo more driver-settings-ish * Use braces instead of brackets for lists. * Semicolons and newlines separate items now. Remove handling for comma. * Allow '\'' as quotation character. * Remove assignment after variable name. This should make the .PackageInfo format driver settings compatible, but not vice versa. It is still stricter.
|
#
78ceed51 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow single-element string/flag lists without [] As syntactic sugar string and flag lists no longer need to be enclosed in brackets when they have exactly one element.
|
#
acdcba84 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove "copyright" and "license" keywords There's "copyrights" and "licenses" which can be used.
|
#
ba1bc0a4 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Small cleanup
|
#
2db69df1 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support for parsing the compatible version In the .PackageInfo the compatible version for a resolvable can optionally be given after the resolvable version via "'compat[ible]' '>=' <version>".
|
#
b85a2681 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Coding style: Fix indentation
|
#
ed6d59a9 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
3dfd9cb9 |
|
16-Jun-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Flat commit of all changes from package-management branch in svn
|
#
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
|
#
531d1912 |
|
04-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* made resolvable expression operator an enum instead of a string * fixed a couple of copy'n'paste bugs during parsing of resolvable expression lists (they were all added as 'requires') git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40353 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cb16f695 |
|
01-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* fix incorrect positioning when parsing minor version string git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40346 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3aeae97f |
|
29-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* added type-support to BPackageResolvable * split BPackageResolvable, BPackageResolvableExpression and BPackageVersion into separate files git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40316 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
30222ff1 |
|
28-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Completed PackageInfo-parser and fleshed out BPackageVersion, BPackageProvision and BPackageRequirement. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40313 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
|
#
01adde8502485b01e08f3e108d980866e763f5ce |
|
27-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add ArchitectureName()
|
#
88706cfaa5b04a0fe4f24aabcd3e2f74b80ab6f4 |
|
20-Nov-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
package kit: Add API for parsing resolvable expression strings * Add BPackageInfo::ParseResolvableExpressionString(). * Add BPackageResolvableExpression constructor and SetTo() taking an expression string.
|
#
624ba5482b6c126c8c460b6c169592cb3afc4291 |
|
29-Sep-2013 |
François Revol <revol@free.fr> |
Add missing architectures for packages The list in packagefs wasn't in sync anyway.
|
#
6692db5c1c028bd7a08333d0df4b27122dd43513 |
|
29-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add fileName property The property is archived and unarchived, but otherwise not yet stored. If not set, FileName() returns CanonicalFileName(). Can be used for packages like haiku.hpkg etc. that don't have a properly qualified file name (yet).
|
#
bc0491ae52c1b1375129de52d96fc5698671ff46 |
|
27-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add Matches() Checks whether the package satisfies the given BPackageResolvableExpression.
|
#
03d70b4e58f04e54ed9d76a072a0b66750f7037c |
|
13-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add package architecture constant for x86-64
|
#
a28a0ac6b20d7f32254523b9c425527c0832b634 |
|
05-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::_ExtractUsers(): fix no group case
|
#
4174191272b0123a0d66fd23074acc26865b59bc |
|
05-Jul-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: fix range check in c'tor
|
#
4489c88b61bd4b70ff3a91d24ef5a0088e9c4691 |
|
05-Jun-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Generalize user/global settings file attributes * For all identifiers: Rename global settings file to global writable file. We want to use the respective attribute also for other writable files, not only settings files. * User settings file/global writable file info/attribute: Add isDirectory property/child attribute. This allows declaring global/ user settings directories associated with the package.
|
#
c0ab14096139c4e72a501bc6e82ab92d0e9e48f3 |
|
24-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attribute for declaring post install scripts
|
#
0f4e11e75c244fd61da150011f1eae5fe79fc2a9 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring users and groups
|
#
daa10fc3a5ab0fe0666ec8e72742cfa60df7e990 |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package info string builder to its own header
|
#
6da0ce6ff206b501faa6972d44225c5d2e7469dc |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Move package info parser to its own file
|
#
fe707a23fc6dc0bccb3e80201bf3e4146dcde74e |
|
23-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
hpkg format: Add attributes for declaring settings files Global and user settings files can be declared. For global ones an update policy can be specified. If not specified, the settings file is not included in the package, but created by the program (or user) later. If an update type is specified, it defines what to do with the settings file when updating the package to a newer version. User settings files are never included in the package; they are always created by the program or the user. If the package contains a template/ default settings file, it can be declared, but for informative purposes only.
|
#
5dae1541d63974a6e2011553e9de484a0495414a |
|
21-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "source" package architecture
|
#
bc306e210fdad4d7c6d7fe2ecd17177627f0e503 |
|
21-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Declare some string constants actually const
|
#
7adfd76b17adc78b0646a835711d3cd935bfb02b |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add "base package" package attribute
|
#
df29539688df25133e4f9decc5da7b1045dc1850 |
|
13-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove resolvable provides type * Remove BPackageResolvableType and respective property from BPackageResolvable. * Remove package attribute B_HPKG_ATTRIBUTE_ID_PACKAGE_PROVIDES_TYPE.
|
#
dd0b33cb6330ac9c9e8430d2a8f94396474c8128 |
|
12-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Support reading both HPKG format versions
|
#
0c661892d459501ef82b1ccd88c7ea4b0c24fc20 |
|
30-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Fix error output The "=" operator isn't actually allowed in a resolvable expression. It has to be "==" instead.
|
#
be8f5e00f136fdc45f58c4a1c4d802eac9a6e96c |
|
20-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add CanonicalFileName() The name of the package file is not part of the package-info. CanonicalFileName() constructs the name the file should have (not enforced anywhere (yet)).
|
#
7a27bcd1132c79d60658b7424990b1ad632886a9 |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Make use of BMessage::{Add,Find}Strings()
|
#
3c6784e95caa334caa98f6f61b0d08385fa21e0b |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Be a bit stricter wrt. names after all Also disallow the operator characters in names.
|
#
cba60307b80a1b91619960b7b9dcf30745c8370a |
|
19-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::Parser: Relax package/resolvable name rules Now we allow any character but '-', '/', and whitespace.
|
#
ea8b5c257d37d7dacc221a3535548d03edfa3871 |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo parser: Allow '.' in micro version component Otherwise we'd have to encode e.g. "cvs-1.12.13.1" differently.
|
#
9d81dc7655a984ce6dd0d79878215fe4d5748da6 |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackage{Info,Version}: Switch to '~' as pre-release separator Also allow '.' in the pre-release string (as in "alpha4.1") and in package and resolvable names.
|
#
defc1f774aceb747e6d6b7e3a63b5258cfd345ed |
|
18-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackage{Version,Info}: Switch to new pre-release rule Also add several checks in the package-info parser to enforce the <alphanum_underscore> requirement of package/resolvable names and version components.
|
#
4210ed011a39e4e1b3fcba4c7c0d18844b4b3522 |
|
14-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Fix BMessage::GetInfo() return value check Since B_OK is 0, the change doesn't affect the semantics.
|
#
202c1daaed2556eaccea80643e58d498594f2506 |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageVersion: Rename property release to revision * ... to avoid confusion with the preRelease property. It's also called "revision" in the HaikuPorts recipes. * Update libsolv package. Was necessary due to the BPackageVersion change, but also includes a few more changes.
|
#
bd59e0d00d58dadd5b5e0749b7edda0aefe61efe |
|
15-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Fix Linux build ... including an actual bug (operator "|" instead of "||").
|
#
8a4ebe2c469333d0cabc9a9a6d353d4b42f61d6c |
|
14-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make BPackageInfo archivable
|
#
6c6460e1f644e5b48e7fc4528d33219fe13f270e |
|
10-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo: Add GetConfigString() and ToString()
|
#
a3dd6caf55b8862747542069f3bf116e92723eab |
|
02-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add public package version parsing API * BPackageVersion: Add respective constructor and SetTo(). * BPackageInfo: Add static ParseVersionString() utility method. It's only there because the parser lives in the BPackageInfo implementation.
|
#
dfb5fa8ba3da4fe01df1cab7a233b9ce145c06ac |
|
01-Apr-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add convenience methods BPackageInfo::ReadFromPackageFile()
|
#
9968845d6988000a9235d7eb09031e80d997f31d |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
0a9478a70707cb326b41907ea099076772fc57c9 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Force package names and versions to lower case
|
#
6ae0ecd49a584abd81f3fa0fb0c0dd5b7a3ddb71 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
cd8f03a8cc9f8859fba9a1072c56cf6d3ab9f99f |
|
30-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::ReadFromConfigFile() BFile& version
|
#
029f6d0d05cc56114a7a5b6dc485803e0b68dcd4 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() further * Match the attribute in a loop, use an attribute ID switch, do the "seen" checks without the switch. * Explicitly handle the case when encountering an unknown attribute.
|
#
208b212c56444c321954f1f309e71402b266cef8 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() This also fixes the memory leak due to the previously used on-stack BObjectLists not having been defined owning the elements.
|
#
eb7e89518a520a972f8005c7fbedba5c730d960c |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add url and sourceURL properties to BPackageInfo Also extend the parser to accept "url" and "source-url" attributes.
|
#
1338e7b6aeec026d5ff6b5321f20b8798eb62780 |
|
27-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make .PackageInfo more driver-settings-ish * Use braces instead of brackets for lists. * Semicolons and newlines separate items now. Remove handling for comma. * Allow '\'' as quotation character. * Remove assignment after variable name. This should make the .PackageInfo format driver settings compatible, but not vice versa. It is still stricter.
|
#
c53e9146c281bc2faa19421029f3282a8012764e |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow single-element string/flag lists without [] As syntactic sugar string and flag lists no longer need to be enclosed in brackets when they have exactly one element.
|
#
2df5441165a5418261e7d1f361ff29830597fe04 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove "copyright" and "license" keywords There's "copyrights" and "licenses" which can be used.
|
#
53da7df201153d707996d625d382605c2387e4f9 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Small cleanup
|
#
dd2ab027fee04b39412f0f5032e549bee54513fe |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support for parsing the compatible version In the .PackageInfo the compatible version for a resolvable can optionally be given after the resolvable version via "'compat[ible]' '>=' <version>".
|
#
8730aba2103af1e4c63a3fc5a2bd7eaad0b2855c |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Coding style: Fix indentation
|
#
8f314372a8b317a4d9e2ebeccc0d5bf6e237fec7 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
323b65468e5836bb27a5e373b14027d902349437 |
|
21-Nov-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Filtered flat import of Oliver's svn package management branch Bring the changes that aren't package management related and the ones that are but don't take effect as long as they are ignored by the build system into the master. Summary of changes: * Introduce private header <directories.h> with constants for a good deal of paths that should usually be retrieved via find_directory(). * Replace hard-coded paths by using find_directory() or the <directories.h> constants (e.g. in drivers and the kernel). * Add find_directory() constants needed for package management. * Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros. * src/apps/deskbar: BeMenu.* -> DeskbarMenu.*, DeskBarUtils.* -> DeskbarUtils.* * Change deskbar menu settings directory from ~/config/be to ~/config/settings/deskbar. * Other smaller cleanups, changes, and fixes.
|
#
2021c9842e1e61a3bf0f6550725ec3baf53d44b1 |
|
16-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use BStringList in package kit Replace all instances of BObjectList<BString> by BStringList.
|
#
437651ffccae7aea235b5d9bb34d63071609e625 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Force package names and versions to lower case
|
#
f19957b8e5311ffc5b802032e4f24cdda81f9b50 |
|
11-Jul-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add a package info "install-path" attribute The attribute is intended for simplifying package building. The package's install path will be used for the package's .self package symlink, allowing installation to a temporary directory when building the package.
|
#
bfbb410d1a0c26a5c39fbaeb10bfbd69ccf0cb1a |
|
30-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
BPackageInfo::ReadFromConfigFile() BFile& version
|
#
d4701a292100473ababbd936b01c5dc3de2e135d |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() further * Match the attribute in a loop, use an attribute ID switch, do the "seen" checks without the switch. * Explicitly handle the case when encountering an unknown attribute.
|
#
122597e0ba4eaa94aea0b1197e1f42d659a5f3ea |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Simplify BPackageInfo::Parser::_Parse() This also fixes the memory leak due to the previously used on-stack BObjectLists not having been defined owning the elements.
|
#
ee453e8bbccd77988e5c422a4e3d76058bd95fb2 |
|
28-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Add url and sourceURL properties to BPackageInfo Also extend the parser to accept "url" and "source-url" attributes.
|
#
91698de99472aeb71a48fe1428acc8e24aaf2c8a |
|
27-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Make .PackageInfo more driver-settings-ish * Use braces instead of brackets for lists. * Semicolons and newlines separate items now. Remove handling for comma. * Allow '\'' as quotation character. * Remove assignment after variable name. This should make the .PackageInfo format driver settings compatible, but not vice versa. It is still stricter.
|
#
78ceed51225d370576ae9f460d935b66fcc4c748 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Allow single-element string/flag lists without [] As syntactic sugar string and flag lists no longer need to be enclosed in brackets when they have exactly one element.
|
#
acdcba84ec9426c2d9cad20360f922d519cd1a25 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Remove "copyright" and "license" keywords There's "copyrights" and "licenses" which can be used.
|
#
ba1bc0a4ffb6bbaca8257ccad75e80b08020f4ac |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Small cleanup
|
#
2db69df113612ae80e37d3d0fee6657ea4a60d50 |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Support for parsing the compatible version In the .PackageInfo the compatible version for a resolvable can optionally be given after the resolvable version via "'compat[ible]' '>=' <version>".
|
#
b85a2681d6cc4dfba1b85af54d780e463a69b04e |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Coding style: Fix indentation
|
#
ed6d59a9a983cb031077b6d541576fc8efec1cfd |
|
26-Jun-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Introduce a pre-release version component * The version string pattern is now: <major>[.<minor>[.<micro>]][-<pre>][-<release>] * Introduce B_HPKG_ATTRIBUTE_ID_PACKAGE_VERSION_PRE_RELEASE package attribute. * Add "preRelease" field to BPackageVersionData. * Add "preRelease" property to BPackageVersion and packagefs's Version. * Adjust package reader and writer code accordingly.
|
#
3dfd9cb95ce45f59160d50975210bc55e3fc0709 |
|
16-Jun-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Flat commit of all changes from package-management branch in svn
|
#
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
|
#
531d191219e13e47ccaa8935e25a86b7caa10497 |
|
04-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* made resolvable expression operator an enum instead of a string * fixed a couple of copy'n'paste bugs during parsing of resolvable expression lists (they were all added as 'requires') git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40353 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cb16f69582b5e947445a2d2e8e4189a7077731b2 |
|
01-Feb-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* fix incorrect positioning when parsing minor version string git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40346 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3aeae97f65ba61b4d012c6489514eb47ef9a3825 |
|
29-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
* added type-support to BPackageResolvable * split BPackageResolvable, BPackageResolvableExpression and BPackageVersion into separate files git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40316 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
30222ff14182264804cf1361fcd6db5d7d537155 |
|
28-Jan-2011 |
Oliver Tappe <zooey@hirschkaefer.de> |
Completed PackageInfo-parser and fleshed out BPackageVersion, BPackageProvision and BPackageRequirement. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40313 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
|