You are not logged in.
Hi all,
In the arch home page one reads:
Perl updated to 5.20
2014-06-04
Perl 5.20, as any other new perl version, requires all modules that are not purely perl code to be rebuilt. We did that for all packages in our repos.
The last couple major updates printed an error message when trying to load modules built against the wrong version, 5.20 seems to cause segfaults. Please make sure to rebuild all custom installed CPAN modules and binaries that link to libperl.so.
Refer to my post on arch-dev-public for a script that helps to find those packages.
I executed the script and I got this:
$cd /tmp/find-broken-perl-package.22jFUOeh
$ls *
pacman.txt perl-dists.txt perl-modules.txt raw.txt
$cat *
libproxy
Net::Libproxy
/usr/lib/perl5/vendor_perl/auto/Net/Libproxy/Libproxy.so
I read the announcement, but I'm not sure what to do next.. What should I rebuild and how?
Or am I good to just go on and pacman -Syu? I'm a bit extra cautious as I had problems in
the past when I wasn't.
Thanks in advance
EDIT: perl-dists.txt was empty, so the output of cat * is for pacman.txt, perl-modules.txt, and raw.txt, respectively.
Last edited by geo909 (2014-06-17 01:43:51)
Offline
I guess it might be helpful to add that in the news item, the word "custom" essentially means "installed from source(s) other than the official Arch repos", since the devs have taken care of any official packages. So you just need to determine the source of that libproxy package, and then rebuild or not as required.
Offline
I guess it might be helpful to add that in the news item, the word "custom" essentially means "installed from source(s) other than the official Arch repos", since the devs have taken care of any official packages. So you just need to determine the source of that libproxy package, and then rebuild or not as required.
Thanks.. I think I'll be safe to upgrade. Just one more question: while trying to figure out who is using the libproxy package
I did the following:
jorge@flamingo:~$ sudo pacman -Qo /usr/lib/perl5/vendor_perl/auto/Net/Libproxy/Libproxy.so
/usr/lib/perl5/vendor_perl/auto/Net/Libproxy/Libproxy.so is owned by libproxy 0.4.11-2
Ok, so sure enough Libproxy.so is used by libproxy. Then I'm not sure how to find out
who is using libproxy as a dependency. I did
pacman -Si libproxy
but that didn't give any information about that. So I had to pretend that I'm
uninstalling things to get to what is using libproxy:
jorge@flamingo:~$ sudo pacman -R libproxy
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: glib-networking: requires libproxy
jorge@flamingo:~$ sudo pacman -R glib-networking
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: libsoup: requires glib-networking
jorge@flamingo:~$ sudo pacman -R libsoup
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: abiword-plugins: requires libsoup
:: darktable: requires libsoup
:: gst-plugins-good: requires libsoup
:: gstreamer0.10-good-plugins: requires libsoup-gnome
:: gvfs: requires libsoup
:: webkitgtk2: requires libsoup
Is there a more proper way of obtaining those packages?
Offline
Use pactree.
Offline
It's ok to just do pacman -Syu, because libproxy resides in one of the official repositories, and the Arch developers/packagers have already taken care of it.
If you prefer to be as careful as possible, try:
pacman -Sy
pacman -S libproxy
--which should upgrade it from 0.4.11-2 to 0.4.11-3.
I believe that if you then run the script again, it will find nothing. I only ran it AFTER doing pacman -Syu, and it came up with a dozen or so packages, but the package names all begin with "perl-", and all except one (perl-tk) are AUR packages.
Last edited by pralias47 (2014-06-10 13:24:48)
Offline
Use pactree.
Or 'pacman -Qi libproxy'. 'pacman -Sii libproxy' shows 'Required By' info too.
Offline
Thanks a lot (a bit late) for the informative answers.. That's helpful stuff to know.
Offline