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#47511 - With SRCDEST set, sources with the same file name are assumed to be the same

Attached to Project: Pacman
Opened by Yaohan Chen (hagabaka) - Thursday, 24 December 2015, 01:29 GMT
Last edited by Allan McRae (Allan) - Friday, 01 January 2016, 02:57 GMT
Task Type General Gripe
Category General
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version 4.2.1
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Summary and Info:

Say package foo has a source http://foo.org/download/v1.tar.gz, and package bar has a source http://bar.org/download/v1.tar.gz. If a user sets SRCDEST, and tries to make packages foo and bar in sequence. When making bar, makepkg will see that $SRCDEST/v1.tar.gz already exists, and probably fail due to checksum mismatch.

This scenario is not very unusual, as for example GitHub tarball download URLs use only the tag names as file names.

As a solution, we could allow SRCDEST to use placeholders for the pkgname and/or source URL (filtered to be filename-safe) in the stored path. For example, with SRCDEST="$HOME/sources/%u/", the above source files will be stored and looked up as $HOME/sources/http:%%foo.org%download%v1.tar.gz and $HOME/sources/http:%%bar.org%download%v1.tar.gz respectively.

Steps to Reproduce:

Set SRCDEST to a path in makepkg.conf.
Build two packages which have sources that share the same filename. One example pair of packages in the AUR is communi and libcommuni.
This task depends upon

Closed by  Allan McRae (Allan)
Friday, 01 January 2016, 02:57 GMT
Reason for closing:  Won't implement
Comment by Doug Newgard (Scimmia) - Thursday, 24 December 2015, 02:06 GMT
Which is why packages should rename source files if they have such a generic filename.
Comment by Allan McRae (Allan) - Friday, 01 January 2016, 02:57 GMT
If source file names are generic, it is the packagers responsibility to given them a decent name.

E.g. source=("foo-v1.tar.gz::http://foo.org/download/v1.tar.gz)

Loading...