This addresses some of the issues in FS#9192. Attempt to clarify the -Rc
and -Rs options in the man page.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
Add documentation for --holdver (from Scott) and --forcever (saying this
is an internal option that should not be used by most end users), and
re-alphabetize the --asroot option.
Signed-off-by: Dan McGee <dan@archlinux.org>
If we allow _parseconfig to continue processing when section is not defined,
then we have the potential to segfault during strcmp calls. This is no good.
For some reason, we had existing logic that tested this case but only if it
was processing and 'Include' directive. Expand the check to check for a NULL
section in all cases, and print an error message if this is the case.
Reported here:
http://bbs.archlinux.org/viewtopic.php?id=42235
Signed-off-by: Dan McGee <dan@archlinux.org>
Fix for FS#9176.
A previous commit (6e8daa553b) already forced all database files to 644.
Now the directories are also forced to 755.
Additionally, repo-add now sets the umask to 022, just like makepkg does, to
fix the problem at its root.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
Previously, this caused both scripts to look for
pkgname-pkgver-pkgrel-arch..pkg.tar.gz - extra period has been removed.
Fixes FS#9190.
Signed-off-by: Travis Willard <travis@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
Fixes FS#5179. Prints a notification of package replacements
when updating the packages using the --noconfirm flag.
Signed-off-by: Allan McRae <mcrae_allan@hotmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
-Qg was handled twice.
--ignore completed on all installed packages instead of all
packages.
--ignoregroup had a special handling that seems unnecessary. It
wasn't done for --ignore, and it apparently works fine without anyway.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
For example, if the cachedir is a broken symlink or a non writable
directory, pacman fallbacks to /tmp/. Just before doing that, it freed the
handle->cachedirs list twice !
once in _alpm_filecache_setup, and once in alpm_option_set_cachedirs. So the
first one was removed.
Fixes FS#9186.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
In the old code 'alpm_list_diff(_alpm_db_get_pkgcache(db), dblist,
_alpm_pkg_cmp);' was slow.
Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
[Xav: In my opinion, computing both dblist and modified in one for loop also makes
the code clearer, besides being more efficient.
Also renamed joined to targets since I also find that clearer.]
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Moves "checking dependencies..." notification into code block where
dependency checking is performed to stop spurious notification.
Reference: http://archlinux.org/pipermail/pacman-dev/2008-January/010714.html
Signed-off-by: Allan McRae <mcrae_allan@hotmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
We shouldn't pass things like the kernel version in the user agent string,
as it may be a bit too revealing and is not really necessary.
Reference: https://bugzilla.mozilla.org/show_bug.cgi?id=57555
Signed-off-by: Dan McGee <dan@archlinux.org>
Two functions defined in alpm.h were not marked with SYMEXPORT, causing
linking errors if they were used.
In addition, remove the incorrect use of the 'alpm_' prefix from an internal
function and replace it with '_alpm_'.
Fixes FS#9155.
Signed-off-by: Dan McGee <dan@archlinux.org>
Fixes FS#9147, where issuing a ctrl-C at a prompt puts the users prompt on
the same line as our question. This can also occur during download bars.
Although we might end up putting one too many newlines to the screen now, it
is better than not putting one at all.
Also update the copyright in pacman.c.
Signed-off-by: Dan McGee <dan@archlinux.org>
It turns out the orphan name was misleading. Real orphans are packages
installed as dependency no longer required by any others (-Qtd).
The -t option only shows package not required by any others, so --unrequired
describes it better.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
This reverts commit e28973169d.
This code might fit better in the frontend than in the backend finally.
Ref: http://www.archlinux.org/pipermail/pacman-dev/2007-November/010150.html
I also changed it for fixing FS#8763 :
if there is exactly one provider, pacman will pull it and print a warning.
if there are several providers, pacman will list them and fail. It's up to
the user to pick one. Add sync501 pactest to reflect that.
Document the following:
* -R can take a group
* -S can take a group and provision
I also split up the -S description into multiple paragraphs because it
was getting too large.
Signed-off-by: Nathan Jones <nathanj@insightbb.com>
[Dan: added some feedback from the ML, rewrapped lines]
Signed-off-by: Dan McGee <dan@archlinux.org>
It wasn't even implemented correctly, and it really doesn't have a use if
packagers just do their job correctly anyway for a distro. Let's not try to
solve a problem with the wrong solution now.
Signed-off-by: Dan McGee <dan@archlinux.org>
We had an unused date element in the pmpkg_t struct (not builddate or
installdate). Kill it off and fix the one function that was using it.
Signed-off-by: Dan McGee <dan@archlinux.org>
The --asroot option was not passed to recursive calls of makepkg.
In addition, a 'cd' call was done only on the fakeroot branch instead of
both fakeroot and root branches. Move it outside the conditional.
Noticed-by: Karolina Lindqvist <karolina.lindqvist@kramnet.se>
Signed-off-by: Dan McGee <dan@archlinux.org>
Update description of path specifiers for both pacman and pacman.conf in
their respective manpages. Ensure it is obvious that they are absolute and
not relative paths.
Signed-off-by: Dan McGee <dan@archlinux.org>
This is an Arch-specific tool (although others could find use in it), so
off to the standalone ABS package it goes.
Signed-off-by: Dan McGee <dan@archlinux.org>
Move the prototypes out of contrib/ and into the top level directory, and
install them to what is usually /usr/share/pacman/ on a package install.
Signed-off-by: Dan McGee <dan@archlinux.org>
The previous fileconflict check (package vs filesystem) skipped the conflict
when the file on the filesystem was a directory or a symlink to a directory,
no matter what the file in the package was.
Now, the conflict will only be skipped if the file in the package is a
directory (so compatible with a dir or a dir symlink on the filesystem).
So in the case of 8156 (new fileconflict003 pactest for this case), instead
of silently ignoring the extraction of the test symlink, pacman will now
fail because of a file conflict between the test symlink in the pkg2 package
and the test directory on the filesystem.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Trying to make a symlink at the top level previously made pactest fail.
For example : "test -> test2/" as a file in a package.
The path to the test symlink was empty in this case, but the python code
still tried to chdir in "", which failed.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
By attempting to stat the cachedir when we load the pacman config, pacman
bails out if it is a non-existant directory, even if it will never be
needed. This is unfortunate as it is only used for sync transactions anyway.
Instead, wait until we need it in _alpm_filecache_setup to actually do
anything.
Reported as FS#9096.
Signed-off-by: Dan McGee <dan@archlinux.org>
Originally noticed in FS#9024, but was fixed in previous changes anyway.
However, it doesn't hurt to still check it.
Also add a pactest from Chantry Xavier for the original problem to ensure
we can't reproduce it.
Signed-off-by: Dan McGee <dan@archlinux.org>
Thanks to the proactive backup handling, we don't need to add the moving
file to the skip_add list.
The backup handling will make sure nothing gets overwritten.
Ref: http://www.archlinux.org/pipermail/pacman-dev/2007-December/010610.html
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
The recent upgrade of magic.mime in the file program changed the mime type
output to application/zip instead of application/x-zip as it is a registered
type. Unfortunately we then just skipped zip file extraction becuase of this
change.
Signed-off-by: Dan McGee <dan@archlinux.org>
This was the case of the bash packaging error where a file was removed from
the package but not the backup array.
I just added a sanity check so that only the files from the backup array
that are also in the filelist are used.
I had to edit upgrade026 pactest slightly : it required the file to be
copied to .pacsave instead of moved. But just moving it should be enough, as
we agreed on the ML :
http://www.archlinux.org/pipermail/pacman-dev/2007-December/010440.html
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>