doc/manual.txt: added 32bit pkgs, system accounts and notes sections.
This commit is contained in:
parent
5914e14c1e
commit
7a4af35a35
1 changed files with 66 additions and 0 deletions
|
@ -596,6 +596,72 @@ libfoo.so.1 foo-1.0_1
|
|||
- The second field specified the package name and minimal version required.
|
||||
- A third optional field specifies the architecture (rarely used).
|
||||
|
||||
Creating users/groups at runtime
|
||||
--------------------------------
|
||||
|
||||
There's a trigger along with some variables that are specifically to create
|
||||
**system users and groups** when the binary package is being configured.
|
||||
The following variables can be used for this purpose:
|
||||
|
||||
*system_groups*::
|
||||
This specifies the names of the new *system groups* to be created, separated
|
||||
by blanks. Optionally the **gid** can be specified by delimiting it with a
|
||||
colon, i.e `system_groups="mygroup:78"` or `system_groups="foo blah:8000"`.
|
||||
|
||||
*system_accounts*::
|
||||
This specifies the names of the new **system users/groups** to be created,
|
||||
separated by blanks, i.e `system_accounts="foo blah"`. Additional variables
|
||||
for the **system accounts** can be specified to change its behavior:
|
||||
|
||||
- `<account>_homedir`: the home directory for the user. If unset defaults to
|
||||
`/`.
|
||||
- `<account>_shell`: the shell for the new user. If unset defaults to
|
||||
`/sbin/nologin`.
|
||||
- `<account>_descr`: the description for the new user. If unset defaults to
|
||||
`<user> unprivileged user`.
|
||||
- `<account>_groups`: additional groups to be added to for the new user.
|
||||
|
||||
The **system user** is created by using a dynamically allocated **uid/gid** in your system
|
||||
and it's created as a `system account`. A new group will be created for the
|
||||
specified `system account` and used exclusived for this purpose.
|
||||
|
||||
32bit packages
|
||||
--------------
|
||||
|
||||
32bit packages are built automatically when the builder is x86 (32bit), but
|
||||
there are some variables that can change the behavior:
|
||||
|
||||
*lib32depends*::
|
||||
If this variable is set, dependencies listed here will be used rather than
|
||||
those detected automatically by xbps-src and **depends**. Please note that
|
||||
dependencies must be specified with version comparators, i.e
|
||||
`lib32depends="foo>=0 blah<2.0"`.
|
||||
|
||||
*lib32disabled*::
|
||||
If this variable is set, no 32bit package will be built. Please note that
|
||||
this variable if used in the global scope it will disable 32bit packages for
|
||||
the **main package and its subpackages**.
|
||||
|
||||
*lib32files*::
|
||||
Additional files to be added to the **32bit** package. This expect absolute
|
||||
paths separated by blanks, i.e `lib32files="/usr/bin/blah
|
||||
/usr/include/blah."`.
|
||||
|
||||
*lib32mode*::
|
||||
If unset, only shared libraries and pkg-config files will be copied to the
|
||||
**32bit** package. If set to `full` all files will be copied as is.
|
||||
|
||||
Notes
|
||||
-----
|
||||
|
||||
- Make sure that all software is configured to use the `/usr` prefix.
|
||||
- Binaries should always be installed at `/usr/bin` and `/usr/sbin`.
|
||||
- Manual pages should always be installed at `/usr/share/man` and
|
||||
uncompressed.
|
||||
- If a software provides **shared libraries** and headers, probably you should
|
||||
create a `development package` that contains `headers`, `static libraries`
|
||||
and other files required for development (not required at runtime).
|
||||
|
||||
Contributing via git
|
||||
--------------------
|
||||
You can fork the `xbps-packages` git repository on github and then set up
|
||||
|
|
Loading…
Reference in a new issue