Talk:Creating packages

From ArchWiki
Revision as of 22:54, 29 January 2013 by Vadmium (talk | contribs) (→‎Confusing Sentences: Putting into pkg/ stage; try and explain the package() fakeroot business a bit)
Jump to navigation Jump to search


If I understand it, makepkg is a script file that uses the information in another script file entitled pkgbuild. Two questions: First, why do they have different emphasis in color and capitalization? Second, where do they come from? Are they included in base-devel? Can anyone help with that? Thanks all. - KitchM 00:30, 8 February 2010 (EST)

makepkg is a command; a PKGBUILD is simply a file, and is sourced by makepkg; not executed. -- pointone 20:43, 10 February 2010 (EST)
Not knowing what you mean by "sourced", am I correct to assume that the makepkg program (which is not a script, but a binary executable) uses the script file "pkgbuild" as a "source" for instructions and information? And if so, can that be explained in the article? - KitchM 01:50, 11 February 2010 (EST)
Info added to introduction. Close. -- Fengchao (talk) 03:13, 15 September 2012 (UTC)


The article mentions makepkg quite a bit, but it fails to tell us how to find it. Does anyone know where it comes from? - KitchM 00:22, 11 February 2010 (EST)

"makepkg" comes from "pacman", "pacman" is always installed. --Beroal 11:25, 17 November 2010 (EST)
Info added. Close. -- Fengchao (talk) 03:13, 15 September 2012 (UTC)


Creating_Packages#The_package.28.29_function is based on that forum thread and "man PKGBUILD". Info is not obtained from developers. --Beroal 11:51, 17 November 2010 (EST)

"tar archive"

I'm curious as to the proper thing to write when referring to an archive made with tar. As tar is short for, "tape archive," obviously writing, "tape archive archive," is wrong. Simply saying tar, though, sounds wrong as well. A lot of people say tarball, but that isn't very descriptive. Your thoughts, please. Ratfink 15:50, 2 February 2011 (EST)

See Wikipedia:RAS syndrome. "Tar archive" is fine in my books; consider "an archive created using the tar utility." -- pointone 17:01, 2 February 2011 (EST)
Note added. Closed. -- Fengchao (talk) 03:16, 15 September 2012 (UTC)

Clarification of Overview

Initially, I completely missed where the files listed in the Overview come from, I also confused the .PKGINFO with PKGBUILD. I think it would be clearer if this line:

  "An Arch package is no more than a tar archive compressed using xz, or 'tarball', which contains:"


  "An Arch package is no more than a tar archive compressed using xz, or 'tarball', which contains the following files generated by makepkg:"

--Mloskot (talk) 22:30, 15 June 2012 (UTC)

Seems reasonable, I think there's no harm if you add that clarification. -- Kynikos (talk) 10:07, 17 June 2012 (UTC)
Done. Close. -- Fengchao (talk) 05:18, 15 September 2012 (UTC)

Confusing Sentences

This is a bit confusing for me:

In old packages, there was no package() function. So, putting compiled files was done at the end of the build() function. If package() is not present, build() runs via fakeroot. If package() is present, build() runs as the user calling makepkg, package() runs via fakeroot.

I'm guessing "putting" should be either "placing of" or "packaging," but I'm not sure. I'm also completely confused about the last sentence. - Zeniff (talk) 23:35, 7 July 2012 (UTC)

Putting = arranging or installing into the pkg/ temporary staging directory, ready to be packaged by makepkg; i.e. what the package() function is now for. Maybe if it said “putting files into pkg/”? The last sentence is saying what normally happens: only package() runs in the fakeroot environment, and build() runs without any special privileges (so cannot set file ownership, etc). Vadmium (talk) 22:54, 29 January 2013 (UTC).