summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
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.
2010-06-14Makefile: Don't build or install the libapk and lua module by defaultNatanael Copa1-10/+29
Make the libapk and lua module optional at buildtime and off by default. This is because enabling libapk requires that mkinitfs also copies the libapk.so or the initramfs will not work. To build libapk: make LIBAPK=yes To build lua module (will enable LIBAPK=yes): make LUAAPK To link apk to libapk (will enable LIBAPK=yes): make SHARED_LIBAPK=yes All the above applies to make install target as well.
2010-06-12db: --simulate never needs write access to dbTimo Teräs1-0/+4
So open the db in read-only mode instead. This allows --simulate to be run as non-root user.
2010-06-12archive: honor username/groupname instead of uid/gidTimo Teräs5-1/+140
Take the uid/gid from passwd and group.
2010-06-11various: use O_CLOEXEC and add some error checkingTimo Teräs6-31/+30
2010-06-11build: fix CFLAGS, and use pkg-config for luaTimo Teräs1-5/+4
2010-06-11print: clean up after copy-pasteNatanael Copa3-5/+2
2010-06-11db: make apk_wait a part of dboptsNatanael Copa3-8/+8
2010-06-11lua: initial lua moduleNatanael Copa2-2/+74
2010-06-11First steps for libapkNatanael Copa22-74/+142
2010-06-10db: do not free trigger list after package is unpackedNatanael Copa1-6/+6
The triggers are read during apk_db_unpack_pkg(). If we delete the triggers list after then unpack we delete the triggers which is not what we want. This fixes bug introduced in ce3cf8bff901e7fcacbca640ffedaeea2b3bdf7f
2010-06-08info: fix usage of arraysTimo Teräs1-4/+4
2010-06-08state: fix error printingTimo Teräs2-2/+6
2010-06-07db: fix usage of apk_name_array in install_ctxTimo Teräs1-4/+4
got broken to the previous array cleanup and grepping struct definition only from headers.
2010-06-05all: rework how arrays workTimo Teräs14-121/+137
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-03state: fix a crash in error printingTimo Teräs1-1/+1
2010-06-01db, pkg: fix triggers related crashTimo Teräs2-8/+11
clean up the triggers properly, in proper order.
2010-06-01state: print missing package names on errorTimo Teräs2-8/+23
especially important if the package requested from command line does not exist. otherwise we would not print an error at all.
2010-06-01state: improve error messages from dependency failuresTimo Teräs10-88/+197
Print more information why installation changeset calculation failed. Fixes #187.
2010-05-27state: modify reinstallation printsTimo Teräs1-8/+11
To print upgrading if package is actually being changed instead of pure reinstall.
2010-05-27state: show changed packages as upgradesTimo Teräs1-2/+10
If version is equal, but package contents are different we should show the package being upgraded.
2010-05-27state: fix deletion of obsoleted dependenciesTimo Teräs1-1/+2
In addition to autocleaning dependencies on deletion, we need to autoclean the old package on upgrade too. This is to make sure that obsoleted dependencies (existed previously, but not in new package) are removed where appropriate.
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.