mirror of
https://github.com/moparisthebest/pacman
synced 2024-11-17 23:05:00 -05:00
2349 lines
58 KiB
Plaintext
2349 lines
58 KiB
Plaintext
# SOME DESCRIPTIVE TITLE
|
|
# Copyright (C) YEAR Free Software Foundation, Inc.
|
|
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
#
|
|
#, fuzzy
|
|
msgid ""
|
|
msgstr ""
|
|
"Project-Id-Version: PACKAGE VERSION\n"
|
|
"POT-Creation-Date: 2006-09-03 13:36+0200\n"
|
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
|
"MIME-Version: 1.0\n"
|
|
"Content-Type: text/plain; charset=CHARSET\n"
|
|
"Content-Transfer-Encoding: ENCODING"
|
|
|
|
# type: TH
|
|
#: pacman.8:1
|
|
#, no-wrap
|
|
msgid "pacman"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: pacman.8:1
|
|
#, no-wrap
|
|
msgid "January 21, 2006"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: pacman.8:1
|
|
#, no-wrap
|
|
msgid "Frugalware User Manual"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:2 makepkg.8:2 FrugalBuild.8:2
|
|
#, no-wrap
|
|
msgid "NAME"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:4
|
|
msgid "pacman - package manager utility"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:4 makepkg.8:4
|
|
#, no-wrap
|
|
msgid "SYNOPSIS"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:6
|
|
msgid "B<pacman E<lt>operationE<gt> [options] E<lt>packageE<gt> [package] ...>"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:6 makepkg.8:6 FrugalBuild.8:4
|
|
#, no-wrap
|
|
msgid "DESCRIPTION"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:11
|
|
msgid ""
|
|
"B<pacman> is a I<package management> utility that tracks installed packages "
|
|
"on a linux system. It has simple dependency support and the ability to "
|
|
"connect to a remote ftp server and automatically upgrade packages on the "
|
|
"local system. pacman package are I<bzipped tar> format."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:11
|
|
#, no-wrap
|
|
msgid "OPERATIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:12
|
|
#, no-wrap
|
|
msgid "B<-A, --add>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:16
|
|
msgid ""
|
|
"Add a package to the system. Package will be uncompressed into the "
|
|
"installation root and the database will be updated."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:16
|
|
#, no-wrap
|
|
msgid "B<-F, --freshen>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:20
|
|
msgid ""
|
|
"This is like --upgrade except that, unlike --upgrade, this will only upgrade "
|
|
"packages that are already installed on your system."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:20
|
|
#, no-wrap
|
|
msgid "B<-Q, --query>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:28
|
|
msgid ""
|
|
"Query the package database. This operation allows you to view installed "
|
|
"packages and their files, as well as meta-info about individual packages "
|
|
"(dependencies, conflicts, install date, build date, size). This can be run "
|
|
"against the local package database or can be used on individual .fpm "
|
|
"packages. See B<QUERY OPTIONS> below."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:28
|
|
#, no-wrap
|
|
msgid "B<-c, --changelog>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:31
|
|
msgid "View the changelog of a package."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:31
|
|
#, no-wrap
|
|
msgid "B<-R, --remove>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:38
|
|
msgid ""
|
|
"Remove a package from the system. Files belonging to the specified package "
|
|
"will be deleted, and the database will be updated. Most configuration files "
|
|
"will be saved with a I<.pacsave> extension unless the B<--nosave> option was "
|
|
"used."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:38
|
|
#, no-wrap
|
|
msgid "B<-S, --sync>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:45
|
|
msgid ""
|
|
"Synchronize packages. With this function you can install packages directly "
|
|
"from the ftp servers, complete with all dependencies required to run the "
|
|
"packages. For example, B<pacman -S qt> will download qt and all the "
|
|
"packages it depends on and install them. You could also use B<pacman -Su> to "
|
|
"upgrade all packages that are out of date (see below)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:45
|
|
#, no-wrap
|
|
msgid "B<-U, --upgrade>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:50
|
|
msgid ""
|
|
"Upgrade a package. This is essentially a \"remove-then-add\" process. See "
|
|
"B<HANDLING CONFIG FILES> for an explanation on how pacman takes care of "
|
|
"config files."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:50
|
|
#, no-wrap
|
|
msgid "B<-V, --version>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:53
|
|
msgid "Display version and exit."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:53 makepkg.8:66
|
|
#, no-wrap
|
|
msgid "B<-h, --help>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:57
|
|
msgid ""
|
|
"Display syntax for the given operation. If no operation was supplied then "
|
|
"the general syntax is shown."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:57 makepkg.8:19
|
|
#, no-wrap
|
|
msgid "OPTIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:58 makepkg.8:38
|
|
#, no-wrap
|
|
msgid "B<-d, --nodeps>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:64
|
|
msgid ""
|
|
"Skips all dependency checks. Normally, pacman will always check a package's "
|
|
"dependency fields to ensure that all dependencies are installed and there "
|
|
"are no package conflicts in the system. This switch disables these checks."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:64 makepkg.8:51
|
|
#, no-wrap
|
|
msgid "B<-f, --force>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:70
|
|
msgid ""
|
|
"Bypass file conflict checks, overwriting conflicting files. If the package "
|
|
"that is about to be installed contains files that are already installed, "
|
|
"this option will cause all those files to be overwritten. This option "
|
|
"should be used with care, ideally not at all."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:70
|
|
#, no-wrap
|
|
msgid "B<-r, --root E<lt>pathE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:79
|
|
msgid ""
|
|
"Specify alternative installation root (default is \"/\"). This should I<not> "
|
|
"be used as a way to install software into e.g. /usr/local instead of "
|
|
"/usr. Instead this should be used if you want to install a package on a "
|
|
"temporary mounted partition, which is \"owned\" by another system. By using "
|
|
"this option you not only specify where the software should be installed, but "
|
|
"you also specify which package database to use."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:79
|
|
#, no-wrap
|
|
msgid "B<-v, --verbose>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:82
|
|
msgid "Output more status and error messages."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:82
|
|
#, no-wrap
|
|
msgid "B<--config E<lt>pathE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:85
|
|
msgid "Specify an alternate configuration file."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:85 makepkg.8:131
|
|
#, no-wrap
|
|
msgid "B<--noconfirm>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:89
|
|
msgid ""
|
|
"Bypass any and all \"Are you sure?\" messages. It's not a good idea to do "
|
|
"this unless you want to run pacman from a script."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:89
|
|
#, no-wrap
|
|
msgid "B<--ask E<lt>numberE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:94
|
|
msgid ""
|
|
"Finetune the --noconfirm switch by not answering \"yes\" to all libalpm "
|
|
"questions, but you are able to specify yes/no for all type of libalpm "
|
|
"questions. The types are the followings:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:101
|
|
#, no-wrap
|
|
msgid ""
|
|
"The given package is in IgnorePkg. (1)\n"
|
|
"Replace package foo with bar? (2)\n"
|
|
"foo conflicts with bar. Remove bar? (4)\n"
|
|
"Do you want to delete the corrupted package? (8)\n"
|
|
"Local version is newer. (16)\n"
|
|
"Local version is up to date. (32)\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:104
|
|
msgid ""
|
|
"Select for what types do you want to answer yes, sum up the values and use "
|
|
"the result as a parameter to this option."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:104 makepkg.8:136
|
|
#, no-wrap
|
|
msgid "B<--noprogressbar>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:108
|
|
msgid ""
|
|
"Do not show a progress bar when downloading files. This can be useful for "
|
|
"scripts that call pacman and capture the output."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:108
|
|
#, no-wrap
|
|
msgid "SYNC OPTIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:109 makepkg.8:30
|
|
#, no-wrap
|
|
msgid "B<-c, --clean>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:116
|
|
msgid ""
|
|
"Remove old packages from the cache. When pacman downloads packages, it "
|
|
"saves them in I</var/cache/pacman/pkg>. If you need to free up diskspace, "
|
|
"you can remove these packages by using the --clean option. Using one "
|
|
"--clean (or -c) switch will only remove I<old> packages. Use it twice to "
|
|
"remove I<all> packages from the cache."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:116
|
|
#, no-wrap
|
|
msgid "B<-e, --dependsonly>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:121
|
|
msgid ""
|
|
"Don't install the packages itself, only their dependencies. This can be "
|
|
"handy if you want to install the packages themselves with different options "
|
|
"or from source."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:121 pacman.8:191
|
|
#, no-wrap
|
|
msgid "B<-g, --groups>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:125
|
|
msgid ""
|
|
"Display all the members for each package group specified. If no group names "
|
|
"are provided, all groups will be listed."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:125 pacman.8:195
|
|
#, no-wrap
|
|
msgid "B<-i, --info>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:130
|
|
msgid ""
|
|
"Display dependency information for a given package. This will search "
|
|
"through all repositories for a matching package and display the "
|
|
"dependencies, conflicts, etc."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:130 pacman.8:199
|
|
#, no-wrap
|
|
msgid "B<-l, --list>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:134
|
|
msgid ""
|
|
"List all files in the specified repositories. Multiple repositories can be "
|
|
"specified on the command line."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:134
|
|
#, no-wrap
|
|
msgid "B<-p, --print-uris>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:139
|
|
msgid ""
|
|
"Print out URIs for each package that will be installed, including any "
|
|
"dependencies that have yet to be installed. These can be piped to a file "
|
|
"and downloaded at a later time, using a program like wget."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:139 pacman.8:215
|
|
#, no-wrap
|
|
msgid "B<-s, --search E<lt>regexpE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:143
|
|
msgid ""
|
|
"This will search each package in the package list for names or descriptions "
|
|
"that contains E<lt>regexpE<gt>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:143
|
|
#, no-wrap
|
|
msgid "B<-u, --sysupgrade>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:151
|
|
msgid ""
|
|
"Upgrades all packages that are out of date. pacman will examine every "
|
|
"package installed on the system, and if a newer package exists on the server "
|
|
"it will upgrade. pacman will present a report of all packages it wants to "
|
|
"upgrade and will not proceed without user confirmation. Dependencies are "
|
|
"automatically resolved at this level and will be installed/upgraded if "
|
|
"necessary."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:151
|
|
#, no-wrap
|
|
msgid "B<-w, --downloadonly>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:154
|
|
msgid "Retrieve all packages from the server, but do not install/upgrade anything."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:154
|
|
#, no-wrap
|
|
msgid "B<-y, --refresh>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:159
|
|
msgid ""
|
|
"Download a fresh copy of the master package list from the ftp server defined "
|
|
"in I</etc/pacman.conf>. This should typically be used each time you use "
|
|
"B<--sysupgrade>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:159
|
|
#, no-wrap
|
|
msgid "B<--ignore E<lt>pkgE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:164
|
|
msgid ""
|
|
"This option functions exactly the same as the B<IgnorePkg> configuration "
|
|
"directive. Sometimes it can be handy to skip some package updates without "
|
|
"having to edit I<pacman.conf> each time."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:164
|
|
#, no-wrap
|
|
msgid "REMOVE OPTIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:165
|
|
#, no-wrap
|
|
msgid "B<-c, --cascade>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:169
|
|
msgid ""
|
|
"Remove all target packages, as well as all packages that depend on one or "
|
|
"more target packages. This operation is recursive."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:169
|
|
#, no-wrap
|
|
msgid "B<-k, --keep>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:172
|
|
msgid "Removes the database entry only. Leaves all files in place."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:172
|
|
#, no-wrap
|
|
msgid "B<-n, --nosave>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:179
|
|
msgid ""
|
|
"Instructs pacman to ignore file backup designations. Normally, when a file "
|
|
"is about to be I<removed> from the system the database is first checked to "
|
|
"see if the file should be renamed to a .pacsave extension. If B<--nosave> "
|
|
"is used, these designations are ignored and the files are removed."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:179
|
|
#, no-wrap
|
|
msgid "B<-s, --recursive>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:185
|
|
msgid ""
|
|
"For each target specified, remove it and all its dependencies, provided that "
|
|
"(A) they are not required by other packages; and (B) they were not "
|
|
"explicitly installed by the user. This option is analagous to a backwards "
|
|
"--sync operation."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:185
|
|
#, no-wrap
|
|
msgid "QUERY OPTIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:186
|
|
#, no-wrap
|
|
msgid "B<-e, --orphans>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:191
|
|
msgid ""
|
|
"List all packages that were installed as a dependency (ie, not installed "
|
|
"explicitly) and are not required by any other packages."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:195
|
|
msgid ""
|
|
"Display all groups that a specified package is part of. If no package names "
|
|
"are provided, all groups and members will be listed."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:199
|
|
msgid ""
|
|
"Display information on a given package. If it is used with the B<-p> option "
|
|
"then the .PKGINFO file will be printed."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:203
|
|
msgid ""
|
|
"List all files owned by E<lt>packageE<gt>. Multiple packages can be "
|
|
"specified on the command line."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:203
|
|
#, no-wrap
|
|
msgid "B<-m, --foreign>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:207
|
|
msgid ""
|
|
"List all packages that were not found in the sync database(s). Typically "
|
|
"these are packages that were downloaded manually and installed with --add."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:207
|
|
#, no-wrap
|
|
msgid "B<-o, --owns E<lt>fileE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:210
|
|
msgid "Search for the package that owns E<lt>fileE<gt>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:210
|
|
#, no-wrap
|
|
msgid "B<-p, --file>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:215
|
|
msgid ""
|
|
"Tells pacman that the package supplied on the command line is a file, not an "
|
|
"entry in the database. Pacman will decompress the file and query it. This "
|
|
"is useful with B<--info> and B<--list>."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:219
|
|
msgid ""
|
|
"This will search each locally-installed package for names or descriptions "
|
|
"that contains E<lt>regexpE<gt>."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:219
|
|
#, no-wrap
|
|
msgid "HANDLING CONFIG FILES"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:226
|
|
msgid ""
|
|
"pacman uses the same logic as rpm to determine action against files that are "
|
|
"designated to be backed up. During an upgrade, it uses 3 md5 hashes for "
|
|
"each backup file to determine the required action: one for the original file "
|
|
"installed, one for the new file that's about to be installed, and one for "
|
|
"the actual file existing on the filesystem. After comparing these 3 hashes, "
|
|
"the follow scenarios can result:"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:226
|
|
#, no-wrap
|
|
msgid "original=B<X>, current=B<X>, new=B<X>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:229
|
|
msgid "All three files are the same, so we win either way. Install the new file."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:229
|
|
#, no-wrap
|
|
msgid "original=B<X>, current=B<X>, new=B<Y>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:234
|
|
msgid ""
|
|
"The current file is un-altered from the original but the new one is "
|
|
"different. Since the user did not ever modify the file, and the new one may "
|
|
"contain improvements/bugfixes, we install the new file."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:234
|
|
#, no-wrap
|
|
msgid "original=B<X>, current=B<Y>, new=B<X>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:239
|
|
msgid ""
|
|
"Both package versions contain the exact same file, but the one on the "
|
|
"filesystem has been modified since. In this case, we leave the current file "
|
|
"in place."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:239
|
|
#, no-wrap
|
|
msgid "original=B<X>, current=B<Y>, new=B<Y>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:242
|
|
msgid ""
|
|
"The new one is identical to the current one. Win win. Install the new "
|
|
"file."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:242
|
|
#, no-wrap
|
|
msgid "original=B<X>, current=B<Y>, new=B<Z>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:247
|
|
msgid ""
|
|
"All three files are different, so we install the new file with a .pacnew "
|
|
"extension and warn the user, so she can manually move the file into place "
|
|
"after making any necessary customizations."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:247 makepkg.8:141
|
|
#, no-wrap
|
|
msgid "CONFIGURATION"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:253
|
|
msgid ""
|
|
"pacman will attempt to read I</etc/pacman.conf> each time it is invoked. "
|
|
"This configuration file is divided into sections or I<repositories>. Each "
|
|
"section defines a package repository that pacman can use when searching for "
|
|
"packages in --sync mode. The exception to this is the I<options> section, "
|
|
"which defines global options."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:254
|
|
#, no-wrap
|
|
msgid "Example:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:260
|
|
#, no-wrap
|
|
msgid ""
|
|
"[options]\n"
|
|
"NoUpgrade = etc/passwd etc/group etc/shadow\n"
|
|
"NoUpgrade = etc/fstab\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:262
|
|
#, no-wrap
|
|
msgid "Include = /etc/pacman.d/current\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:265
|
|
#, no-wrap
|
|
msgid ""
|
|
"[custom]\n"
|
|
"Server = file:///home/pkgs\n"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:268
|
|
#, no-wrap
|
|
msgid "CONFIG: OPTIONS"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:269
|
|
#, no-wrap
|
|
msgid "B<DBPath = path/to/db/dir>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:273
|
|
msgid ""
|
|
"Overrides the default location of the toplevel database directory. The "
|
|
"default is I<var/lib/pacman>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:273
|
|
#, no-wrap
|
|
msgid "B<CacheDir = path/to/cache/dir>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:277
|
|
msgid ""
|
|
"Overrides the default location of the package cache directory. The default "
|
|
"is I<var/cache/pacman>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:277
|
|
#, no-wrap
|
|
msgid "B<HoldPkg = E<lt>packageE<gt> [package] ...>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:281
|
|
msgid ""
|
|
"If a user tries to B<--remove> a package that's listed in HoldPkg, pacman "
|
|
"will ask for confirmation before proceeding."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:281
|
|
#, no-wrap
|
|
msgid "B<IgnorePkg = E<lt>packageE<gt> [package] ...>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:285
|
|
msgid ""
|
|
"Instructs pacman to ignore any upgrades for this package when performing a "
|
|
"B<--sysupgrade>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:285
|
|
#, no-wrap
|
|
msgid "B<UpgradeDelay = E<lt>numberE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:289
|
|
msgid ""
|
|
"Upgrade only the packages that are at least E<lt>numberE<gt> days old when "
|
|
"performing a B<--sysupgrade>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:289
|
|
#, no-wrap
|
|
msgid "B<Include = E<lt>pathE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:293
|
|
msgid ""
|
|
"Include another config file. This config file can include repositories or "
|
|
"general configuration options."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:293
|
|
#, no-wrap
|
|
msgid "B<ProxyServer = E<lt>host|ipE<gt>[:port]>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:296
|
|
msgid "If set, pacman will use this proxy server for all ftp/http transfers."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:296
|
|
#, no-wrap
|
|
msgid "B<XferCommand = /path/to/command %u>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:302
|
|
msgid ""
|
|
"If set, pacman will use this external program to download all remote files. "
|
|
"All instances of B<%u> will be replaced with the URL to be downloaded. If "
|
|
"present, instances of B<%o> will be replaced with the local filename, plus a "
|
|
"\".part\" extension, which allows programs like wget to do file resumes "
|
|
"properly."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:306
|
|
msgid ""
|
|
"This option is useful for users who experience problems with pacman's "
|
|
"built-in http/ftp support, or need the more advanced proxy support that "
|
|
"comes with utilities like wget."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:306
|
|
#, no-wrap
|
|
msgid "B<NoPassiveFtp>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:309
|
|
msgid ""
|
|
"Disables passive ftp connections when downloading packages. (aka Active "
|
|
"Mode)"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:309
|
|
#, no-wrap
|
|
msgid "B<NoUpgrade = E<lt>fileE<gt> [file] ...>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:313
|
|
msgid ""
|
|
"All files listed with a B<NoUpgrade> directive will never be touched during "
|
|
"a package install/upgrade. I<Note:> do not include the leading slash when "
|
|
"specifying files."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:313
|
|
#, no-wrap
|
|
msgid "B<NoExtract = E<lt>fileE<gt> [file] ...>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:320
|
|
msgid ""
|
|
"All files listed with a B<NoExtract> directive will never be extracted from "
|
|
"a package into the filesystem. This can be useful when you don't want part "
|
|
"of a package to be installed. For example, if your httpd root uses an "
|
|
"index.php, then you would not want the index.html file to be extracted from "
|
|
"the apache package."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:320
|
|
#, no-wrap
|
|
msgid "B<UseSyslog>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:324
|
|
msgid ""
|
|
"Log action messages through syslog(). This will insert pacman log entries "
|
|
"into your /var/log/messages or equivalent."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: pacman.8:324
|
|
#, no-wrap
|
|
msgid "B<LogFile = /path/to/file>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:327
|
|
msgid "Log actions directly to a file, usually /var/log/pacman.log."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:328
|
|
#, no-wrap
|
|
msgid "CONFIG: REPOSITORIES"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:335
|
|
msgid ""
|
|
"Each repository section defines a section name and at least one location "
|
|
"where the packages can be found. The section name is defined by the string "
|
|
"within square brackets (eg, the two above are 'current' and 'custom'). "
|
|
"Locations are defined with the I<Server> directive and follow a URL naming "
|
|
"structure. Currently only ftp is supported for remote servers. If you want "
|
|
"to use a local directory, you can specify the full path with a 'file://' "
|
|
"prefix, as shown above."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:335
|
|
#, no-wrap
|
|
msgid "USING YOUR OWN REPOSITORY"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:339
|
|
msgid ""
|
|
"Let's say you have a bunch of custom packages in I</home/pkgs> and their "
|
|
"respective FrugalBuild files are all in I</var/fst/local>. All you need to "
|
|
"do is generate a compressed package database in the I</home/pkgs> directory "
|
|
"so pacman can find it when run with --refresh."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:343
|
|
#, no-wrap
|
|
msgid "# gensync /var/fst/local /home/pkgs/custom.fdb\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:353
|
|
msgid ""
|
|
"The above command will read all FrugalBuild files in /var/fst/local and "
|
|
"generate a compressed database called /home/pkgs/custom.fdb. Note that the "
|
|
"database must be of the form I<{treename}.fdb>, where {treename} is the name "
|
|
"of the section defined in the configuration file. That's it! Now configure "
|
|
"your I<custom> section in the configuration file as shown in the config "
|
|
"example above. Pacman will now use your package repository. If you add new "
|
|
"packages to the repository, remember to re-generate the database and use "
|
|
"pacman's --refresh option."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:353 makepkg.8:149 FrugalBuild.8:453
|
|
#, no-wrap
|
|
msgid "SEE ALSO"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:355
|
|
msgid "B<makepkg> is the package-building tool that comes with pacman."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: pacman.8:355 makepkg.8:152 FrugalBuild.8:456
|
|
#, no-wrap
|
|
msgid "AUTHOR"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: pacman.8:359 makepkg.8:156 FrugalBuild.8:460
|
|
#, no-wrap
|
|
msgid ""
|
|
"Judd Vinet E<lt>jvinet@zeroflux.orgE<gt>\n"
|
|
"and the Frugalware developers E<lt>frugalware-devel@frugalware.orgE<gt>\n"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: makepkg.8:1
|
|
#, no-wrap
|
|
msgid "makepkg"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: makepkg.8:1
|
|
#, no-wrap
|
|
msgid "January 30, 2006"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: makepkg.8:1 FrugalBuild.8:1
|
|
#, no-wrap
|
|
msgid "Frugalware Developer Manual"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:4
|
|
msgid "makepkg - package build utility"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:6
|
|
msgid "B<makepkg [options]>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:15
|
|
msgid ""
|
|
"B<makepkg> will build packages for you. All it needs is a build-capable "
|
|
"linux platform, wget, and some build scripts. The advantage to a "
|
|
"script-based build is that you only really do the work once. Once you have "
|
|
"the build script for a package, you just need to run makepkg and it will do "
|
|
"the rest: download and validate source files, check dependencies, configure "
|
|
"the buildtime settings, build the package, install the package into a "
|
|
"temporary root, make customizations, generate meta-info, and package the "
|
|
"whole thing up for B<pacman> to use."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:18
|
|
msgid ""
|
|
"B<makeworld> can be used to rebuild an entire package group or the entire "
|
|
"build tree. See B<makeworld --help> for syntax."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:20
|
|
#, no-wrap
|
|
msgid "B<-b, --builddeps>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:27
|
|
msgid ""
|
|
"Build missing dependencies from source. When makepkg finds missing "
|
|
"build-time or run-time dependencies, it will look for the dependencies' "
|
|
"FrugalBuild files under $fst_root (set in your /etc/repoman.conf). If it "
|
|
"finds them it will run another copy of makepkg to build and install the "
|
|
"missing dependencies. The child makepkg calls will be made with the B<-b> "
|
|
"and B<-i> options."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:27
|
|
#, no-wrap
|
|
msgid "B<-B, --noccache>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:30
|
|
msgid "Do not use ccache during build."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:33
|
|
msgid "Clean up leftover work files/directories after a successful build."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:33
|
|
#, no-wrap
|
|
msgid "B<-C, --cleancache>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:38
|
|
msgid ""
|
|
"Used with --chroot cleans up the chroot which means removing unnecessary "
|
|
"packages from it. If used twice, then it removes all source files from the "
|
|
"cache directory and cleans up the full compiler cache to free up diskspace."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:43
|
|
msgid ""
|
|
"Do not perform any dependency checks. This will let you override/ignore any "
|
|
"dependencies required. There's a good chance this option will break the "
|
|
"build process if all of the dependencies aren't installed."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:43
|
|
#, no-wrap
|
|
msgid "B<-D E<lt>pkgnameE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:46
|
|
msgid "Clean up only one package's compiler cache. (Uses ccache -C.)"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:46
|
|
#, no-wrap
|
|
msgid "B<-e, --noextract>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:51
|
|
msgid ""
|
|
"Do not extract source files. Instead, use whatever already exists in the "
|
|
"src/ directory. This is handy if you want to go into src and manually "
|
|
"patch/tweak code, then make a package out of the result."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:56
|
|
msgid ""
|
|
"B<makepkg> will not build a package if a I<pkgname-pkgver-pkgrel-arch.fpm> "
|
|
"file already exists in the build directory. You can override this behaviour "
|
|
"with the B<--force> switch."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:56
|
|
#, no-wrap
|
|
msgid "B<-G, --genmd5>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:61
|
|
msgid ""
|
|
"Download all source files (if required) and use I<md5sum> to generate md5 "
|
|
"hashes for each of them. You can then redirect the output into your "
|
|
"FrugalBuild for source validation (makepkg -G E<gt>E<gt>FrugalBuild)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:61
|
|
#, no-wrap
|
|
msgid "B<-g, --gensha1>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:66
|
|
msgid ""
|
|
"Download all source files (if required) and use I<sha1sum> to generate sha1 "
|
|
"hashes for each of them. You can then redirect the output into your "
|
|
"FrugalBuild for source validation (makepkg -g E<gt>E<gt>FrugalBuild)."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:69
|
|
msgid "Output syntax and commandline options."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:69
|
|
#, no-wrap
|
|
msgid "B<-i, --install>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:72
|
|
msgid "Install/Upgrade the package after a successful build."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:72
|
|
#, no-wrap
|
|
msgid "B<-j E<lt>jobsE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:76
|
|
msgid ""
|
|
"Sets MAKEFLAGS=\"-jE<lt>jobsE<gt>\" before building the package. This is "
|
|
"useful for overriding the MAKEFLAGS setting in /etc/makepkg.conf."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:76
|
|
#, no-wrap
|
|
msgid "B<-L, --nolastmod>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:79
|
|
msgid "Disable updating the Last modified line."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:79
|
|
#, no-wrap
|
|
msgid "B<-k, --logging>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:82
|
|
msgid "Logging package build process"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:82
|
|
#, no-wrap
|
|
msgid "B<-l E<lt>pkgnameE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:87
|
|
msgid ""
|
|
"Download the package's buildscript before starting the build. This is "
|
|
"useful if you do not want to do a full 'repoman upd' nor want to download "
|
|
"manually the buildscript."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:87
|
|
#, no-wrap
|
|
msgid "B<-m, --nocolor>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:90
|
|
msgid "Disable color in output messages"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:90
|
|
#, no-wrap
|
|
msgid "B<-n, --nostrip>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:93
|
|
msgid "Do not strip binaries and libraries."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:93
|
|
#, no-wrap
|
|
msgid "B<-o, --nobuild>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:96
|
|
msgid "Download and extract files only, do not build."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:96
|
|
#, no-wrap
|
|
msgid "B<-p E<lt>buildscriptE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:99
|
|
msgid ""
|
|
"Read the package script I<E<lt>buildscriptE<gt>> instead of the default "
|
|
"(I<FrugalBuild>)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:99
|
|
#, no-wrap
|
|
msgid "B<-r, --rmdeps>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:103
|
|
msgid ""
|
|
"Upon successful build, remove any dependencies installed by makepkg/pacman "
|
|
"during dependency auto-resolution (using B<-b> or B<-s>)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:103
|
|
#, no-wrap
|
|
msgid "B<-R, --chroot>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:106
|
|
msgid "Build the package in a chroot environment."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:106
|
|
#, no-wrap
|
|
msgid "B<-s, --syncdeps>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:112
|
|
msgid ""
|
|
"Install missing dependencies using pacman. When makepkg finds missing "
|
|
"build-time or run-time dependencies, it will run pacman to try and resolve "
|
|
"them. If successful, pacman will download the missing packages from a "
|
|
"package repository and install them for you."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:112
|
|
#, no-wrap
|
|
msgid "B<-t E<lt>treeE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:117
|
|
msgid ""
|
|
"When building in a chroot (using -R) you may want to build packages for a "
|
|
"version other than the host one. Using this option, it's possible to build "
|
|
"packages for \"stable\" while the host system is \"current\" and vica versa."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:117
|
|
#, no-wrap
|
|
msgid "B<-u, --noup2date>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:126
|
|
msgid ""
|
|
"Do not check for newer version before starting build. Normally makepkg will "
|
|
"prevent you from building obsolete source by mistake. If you know what you "
|
|
"are doing, you can disable this feature with this switch. B<-S, --sudosync> "
|
|
"Install missing dependencies using pacman and sudo. This is the same as "
|
|
"B<-s> except that makepkg will call pacman with sudo. This means you don't "
|
|
"have to build as root to use dependency auto-resolution."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: makepkg.8:127
|
|
#, no-wrap
|
|
msgid "B<-w E<lt>destdirE<gt>>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:131
|
|
msgid ""
|
|
"Write the resulting package file to the directory I<E<lt>destdirE<gt>> "
|
|
"instead of the current working directory."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:136
|
|
msgid ""
|
|
"When calling pacman to resolve dependencies or conflicts, makepkg can pass "
|
|
"the I<--noconfirm> option to it so it does not wait for any user input "
|
|
"before proceeding with operations."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:140
|
|
msgid ""
|
|
"When calling pacman, makepkg can pass the I<--noprogressbar> option to it. "
|
|
"This is useful if one is directing makepkg's output to a non-terminal (ie, a "
|
|
"file)."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:146
|
|
msgid ""
|
|
"Configuration options are stored in I</etc/makepkg.conf>. This file is "
|
|
"parsed as a bash script, so you can export any special compiler flags you "
|
|
"wish to use. This is helpful for building for different architectures, or "
|
|
"with different optimizations."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:149
|
|
msgid ""
|
|
"B<NOTE:> This does not guarantee that all package Makefiles will use your "
|
|
"exported variables. Some of them are flaky..."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: makepkg.8:152
|
|
msgid "B<FrugalBuild>(8), B<pacman>(8)"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: FrugalBuild.8:1
|
|
#, no-wrap
|
|
msgid "FrugalBuild"
|
|
msgstr ""
|
|
|
|
# type: TH
|
|
#: FrugalBuild.8:1
|
|
#, no-wrap
|
|
msgid "June 13, 2006"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:4
|
|
msgid "FrugalBuild - Frugalware package builder descriptor"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:8
|
|
msgid ""
|
|
"This manual page is meant to describe general rules about FrugalBuilds. If "
|
|
"you're interested in the package builder B<makepkg> itself, then see its "
|
|
"manual page, not this one."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: FrugalBuild.8:11
|
|
#, no-wrap
|
|
msgid "FrugalBuild Example:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:17
|
|
#, no-wrap
|
|
msgid ""
|
|
"# Last Modified: Sun, 19 Jun 2005 15:24:32 +0000\n"
|
|
"# Compiling Time: 0.17 SBU\n"
|
|
"# Maintainer: Name E<lt>email@addr.essE<gt>\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:27
|
|
#, no-wrap
|
|
msgid ""
|
|
"pkgname=dvdauthor\n"
|
|
"pkgver=0.6.11\n"
|
|
"pkgrel=3\n"
|
|
"pkgdesc=\"Will generate a DVD movie from a valid mpeg2 stream\"\n"
|
|
"depends=('imagemagick' 'libdvdread')\n"
|
|
"Finclude sourceforge\n"
|
|
"groups=('xapps')\n"
|
|
"archs=('i686' 'x86_64')\n"
|
|
"sha1sums=('a99ea7ef6e50646b77ad47a015127925053d34ea')\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:29
|
|
#, no-wrap
|
|
msgid "# optimization OK\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:34
|
|
msgid ""
|
|
"As you can see, the setup is fairly simple. The first line tracks the time "
|
|
"of the last update, this is automatically updated after a successful build."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:37
|
|
msgid ""
|
|
"The next line defines its build time. Of course, it depends on your "
|
|
"hardware, so we use SBUs instead of minutes as a unit."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:41
|
|
msgid ""
|
|
"SBU is the Static Binutils Unit, which means the time \"repoman merge "
|
|
"binutils\" takes on your machine. By default makepkg will print out how many "
|
|
"seconds the build took. After you built binutils, you should update your "
|
|
"/etc/makepkg.conf:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:43
|
|
msgid "SBU=\"257\""
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:47
|
|
msgid ""
|
|
"The line above means compiling binutils on your machine took 257 seconds. "
|
|
"Starting from this point, makepkg will print out SBUs instead of seconds "
|
|
"after successful builds, and this SBU value will be equal on anyone's "
|
|
"machine."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:53
|
|
msgid ""
|
|
"If you wish to maintain the package, write your name or nick and e-mail "
|
|
"address to the third line. If you don't plan to maintain the package just "
|
|
"wrote the FrugalBuild, then write Contributor instead of Maintainer, and "
|
|
"then someone can take it and will add his/her line later. Other lines like "
|
|
"\"Modified by\" are not allowed. Use the darcs patch comments to mention "
|
|
"others if you wish."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:61
|
|
msgid ""
|
|
"pkgname defines the package name. It should not contain any uppercase "
|
|
"letters. The package version defines the upstream version, while the "
|
|
"package release tracks the Frugalware-specific changes. pkgrel should be an "
|
|
"integer, pkgrels like 5wanda1 are reserved for security updates. There the "
|
|
"rule is the following: If the original package's pkgrel was 4, then "
|
|
"increment it once when you add a security patch, but then use 5wanda1, "
|
|
"5wanda2 and so on. This way the user can easily upgrade to pkgrel=5 which is "
|
|
"in -current."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:64
|
|
msgid ""
|
|
"pkgdesc is a short one-line description for the package. Usually taken from "
|
|
"the project's homepage or manpage. Try to keep the lenght under 80 chars."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:69
|
|
msgid ""
|
|
"depends() is a bash array which defines the dependencies of the package. "
|
|
"depends() means the other package is required for building and using the "
|
|
"current one. If the dependency is runtime-only, then use rodepends(), if "
|
|
"buildtime-only then use makedepends()."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:78
|
|
msgid ""
|
|
"The next line is a special Finclude commands which allows you to inherit any "
|
|
"directive from a FrugalBuild scheme. They can be found in the FST, under "
|
|
"/source/include. The \"util\" scheme always included, since its provided "
|
|
"functions are used by almost every FrugalBuild. Look at the "
|
|
"/source/include/sourceforge.sh, it provides the url, up2date and source() "
|
|
"directives, so we don't have to specify them here. After the Finclude you "
|
|
"can overwrite the inherited directives, for example define a custom up2date "
|
|
"if the inherited one is not sutable for you."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:82
|
|
msgid ""
|
|
"The groups() array's first element can't be omitted, and it should be a "
|
|
"valid \"first group\". This means it should be in a foo or foo-extra format, "
|
|
"where foo or foo-extra is a dir under /source in the FST."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:90
|
|
msgid ""
|
|
"The archs() array defines for which architectures the given package is "
|
|
"available. If it's not available, it means that gensync will skip it when "
|
|
"generating package databases. If you are not able to provide a binary "
|
|
"package for a given arch, don't include that in archs()! For example, no "
|
|
"matter if the package could be compiled in x86_64, if you haven't compiled "
|
|
"it yourself, don't include it. If you're sure it won't be available on a "
|
|
"given arch (for example it's written in x86 asm), then use !arch, for "
|
|
"example !x86_64."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:95
|
|
msgid ""
|
|
"The sha1sums() array can be generated with the makepkg -g command. Its "
|
|
"purpose is to prevent compiling from wrong sources, especially when the "
|
|
"build is automatic. Where it is available you can use signatures(), its goal "
|
|
"is that you don't have to update it manually every time."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:103
|
|
msgid ""
|
|
"The last line will be added automatically to the end of the FrugalBuild if "
|
|
"the build() function used your $CFLAGS or $CXXFLAGS. This is handy if you "
|
|
"want to cross-compile on a faster machine for a slower architecture. Until "
|
|
"the package doesn't use our $CFLAGS we can't cross-compile it, so please try "
|
|
"to avoid creating \"unoptimized\" packages. If the package doesn't contain "
|
|
"any architecture-dependent file, then you can add this line manually as "
|
|
"makepkg will not detect this."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:111
|
|
msgid ""
|
|
"Finally we define a build() function that will build the package. If you "
|
|
"don't want to do anything special, probably you don't have to specify "
|
|
"anything, as the default build() (inherited from util.sh) will fit your "
|
|
"needs. Even if you define a custom build(), probably you can re-use parts of "
|
|
"the default build(). For the list of special functions provided by util.sh "
|
|
"and others refer to the /source/include dir. Again, util.sh is included "
|
|
"automatically, but you have to Finclude the others before using them!"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:117
|
|
msgid ""
|
|
"Once the package is successfully installed into the package root, I<makepkg> "
|
|
"will prepare some documentation. It will then strip debugging info from "
|
|
"libraries and binaries and generate a meta-info file. Finally, it will "
|
|
"compress everything into a .fpm file and leave it in the directory you ran "
|
|
"B<makepkg> from."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:120
|
|
msgid ""
|
|
"At this point you should have a package file in the current directory, named "
|
|
"something like name-version-release-arch.fpm. Done!"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: FrugalBuild.8:121
|
|
#, no-wrap
|
|
msgid "Install/Upgrade/Remove Scripting"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:125
|
|
msgid ""
|
|
"Pacman has the ability to store and execute a package-specific script when "
|
|
"it installs, removes, or upgrades a package. This allows a package to "
|
|
"\"configure itself\" after installation and do the opposite right before it "
|
|
"is removed."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:127
|
|
msgid "The exact time the script is run varies with each operation:"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:127
|
|
#, no-wrap
|
|
msgid "B<pre_install>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:130 FrugalBuild.8:138
|
|
msgid "script is run right before files are extracted."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:131
|
|
#, no-wrap
|
|
msgid "B<post_install>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:134
|
|
msgid "script is run right after files are extracted."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:135
|
|
#, no-wrap
|
|
msgid "B<pre_upgrade>"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:139
|
|
#, no-wrap
|
|
msgid "B<post_upgrade>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:142
|
|
msgid "script is run after files are extracted."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:143
|
|
#, no-wrap
|
|
msgid "B<pre_remove>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:146
|
|
msgid "script is run right before files are removed."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:147
|
|
#, no-wrap
|
|
msgid "B<post_remove>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:150
|
|
msgid "script is run right after files are removed."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:154
|
|
msgid ""
|
|
"To use this feature, just create a file (eg, pkgname.install) and put it in "
|
|
"the same directory as the FrugalBuild script. Then use the I<install> "
|
|
"directive:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:157
|
|
#, no-wrap
|
|
msgid "install=pkgname.install\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:163
|
|
msgid ""
|
|
"The install script does not need to be specified in the I<source> array. If "
|
|
"you omit the install directive then makepkg will check for the "
|
|
"$pkgname.install install and will use it if it's present."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:166
|
|
msgid ""
|
|
"You can find a scriptlet skeleton in the /docs/tech/skel/ directory, use it "
|
|
"when creating new packages."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:168
|
|
msgid "The scriptlet messages are parsed, a simple example tells you everything:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:177
|
|
#, no-wrap
|
|
msgid ""
|
|
"post_upgrade()\n"
|
|
"{\n"
|
|
"\techo \"START this will be good\"\n"
|
|
"\techo \"DONE 0\"\n"
|
|
"\techo \"START this will fail\"\n"
|
|
"\techo \"DONE 1\"\n"
|
|
"\techo \"old message\"\n"
|
|
"}\n"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: FrugalBuild.8:179
|
|
#, no-wrap
|
|
msgid "FrugalBuild Directives"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:180
|
|
#, no-wrap
|
|
msgid "B<pkgname>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:184
|
|
msgid ""
|
|
"The name of the package. This has be a unix-friendly name as it will be "
|
|
"used in the package filename."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:185
|
|
#, no-wrap
|
|
msgid "B<pkgver>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:188
|
|
msgid "This is the version of the software as released from the author (eg, 2.7.1)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:189
|
|
#, no-wrap
|
|
msgid "B<pkgrel>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:192
|
|
msgid "This is the release number specific to Frugalware Linux packages."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:193
|
|
#, no-wrap
|
|
msgid "B<pkgdesc>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:196
|
|
msgid "This should be a brief description of the package and its functionality."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:197
|
|
#, no-wrap
|
|
msgid "B<pkgdesc_localized>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:200
|
|
msgid "Array of the localized package descriptions."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:203
|
|
msgid "The format is the following: pkgdesc_localized=('xx_YY foo' 'xx_YY bar')"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:204
|
|
#, no-wrap
|
|
msgid "B<url>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:208
|
|
msgid ""
|
|
"This field contains an optional URL that is associated with the piece of "
|
|
"software being packaged. This is typically the project's website."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:209
|
|
#, no-wrap
|
|
msgid "B<license>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:213
|
|
msgid ""
|
|
"Sets the license type (eg, \"GPL\", \"BSD\", \"NON-FREE\"). (B<Note>: This "
|
|
"option is still in development and may change in the future)"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:214
|
|
#, no-wrap
|
|
msgid "B<install>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:220
|
|
msgid ""
|
|
"Specifies a special install script that is to be included in the package. "
|
|
"This file should reside in the same directory as the FrugalBuild, and will "
|
|
"be copied into the package by makepkg. It does not need to be included in "
|
|
"the I<source> array. (eg, install=modutils.install)"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:221
|
|
#, no-wrap
|
|
msgid "B<up2date>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:226
|
|
msgid ""
|
|
"This directive should contain a command that prints the current upstream "
|
|
"stable version of the project. This way we can check for newer version "
|
|
"without visiting manually the project's website (see above)."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:227
|
|
#, no-wrap
|
|
msgid "B<source >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:234
|
|
msgid ""
|
|
"The I<source> line is an array of source files required to build the "
|
|
"package. Source files must reside in the same directory as the FrugalBuild "
|
|
"file, unless they have a fully-qualified URL. Then if the source file does "
|
|
"not already exist in /var/cache/pacman/src, the file is downloaded by wget."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:235
|
|
#, no-wrap
|
|
msgid "B<md5sums >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:243
|
|
msgid ""
|
|
"If this field is present, it should contain an MD5 hash for every source "
|
|
"file specified in the I<source> array (in the same order). makepkg will use "
|
|
"this to verify source file integrity during subsequent builds. To easily "
|
|
"generate md5sums, first build using the FrugalBuild then run B<makepkg -G "
|
|
"E<gt>E<gt>FrugalBuild>. Then you can edit the FrugalBuild and move the "
|
|
"I<md5sums> line from the bottom to an appropriate location."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:244
|
|
#, no-wrap
|
|
msgid "B<sha1sums >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:252
|
|
msgid ""
|
|
"If this field is present, it should contain an SHA1 hash for every source "
|
|
"file specified in the I<source> array (in the same order). makepkg will use "
|
|
"this to verify source file integrity during subsequent builds. To easily "
|
|
"generate sha1sums, first build using the FrugalBuild then run B<makepkg -g "
|
|
"E<gt>E<gt>FrugalBuild>. Then you can edit the FrugalBuild and move the "
|
|
"I<sha1sums> line from the bottom to an appropriate location."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:253
|
|
#, no-wrap
|
|
msgid "B<signatures >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:258
|
|
msgid ""
|
|
"If this field is present, it should contain an array of gpg signatures "
|
|
"required to validate the source files. Where there is no signature available "
|
|
"just leave it empty, like:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:260
|
|
msgid "signatures=(${source[0]}.asc '')"
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:261
|
|
#, no-wrap
|
|
msgid "B<groups >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:266
|
|
msgid ""
|
|
"This is an array of symbolic names that represent groups of packages, "
|
|
"allowing you to install multiple packages by requesting a single target. "
|
|
"For example, one could install all KDE packages by installing the 'kde' "
|
|
"group."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:267
|
|
#, no-wrap
|
|
msgid "B<archs >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:272
|
|
msgid ""
|
|
"This array defines on which architectures the given package is avalibable. "
|
|
"If it's not available, that will mean that gensync will skip it when "
|
|
"generating package databases."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:273
|
|
#, no-wrap
|
|
msgid "B<backup >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:280
|
|
msgid ""
|
|
"A space-delimited array of filenames (without a preceding slash). The "
|
|
"I<backup> line will be propagated to the package meta-info file for pacman. "
|
|
"This will designate all files listed there to be backed up if this package "
|
|
"is ever removed from a system. See B<HANDLING CONFIG FILES> in the "
|
|
"I<pacman> manpage for more information."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:281
|
|
#, no-wrap
|
|
msgid "B<depends >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:289
|
|
msgid ""
|
|
"An array of packages that this package depends on to build and run. "
|
|
"Packages in this list should be surrounded with single quotes and contain at "
|
|
"least the package name. They can also include a version requirement of the "
|
|
"form B<nameE<lt>E<gt>version>, where E<lt>E<gt> is one of these three "
|
|
"comparisons: B<E<gt>=> (greater than equal to), B<E<lt>=> (less than or "
|
|
"equal to), or B<=> (equal to). See the FrugalBuild example above for an "
|
|
"example of the I<depends> directive."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:290
|
|
#, no-wrap
|
|
msgid "B<makedepends >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:294
|
|
msgid ""
|
|
"An array of packages that this package depends on to build (ie, not required "
|
|
"to run). Packages in this list should follow the same format as I<depends>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:295
|
|
#, no-wrap
|
|
msgid "B<rodepends >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:302
|
|
msgid ""
|
|
"An array of packages that this package depends on to run (ie, not required "
|
|
"to build). Generally I<rodepends> should be avoided in favour of I<depends> "
|
|
"except where this will create circular dependency chains. (For example "
|
|
"building logrotate doesn't requires to have dcron installed.) Packages in "
|
|
"this list should follow the same format as I<depends>."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:303
|
|
#, no-wrap
|
|
msgid "B<conflicts >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:308
|
|
msgid ""
|
|
"An array of packages that will conflict with this package (ie, they cannot "
|
|
"both be installed at the same time). This directive follows the same format "
|
|
"as I<depends> except you cannot specify versions here, only package names."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:309
|
|
#, no-wrap
|
|
msgid "B<provides >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:315
|
|
msgid ""
|
|
"An array of \"virtual provisions\" that this package provides. This allows "
|
|
"a package to provide dependency names other than it's own package name. For "
|
|
"example, the kernel-scsi and kernel-ide packages can each provide 'kernel' "
|
|
"which allows packages to simply depend on 'kernel' rather than \"kernel-scsi "
|
|
"OR kernel-ide OR ...\""
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:316
|
|
#, no-wrap
|
|
msgid "B<replaces >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:322
|
|
msgid ""
|
|
"This is an array of packages that this package should replace, and can be "
|
|
"used to handle renamed/combined packages. For example, if the kernel "
|
|
"package gets renamed to kernel-ide, then subsequent 'pacman -Syu' calls will "
|
|
"not pick up the upgrade, due to the differing package names. I<replaces> "
|
|
"handles this."
|
|
msgstr ""
|
|
|
|
# type: TP
|
|
#: FrugalBuild.8:323
|
|
#, no-wrap
|
|
msgid "B<options >I<(array)>"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:326
|
|
msgid "This is an array of various boolean options. The possible values are:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:339
|
|
#, no-wrap
|
|
msgid ""
|
|
"nodocs Don't add any documentation automatically (ie. when there'll be\n"
|
|
" a separate documentation subpackage).\n"
|
|
"nostrip Don't strip binaries/libraries.\n"
|
|
"force This is used to force the package to be upgraded by "
|
|
"--sysupgrade,\n"
|
|
" even if its an older version.\n"
|
|
"nobuild If this directive set, gensync will ignore this package, so "
|
|
"users\n"
|
|
" must build these packages on their machines, they will not be "
|
|
"able\n"
|
|
" to install them with pacman -S. Useful for closed-source, but\n"
|
|
" freeware programs.\n"
|
|
"nofakeroot Don't drop privileges after chrooting. Required by some broken\n"
|
|
" packages.\n"
|
|
"scriptlet Don't skip executing scriptlets even if we're in chroot.\n"
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: FrugalBuild.8:341
|
|
#, no-wrap
|
|
msgid "What is the process of chrooted build ?"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:347
|
|
msgid ""
|
|
"First, what is chroot? We currently use fakeroot to prevent build() from "
|
|
"modifying the host system, and we use a prefix or DESTDIR directive to "
|
|
"install everything to a directory and not under to the host system. This is "
|
|
"good, but not enough."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:355
|
|
msgid ""
|
|
"This system lacks of the ability to control the list of installed packages "
|
|
"during the build on the system of a packager, the given compiled package "
|
|
"maybe linked itself to an extra installed library. This way we can't really "
|
|
"control the list of real dependencies. For example if libquicktime is "
|
|
"installed from source on my system, then mplayer or any other program can "
|
|
"link itself to that, and so that depends() will be incorrect. Or if I have "
|
|
"the closed source binary NVidia drivers installed, some programs link tho "
|
|
"NVidia's libraries."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:358
|
|
msgid ""
|
|
"Of course there is a sollution to avoid this, to use a real chroot instead "
|
|
"of a simple fakeroot. What is this means? The followings:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:366
|
|
msgid ""
|
|
"When starting the build, a core chroot system is installed under "
|
|
"/var/chroot. (Of course you can change this value under /etc/makepkg.conf.) "
|
|
"The core system contains ~60 packages which are must installed to build any "
|
|
"package in a chrooted environment. These packages (for example gcc, "
|
|
"kernel-headers, make) should not be mentioned in makedepends(). 'pacman -Sg "
|
|
"core chroot-core devel-core' should show you the actial list. (We try to "
|
|
"change this list rarely of course.)"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:372
|
|
msgid ""
|
|
"When you start building with makepkg -R, pacman will install these packages "
|
|
"to /var/chroot if necessary. This will produce a fully \"clean\" Frugalware "
|
|
"system, that consits of base packages only. This /var/chroot is fully "
|
|
"separated from the host system so that this will solve the problems "
|
|
"mentioned above. (Linking to a library installed from source, etc.)"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:377
|
|
msgid ""
|
|
"Here comes the fun part. The packages listed in depends() and makedepends() "
|
|
"are installed to this clean (/var/chroot) system. From this point, this "
|
|
"chroot is capable to build the specified package in it without any "
|
|
"unnecessary package installed, fully separated from the host system."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:381
|
|
msgid ""
|
|
"After this the chroot should be cleaned up which means the removal of the "
|
|
"installed depends() and makedepends(). This ensures us not to build from "
|
|
"scratch the core chroot."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:385
|
|
msgid ""
|
|
"This way we can prevent lots of dependency problems and it is even possible "
|
|
"to build packages for a different Frugalware version. This is quite efficent "
|
|
"when building security updates or fixing critical bugs in the -stable tree."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:389
|
|
msgid ""
|
|
"If the build is failed, the working directory will not be deleted, you can "
|
|
"find it under /var/chroot/var/tmp/fst. Later if you want to clean your "
|
|
"chroot (delete the working directory and remove unnecessary packages) you "
|
|
"can use 'makepkg -CR'."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:392
|
|
msgid ""
|
|
"To activate building in a chroot, you should run makepkg as root at least "
|
|
"with the -R option."
|
|
msgstr ""
|
|
|
|
# type: SH
|
|
#: FrugalBuild.8:393
|
|
#, no-wrap
|
|
msgid "Package splitting"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:397
|
|
msgid ""
|
|
"Package splitting means moving out a list of specifed files to subpackages "
|
|
"(like libmysql out of mysql) and then defining the properties of "
|
|
"subpackages."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:402
|
|
msgid ""
|
|
"NOTE: if you create several subpackages, maintaining those packages will "
|
|
"require more and more time. Thus, unnecessary splits aren't welcome. "
|
|
"Especially, if you split out a library, then don't move the headers to the "
|
|
"package just to speed up building with a few seconds!"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:405
|
|
msgid ""
|
|
"The B<subpkgs()> array is to define the pkgnames of the subpackages. From "
|
|
"now all the directives has their subfoo equivalent:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:421
|
|
#, no-wrap
|
|
msgid ""
|
|
"pkgname -E<gt> subpkgs()\n"
|
|
"pkgdesc -E<gt> subdescs()\n"
|
|
"pkgdesc_localized -E<gt> subdescs_localized()\n"
|
|
"license() -E<gt> sublicense()\n"
|
|
"replaces() -E<gt> subreplaces()\n"
|
|
"groups() -E<gt> subgroups()\n"
|
|
"depends() -E<gt> subdepends()\n"
|
|
"rodepends() -E<gt> subrodepends()\n"
|
|
"removes() -E<gt> subremoves()\n"
|
|
"conflicts() -E<gt> subconflicts()\n"
|
|
"provides() -E<gt> subprovides()\n"
|
|
"backup() -E<gt> subbackup()\n"
|
|
"install -E<gt> subinstall()\n"
|
|
"options -E<gt> suboptions()\n"
|
|
"archs -E<gt> subarchs()\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:425
|
|
msgid ""
|
|
"Also note that bash does not support two-dimensional arrays, so when "
|
|
"defining the array of arrays, then quotes are the major separators and "
|
|
"spaces are the minor ones."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:427
|
|
msgid "Simple example:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:434
|
|
#, no-wrap
|
|
msgid ""
|
|
"Add the followings to your bottom of your FrugalBuild\n"
|
|
"subpkgs=('foo' 'bar')\n"
|
|
"subdescs=('desc of foo' 'desc of bar')\n"
|
|
"subdepends=('foodep1 foodep2' 'bardep1 bardep2')\n"
|
|
"subgroups=('apps' 'apps')\n"
|
|
"subarchs=('i686 x86_64' 'i686 x86_64')\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:438
|
|
msgid ""
|
|
"You may define conflicts, replaces and other directives for your "
|
|
"subpackages, but the requirement is only to define these 5 ones."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:443
|
|
msgid ""
|
|
"The second part is to move some files to the - just defined - "
|
|
"subpackages. You should use the Fsplit command for this at the end of your "
|
|
"build() function. You can read more about Fsplit in the fwmakepkg "
|
|
"documentation, but here is a short example:"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:446
|
|
#, no-wrap
|
|
msgid "Fsplit subpkgname usr/share/\n"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:449
|
|
msgid ""
|
|
"This will move the /usr/share dir of the package to the \"subpkgname\" "
|
|
"subpackage."
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:452
|
|
msgid ""
|
|
"NOTE: never use a trailing slash when defining file patterns, especially if "
|
|
"you use wildcards in it!"
|
|
msgstr ""
|
|
|
|
# type: Plain text
|
|
#: FrugalBuild.8:456
|
|
msgid "B<makepkg>(8), B<pacman>(8)"
|
|
msgstr ""
|