1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-11-10 11:35:00 -05:00
Commit Graph

2413 Commits

Author SHA1 Message Date
Nagy Gabor
472e51b975 Use archive_entry_set_perm instead of archive_entry_set_mode
This patch fixes FS#12148 ('unstable' regular file).
I also changed the other archive_entry_set_mode usage in add.c to
archive_entry_set_perm.

Since I cannot find any relevant info in libarchive manual, I quote
Tim Kientzle (the author of libarchive) here, and I say thank you for
his help.

*** Tim Kientzle wrote *************************************

This is the problem in libalpm/util.c:

323    if(S_ISREG(st->st_mode)) {
324            archive_entry_set_mode(entry, 0644);
325    } else if(S_ISDIR(st->st_mode)) {
326            archive_entry_set_mode(entry, 0755);
327    }

Your example unstable.db.tar.gz is not empty.  It has
one entry in it, called "./".  That entry is marked
as a directory.  But, when you call archive_entry_set_mode(),
you are changing the file type!  archive_read_extract()
then creates the file /var/unstable as you requested.
(archive_read_extract() will replace an empty directory
with a file.)

You should either set the mode value correctly:

323    if(S_ISREG(st->st_mode)) {
324            archive_entry_set_mode(entry, IFREG | 0644);
325    } else if(S_ISDIR(st->st_mode)) {
326            archive_entry_set_mode(entry, IFDIR | 0755);
327    }

Or use archive_entry_set_perm(), which does not change
the file type:

323    if(S_ISREG(st->st_mode)) {
324            archive_entry_set_perm(entry, 0644);
325    } else if(S_ISDIR(st->st_mode)) {
326            archive_entry_set_perm(entry, 0755);
327    }

