You are not logged in.
Pages: 1
Hi archers. In light of recent discussions about pacman on the mailing list, I did some reading about pacman to understand it better. This prompted me to add some info to the [wiki]pacman[/wiki] page on the wiki. Here's what I would like to add:
1. Several distros, such as Debian, have different versions of shared libraries packaged as different packages: libfoo1, libfoo2, libfoo3 and so on. This way it is possible to have apps compiled against different versions of libfoo installed on the same system. How come there's only one package per library in Arch?
Arch is a rolling-release cutting-edge distribution. Only the latest versions of all packages are supported. Therefore, it doesn't make any sense to have old versions of libfoo in the repository - no packages in the repository depend on the old libfoo.
2. Say I have an application called foobaz2 installed on my system. foobaz2 depends on libbaz 1.5. What will happend if a new version of libbaz, libbaz 2.0 becomes available, but there's no update for foobaz2?
This scenario is possible, but not very likely. If foobaz2 package has versioned dependency (e.g. libfoo=1.5) it will be removed during an upgrade of libfoo because of a conflict. If it does not have a versioned dependency for some reason, then it will break after the update. In this case, you should contact foobaz2's developers and ask them to make foobaz2 work with latest version of libbaz.
3. What's the deal with the example above, where the latest version of the kernel appears in the repository before packages that contain kernel modules, such as catalyst, are updated for that kernel? Wouldn't it be better if both the kernel and all module-containing packages appeared in the repository simultaneously?
Not everybody has catalyst or any other package that contains kernel modules installed on their machine. Users who don't need the catalyst package have no desire to wait for it to be able to upgrade their kernel. So, it is you responsibility to make sure that the kernel and all packages that contain kernel modules are upgraded simultaneously.
I would like to have your input first, though, because I'm not 100% sure about the factual accuracy of these Q&As. Also, any other corrections are welcome.
Last edited by bhobbit (2010-03-17 09:11:33)
Offline
Re question 2 - "In this case you should rebuild foobaz2 against libbaz 2.0. If the build fails, report a bug to the foobaz2 developers".
Re question3 - this scenario is not valid, as catalyst is an unsupported package. Major kernel updates i.e. 2.6.x to 2.6.x+1 are always accompanied by rebuilds of all supported kernel driver packages. Users are responsible for updating any unsupported packages that they have installed.
Offline
Re question 2: The question is ambiguous here - we don't know whether foobaz2 is in the official repo or not. So it should probably be like this:
2. Say I have an application called foobaz2 installed on my system. foobaz2 depends on libbaz 1.5. What will happend if a new version of libbaz, libbaz 2.0 becomes available, but there's no update for foobaz2?
In most cases, this scenario will not arise at all. Assuming foobaz2 is in the official repository and builds successfully against libbaz 2.0, it will be updated along with libbaz. If, however, it doesn't build successfully, foobaz2 package will have a versioned dependency (e.g. libbaz=1.5) and will be removed by pacman during libbaz upgrade due to a conflict.
If foobaz2 is a package that you built yourself, you should rebuilding foobaz2 against libbaz 2.0. If the build fails, report a bug to the foobaz2 developers.
Re question3: I didn't know that catalyst is a unsupported package. The wiki doesn't make it clear. In fact, [wiki]pacman#Upgrading packages[/wiki] makes updates look scarier than they really are. I'll see if I can make it clearer. So then question 3 becomes:
3. If Arch is a bleeding edge distro, is it possible that there will be a major kernel update in the repository, but some of the kernel driver packages will not have been updated for the latest kernel?
No, it's not possible. Major kernel updates i.e. 2.6.x to 2.6.x+1 are always accompanied by rebuilds of all supported kernel driver packages. On the other hand, if you have an unsupported package, such as catalyst, installed on your system, then a kernel update might break things for you if you don't rebuild catalyst for the latest kernel. Users are responsible for updating any unsupported packages that they have installed.
Last edited by bhobbit (2010-03-17 09:11:05)
Offline
If you think these changes are important, just go for it. You cannot break anything in a wiki, in a worst case scenario, your changes will be reversed. Moreover, there are special discussion-pages in the wiki attached to each main page. A discussion like this belongs into the wiki, not into the forums.
Offline
tlaloc: You're right, but I wanted to make sure that these changes don't go unnoticed and I don't write any bs that would confuse users even more.
Offline
I think you should add this sort of information to the FAQ under the heading "Package Management" rather that the pacman article.
Offline
Misfit138: What about [wiki]pacman#Troubleshooting[/wiki] section that's already there? Leave it as is?
Offline
Misfit138: What about [wiki]pacman#Troubleshooting[/wiki] section that's already there? Leave it as is?
Well, the examples you are suggesting be added don't seem to fit under a troubleshooting heading, whereas they seem appropriate for the FAQ..
The q & a in the existing troubleshooting section of the pacman article is also a bit awkward imo, but that's another story.
Offline
I finally got around to it and added the questions in question to the [wiki]FAQ[/wiki].
Offline
Pages: 1