summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2011-03-31state: late locking for install_if package selectionTimo Teräs1-0/+6
improves behaviour under certain corner case conditions.
2011-03-30state: use db in own struc when committingNatanael Copa6-8/+8
The db parameter to apk_state_commit is not needed so we remove it.
2011-03-29state, info: implement install_if (fixes #443)Timo Teräs2-60/+185
Implement the logic for install_if lines. Update info applet to also display the install_if related fields.
2011-03-29apk-tools-2.1.0_pre1v2.1.0_pre1Timo Teräs1-4/+3
2011-03-29fetch: fix package version printTimo Teräs1-3/+4
broke after making the version field an atom because the printf was not updated accordingly.
2011-03-27apk: fix gcc 4.6 warningsTimo Teräs1-2/+1
2011-03-27state: fix late locking of packagesTimo Teräs1-1/+1
commit 4e72075fbab introduced late locking for top level packages, but used the wrong package's top level flag for the check. this fixes a problem that dependencies might not get pulled in.
2011-03-19apk: improve progress barTimo Teräs3-12/+29
* make it as wide as the screen * make sure it's drawn after package change * and draw it using ansi escapes in line buffered stderr
2011-03-19upgrade: reset world dependencies during traversalTimo Teräs2-24/+14
This allows us to get apk-tools dependencies get reset at proper time in world. As a bonus, it reduces code amount.
2011-03-19state: lock package late for names specified on command lineTimo Teräs1-4/+11
This will fix certain scenarios where multiple packages are installed with full package files specified on command line and they depend on each other.
2011-03-16db: relocate from /var/lib/apkTimo Teräs3-47/+91
move all files therein to other places. this allows /var to be mounted from harddisk, but rest of system be run from ramdisk. this also removes support for historical version of the scripts database which was obsoleted in 2.0_pre16 (in July 2009).
2011-03-16db: move lock file to /var/lockTimo Teräs1-2/+4
in accordance with FSH. this also to clear /var of apk related things as we might want to run /var as harddisk, but rest of system from ramdisk.
2011-03-16apk: show progress bar by default for tty controlled runsTimo Teräs2-7/+12
and make the progress bar disappear on regular runs too.
2011-03-16db: fix cache tmpfs detectionTimo Teräs1-1/+1
comment out the code that was out for testing. duh.
2011-03-16db, cache: automatically remount cache read-write when neededTimo Teräs3-14/+104
.. and back to read-only after finishing with modifications. fixes #512
2011-03-16db: handle arch similarly to stable branchTimo Teräs3-16/+26
if package arch is not set, do not append anything to repository. if arch is set, it is appended to repository.
2011-03-16db: detect tmpfs betterTimo Teräs1-1/+4
Use statfs() filesystem type, instead of the device IDs.
2011-03-11url: try wget from $PATH first and fallback to busybox wgetNatanael Copa1-0/+4
If GNU wget is available, then we want use it as it gives the user possibility to set misc options, such as bandwidth limit in wgetrc. It might also be that busybox is not available in case bootstrapping alpine from other distros (think debian vserver host creating an alpine guest) In any case we, fall back to busybox wget in case wget libs are getting upgraded. (see http://redmine.alpinelinux.org/issues/347)
2011-01-21db: fix package cachingTimo Teräs1-2/+2
2011-01-05add: use default arch instead of noarch, improve errorsTimo Teräs2-3/+4
Packages without architecture should get the platforms default architecture (so we are backwards compatible). Only the virtual packages should get 'noarch' by default. Also print full path to the index file which failed.
2011-01-04db: check and initiailize required package fields before addition to dbTimo Teräs1-0/+5
The atomization change broke virtual packages because they don't have license or arch set.
2011-01-04pkg: recognize install_ifTimo Teräs4-26/+55
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äs5-24/+60
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-03version: fix evaluation order to make valgrind happyTimo Teräs1-2/+2
otherwise we get reads from uninitialized/unallocated memory.
2011-01-01pkg: dependencies to specific package checksumTimo Teräs7-29/+48
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äs2-3/+3
.. instead of the longer flag combo.
2011-01-01upgrade: perform upgrade of apk-tools first if availableTimo Teräs5-7/+61
Also re-exec's apk-tools to perform rest of the upgrade using the new apk-tools. This allows handling of new apk-tools features properly. Fixes #140.
2011-01-01index: remove support of old index formatTimo Teräs3-14/+0
It's no longer needed or used.
2011-01-01various: fix breakage from converting dependency versions to atomsTimo Teräs5-2/+8
The version now needs to be initialized atom always, since it's dereferenced in various places.
2011-01-01url: use always busybox wgetTimo Teräs1-1/+1
I think there used to be problems with using http_proxy on bb wget, but those have been fixed for quite some time. This fixes #347. We should probably use libcurl or similar library eventually, but I'm not entirely sure if/when we want that.
2010-12-17gunzip: fix ordering of boundary callbacksTimo Teräs1-8/+24
The boundary callback should not happen until all the uncompressed data has been consumed. This previously seems to have worked because normally gzip library returns "no error" instead of the "stream end" if we extract exactly the amount of bytes remaining in the archive. (Perhaps this was changed in new zlib.) In any case, verification was broken with some apks due to this callback ordering issue.
2010-12-15info: return error if owning package was not foundNatanael Copa1-3/+6
2010-12-14various: use 'atoms' for certain package field and misc fixesTimo Teräs15-109/+184
- 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äs5-8/+33
Architecture is now: - parsed from .PKGINFO - written to index and installed db - appended to repository URL when fetching files
2010-12-10db: remove support for unsigned repository indexTimo Teräs3-40/+11
Unsigned indexes should not be needed anymore anyway.
2010-12-10pkg: remove support for obsolete APKv1 (alpine-1.8 and earlier)Timo Teräs1-63/+0
should not be needed anymore.
2010-12-09db: print full url/filename of the failing packageTimo Teräs1-24/+27
.. instead of the pkgname-pkgver string.
2010-12-09io: enhance istream/bstreams with pipe to forked childTimo Teräs7-22/+84
* prunes the child pid to avoid zombies * handles the errors so e.g. file-not-found is reported properly
2010-11-23blob: fix segfault on x86_64 with --virtualNatanael Copa1-1/+1
blob.ptr might be non-null on empty field in /var/lib/apk/installed so we compare with blob length. This fixes a segfault on x86_64.
2010-11-23db: fix hash lookups on 64-bit machinesTimo Teräs1-1/+1
The hash is 'unsigned long' everywhere which is 64-bits (on 64-bit boxes). Fix the one instance of it being 'unsigned int' since that would be 32-bit and cause lookup failures on 64-bit boxes.
2010-10-08db: fix the previous commitTimo Teräs2-3/+3
id cache needs to be initialized early. and group database filename is surprisingly 'group'.
2010-10-08io, db: id cache should be specific to database root, not system rootTimo Teräs10-63/+93
Otherwise we end up using wrong uid/gid mappings when doing install to alternate system root. Fixes #434.
2010-09-23archive: resolve uid, gid for file informationTimo Teräs1-6/+3
the uid and gid are used in other places than just changing file ownership on extraction.
2010-09-22db: optionally remove dirs when unrefNatanael Copa1-13/+15
We want remove dirs when they are unreferenced so we remove all dirs on apk del, but we don't want remove dirs when closing database. So we make removing dir optional when unreferencing it. This partially reverts commit c7ffc96a16c6963fe0a07be7ee75e8f1f7426882. fixes #406
2010-08-30Fix building on eglibcNatanael Copa4-0/+4
Seems like recent eglibc requires that you include sys/stat.h
2010-06-30static build: do not use openssl enginesTimo Teräs3-1/+7
We want minimal static build. And this now also breaks with our openssl since it tries to automatically dlopen some of the engine modules.
2010-06-16Makefile: do not require lua pkgconfig unless you intend build lua moduleNatanael Copa1-5/+6
2010-06-15upgrade: warn (do not fail) on missing top-level package namesTimo Teräs1-3/+23
We we can upgrade rest of system just fine then.
2010-06-15state: handle properly packages which are installedTimo Teräs1-0/+3
Installed package does not need to be checked for availability. Account for packages missing if they get pruned out due to installability check.
2010-06-15db: reinitialize trigger_pkg_list node after deletionTimo Teräs1-0/+1
The trigger list can be reused after it's cleared, make sure the list node is initialized all the time.