On 5/14/19 5:08 PM, Sefa Eyeoglu via arch-general wrote:
Hey fellow Arch Users,
I am currently playing around with the GitLab CI and automatic building of Arch packages. My modified Arch Linux Docker image should include base and base- devel, but without all of the kernel and hardware stuff. This is the command, that does not work as expected:
pacman -Syu --needed --noconfirm --noprogressbar --ignore linux,linux- firmware base base-devel git
The packages linux and linux-firmware still get installed. I would prefer if there would be a way to install base, but without all of the irrelevant stuff for containers. I would propose something like base-container for this group.
The --ignore flag does not do what you think it does, it just has the same result as if you had listed it in pacman.conf in IgnorePkg Note the documentation: "Directs pacman to ignore upgrades of package even if there is one available." If you explicitly specify both packages on the command-line (which you did when you listed "base") then they will still get installed. Actually, pacman will interactively prompt you about whether you actually want to install them, and --noconfirm will default to "yes". This is relevant e.g. when you have "linux" ignored because you don't want to upgrade it with every pacman -Syu, but you do want to, occasionally, update it manually -- if IgnorePkg stopped you from specifying it on the command line, then it would be literally impossible to ever update, without modifying your config files in /etc, then running a manual update, then reverting your config files in /etc. I do not foresee us changing --ignorepkg to operate with a different codepath following different rules that differ from IgnorePkg, both because I think this is misuse of the feature, and because users will then confuse the two and think they are the same when they are not. ... OTOH you can achieve your desired goal like this: $ pacman -Sqg base| grep -Fxv -f <(printf 'linux-firmware\nlinux\n') # see list of packages in base, minus two that you want to exclude This list can be further piped to pacman -S - -- Eli Schwartz Bug Wrangler and Trusted User