All temporary files now have unique names and reuse of the same
file for multiple purposes has been removed.
This prevents issues where a failed write to a log file used
in multiple places can cause prior data to be read elsewhere
in the package manager.
Hooks installed to /var/db/kiss/hooks can be accessed via their
basename. Usage is as follows.
$ ls -1 /var/db/kiss/hooks
no-docs
shell-on-exit
$ export KISS_HOOK=no-docs:shell-on-exit:/home/dylan/bin/kiss_hook
See #229
This adds support for replacement of simple markers with
corresponding values. To handle cases where a replacement
is not 1:1, various transformations are made available.
- VERSION : The full version string (first field in version file).
- MAJOR : First component separated by '.'.
- MINOR : Second component separated by '.'.
- PATCH : Third component separated by '.'.
- IDENT : All remaining components separated by '.+-'.
- PKG : The name of the current package.
NOTE: This may be reverted. Depends on how good the benefits
are. Will do an evaluation of the repositories.
This file can now be written in any language. The only requirement
now is that it be executable. The variable originally exported in
the environment are passed as command-line arguments to KISS_HOOK.
We can now expand on the information we want to explicitly pass on
to hooks via arguments or the environment. Let me know what
information you would like exposed.
- Defines DESTDIR so you no longer need to export it yourself.
- Defines CC and CXX so all builds will now work with other
compilers if gcc/g++ are the default when unset.
- Defines KISS_ROOT with the sanitized version used by the package
manager. It can now be safely joined with other paths.
("$KISS_ROOT/path/to/file")