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")
During updates the package manager will now tell you if a package
has been dropped from repositories - ie, the only place the package
exists is in /var/db/kiss/installed.
This modifies pkg_install_files() to do atomic mv on each of the
files. This prevents processes from crashing when the underlying
shared library changes (but the inode stays the same).
Closes#226