You are not logged in.
I'm often quite unhappy when I install some software and then getting errors like the following everywhere else:
error while loading shared libraries: libjpeg.so.7: cannot open shared object file: No such file or directoryOk, it usually means that I need to upgrade the whole system. But not only some packages could not be rebuilt in official repositories yet, but also this mistake can ocasionally lead to broken pacman (or ssh, or any other vital component of the system).
I guess it can be fixed. And I have two ideas how to fix that.
First way is to extend dependency checking. In perfect world all packages should write in their dependencies maximum version of package that is needed for this particular package. But almost always we don't know future. It could be fixed by downloading an additional file for already installed package, which says that this particular version of package is not compatible with versions of dependency starting from specified. That dependencies might then be used just like native dependencies of that package. These additional dependencies can be tracked both by hand and automatically (using ldd, namcap, whatever).
Second way is add freebsd-like dependencies on files for packages. So when packages are removed (upgraded) pacman could check if somebody relies on this file.
Probably file list could be maintained by makepkg using something like ldd internally. But may be file dependencies could be used not only for dynamic libraries.
Any thoughts?
Offline
There is no package on the repositories that hasn't been rebuilt upon libjpeg7 or even 8 (we are on 8 now).
Offline
That pacman-dev mailing list is where these discussions are best to take place. That way the people who actually do pacman development will see it.
Saying that, there have been plenty of discussions already. Search the archives. And in truth, pacman can already do that if we wanted, but Arch requires you to fully update your system. Partial updates are not good...
Offline
I think Arch dependency checking is just fine as it its?
As Allan said (and you admit in your own post), you're not doing a full update. Basically, you're creating your own problem.
Got Leenucks? :: Arch: Power in simplicity :: Get Counted! Registered Linux User #392717 :: Blog thingy
Offline
But there are plenty of problems:
1. I want to setup a new little program. Am I supposed to wait to a full system upgrade?
2. There are no drivers for ATI video for current xorg server now. Do I need to add ALL dependencies of old catalyst to IgnorePkg recursively? Or I need to add xorg-server only and hope nothing will break?
3. Am I supposed to rebuild all packages from AUR after upgrade?
4. Seems there are lots of topics with such mistakes in this forum.
Offline
I do a "-Syu" regularly, and I havent seen any problems for a long time now! ![]()
Both pacman and Devs are doing a great job. Its not their fault that ATI dont give proper support and user-built packages dont work.
Offline
1. Yes. Not a big deal for the typical Arch user, as regular system updates are recommended.
2. Yes. IgnorePkg is for any packages that you want to exclude from regular updates.
3. Not all packages - all affected packages e.g. if you upgrade libjpeg, rebuild all AUR packages that are built against it.
4. Agreed, there were quite a few threads, but invariably they were instances of #1 and/or #3 above.
Offline