summaryrefslogtreecommitdiff
path: root/src/database.c
AgeCommit message (Collapse)AuthorFilesLines
2009-12-25db: keep packages with no files with installed statusTimo Teras1-6/+10
got broke few commits ago when apk_pkg_installed() call was moved to happen after the package name has been read.
2009-12-22db: make fdb load package description before calling pkg_installTimo Teras1-5/+5
this is now mandatory after the overlay fixes. otherwise the package will not get listed as installed.
2009-12-21db: check the overlay files package name rather than the ovl file itselfNatanael Copa1-1/+1
2009-12-21db: honor overlay file even for protected pathsTimo Teras1-14/+12
2009-12-21apk: remove the unneeded --never-overwriteTimo Teras1-5/+3
turns out the logic does not work with overlays as expected due to busybox symlinks being unmanaged. remove the useless option.
2009-12-21db: accept files in overlay without directoryTimo Teras1-5/+2
appears this is possible, so support it.
2009-12-21db: use proper instance for overlay file entriesTimo Teras1-25/+33
lookup proper directory instance as the tar output might not be linear.
2009-12-21apk: --overlay-from-stdinTimo Teras1-3/+49
get list of overlay files from stdin, so those do not get overwritten.
2009-12-21db: read time only once when writing scriptsdbTimo Teras1-1/+3
less syscalls.
2009-11-24db: check if target exist before renaming tempfileNatanael Copa1-3/+10
do not overwrite target if we have --never-overwrite and target exists. ref #197
2009-10-26db: fix migration and pruning of symlinks to dirsTimo Teras1-2/+4
the old code treated a symlink to directory as file; it tried to calculate regular has of it. fix this by: 1) using no follow on migration and pruning stats, and 2) the helper function to check if it's point to directory and not calculate hash in that case. fixes #188.
2009-09-03index, version: support for repository descriptions (fixes #141)Timo Teras1-6/+10
ability embed description information to repository indexes (e.g. repository name and version) and show it via "apk version -I".
2009-08-13db: cache needs to be on non-tmpfsTimo Teras1-1/+1
check device major if it's tmpfs and refuse to use cache if we've been fooled.
2009-08-13db: fix script argumentsTimo Teras1-4/+8
the first item is place holder for argv[0] = script name. it's overwritten by the apk_pkgi_run_script.
2009-08-13add, del, db: fix various bugs introduced by earlier commitsTimo Teras1-11/+9
- make virtual packages work again - make apk del (for non-empty packages) work again
2009-08-13db: implement triggers (fixes #45)Timo Teras1-17/+135
2009-08-12db: fix some (unimportant) memory leaksTimo Teras1-1/+9
2009-08-12db, pkg: separate structure for fields of installed packagesTimo Teras1-69/+138
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-12io: better error handling when writing stuff outTimo Teras1-25/+37
also have the output stream support writing to temporary file and do renameat/unlinkat on close depending on if all writes succeeded or not.
2009-08-11archive: update for new place of checksum in tar headerTimo Teras1-10/+0
and take checksums for symlinks too.
2009-08-11db, audit: audit symlinks (by hash of the link target)Timo Teras1-1/+11
2009-08-11db: fix checking of non-repository files from cacheTimo Teras1-13/+32
otherwise, non repository files present in cache are not considered for installation (e.g. when booting from cdrom).
2009-08-11pkg, db: execute scripts from /var/cache/misc (fixes #129)Timo Teras1-0/+2
2009-08-11db: fix previous commitTimo Teras1-2/+2
2009-08-11db: ignore empty lines in /etc/apk/repositoriesNatanael Copa1-1/+1
fixes #127
2009-08-10db, pkg: fix package verification during installationTimo Teras1-0/+3
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-06state: do not look into world in state_newTimo Teras1-3/+0
instead enforce world dependencies when the package name is first referenced upon.
2009-08-06db: prefer local repositories, and implement --no-networkTimo Teras1-8/+37
this helps boots sequence when network is not available.
2009-08-06all: implement database open optionsTimo Teras1-17/+25
so user can override trusted keys directory and repositories file.
2009-08-06db: make missing index non-fatalTimo Teras1-1/+1
it's a warning not an error to have non-existant repository. bad signature means tampering; but we might want to just ignore those. this is especially important if we have http repositories and we are bootstrapping (without network).
2009-08-06db: command line repositories take preferenceTimo Teras1-75/+70
over the ones in config file. also remove the apk_root == NULL check as this cannot happen anymore. a valid root is always required.
2009-08-04db: support "replaces" directive (fixes #113)Timo Teras1-4/+52
it will allow to overwrite files owned by some other packages to get upgrades right (e.g. when splitting or renaming packages)
2009-08-04fix: new applet to reinstall and fix packageTimo Teras1-17/+24
also makes it possibly to upgrade package without adding it to top-level deps. fixes #69.
2009-08-04db: return hard error if repository opening failsTimo Teras1-6/+10
otherwise we can accept unsigned repositories, and install bad packages.
2009-07-31db: jump through hoops to get checksums for hardlinksTimo Teras1-18/+60
should really fix abuild-tar.
2009-07-31db: load cache's installed index only if cache is activeTimo Teras1-4/+6
other wise cache_fd points to var/lib/apk and contains the real installed db causing it to be loaded twice.
2009-07-31apk: use *at instead of chdir+normal file syscallTimo Teras1-182/+148
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-30db: allow update of untrusted indexNatanael Copa1-1/+2
2009-07-30db: fix checksum storing to dbTimo Teras1-2/+6
also take precautions in audit code if the db is missing the checksum.
2009-07-30audit: protection mask for "symlinks only"Timo Teras1-6/+20
and use it for /etc/init.d by default. fixes #99.
2009-07-29db: fix protected directory handling (fixes #89)Timo Teras1-5/+10
we don't want to do checksumming of existing files unless it's in a protected directory. also, we keep the original file if it's *modified*.
2009-07-29tar: make checksumming of inner files conditionalTimo Teras1-4/+5
and force checksumming only when unpacking archive. otherwise it's extra computation for nothing.
2009-07-24db: fix repository write lockingTimo Teras1-4/+4
2009-07-24db: increase required verbosity for filename printsTimo Teras1-6/+6
2009-07-24db: remove APK_NAME_VIRTUAL flagTimo Teras1-1/+1
use the package 'installed_size' == 0 as a test instead for dependency only packages.
2009-07-24db: create cache index with non-repository packagesTimo Teras1-60/+101
this enables virtual packages and files specified from command line to work on non-harddisk installs.
2009-07-23index: fully process archive when reading index for signature checkTimo Teras1-5/+5
can't cancel an index reading or we lose signature checking.
2009-07-23index: more informative error messageTimo Teras1-5/+9
when failed to load an existing index.
2009-07-22apk: add --purge option (fixes #61)Timo Teras1-1/+6
and do not remove modified configuration files unless --purge is specified.
2009-07-22add: fixes to installing non-repository packageTimo Teras1-0/+11
make sure cache is enabled on non-permanent rootfs setups. some optimizations and fixes too.