Pacman

Historical bug tracker for the Pacman package manager.

The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues

This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
Tasklist

FS#10416 - Package masking

Attached to Project: Pacman
Opened by Kamil Neczaj (kneczaj) - Wednesday, 14 May 2008, 13:51 GMT
Last edited by Xavier (shining) - Wednesday, 14 May 2008, 16:08 GMT
Task Type Feature Request
Category General
Status Closed
Assigned To No-one
Architecture All
Severity High
Priority Normal
Reported Version 3.1.4
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Problem:
Sometimes in arch's repos there are some broken packages. They are often installed generally during update, so sometimes (because of many updated packages) it's hard to find which of them cause a problem. I know, fixing bugs take some time, but through this time many users may download the unfixed packages. In my opinion it is the main drawback of this distribution, so we must get rid of it. The number of downloads of the broken packages should be decreased.


Suggested Solution:

In my opinion this problem may be resolved by implementing package masking like the one in Gentoo Linux. There would be two parts of this mechanism. One in the repo, which allows repo's maintainers to block packages, for example via bugzilla. The other in the user system which let them to mask broken packages by themself on their system if only they notice some (and unmask blocked if someone want to).

Also system of downgrading should be implemented. If someone downloaded and installed a broken package it must be downgraded as soon as possible (I think this is moment of repos synchronization) if only previous version can be found (for example on user's disk). Pacman may also ask user whether it should downgrade the package or not (optionally add it to local unmask list not to ask in future).

This is _optional_:
If there is some space on repos' servers it would be better to keep the one previous version of each package at least through one week, and after this time delete it only if no one submitted any bug related to newest version (it isn't mask). This would allow users to downgrade broken packages even if they haven't the proper one on their disk. It may be realised using cron, adding cron task automatically when adding package and deleting the task while repo maintainer masks package.

Pacman already supports very simple package masking (IgnorePkg), but it doesn't let to specify version of masked package and repo's maintainers cannot use it to block packages globally, so it's inefficient.
This task depends upon

Closed by  Xavier (shining)
Wednesday, 14 May 2008, 16:08 GMT
Reason for closing:  Won't implement
Additional comments about closing:  too many reasons, see comments.
Comment by Xavier (shining) - Wednesday, 14 May 2008, 15:29 GMT
> Sometimes in arch's repos there are some broken packages.

Then use this bug tracker for reporting them ...

> In my opinion this problem may be resolved by implementing package masking like the one in Gentoo Linux.

Arch is not Gentoo.

> One in the repo, which allows repo's maintainers to block packages, for example via bugzilla.

That is just silly. When a package is broken, it is fixed and replaced by a working one. That's all..

> Also system of downgrading should be implemented.

This bug tracker has a search feature, please use it.
http://bugs.archlinux.org/task/6420
But let's see the first answer of Aaron about that :
"#1 sounds pretty complicated if you ask me, I don't see how -U /var/cache/pacman/pkg/foo-1XYZ.pkg.tar.gz is not "nice"."
which I totally agree with.

> If there is some space on repos' servers it would be better to keep the one previous version of each package at least through one week,
> and after this time delete it only if no one submitted any bug related to newest version

If there is some space on YOUR BOX it would be better to keep the one previous version of each package at least through one week, and after this time delete it only if no one submitted any bug related to newest version

> Pacman already supports very simple package masking (IgnorePkg)

That's it, Pacman and Arch are about simplicity.
Comment by Nagy Gabor (combo) - Wednesday, 14 May 2008, 15:34 GMT
First, why is the priority high? :-P

You ask many things here:
-downgrading: see  FS#6420 
-repo-side blocking: imho there is nothing to do with pacman here, imho broken packages should be 'removed and downgraded' or fixed as soon as possible (downgraded package temporarily can contain force flag to imply a downgrade)
-user-side blocking: the only thing I can imagine here is to implement IgnorePkg=foo=2.4-1. This was discussed somewhere, but nobody liked the idea too much (iirc).
Comment by Nagy Gabor (combo) - Wednesday, 14 May 2008, 15:34 GMT
Xavier, you were faster :-P
Comment by Xavier (shining) - Wednesday, 14 May 2008, 15:42 GMT
Nagy : no problem, you confirmed what I said, and added the other critics I wanted to make:
- high priority ?!
- way too many things, some not even concerning pacman

About that versioned IgnorePkg, I don't remember about it, but I don't like it either. Let's keep it simple :)

I have never seen as many reasons for closing a feature request as Won't implement...
Comment by Dan McGee (toofishes) - Wednesday, 14 May 2008, 15:47 GMT
Broken packages are not pacman's problem. I think we need to address the real problem (broken packages) rather than implement about 3 different workarounds and adding way too much complexity.

Xavier, I'm fine if you want to close this as a won't implement. You and Nagy haven't said anything I disagree with.
Comment by Xavier (shining) - Wednesday, 14 May 2008, 16:07 GMT
Indeed, the important point here is to improve the package quality in the first place, not working around broken packages.
If you have suggestions for improving this, feel free to discuss them on the forums or on arch-general ML.
You can see one example here with the Testing Policy :
http://archlinux.org/pipermail/arch-dev-public/2007-October/002112.html

Anyway you can always help out as an user by testing packages, and writing good bug report for broken packages (which means relevant information, and fixes when possible).

Loading...