aboutsummaryrefslogtreecommitdiffstats
path: root/src/state.c
Commit message (Collapse)AuthorAgeFilesLines
* state: require an available package for re-installsTimo Teras2009-08-191-1/+2
| | | | | otherwise we would not be able to pick a package that exists as a candidate for re-installation. fixes #138.
* add, del, db: fix various bugs introduced by earlier commitsTimo Teras2009-08-131-9/+8
| | | | | - make virtual packages work again - make apk del (for non-empty packages) work again
* add: refuse to add bad dependencies to worldTimo Teras2009-08-131-0/+3
| | | | | allow also overriding old (possibly bad) world dependency. hopefully it's more bullet proof now.
* db: implement triggers (fixes #45)Timo Teras2009-08-131-2/+2
|
* db, pkg: separate structure for fields of installed packagesTimo Teras2009-08-121-6/+4
| | | | | | | 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.
* state: installed package does not need downloadingTimo Teras2009-08-061-3/+2
| | | | so do not skip it even if it's no longer available.
* state: bug fixTimo Teras2009-08-061-2/+1
|
* state: do not look into world in state_newTimo Teras2009-08-061-18/+25
| | | | | instead enforce world dependencies when the package name is first referenced upon.
* db: prefer local repositories, and implement --no-networkTimo Teras2009-08-061-0/+5
| | | | this helps boots sequence when network is not available.
* state: indent package listsTimo Teras2009-08-061-7/+10
|
* state, update: fixesTimo Teras2009-08-061-1/+3
|
* state: ignore missing world dependencies with --force and --quietTimo Teras2009-08-061-1/+1
|
* state: world might be emptyTimo Teras2009-08-051-1/+1
| | | | so do not choke on it.
* fix: new applet to reinstall and fix packageTimo Teras2009-08-041-2/+4
| | | | | also makes it possibly to upgrade package without adding it to top-level deps. fixes #69.
* state: fix world dependencies to be honored alwaysTimo Teras2009-08-041-36/+97
| | | | | | previously they might have been skipped on certain situations. this also fixes some other reverse dependency enforcements and implements new "pending" state for locked name.
* del: add '-r' to remove top-level dependencies recursivelyTimo Teras2009-08-041-11/+25
| | | | | and by default just update the world, and dump a lost of packages that are not removed. fixes #47.
* apk: use *at instead of chdir+normal file syscallTimo Teras2009-07-311-1/+1
| | | | | | | | 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.
* apk: add -i/--interactive option (fixes #60)Timo Teras2009-07-241-1/+3
| | | | | and use that to figure if questions are allowed or not instead of the verbosity level.
* state: fix previous commit to show OK when everything is okTimo Teras2009-07-221-1/+1
|
* state: commit fdb changes even on errorTimo Teras2009-07-221-7/+9
| | | | we might have done already something.
* upgrade: add --available optionTimo Teras2009-06-251-3/+20
| | | | | | | That will make the upgrade prefer packages available in repositories. This is good if one want's to downgrade packages by removing an experimental repository. Or to force re-install of locally built vs. repository version when the package version are same, but checksum is different. Fixes #51.
* ver: only compare the given packages, show versionNatanael Copa2009-06-201-14/+7
| | | | | make apk_version_compare() take strings rather than blobs add apk_pkgversion_compare(), a wrapper that takes packages
* state: bugfix in the package version selectorNatanael Copa2009-06-161-2/+5
|
* state: upgrade deps for given packages to add -uNatanael Copa2009-05-241-4/+4
|
* state: print also the changeset affect on installed-sizeTimo Teras2009-04-151-2/+13
|
* state: fix installation of package broken by autoclean patchTimo Teras2009-04-151-2/+3
|
* state: auto clean packagesTimo Teras2009-04-151-45/+164
| | | | | Automatically remove packages that are no longer required by a top level dependency.
* state: make package deletion saferTimo Teras2009-04-151-1/+9
| | | | | Refuse to delete explicitly specified top-level packages unless --force is specified.
* state: do not derefence unallocated memoryTimo Teras2009-04-151-0/+7
| | | | | Enforce name_id to be within apk_state allocated area. New apk_name:s can be created later for e.g. unknown packages requested at command line.
* state: more uninitialized variables initializedTimo Teras2009-04-151-1/+1
|
* state: style fix, init variable at declarationNatanael Copa2009-04-151-2/+2
|
* state: fix bug with uninitialized variable 'latest'Natanael Copa2009-04-151-1/+1
|
* fetch: new applet to download .apk filesTimo Teras2009-04-151-14/+0
| | | | Fixes #24.
* state: rework changeset calculation algorithmTimo Teras2009-04-141-124/+386
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* add: --upgrade|-u to control if upgrading is preferred or notTimo Teras2009-01-161-3/+3
|
* state: fix again changeset orderingTimo Teras2009-01-131-2/+2
|
* state: fix generation of change-set to honour dependenciesTimo Teras2009-01-131-2/+6
|
* state: install packages in dependency order (not reverse)Timo Teras2009-01-131-1/+1
|
* various: make fancy progress bar and update todoTimo Teras2009-01-071-99/+142
|
* hash, db: use apk_blob_t and list_*Timo Teras2008-11-271-3/+2
|
* Initial commit of some stuff written so far. Still in state of flux. ExpectTimo Teras2008-04-171-0/+267
breakage and major changes.