You are not logged in.
There is a reason why pacman installs an non-updated package by default?
I can understand this behavior with the -U option, but with the -S seems strange.
Why this design decision?
(edit, typo)
Last edited by ezzetabi (2013-01-19 15:27:59)
Offline
Pardon?
Pacman installs updates because Arch is a rolling release distro. Partial upgrades are not supported. I don't understand where the --needed flag comes into your question.
Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD
Making lemonade from lemons since 2015.
Offline
I have to suspect there was a typo and the question may be why does pacman install non-updated packages.
If one has foo-10.1-1 installed and that is the current version then they do a `pacman -S widget foo bar` pacman will *reinstall* the same version of foo.
I don't know the design decisions behind this, but it is useful as - on occassion - something will go wrong such that one does not actually have a package properly installed even though it is in their package database. It is easier to do `pacman -S borked-package` than to remove it then reinstall it.
Last edited by Trilby (2013-01-19 13:24:25)
"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" - Richard Stallman
Online
If one has foo-10.1-1 installed and that is the current version then they do a `pacman -S widget foo bar` pacman will *reinstall* the same version of foo.
Afaik -S just always installs the version that is in the sync db, so this could mean an updated version if one has done an -Sy before.
ᶘ ᵒᴥᵒᶅ
Offline
My example was not great - if one did a `pacman -Syu widget foo bar` and the currently installed version of foo was already the most up to date version, pacman would still reinstall it. I'm guessing this is what the question is about.
"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" - Richard Stallman
Online
Sorry, It is indeed a typo. My question was about why --needed is not the default. It is seldom useful reinstall a package, but in most of the cases I experienced if I type "pacman -S a b c d e" I mean: install the missing packages.
Last edited by ezzetabi (2013-01-19 15:34:20)
Offline
Because pacman does what you tell it to do. If you tell it to install a package, it's going to install the package. The deviating behavior is that if you tell it to install a package, don't install it if it's already installed.
I tend to think it's a sane default that presents no real harm.
Offline
Because pacman does what you tell it to do.
Exactly. I think it would be more problematic if it didn't do what you explicitly told it to do. Besides, it does warn you that it is a reinstall and not a new install and seeks your permission before performing the operation. Can't ask for better functionality than that.
I laugh, yet the joke is on me
Offline
I see your point. But even if I also use the word "install" what you are asking is to "Synchronize packages." But... oh well. It is not a big deal. When I install packages I use --needed and that's it.
Offline
Why do you install packages that you have already installed?
Offline
It usually happen when I am following the Wiki for something and I read: Ensure you have the following packages: A B C D and so I type pacman -S A B C D without checking if any of them were actually already installed.
It also happen when I am trying to compile something a package because I need different options or yaourt failed for some reason. I want to install the deps and write pacman --asdep -S A B C D.
Offline
Simple scenario: Major update of kde, you don't know if the kde group has changed to include more packages now. So you do pacman -S kde --needed, because you don't want to reinstall every single kde package.
฿ 18PRsqbZCrwPUrVnJe1BZvza7bwSDbpxZz
Offline