summaryrefslogtreecommitdiff
path: root/src/package.c
AgeCommit message (Collapse)AuthorFilesLines
2011-09-09applets: start using solver codeTimo Teräs1-1/+0
still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
2011-06-28index: handle errors instead of silently failingTimo Teräs1-4/+14
Make indexer keep noise about errors that prevent index generation. Detect certain errors in the APKs better. And also have the applet return error in these scenarios.
2011-04-04pkg: add origin, maintainer, build_time and commit id to indexTimo Teräs1-0/+34
Parse these fields from .PKGINFO, and write them to index.
2011-01-04pkg: recognize install_ifTimo Teräs1-21/+38
Parse install_if from package metadata and include it in the indexes. Also setup the reverse install_if dependencies when loading a database. ref #443. Actual install_if functionality is not yet implemented.
2011-01-03pkg, db: allow index with unsupported features to be loadedTimo Teräs1-3/+13
Just disable installation of packages using the new stuff. Also flag lower case package info fields as non-critical and allow installation even if that features is not supported.
2011-01-01pkg: dependencies to specific package checksumTimo Teräs1-7/+29
When package is installed from commandline, we should always install that specific instance of package (never favor repository version if it has difference identity). Otherwise we might not always end-up installing the .apk given on command line. The dependency is now against specific checksum identity (marked with >< dependency comparison). Fixes #492.
2011-01-01various: use APK_DEPMASK_REQUIRE where applicableTimo Teräs1-1/+1
.. instead of the longer flag combo.
2011-01-01index: remove support of old index formatTimo Teräs1-6/+0
It's no longer needed or used.
2010-12-14various: use 'atoms' for certain package field and misc fixesTimo Teräs1-21/+18
- implement a hash table for commonly shared fields such as license, version and architecture - use macroes to print blobs or pkgname-pkgver strings - fix some old cruft
2010-12-14pkg, db: add preliminary support for arch fieldTimo Teräs1-0/+10
Architecture is now: - parsed from .PKGINFO - written to index and installed db - appended to repository URL when fetching files
2010-12-10pkg: remove support for obsolete APKv1 (alpine-1.8 and earlier)Timo Teräs1-63/+0
should not be needed anymore.
2010-10-08io, db: id cache should be specific to database root, not system rootTimo Teräs1-4/+5
Otherwise we end up using wrong uid/gid mappings when doing install to alternate system root. Fixes #434.
2010-08-30Fix building on eglibcNatanael Copa1-0/+1
Seems like recent eglibc requires that you include sys/stat.h
2010-06-12archive: honor username/groupname instead of uid/gidTimo Teräs1-0/+2
Take the uid/gid from passwd and group.
2010-06-11various: use O_CLOEXEC and add some error checkingTimo Teräs1-6/+8
2010-06-11First steps for libapkNatanael Copa1-0/+1
2010-06-05all: rework how arrays workTimo Teräs1-7/+15
Instead of having a null pointer, use a dummy array which just says the array is empty. This helps in multiple places of the code which would otherwise need explicitly need to check first if the array exists. This has been cause of multiple seg.faults in the past as the array check is easily omitted. This also removes (or fixes) all existing checks accordingly.
2010-06-01db, pkg: fix triggers related crashTimo Teräs1-0/+1
clean up the triggers properly, in proper order.
2010-06-01state: improve error messages from dependency failuresTimo Teräs1-30/+29
Print more information why installation changeset calculation failed. Fixes #187.
2010-05-26package: don't leak signing key file fdTimo Teräs1-1/+1
openssl BIO does not close the fd unless we explicitly tell it to do so.
2009-12-21apk: --overlay-from-stdinTimo Teras1-2/+7
get list of overlay files from stdin, so those do not get overwritten.
2009-09-16pkg: fix parsing of empty dependenciesTimo Teras1-1/+1
if the dependencies are empty with only trailing new line, the parsing was incorrect. fix the new line check.
2009-08-13fix: parse pkgfile properly (fixes #132)Timo Teras1-8/+8
accept also pkgfile in addition to pkgname. make also the signature verification stuff work properly again with non-repository files.
2009-08-13db: implement triggers (fixes #45)Timo Teras1-4/+4
2009-08-12db, pkg: separate structure for fields of installed packagesTimo Teras1-88/+101
this makes the database package entry smaller, and we propbably get more fields to installed_package later too. this cleans up the way scripts are stored and is a preparation for supporting triggers. some parsing for trigger meta-data. ref #45.
2009-08-11pkg, db: execute scripts from /var/cache/misc (fixes #129)Timo Teras1-5/+10
2009-08-10db, pkg: fix package verification during installationTimo Teras1-4/+8
some hooks to package verification code were missing causing the verification to not be done (causing pre-script to be not run). fixes #124, #126.
2009-08-04db: support "replaces" directive (fixes #113)Timo Teras1-11/+5
it will allow to overwrite files owned by some other packages to get upgrades right (e.g. when splitting or renaming packages)
2009-07-31apk: use *at instead of chdir+normal file syscallTimo Teras1-19/+48
this way we never change cwd, and relative filenames are always parsed consistently. this also helps filename construction in many places. this patch also changes '--root' to override location of all configuration to be in the new root. previously it depended on the file which one was used.
2009-07-29tar: make checksumming of inner files conditionalTimo Teras1-1/+1
and force checksumming only when unpacking archive. otherwise it's extra computation for nothing.
2009-07-24pkg: remove implicit bb dependency when install script is presentTimo Teras1-14/+0
this dependency is now inserted automatically by abuild.
2009-07-23index: more informative error messageTimo Teras1-1/+1
when failed to load an existing index.
2009-07-22signing: verify and generate identityTimo Teras1-0/+6
fixes verification of non-repository packages while installing them. this is final thing needed for full signing support (fixes #46).
2009-07-22add: fixes to installing non-repository packageTimo Teras1-2/+2
make sure cache is enabled on non-permanent rootfs setups. some optimizations and fixes too.
2009-07-22pkg: cleanup the signing codeTimo Teras1-95/+78
smaller callback and less cases to check. also reintroduce the oneshot digest flag, hopefully correct this time.
2009-07-22apk: allow-untrusted optionTimo Teras1-10/+15
to not make hard error of untrusted or missing signatures
2009-07-22various: more informative error messagesTimo Teras1-13/+16
2009-07-22various: misc fixesTimo Teras1-59/+54
- error codes for verification failure types - fix some fdb corruption on file migration - combine some dependency parsing code - fix versioned dependencies
2009-07-22various: installation fixesTimo Teras1-5/+0
- extract everything as .apk-new and overwrite only after data has been checksummed - url construction fixes (to work with simple http servers) - end of gunzip stream fixed - remove oneshot digesting flag for now as it's usage was broken
2009-07-21various: fix installation of new style apksTimo Teras1-1/+2
2009-07-21pkg: fix indexing of multi-part apksTimo Teras1-2/+2
2009-07-21db: fixes to package checksumming while installing itTimo Teras1-14/+23
2009-07-20db: signed index loading (ref #46)Timo Teras1-22/+88
prefer index in the new format as signed .tar.gz.
2009-07-20pkg: filenames with '/' cannot be control dataTimo Teras1-1/+1
2009-07-17digest: use oneshot context flag where approriateTimo Teras1-17/+26
speeds up digest calculation on some cases.
2009-07-17index: fix output file permissions, verify signed index (ref #46)Timo Teras1-7/+18
2009-07-17pkg: remove debug printsTimo Teras1-1/+0
2009-07-17pkg: fix index generationTimo Teras1-4/+12
that got broke during verify implementation.
2009-07-17verify: new applet (ref #46)Timo Teras1-73/+172
an utility to check package signature and integrity.
2009-07-16pkg: .PKGINFO field for data checksum is 'datahash'Timo Teras1-1/+1
in future we might add datahashalg to specify the algorithm used.