summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-04-03blob: fix sign extension in test_bitTimo Teräs1-1/+1
2016-02-16fetch: allow enabling --simulateTimo Teräs2-2/+6
2016-02-16implement fetch --purgeTimo Teräs1-0/+36
which will delete any .apk package on output directory that were not downloaded by fetch this allows apk fetch to incrementally build repositories for binary images
2016-02-09apk-tools-2.6.6v2.6.6Timo Teräs1-1/+1
2016-02-09archive: fix long symlink target namesTimo Teräs1-2/+2
don't overwrite the link_target if it was found from pax header. ref #5076
2015-12-10commit: self-conflict error and satisfies printingTimo Teräs3-11/+20
- self-conflicts when the exact same version of a name is provided twice is now properly detected and diagnozed - don't print redundant satisfies diagnostic
2015-12-10solver: more debug output for package errorsTimo Teräs1-7/+11
2015-12-07db: add support for --no-cacheNatanael Copa3-1/+12
Implement --no-cache. The index is read directly from network and not cached. This is useful for docker, where you install a set of packages and directly after purge the cache. (see https://github.com/gliderlabs/docker-alpine/blob/1fc9e59d1689fc4eaf930ec66389fe58062fccec/builder/scripts/apk-install) fixes #4905
2015-11-12apk-tools-2.6.5v2.6.5Timo Teräs1-1/+1
2015-11-12info: fix --installed test of conflictsTimo Teräs1-5/+5
2015-11-12add armv7 targetTimo Teräs1-0/+2
2015-11-09io, database: preserve [am]time for cached and fetched filesTimo Teräs7-11/+122
preserve [am]time for all packages and indexes. this fixes the caching error that 'apk update' is after new index is generated, but before the used mirror is synchronized. this caused local apkindex timestamp to be newer than file in mirror, when in fact it was outdated index. this also fixes fetched files to have build timestamp so that files going to .iso or custom images have proper timestamps (rsync with appropriate --modify-window now works)
2015-11-09search: match packages only onceTimo Teräs1-0/+9
fixes #4770 apk_name_foreach_matching() can matches each package via it's main name and all it's provides. Print matched packages only once.
2015-10-08io: fix posix_fallocate failure handlingNatanael Copa1-1/+1
We need fall back to a splice buffer if posix_fallocate call fails due to file being a device (eg tty) or a pipe. This fixes apk fetch --stdout.
2015-10-08blob: Add missing headerAndrew Wilcox1-0/+1
2015-09-11apk-tools-2.6.4v2.6.4Timo Teräs1-1/+1
2015-09-03db: stop extract more files if disk is fullTimo Teräs1-2/+4
2015-09-03io: use posix_fallocate to allocate disk spaceTimo Teräs1-3/+8
ftruncate does not allocate it, and subsequent access to mmaped file will result in SIGBUS. this fixes to properly report disk full errors.
2015-07-03apk-tools-2.6.3v2.6.3Timo Teräs1-1/+1
2015-07-02relocate lock file to /lib/apk/dbTimo Teräs1-3/+2
the problem is that var/lock is on root installs symlink to /run/lock (on tmpfs) and does not exist if doing chroot() to that root. fixes apk to work when chrooted to existing rootfs install.
2015-06-26remove db dir entry properly, so it can be recreated properly if neededTimo Teräs1-7/+7
fixes #4261
2015-06-12apk-tools-2.6.2v2.6.2Timo Teräs1-1/+1
2015-06-12add simple stats appletTimo Teräs3-2/+67
2015-06-12free atoms when VALGRIND is definedTimo Teräs1-0/+10
2015-06-12for completeness free all arrays before exitTimo Teräs2-0/+2
so valgrind does not report any leaks
2015-06-12fix bstream_from_fd to use mmap when availableTimo Teräs1-1/+2
2015-06-12fix search --has-origin to not leak memoryTimo Teräs1-1/+1
2015-06-12optimize base64 decoding a bitTimo Teräs1-20/+16
it's a hot path for decoding checksums in fdb
2015-06-11use murmur3_32 hashTimo Teräs1-6/+45
it is more efficient than the previously used djb hash
2015-06-11speed improvements for database openingTimo Teräs2-4/+44
resolve reverse dependencies after all packages have been loaded, and avoid traversing the reverse name lists. now that we use automatic virtual packages (soname, pkg-config, etc.) the reverse dependency chains can become considerable longer than what it was when the rdependency construction code was originally written.
2015-06-10search: fix swapped needle and haystackBobby Bingham1-2/+2
2015-06-03apk-tools-2.6.1v2.6.1Timo Teräs1-1/+1
2015-06-01fix directory permissions loadingTimo Teräs2-2/+5
commit 941fc1b1 uncovered a bug that directory permissions are not updated properly at db load time if it's the default acl.
2015-05-26apk-tools-2.6.0v2.6.0Timo Teräs1-1/+1
2015-05-26detect failures in writing to file during final flush of buffersAlex Dowad1-1/+3
In practice this should fix to e.g. not wipe out /etc/apk/world if final flush to /etc/apk/world.new fails. This was prompted by an incident the other day where I ran the root partition of an Alpine box out of space using 'apk add', and apk helpfully wiped the contents of /etc/apk/world at the same time. It might be tricky to try to reproduce exactly the same failure, but from an examination of the code, setting 'rc' before the final call to fdo_flush rather than after is one possible cause of this behavior. (If the entire contents of /etc/apk/world.new are buffered, and all get written out in the final fdo_flush call, and that call fails, fdo_close will still happily rename /etc/apk/world.new to /etc/apk/world.)
2015-04-24apk-tools-2.6.0_rc4v2.6.0_rc4Timo Teräs1-1/+1
2015-04-24do not extract files with malicious nameTimo Teräs1-1/+14
the security implications are not as high as compared to regular tar/unzip archiver. this is because you are anyway trusting the package to install files anywhere in the filesystem. this serves rather as a sanity to check against errors in created package.
2015-04-24allow virtual packages beginning with dot by default on tmpfs installsTimo Teräs1-3/+3
the allows update-kernel script to work on tmpfs install before cache is configured.
2015-04-24modifications for the previous commit in error message handlingTimo Teräs4-5/+8
forgot to --amend my changes
2015-04-22print.c: provide more detailed error messages if retrieving a package failsAlex Dowad2-1/+21
fetch_maperror() translates error codes returned by libfetch to our error codes. Handle those in apk_error_str(), returning error messages which advise the user of the most likely fix. A custom error code, EAPKSTALEINDEX, has been added for cases where retrieving a package fails due to a HTTP error 404 or similar. [TimoT: add also EAPKBADURL, as well as organize a bit better where the EAPKSTALEINDEX is generated]
2015-04-22io: fix compiler error by including stdint.hAlex Dowad1-0/+1
According to the C standards, uint32_t is defined in stdint.h. Presumably apk is usually built against C libraries where stdint.h is indirectly included through another header file, but this isn't the case with the version of glibc which I am using.
2015-04-17apk-tools-2.6.0_rc3v2.6.0_rc3Timo Teräs1-1/+1
2015-04-17fix issue introduced in previous xattr error handling changesTimo Teräs1-2/+2
2015-04-17disable xattrs on symlinks for nowTimo Teräs2-2/+2
there's no nice syscall to manipulate xattrs with atfd and or open the symlink without dereferencing it (and having fd that we can do xattrs with)
2015-04-17make file install errors non-fatal, and xattr errors hiddenTimo Teräs5-83/+109
user xattrs on tmpfs are not supported no non-grsec kernels, and many times root fs is mounted without user_xattr. Thus to allow things to go smoothly on non-grsec kernels xattr unsupported errors are now hidden. xattrs can be fixed still now with "apk fix --xattrs"
2015-04-13apk-tools-2.6.0_rc2v2.6.0_rc2Timo Teräs1-1/+1
2015-04-13fix tee io error handlingTimo Teräs2-4/+6
use ERR_PTR mechanism, and handle it at all places.
2015-04-13fix error mapping typesTimo Teräs1-1/+1
on arm char is by default unsigned, so this caused crashes as the ERR_PTR mechanism did not work as expected with unsigned types. extend the array type to be signed short explicitly.
2015-04-10update: return errors also with --quietNatanael Copa1-1/+1
fixes #4040
2015-04-08use memmove for copying buffer leftovers, as the ranges may overlapTimo Teräs1-1/+1
issue cought by fortify