aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* applets: start using solver codeTimo Teräs2011-09-0919-1353/+533
| | | | | | | | | still todo: - 'fix' is missing - 'del -R' does not work - 'upgrade' does not do self-upgrade first ... and a lot of testing.
* solver: report 'complete' solutions with errorsTimo Teräs2011-09-055-38/+31
| | | | | | Allow to select packages that conflict in case we are looking for errors. This allows 'add --force' to install (on boot) the set of packages with minimum conflicts.
* solver: reintroduce install_if supportTimo Teräs2011-08-1815-58/+265
| | | | | | * each package name has two sorting positions, one which causes install_if triggers to be run, and other for bulk dependencies * fix also inverted ordering of package installations
* solver: move topology sorting to solver codeTimo Teräs2011-08-056-105/+104
| | | | | this allows quite some optimizations to running time and memory requirements.
* solver: generate proper error messagesTimo Teräs2011-08-0125-209/+304
| | | | | | | | | * the solver no longer does look-ahead locking of names (could be possibly optimized later); instead names are now always ordered strictly to properly detect the package names which are unsolveable * basic error tests added, so we can see the most likely problem in dependencies easily
* solver: don't consider package that we can't haveTimo Teräs2011-07-273-2/+27
| | | | | Packages that need (re-)installation but which are not available, are excluded now properly.
* solver: permutate each preferred solution firstTimo Teräs2011-07-276-57/+72
| | | | The first found solution is the most preferred one then.
* test: don't crash if the expected files are not thereTimo Teräs2011-07-271-4/+8
|
* Makefile: make it possible to override pkg-config via PKG_CONFIGNatanael Copa2011-07-271-3/+4
|
* solver: new package selection logic (which is not yet used)Timo Teräs2011-07-2631-10/+988
| | | | | | | | | | | | | * basic code for a backtracking, forward checking dependency satisfier * works better when there are tricky dependencies to solve (when can't just upgrade everything to most preferred versions) * the new code always evaluates all of 'world' constraints (old code just does incremental updates based on heuristics) * is probably somewhat slower than old code (probably unnoticeable difference in most cases) * makes easier to write support for provides and repository pinning * test applet and a bunch of test cases added which uses the new code * from the old feature set install_if is not yet implemented
* dot: applet to generate the dot attributed graph language filesTimo Teräs2011-07-243-1/+154
| | | | | | | | | | | | This applet can be used to generate data for graphviz tools. Useful to visualize package dependencies, and possible errors in the repository. Usage examples: apk dot gnome-desktop | tred | dot -Tpng gnome-desktop.png -- to generate simplified dependency chart of gnome-desktop apk dot --errors | dot -Tpng index-errors.png -- to generate chart visualizing dependency errors in index
* ver: database is not needed for version string checking and testsTimo Teräs2011-07-241-0/+2
|
* apk: improve indented printingTimo Teräs2011-07-225-20/+41
| | | | | * fixup the help messages to align up properly * refresh screen width on SIGWINCH
* apk_database: add APK_DEFAULT_ARCH for ppc, ppc64 and arm portsWilliam Pitcock2011-07-161-0/+6
|
* apk: use APK_DEFAULT_ARCH in version().William Pitcock2011-07-161-1/+1
|
* apk_database: move APK_DEFAULT_ARCH to headers so that we can use it in ↵William Pitcock2011-07-162-8/+10
| | | | version().
* apk: display command descriptions in command listWilliam Pitcock2011-07-161-5/+10
|
* cache: return error if cache sync or download failsTimo Teräs2011-07-111-3/+3
| | | | fixes #666
* index: handle errors instead of silently failingTimo Teräs2011-06-283-12/+41
| | | | | | Make indexer keep noise about errors that prevent index generation. Detect certain errors in the APKs better. And also have the applet return error in these scenarios.
* db: more fix for read-only cache remountingTimo Teräs2011-05-273-18/+15
| | | | | remount to read-write before trying to create the cache directory subdirs. fix a fd leak that might prevent remounting back to rw.
* db: remount read-only after the file handles have been closedNatanael Copa2011-05-271-6/+6
| | | | | The apk cache might be on the readonly media so we need wait with remounting til after atleast this filehandle is closed.
* apk-tools-2.1.0v2.1.0Timo Teräs2011-05-231-1/+1
|
* state: fix commit order of packagesTimo Teräs2011-05-231-6/+17
| | | | | | | commit 4e72075fbab introduced a bug where package installation might happen in wrong order (reminder for self to separate the package version deduction to separate step from installation ordering). this restricts the earlier commit to not mingle with the install order.
* db: fix post-install script error message formattingTimo Teräs2011-05-231-2/+2
|
* state: make some of the interactive messages line up with apt which weren't ↵William Pitcock2011-04-261-3/+3
| | | | already
* db: remount ro cache to rw earlier for update to workTimo Teräs2011-04-221-15/+16
|
* apk: default screen width 70 if ioctl says 0 as widthTimo Teräs2011-04-221-1/+1
|
* db: Allow override arch when using --rootNatanael Copa2011-04-143-2/+11
| | | | | | | This is so we can do x86 --root installs on x86_64 hosts. Using --arch without --root can make great damage so we only enable it if --root is used.
* state: make the progress bar look niceWilliam Pitcock2011-04-091-3/+3
|
* upgrade: Improve english messages on apk-tools/baselibs upgrade transaction.William Pitcock2011-04-091-2/+2
|
* fetch: fix fetching of packages with archTimo Teräs2011-04-073-19/+24
|
* apk-tools-2.1.0_rc1v2.1.0_rc1Timo Teräs2011-04-061-1/+1
|
* pkg: add origin, maintainer, build_time and commit id to indexTimo Teräs2011-04-042-1/+37
| | | | Parse these fields from .PKGINFO, and write them to index.
* index: support rewriting of architectureTimo Teräs2011-04-041-2/+13
| | | | | | | | Our build infra does not yet handle properly noarch, so for the time being we will rewrite them as native packages in index. This allows the package to be fetched from the proper URL. This feature will be removed once abuild and the build infra handle noarch properly.
* state: late locking for install_if package selectionTimo Teräs2011-03-311-0/+6
| | | | improves behaviour under certain corner case conditions.
* state: use db in own struc when committingNatanael Copa2011-03-306-8/+8
| | | | The db parameter to apk_state_commit is not needed so we remove it.
* state, info: implement install_if (fixes #443)Timo Teräs2011-03-292-60/+185
| | | | | Implement the logic for install_if lines. Update info applet to also display the install_if related fields.
* apk-tools-2.1.0_pre1v2.1.0_pre1Timo Teräs2011-03-292-5/+4
|
* fetch: fix package version printTimo Teräs2011-03-291-3/+4
| | | | | broke after making the version field an atom because the printf was not updated accordingly.
* apk: fix gcc 4.6 warningsTimo Teräs2011-03-271-2/+1
|
* state: fix late locking of packagesTimo Teräs2011-03-271-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.
* apk: improve progress barTimo Teräs2011-03-193-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
* upgrade: reset world dependencies during traversalTimo Teräs2011-03-192-24/+14
| | | | | This allows us to get apk-tools dependencies get reset at proper time in world. As a bonus, it reduces code amount.
* state: lock package late for names specified on command lineTimo Teräs2011-03-191-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.
* db: relocate from /var/lib/apkTimo Teräs2011-03-163-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).
* db: move lock file to /var/lockTimo Teräs2011-03-161-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.
* apk: show progress bar by default for tty controlled runsTimo Teräs2011-03-162-7/+12
| | | | and make the progress bar disappear on regular runs too.
* db: fix cache tmpfs detectionTimo Teräs2011-03-161-1/+1
| | | | comment out the code that was out for testing. duh.
* db, cache: automatically remount cache read-write when neededTimo Teräs2011-03-163-14/+104
| | | | | | .. and back to read-only after finishing with modifications. fixes #512
* db: handle arch similarly to stable branchTimo Teräs2011-03-163-16/+26
| | | | | if package arch is not set, do not append anything to repository. if arch is set, it is appended to repository.