summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* libalpm/package.c: ensure we use package name when loading packagesDan McGee2007-10-08
| | | | | | | Some of the error messages in _alpm_pkg_load failed to use the pkgname value when printing, which made error messages rather hard to decode. Signed-off-by: Dan McGee <dan@archlinux.org>
* pacman/pacman.c : add --logfile option.Chantry Xavier2007-10-08
| | | | Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* Update usage of gcc __attribute__ flagsDan McGee2007-10-08
| | | | | | | | | | | | Change the default visibility of libalpm functions to internal instead of hidden- this allows for slightly better optimization because it tells GCC that the function can never be called outside of the current module (see http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html). Also added some attributes to the pacman print functions so that they check the format strings being passed to them. Signed-off-by: Dan McGee <dan@archlinux.org>
* Clean up the scriptlet fork code a bit, honor the child return valueDan McGee2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Add new (failing) sync pactestNagy Gabor2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove the non-user friendly --ask optionDan McGee2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Fix backward compatibility with non-epoch builddatesDan McGee2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Add new french mirrorDan McGee2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* pacman-optimize: add check for diff/diffutilsDan McGee2007-10-08
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Fail loudly is scriptlets cannot be run via /bin/shAaron Griffin2007-10-04
| | | | | | | If /bin/sh is missing in the root directory, scriptlets cannot be executed, as we're explicitly calling it. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Fix -Sy and -Sp operations.Chantry Xavier2007-10-04
| | | | | | | | | | | | | | | | | | When the -Sy operation failed, the lock wasn't removed because alpm_trans_release wasn't called. This is fixed now. Also, after my last change in commit 52e7e6d74733f7a431376a9e528c4fe4d3732068 , Sp didn't do anything anymore. That's because needs_transaction returned false for -Sp, so the sync transaction wasn't run. However, the current implementation of -Sp requires a sync transaction. Also, since a transaction creates the lock file at the beginning, and releases it at the end, this mean that -Sp requires root access anyway.. I think I understand now why Aaron found that the current -Sp implementation is hackish :) Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* makepkg: Fix typo to make xdelta creation work.Nathan Jones2007-10-04
| | | | | Signed-off-by: Nathan Jones <nathanj@insightbb.com> Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* needs_transaction adjustmentsChantry Xavier2007-10-03
| | | | | | | | | | | | | | | I just moved the root path check out of needs_transaction, and put it directly in pacman.c . I think this part is alright. For the other problems, I thought about doing the transaction first, in a new sync trans function, which will init and release a transaction. And then doing the commands like -Ss / -Sl / -Sg / -Si. The problem is that for commands like -Sys / -Syl / etc, only the refresh part of the transaction should be done. So I had to introduce an ugly sync_only hack. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* libalpm: Optimize/inline the md5 functionalityDan McGee2007-09-28
| | | | | | | | | The md5 routines are one of the chokepoints of libalpm (main chokepoint being archive extraction). Although IO delay causes a lot of it, we can at least inline some of the md5 stuff as we aren't that concerned about space and eliminate quite a few function calls. Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm/deps.c: fix memleak found by valgrindDan McGee2007-09-28
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm/be_files: Fix outdated code setting path for lastupdate fileDan McGee2007-09-28
| | | | | | | The code for setting the lastupdate file path still referenced both the root and dbpath, when we should only be using dbpath. Fix it. Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: Fix output color codes for realDan McGee2007-09-28
| | | | | | | Make sure we reset both the bold attribute and the color attributes when it is necessary. Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove outdated mirrorDan McGee2007-09-28
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* makepkg: When we add an option, we should probably make it workDan McGee2007-09-28
| | | | | | | The -A,--ignorearch option was added and given help text, but never actually listed as valid to the option parser. Fix this. Signed-off-by: Dan McGee <dan@archlinux.org>
* Use ANSI 'foreground' color instead of hardcoding 'white'Aaron Griffin2007-09-28
| | | | Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Allow --refresh specified for most -S optionsAaron Griffin2007-09-28
| | | | | | | | Included options are -g, -i, -s, and -l All of these will sync the DB if -y is specified and permissions are appropriate. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Break out transaction test to a separate functionAaron Griffin2007-09-28
| | | | | | Added needs_transaction, putting out "hey do we need root?" tests in one place. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* OMG a space!Aaron Griffin2007-09-28
| | | | | | Yeah, I added a space. It deserves its own commit. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Minor "cannot remove" message cleanupAaron Griffin2007-09-28
| | | | | | | The strings differed in quotes only, this way we have only one i18n string for translation Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Remove buildtype package accessor prototypeAaron Griffin2007-09-28
| | | | | | This was removed a while ago, but the prototype was still hanging out. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Support for localized times in metadataAaron Griffin2007-09-28
| | | | | | | | | | | | Packages and DBs now support using the UNIX epoch (seconds since Jan 1, 1970) for use in builddate and installdate. This will only affect newly built packages. Old existing packages with the text format are still supported, but this is deprecated. In the case of removal of text time support, this code will fail gracefully, returning the start of the epoch for broken packages. Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Add 'full' parameter to alpm_pkg_loadDan McGee2007-09-28
| | | | | | | | | | | | | | | | | | | In most cases, we want to fully scan a package when we load it, which serves as a integrity verification check. However, there are times when it is only desired to read the metadata and nothing else, so allow the caller of pkg_load to choose the behavior they need. This pays big dividends in speeding up pacman cache cleaning functionality. Old (729 packages): real 1m43.717s user 1m20.785s sys 0m2.993s New (729 packages): real 0m25.607s user 0m19.389s sys 0m0.543s Signed-off-by: Dan McGee <dan@archlinux.org>
* Update comments dealing with pkgext/dbext strippingDan McGee2007-09-28
| | | | | | | pacman/callback.c already did the work I set out to do with this commit, so update the comments accordingly in the frontend and backend. Signed-off-by: Dan McGee <dan@archlinux.org>
* Reimplement pacman cache cleaning the right wayDan McGee2007-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | Partial cache cleaning was eliminated in a previous commit because it relied on package naming conventions. Re-add it the correct way- we actually open up each package in the cache and get a name and version out of it. If the name and version match that of an installed package, keep it. If the package is not installed or the version does not match the locally-installed version, get rid of it. This can easily be modified if some other heuristic of keeping and removing packages is desired, or if we should clean out the cache dir of any files that are not packages, etc. The biggest current problem with this new approach- speed. Here is one run on my local machine, going from 1643 to 729 packages in the cache (753 in the local DB): real 4m25.829s user 3m22.527s sys 0m6.713s This is likely best addressed by the package loading scheme, which may be loading the entirety of each package archive, which is a waste when we only need the .PKGINFO file read. Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove package name dependency from libalpmDan McGee2007-09-28
| | | | | | | | | | | | Previously, package names must match a specified scheme or they will cause pacman add operations to fail. This is not a very intelligent or necessary way to act, so remove the dependency on the name of the package to be installed and read all relevant information from the metadata instead. This does have one causality to be addressed later- pacman cache cleaning functionality, which has never been phenomenal, just lost most capability. Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm: Add newline to alpm log function outputDan McGee2007-09-28
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Mirrorlist updatesDan McGee2007-09-27
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* document the -Qii option.Chantry Xavier2007-09-27
| | | | | | | | | I suppose -Qii could be used for other things than displaying the list of backup files, but currently, it's the only one, so that's how I documented it.. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* Preliminary support for optdependsDan McGee2007-09-25
| | | | | | | | Add some alpm functions for getting optdepends, have makepkg include them in the PKGINFO file, and have a pacman -Qi operation display the raw string as stored by libalpm. Signed-off-by: Dan McGee <dan@archlinux.org>
* Allow a normal 'make' to compile without asciidoc installedDan McGee2007-09-23
| | | | | | | | If we don't have asciidoc installed or enabled, we should still have a successful make. However, we want to ensure 'make dist' fails without asciidoc. This commit should ensure this. Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm/add.c: fix backup array issueDan McGee2007-09-23
| | | | | | | | | | | | As seen with the recent upgrade of pacman and the removal of the pacman.d/current mirrorlist, files that were formerly in the backup array get deleted upon their removal, which could be dangerous. Instead, we should use the combined backup array of the old and new package. This fix should address this issue in a relatively straightforward way. In addition, old files should be moved to pacsave locations as expected. Signed-off-by: Dan McGee <dan@archlinux.org>
* Add sync044 pactest : A dependency induces a replacement.Chantry Xavier2007-09-23
| | | | | | | | | | | That is the problem mentioned by Nagy there (with suggestions for fixing it) : http://www.archlinux.org/pipermail/pacman-dev/2007-August/009082.html If a dependency conflicts with a local package and has to replace it, the PM_SYNC_TYPE_DEPEND information is lost, and the resulting install reason is wrong (the package is marked as explictly installed). Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* Add two pactests with broken requiredby, and two about pacsave handling.Chantry Xavier2007-09-23
| | | | | | | | | | | | | | | | | remove048 is the case mentioned there (fails in 3.0 but works in 3.1) : http://www.archlinux.org/pipermail/pacman-dev/2007-September/009294.html It's the same as remove046 with -R instead of -Rc. sync060 is a case reported this morning on IRC : a pacman -Su wanted to replace gensplashutils by gensplash, but pacman said gensplashutils was required by initscripts-gensplash, while initscripts-gensplash was not even installed. This is also fixed in the current 3.1 code though. upgrade02{4,5} are the backup handling problem I described there : http://www.archlinux.org/pipermail/pacman-dev/2007-September/009376.html Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* libalpm/remove.c: fix up arguments to unlink_fileDan McGee2007-09-23
| | | | | | Move the progressbar code out of unlink_file so we can pass half the args. Signed-off-by: Dan McGee <dan@archlinux.org>
* alpm: removed unused strtoupper wrapper, remove installeddate on parse_descfileDan McGee2007-09-23
| | | | | | | installdate should never be present in a package descfile, so get rid of it. With the last commit, we also don't need the util strtoupper function. Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm/package.c : fix for FS#8081, case sensitive comparisons in ↵Chantry Xavier2007-09-23
| | | | | | | | | | | | parse_descfile. This fix FS#8081. The tr_TR locale has known issue with case insensitive comparisons, mostly because upper(i) != I. So the .PKGINFO files generated by makepkg MUST contain all keywords in lowercases now. This was already done, but was not mandatory. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* libalpm/add.c : fix backup handling (2)Chantry Xavier2007-09-18
| | | | | | | | | | | The mistake fixed in commit 26441cf65ca10d4bf218203df5db5e8a7270787b was actually done at two places. This fix the second one. Also remove one unnecessary newline introduced by commit d34b2c4ed84bc40f4a895846785481fad88116a2 Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* Update NEWS, -S testing/qt example, and mirrorlist changeDan McGee2007-09-18
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Refine pacman manpage, clarify -S repo/package possibility, remove --testDan McGee2007-09-17
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* libalpm/add.c : newline fix.Chantry Xavier2007-09-17
| | | | Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
* Avoid segfaults whet calling alpm_option_get_* before initializationStefano Esposito2007-09-17
| | | | | | | | | | | | When calling a function of the alpm_option_get_* group, you get a segfault if you don't call alpm_initialize() first. With this patch those functions set pm_errno to PM_ERR_HANDLE_NULL and return an error value if handle == NULL. (Dan: modified to meet pacman coding standards) Signed-off-by: Stefano Esposito <stefano.esposito87@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* Update British English translationJeff Bailes2007-09-17
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* Allow rankmirrors to read from stdinPeter Johnson2007-09-17
| | | | | | Feature Request #8043 and provided patch. Thanks! Signed-off-by: Dan McGee <dan@archlinux.org>
* Add Australian mirrorDan McGee2007-09-17
| | | | | | Thanks to Jeff Bailes <thepizzaking@gmail.com> for pointing this out. Signed-off-by: Dan McGee <dan@archlinux.org>
* rankmirrors : add support for the $repo var in url.Chantry Xavier2007-09-17
| | | | | | | | | To keep working correctly with url like : ftp://ftp.archlinux.org/$repo/os/i686 rankmirrors will now replace $repo by core. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>