aboutsummaryrefslogtreecommitdiffstats
path: root/src/package.c
Commit message (Collapse)AuthorAgeFilesLines
* apk: --overlay-from-stdinTimo Teras2009-12-211-2/+7
| | | | get list of overlay files from stdin, so those do not get overwritten.
* pkg: fix parsing of empty dependenciesTimo Teras2009-09-161-1/+1
| | | | | if the dependencies are empty with only trailing new line, the parsing was incorrect. fix the new line check.
* fix: parse pkgfile properly (fixes #132)Timo Teras2009-08-131-8/+8
| | | | | accept also pkgfile in addition to pkgname. make also the signature verification stuff work properly again with non-repository files.
* db: implement triggers (fixes #45)Timo Teras2009-08-131-4/+4
|
* db, pkg: separate structure for fields of installed packagesTimo Teras2009-08-121-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.
* pkg, db: execute scripts from /var/cache/misc (fixes #129)Timo Teras2009-08-111-5/+10
|
* db, pkg: fix package verification during installationTimo Teras2009-08-101-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.
* db: support "replaces" directive (fixes #113)Timo Teras2009-08-041-11/+5
| | | | | it will allow to overwrite files owned by some other packages to get upgrades right (e.g. when splitting or renaming packages)
* apk: use *at instead of chdir+normal file syscallTimo Teras2009-07-311-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.
* tar: make checksumming of inner files conditionalTimo Teras2009-07-291-1/+1
| | | | | and force checksumming only when unpacking archive. otherwise it's extra computation for nothing.
* pkg: remove implicit bb dependency when install script is presentTimo Teras2009-07-241-14/+0
| | | | this dependency is now inserted automatically by abuild.
* index: more informative error messageTimo Teras2009-07-231-1/+1
| | | | when failed to load an existing index.
* signing: verify and generate identityTimo Teras2009-07-221-0/+6
| | | | | | fixes verification of non-repository packages while installing them. this is final thing needed for full signing support (fixes #46).
* add: fixes to installing non-repository packageTimo Teras2009-07-221-2/+2
| | | | | make sure cache is enabled on non-permanent rootfs setups. some optimizations and fixes too.
* pkg: cleanup the signing codeTimo Teras2009-07-221-95/+78
| | | | | smaller callback and less cases to check. also reintroduce the oneshot digest flag, hopefully correct this time.
* apk: allow-untrusted optionTimo Teras2009-07-221-10/+15
| | | | to not make hard error of untrusted or missing signatures
* various: more informative error messagesTimo Teras2009-07-221-13/+16
|
* various: misc fixesTimo Teras2009-07-221-59/+54
| | | | | | | - error codes for verification failure types - fix some fdb corruption on file migration - combine some dependency parsing code - fix versioned dependencies
* various: installation fixesTimo Teras2009-07-221-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
* various: fix installation of new style apksTimo Teras2009-07-211-1/+2
|
* pkg: fix indexing of multi-part apksTimo Teras2009-07-211-2/+2
|
* db: fixes to package checksumming while installing itTimo Teras2009-07-211-14/+23
|
* db: signed index loading (ref #46)Timo Teras2009-07-201-22/+88
| | | | prefer index in the new format as signed .tar.gz.
* pkg: filenames with '/' cannot be control dataTimo Teras2009-07-201-1/+1
|
* digest: use oneshot context flag where approriateTimo Teras2009-07-171-17/+26
| | | | speeds up digest calculation on some cases.
* index: fix output file permissions, verify signed index (ref #46)Timo Teras2009-07-171-7/+18
|
* pkg: remove debug printsTimo Teras2009-07-171-1/+0
|
* pkg: fix index generationTimo Teras2009-07-171-4/+12
| | | | that got broke during verify implementation.
* verify: new applet (ref #46)Timo Teras2009-07-171-73/+172
| | | | an utility to check package signature and integrity.
* pkg: .PKGINFO field for data checksum is 'datahash'Timo Teras2009-07-161-1/+1
| | | | in future we might add datahashalg to specify the algorithm used.
* various: new style index generationTimo Teras2009-07-161-22/+71
| | | | | | change the index generation to do old index, or the new style index where package identity is sha1 of control block and it's contained within an .tar.gz to allow signing in future.
* gzip: always autoclose the inner streamTimo Teras2009-07-161-2/+6
|
* pkg: remove support for the deprecated .INSTALL scriptTimo Teras2009-07-161-14/+1
|
* cache: make cache cleaning work again properlyTimo Teras2009-07-151-0/+3
|
* pkg: fix package scanner to read whole archiveTimo Teras2009-07-151-2/+2
| | | | | otherwise we don't get chechksum anymore after the changes to support partial gzip checksumming.
* db: live with sha1 and md5Timo Teras2009-07-141-9/+10
| | | | this also convers scripts file to a tar archive.
* blob: some helpers to replace snprintfTimo Teras2009-07-141-28/+28
| | | | | snprintf is dog slow. make the blob stuff have some helper functions so we can use them in code paths that are executed often.
* bstream: make tokenizable and load index using bstreamTimo Teras2009-07-141-3/+3
| | | | some fixes on index reading code too.
* io: move csumming away from bstream to gunzipTimo Teras2009-07-131-5/+23
| | | | | in future we want to checksum on gzip boundary basis, not the full file.
* package: removed debug codeNatanael Copa2009-06-221-1/+0
|
* ver: only compare the given packages, show versionNatanael Copa2009-06-201-0/+5
| | | | | make apk_version_compare() take strings rather than blobs add apk_pkgversion_compare(), a wrapper that takes packages
* add: support for forced versionsNatanael Copa2009-06-161-0/+33
| | | | | | | Support version numbers specified with packages. For example: apk add 'busybox<1.14' apk add 'squid=>3.0'
* pkg: clean up writing of dependenciesTimo Teras2009-04-161-82/+60
|
* pkg: apk_deps_del helper introducedTimo Teras2009-04-161-0/+19
|
* pkg: fix apk v1.0 URL field importTimo Teras2009-04-161-1/+1
|
* state: rework changeset calculation algorithmTimo Teras2009-04-141-7/+79
| | | | | | | | | | | | | | | | | | | | | | | | Calculate changesets directly by stabilizating the package graph instead of recalculating the whole graph and then diffing (similar approach as seen in 'smart' package manager). The algorithm is not complete: defferred search space forking is missing. So you don't always get a solution on complex graphs. Benefits: - usually the search state tree is smaller (less memory used) - speed relational to changeset size, not database size (usually faster) - touch only packages related to users request (can work on partitially broken state; upgrades only necessary packages, fixes #7) Also implemented: - command prompt to confirm operation if packages are deleted or downgraded - requesting deletion of package suggests removal of all packages depending on the package being removed (you'll get list of packages that also get removed if you want package X removed) - option --simulate to see what would have been done (mainly for testing) - an untested implementation of versioned dependencies and conflicts A lot has changed, so expect new bugs too.
* pkg: write dependencies directly file instead of bufferTimo Teras2009-03-171-0/+23
| | | | | So we don't get artificial limits on the amount of dependencies (fixes #8).
* pkg: show warning if deprecated .INSTALL is present in packageTimo Teras2009-02-271-1/+14
|
* Revert "Revert "pkg: use absolute filenames for packages""Natanael Copa2009-01-211-2/+7
| | | | | | This reverts commit 600f9e7e031c9e7244e078f35ec6c8dce1011149. My bad. This was correct.
* Revert "pkg: use absolute filenames for packages"Natanael Copa2009-01-211-7/+2
| | | | | | This reverts commit 46430ceb5607ac9e395432648c6a8c1a7cbceaf1. The problem this was suppoed to fix was fixed by letting apk_db_open() return with same working dir.