FS#20361 - IgnorePkg, IgnoreGroup: accept repo/package syntax

Attached to Project: Pacman
Opened by Matthew (piezoelectric) - Wednesday, 04 August 2010, 02:08 GMT
Task Type Feature Request
Category General
Status Unconfirmed
Assigned To No-one
Architecture All
Severity Very Low
Priority Normal
Reported Version 3.4.0
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 2
Private No

Details

Taking a repository in IgnorePkg and IgnoreGroup would be nice. I usually like to hop on the new kernel as soon as it's out to test new features and such, but I when there's another set of packages in testing, it'd be nice to ignore them.

Example:

IgnoreGroup = testing/texlive-most

This is *similar* to FS#17127, which is pretty much a duplicate of  FS#9515 
This task depends upon

Comment by Luke (ekultails) - Tuesday, 08 March 2022, 16:36 GMT
This is the current behavior on Pacman 6.0.1 below. I could not find a way to ignore packages from certain repositories.

Ignoring a package:

```
$ cat /etc/pacman.d/mirrorlist
Server = https://steamdeck-packages.steamos.cloud/archlinux-mirror/$repo/os/$arch
$ cat /etc/pacman.conf
[options]
IgnorePkg = gamescope
[community]
Include = /etc/pacman.d/mirrorlist
[jupiter]
Include = /etc/pacman.d/mirrorlist
SigLevel = Never
$ sudo pacman -S gamescope
:: gamescope is in the IgnorePkg/IgnoreGroup. Install anyway? [Y/n]
$ sudo pacman -S community/gamescope
:: gamescope is in the IgnorePkg/IgnoreGroup. Install anyway? [Y/n]
$ sudo pacman -S jupiter/gamescope
:: gamescope is in the IgnorePkg/IgnoreGroup. Install anyway? [Y/n]
```

Ignoring a package in a specific repository (does not work):

```
$ cat /etc/pacman.d/mirrorlist
Server = https://steamdeck-packages.steamos.cloud/archlinux-mirror/$repo/os/$arch
$ cat /etc/pacman.conf
[options]
IgnorePkg = community/gamescope
[community]
Include = /etc/pacman.d/mirrorlist
[jupiter]
Include = /etc/pacman.d/mirrorlist
SigLevel = Never
$ sudo pacman -S gamescope
resolving dependencies...
$ sudo pacman -S community/gamescope
resolving dependencies...
$ sudo pacman -S jupiter/gamescope
resolving dependencies...
```

As another solution, repositories should separately have their own IgnorePkg sections. For example:

```
[jupiter]
Include = /etc/pacman.d/mirrorlist
SigLevel = Never
IgnorePkg = * !gamescope
```

Loading...