FS#51301 - [pacman] makepkg -i should not unpack pkgver prepare for vcs packages

Attached to Project: Arch Linux
Opened by Chris Severance (severach) - Sunday, 09 October 2016, 21:01 GMT
Last edited by Allan McRae (Allan) - Sunday, 09 October 2016, 21:47 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
makepkg -i on a non VCS package installs the package. On a VCS package makepkg -i produces the src folder so it can run pkgver() and prepare() then installs the package. makepkg -i should behave the same on VCS and non VCS packages.

makepkg -ei could be a workaround but that doesn't work either.

Additional info:
* package version(s)
* config and/or log files etc.

Steps to reproduce:

Make a VCS package with makepkg -scCf
Install the VCS package with makepkg -i
makepkg should not extract, pkgver(), and prepare() the src.

Make a VCS package with makepkg -sCf
Install the VCS package with makepkg -i
makepkg should not extract, pkgver(), and prepare() the src.
This task depends upon

Closed by  Allan McRae (Allan)
Sunday, 09 October 2016, 21:47 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Working as intended
Comment by Dave Reisner (falconindy) - Sunday, 09 October 2016, 21:09 GMT
There's no inconsistency. It's because of the pkgver function that makepkg has to unpack the source tarball. The fact that the source is some VCS is irrelevant.

'makepkg -i' needs to know that the current package version has been built. If pkgver() exists, it's used to determine the pkgver before detecting the presence of the built package. pkgver(), by necessity, needs the source unpacked in order to do its job.
Comment by Allan McRae (Allan) - Sunday, 09 October 2016, 21:47 GMT
"makepkg -i" does not just install the package. It builds the package if needed and then installs it.

Loading...