************************************************************

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-18 13:35:17 -06:00
Dan McGee
1191303f8b doc: Consistency and formatting cleanups
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-13 00:06:58 -06:00
Dan McGee
e9ca40b56e doc: fix some more asciidoc fallout
They keep changing things on us. This gets rid of the '.ft C' text sprinkled
around our listing blocks.

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-13 00:00:35 -06:00
Dan McGee
94c2830572 Fix linkman macro to work with asciidoc > 8.3.0
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-11 22:09:40 -06:00
Vojtěch Gondžala
c6bcdf4dc7 Update Czech translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-05 19:06:39 -06:00
Hugo Doria
9f5e1dc8cd Update Portuguese (Brazil) translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-05 07:05:40 -06:00
Dan McGee
cebe36c42c Update configure.ac for 3.2.2 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-04 11:34:47 -06:00
Dan McGee
301fe17f57 Update NEWS for 3.2.2
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-04 11:27:03 -06:00
Mateusz Herych
997a611fa4 Update Polish translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 19:07:44 -06:00
Sergey Tereschenko
162e77ffdc Update Russian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 19:05:19 -06:00
Samed Beyribey
a2cbccb8c7 Update Turkish translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:25:24 -06:00
Sergey Tereschenko
c850786e43 Update Russian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:24:07 -06:00
Roman Kyrylych
3acc265f9d Update Unkranian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:20:41 -06:00
Giovanni Scafora
03a63e01a5 Update Italian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:17:50 -06:00
Matthias Gorissen
024012649f Update German translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:14:35 -06:00
Nagy Gabor
93d47ebbc0 Update Hungarian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:11:56 -06:00
甘露(Gan Lu)
c2dc05c065 Update Chinese translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 09:10:08 -06:00
Xavier Chantry
fb18679a00 Update French translation
Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
2009-01-03 11:49:06 +01:00
Juan Pablo González Tognarelli
792ee97645 Update Spanish translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-03 00:30:09 -06:00
Allan McRae
a73ad4f0e3 Separate local db directory creation and db write
Changelogs and install files were getting extracted into the local
db folder before it was manually created.  This created issues for
uses with 0077 umasks and was highlighted with the new sudo handling
of umasks (FS#12263).

This moves the local db creation to its own function which is called
before the start of package archive extraction.  Also, added a check
that the folder is actually created.

Signed-off-by: Allan McRae <allan@archlinux.org>
[Dan: rename to _alpm_db_prepare()]
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 23:52:32 -06:00
Sterling Winter
b3169a5687 Log pacsave warnings to pacman.log
Pacman currently logs .pacnew warnings to pacman.log but a similar history
of .pacsave warnings isn't kept. The user should be able to search
pacman.log to discover when and where all .pac* files were created by
pacman.

Addresses FS#12531.

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 23:40:20 -06:00
Dan McGee
c31fcfd833 Add new po files in prep for 3.2.2 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:48 -06:00
Dan McGee
cb03817ee8 Small makefile update
Use the proper call for symlink creation

Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:48 -06:00
Xavier Chantry
bd2de5cdf6 Fix asciidoc manpage creation.
As reported here, man pages could no longer be built :
http://archlinux.org/pipermail/pacman-dev/2008-December/007726.html

I found the explanation here :
http://www.methods.co.nz/asciidoc/source-highlight-filter.html

"If you use a2x(1) to generate PDF you need to include the --no-xmllint
option to suppress xmllint(1) checking — the programlisting language
attribute (required by the dblatex source highlighter) is not part of the
DocBook 4 specification (but it is in the newer DocBook 5 specification)."

Signed-off-by: Xavier Chantry <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:47 -06:00
Allan McRae
2f59996c54 makepkg: detect incorrect usage of provides array
Using > or < in the provides array is wrong so make it cause an error.
Fixes FS#12540.

Also, use bash substitution rather than spawning new processes where
possible in the error checking.  Move split package detection to a
better position.

Signed-off-by: Allan McRae <allan@archlinux.org>
[Dan: backport to maint]
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:47 -06:00
Allan McRae
f4651c49af makepkg: tidy version package tests
The use if "! -z" to check if a string is not null is not good practice
so replace with the "-n" option. Also use the AND comparison within one
test rather than on two separate tests.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:47 -06:00
Allan McRae
751d37e749 makepkg: quote all uses of BUILDSCRIPT
Allows specifying alternative build script with spaces in name

Signed-off-by: Allan McRae <allan@archlinux.org>
[Dan: backport some of the fixes to maint]
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:46:37 -06:00
Allan McRae
08980fb4bc makepkg: Replace getopt with internal function
This will allow makepkg to work on systems like Mac OS X where the
default getopt is too old to properly handle long options.

The new parse_options function should replicate getopt's behaviour
completely.

Original work: Yun Zheng Hu <yunzheng.hu@gmail.com>
[Allan: Rewrite and bug fixes]
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2009-01-02 22:17:24 -06:00
Dan McGee
cc7f3b705e Print proxy information when downloading
May help debug issues we come across with proxy behavior (e.g. those pesky
segfaults) as well as be informative to the user when things aren't working
quite right. Addresses FS#12396.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-10 19:45:15 -06:00
Dan McGee
89b0a76b3c Remove mention of -b from makepkg manpage
Fixes FS#12408.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-10 19:23:34 -06:00
Dan McGee
78cf32e194 Small documentation updates for clarity
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-07 22:09:24 -06:00
Dan McGee
59776ef306 makepkg: save and restore shell options before and after build()
Fix the issue uncovered by FS#12344. In this instance, the dotglob shopt was
being set in the build() function but never cleared, causing issues in the
remaining parts of the makepkg script.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-07 22:09:24 -06:00
Allan McRae
b373b1d16b contrib/pactree: fix option parsing
The option parsing was catching any "-d" in an argument so packages
with this in their name did not work.

Also removed commented code line that appears to be inserted during
testing.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-07 22:09:05 -06:00
Allan McRae
a1f7c83dbf Add optdepends to PKGBUILD.proto
Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-02 07:39:44 -06:00
Simo Leone
6d8a6aef09 Add flush after downloading message
When the output is going to a file, glibc seems to buffer way too much
making it hard to monitor progress while tailing a file.

Signed-off-by: Simo Leone <simo@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-12-02 07:39:32 -06:00
Dan McGee
b99bebc008 Add regex to delta code so we don't segfault when reading line
If the delta line doesn't match our regex, we won't go and process it,
possibly walking off the end of the string.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-30 17:17:00 -06:00
Nagy Gabor
a50b067470 Give an error message on alpm_db_register_sync() error
This patch slightly modifies pacman.c/_parseconfig():

See FS#12148. Now pacman prints the following error message in that case:
"error: could not register 'unstable' database (could not open database)"

I also added an error message for alpm_db_setserver() error.

I changed the "return(1);" scheme to "ret = 1; goto cleanup;" to make
sure that we free allocated memory and close open files.

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-30 16:38:37 -06:00
Dan McGee
346139298b Simplify mercurial revision command
Not only does this require less sed-magic, it also fixes FS#12286 where
fetching the revision number fails if mercurial is in compact mode.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-30 16:07:06 -06:00
Dan McGee
f7192b5958 Minor code cleanups
Mostly noticed when compiling libalpm/pacman with ICC.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-11-17 21:47:55 -06:00
Dan McGee
2890114600 makepkg: fix bash substitution to work under older versions
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-31 18:59:19 -05:00
Dan McGee
a63aeed562 Give pacman-optimize a refresher
This patch addresses quite a few lingering issues in the pacman-optimize
script. FS#11767 provoked this look-over and the following issues were
noticed and fixed:

* If an alternate dbroot was specified, then the lockfile location was never
  updated to reflect it. The lockfile location is now set after all dbpath
  initialization.
* The inclusion of a trailing slash on dbroot was problematic and led to the
  following command being executed:
    bsdtar -xpf /tmp/pacman-optimize.p12Q4vAUWY/pacman-db.tar.gz \
	  -C /var/lib/pacman/.new/
  It is doubtful we meant to create a hidden directory like this below our
  database root, only to go and delete it a second later and then
  re-extract. Fix the whole thing by ensuring our dbpath has its trailing
  slash stripped and then appending it when necessary.
* The DB extraction was performed twice for no real apparent reason. This
  opens the door for extraction problems the second time around, leaving you
  with no original database to fall back to. Change the behavior so we only
  extract once, and then perform a directory shuffle once we verify the
  checksums are correct.
* Perform an explicit sync after we drop the new database on the disk. It
  should work better this way.
* Tighten up our check for a pacman lockfile and the time we create one.
  There is still a possible race condition but the window is shorter.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-28 22:18:22 -05:00
Lyman Li
2f5d792725 Update Chinese translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-28 22:06:34 -05:00
Allan McRae
1e656c0a6a makepkg: fix updating PKGBUILD when building SCM packages
Fixes a bug and resets pkgrel to 1 when bumping pkgver

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-28 21:46:40 -05:00
Dan McGee
50e3dc02bf repo-add: Use openssl instead of md5sum
This is similar to the change we made in makepkg so it is cross-platform
compatible and doesn't require coreutils.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-18 23:59:37 -05:00
Dan McGee
d1fec15d81 Correctly close the pipe used for scriptlet execution
We never had a call to pclose() in here before, leaving our file descriptor
in some sort of limbo state. In addition, clean up some of the other logic
such as directly calling exit(1) on a popen() failure rather than going to
our cleanup block, and handling and respecting the exit status of the
subprocess correctly.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-18 23:59:28 -05:00
Sergey Tereschenko
d24592cbcd Minor updates to Russian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 23:19:07 -05:00
Dan McGee
30851a24ff Make interrupt handler async-safe
Calling printf() in a signal handler can be dangerous, so avoid it by
writing directly which is guaranteed to be safe according to signal(7).

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:35:30 -05:00
Dan McGee
f0e1846b51 Remove unnecessary unistd.h header inclusion
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:30:15 -05:00
Dan McGee
d7e502a467 Attempt to idiot-proof making and refreshing docs
I mess this up more often than not, and maybe this will do the trick. Remove
the --enable-asciidoc option as it has been superseded by the --disable-doc
option in usefulness. If you want to skip building docs, you skip building
all docs which is much easier when it comes to ensuring the make 'dist' and
'distcheck' targets will always build the manpages and always build the most
up to date manpages.

Developers shouldn't be affected in their normal builds, nor should end
users of the source tarball.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:29:33 -05:00
Dan McGee
927ce2b7a5 Rework fakechroot checking
Do the checks in the tests that need it, and get rid of some of the
cluttered output when it is not available (one line per test run).

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-10-12 21:29:04 -05:00