Install Functions Reference

The following functions, which are all provided by ebuild.sh and the standard library, handle various install-related tasks. ${D} is automatically handled for all of these functions.

The do* functions, when given multiple arguments, will work upon multiple targets. The new* functions take exactly two arguments (except as noted) — the first is the source name, the second the name to use when installing.

Function Details
into Change install location for dobin, newbin, dosbin, newsbin, dolib, dolib.a, newlib.a, dolib.so, newlib.so
insinto Change install location for doins, newins
exeinto Change install location for doexe, newexe
docinto Change install location for dodoc, newdoc
insopts Specify arguments passed to install (eg -s, -m644)
diropts Specify arguments passed to install for directories
exeopts Specify arguments passed to install for executables
libopts Specify arguments passed to install for libraries
dobin Install a binary into /usr/bin, set the file mode to 0755 and set the ownership to superuser or its equivalent on the system or installation at hand.
doconfd Install an /etc/conf.d file
dodir Install a directory
dodoc Install a documentation file into /usr/share/doc/${PF}
doenvd Install an /etc/env.d file
doexe Install an executable into the location provided by exeinto, by default with mode 0755 or with the install options set by exeopts
doheader Install a header file into /usr/include
dohtml Installs HTML document files into /usr/share/doc/${PF}/html Note: Deprecated in EAPI 6.
doinfo Install a GNU Info document
doinitd Install an /etc/init.d file
doins Install a miscellaneous file
dolib Install a library file
dolib.a Install a library (.a) file
dolib.so Install a library (shared object) file
doman Install a man page
domo Install a Gettext .mo file
dosbin Install an sbin/ file
dosym Create a symlink from the second parameter to the first parameter
fowners Call chown on the specified files in ${D}
fperms Call chmod on the specified files in ${D}
keepdir Create a directory which will be preserved by the package manager (This is typically accomplished by inserting an empty .keep_${CATEGORY}_${PN}-${SLOT%/*} file in the directory)
newbin Install a binary using the second argument as the name
newconfd Install an /etc/conf.d entry using the second argument as the name
newdoc Install a documentation file using the second argument as the name
newenvd Install an /etc/env.d file using the second argument as the name
newexe Install an executable file using the second argument as the name
newheader Install a header file using the second argument as the name
newinitd Install an /etc/init.d file using the second argument as the name
newins Install a miscellaneous file using the second argument as the name
newlib.a Install a .a library file using the second argument as the name
newlib.so Install a .so library file using the second argument as the name
newman Install a manual page using the second argument as the name
newsbin Install an sbin file using the second argument as the name