Difference between revisions of "ABS FAQ"

From ArchWiki
Jump to: navigation, search
(add redirect)
 
(11 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Package development]]
+
#REDIRECT: [[Arch Build System]]
[[Category:About Arch]]
+
[[ja:ABS FAQ]]
+
[[ru:ABS FAQ]]
+
{{merge|ABS}}
+
{{Article summary start}}
+
{{Article summary text|Very simple answers to questions about the Arch Build System and making your own Arch Linux packages.}}
+
{{Article summary heading|Related}}
+
{{Article summary wiki|Arch Build System}}
+
{{Article summary wiki|Arch User Repository}}
+
{{Article summary wiki|Creating Packages}}
+
{{Article summary wiki|pacman}}
+
{{Article summary wiki|PKGBUILD}}
+
{{Article summary end}}
+
 
+
== What is the ABS? ==
+
 
+
"ABS" stands for [[Arch Build System]]. It is a convenient way to create and install Arch Linux packages.
+
 
+
== What do people mean when they say "Use ABS"? ==
+
 
+
They mean, "Make and install an Arch Linux package using the provided Arch Linux tools". If you want to learn how to do this yourself, then keep reading. It's easy!
+
 
+
== How do the Arch Linux developers create all of those binary packages that I install using [[pacman]]? ==
+
 
+
Arch Linux packages are created by first writing a [[PKGBUILD]] file. A PKGBUILD file is a Bash script that contains:
+
 
+
*The name of the package, the version number, and lots of other information.
+
*Instructions for downloading, compiling, and installing the software package.
+
 
+
The newly written PKGBUILD file is then used by the makepkg program which uses the instructions contained within it to create a pacman-installable, binary package with the extenstion '.pkg.tar.xz'.
+
 
+
== Can I get a copy of the PKGBUILD files that the Arch Linux developers use? ==
+
 
+
Sure! Install the program {{pkg|abs}}:
+
 
+
# pacman -S abs
+
 
+
And then run it as root:
+
 
+
# abs
+
 
+
You now have every official Arch Linux PKGBUILD file in {{ic|/var/abs}}.
+
 
+
== What do I do to make a package? ==
+
 
+
First, make sure you have all of the development tools installed:
+
 
+
# pacman -S base-devel
+
 
+
Now, all you need is a PKGBUILD file. I recommend that you make packages in a new directory. Let's say you want to make your own package for {{pkg|vi}}, just like the one you can install using pacman. Copy the PKGBUILD from {{ic|/var/abs}} to a new directory:
+
 
+
$ cp -r /var/abs/core/vi ~/vi
+
 
+
Go to your new directory, and edit the PKGBUILD to your desired specifications with your text editor of choice.
+
 
+
Use the [[makepkg]] command to make a package:
+
 
+
$ makepkg
+
 
+
That's it! You now have a {{ic|.pkg.tar.xz}} package for vi.
+
 
+
== What are all of those other files under {{ic|/var/abs}}? ==
+
 
+
Sometimes a PKGBUILD uses patches, or includes default settings files and examples.
+
 
+
== How do I install the package I just made? ==
+
 
+
Use pacman:
+
 
+
# pacman -U yourpackagename.pkg.tar.gz
+
 
+
The actual name of the file depends on the name of the package, the version number, and what processor architecture you are using.
+
 
+
== How do I make my own PKGBUILD file? ==
+
 
+
You can just copy one from {{ic|/var/abs}} and modify it. You can read more about PKGBUILD files [[Creating Packages | here]].
+
 
+
== Can somebody make a PKGBUILD file for me for a piece of software I want to use? ==
+
 
+
There is a good chance someone already did! Look in the "AUR", or [[Arch User Repository]]. You will find PKGBUILD files that other Arch Linux users made. You can also submit PKGBUILD files that you make yourself.
+

Latest revision as of 22:38, 29 June 2014

Redirect to: