[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
pkgsrc/doc/guide/files/pkginstall.xml: 1.10 -> 1.11
以下のページの更新をしました。ツッコミをお願いします。
pkgsrc/doc/guide/files/pkginstall.xml: 1.10 -> 1.11
> revision 1.11
> date: 2006/04/23 00:00:43; author: jlam; state: Exp; lines: +26 -18
> Add two new capabilities to the pkginstall framework:
>
> (1) Allow specifying the numeric UID and GID for users and groups in
> /etc/mk.conf by setting PKG_UID.<user> and PKG_GID.<group> to
> those values. If these values are specified, then the +USERGROUP
> script will verify that existing users and groups match the
> requested UIDs and GIDs for the package, and otherwise create them
> with these UIDs and GIDs. For example:
>
> PKG_UID.courier= 10001
> PKG_GID.mail= 6
>
> In this example, the courier-authlib binary package will be created
> to use uid 10001 for the "courier" user and gid 6 for the "mail"
> group.
>
> (2) Allow a package to request that users and groups be created prior
> to configuring or building a package by setting USERGROUP_PHASE
> to "configure" or "build". Because the reason for this is typically
> to hardcode the UIDs and GIDs of requested users and groups directly
> into the package's executables, these hardcoded values will be
> automatically determined and put into the +USERGROUP script. For
> example:
>
> USERGROUP_PHASE= configure
>
> PKG_GROUPS= qmail nofiles
> PKG_USERS+= qmaill:nofiles
> PKG_USERS+= qmailq:qmail
>
> In this example, the users and groups are created before the
> configure phase when building qmail, and the qmail binary package's
> +INSTALL script will try to create (or verify) users and groups
> with the same UIDs and GIDs that were used during the build.
>
> As part of these changes, the format for PKG_USERS and PKG_GROUPS has
> changed -- the optional parts of the corresponding entries are no
> longer used and cannot be specified. Instead, the following variables
> should be set:
>
> PKG_GID.<group> is the group's numeric GID.
> PKG_UID.<user> is the user's numeric UID.
> PKG_GECOS.<user> is the user's description.
> PKG_HOME.<user> is the user's home directory.
> PKG_SHELL.<user> is the user's login shell.
>
> A separate commit will follow which will fix all packages that set
> PKG_USERS and PKG_GROUPS to use the new syntax and variables.
月曜日までに異議がなければ、 commit します。
以下、訳と原文それぞれの新旧の差分です。
--- pkginstall.xml.orig 2006-11-10 23:10:17.000000000 +0900
+++ pkginstall.xml 2006-11-10 23:10:17.000000000 +0900
@@ -1,6 +1,6 @@
-<!-- $NetBSD: pkginstall.xml,v 1.10 2006/02/12 14:44:59 rillig Exp $ -->
+<!-- $NetBSD: pkginstall.xml,v 1.11 2006/04/23 00:00:43 jlam Exp $ -->
<!-- Based on english version: -->
-<!-- NetBSD: pkginstall.xml,v 1.10 2006/02/12 14:44:59 rillig Exp -->
+<!-- NetBSD: pkginstall.xml,v 1.11 2006/04/23 00:00:43 jlam Exp -->
<chapter id="pkginstall"> <?dbhtml filename="pkginstall.html"?>
<title>pkginstall の枠組</title>
@@ -431,33 +431,43 @@
<para><varname>PKG_USERS</varname> 変数にユーザーのエントリーを追加すると、
ユーザーを作ることができます。各エントリーは、
-以下のような、<filename>/etc/passwd</filename> に似た書式となります。</para>
+以下のような書式となります。</para>
<programlisting>
- user:group[:[userid][:[descr][:[home][:shell]]]]
+ user:group
</programlisting>
-<para>user と group だけが必須です。それ以外はなくても構いませんが、
-書く場合はコロンを適切な場所に置く必要があります。
-ホームディレクトリーを指定しなかった場合は
-<filename>/nonexistent</filename> となり、ログインシェルを指定しなかった場合は
-<filename>/sbin/nologin</filename> となります。
-なお、description にスペースが入っている場合は、
-以下のように、バックスラッシュでスペースをエスケープします。</para>
+<para>ユーザーごとに変数を設定して、
+ユーザーの属性をさらに詳しく指定することができます。
+<varname>PKG_UID.<replaceable>user</replaceable></varname> は、
+ユーザーの数字の UID です。
+<varname>PKG_GECOS.<replaceable>user</replaceable></varname> は、
+ユーザーの説明またはコメントです。
+<varname>PKG_HOME.<replaceable>user</replaceable></varname> は、
+ユーザーのホームディレクトリーで、指定しなかった場合は
+<filename>/nonexistent</filename>
+となります。
+<varname>PKG_SHELL.<replaceable>user</replaceable></varname> は、
+ユーザーのシェルで、指定しなかった場合は
+<filename>/sbinno/login</filename> となります。
+</para>
-<programlisting>
- foo:foogrp::The\ Foomister
-</programlisting>
-
-<para>同様にして、<varname>PKG_GROUPS</varname>
-変数を使ってグループを作ることができます。こちらの書式は以下のようになります。</para>
+<para>同様にして、<varname>PKG_GROUPS</varname> 変数にグループのエントリーを追加すると、
+グループを作ることができます。こちらの書式は以下のようになります。</para>
<programlisting>
- group[:groupid]
+ group
</programlisting>
-<para>ユーザーと同様に、グループ名 (group) だけが必須であり、
-数字のグループ ID はなくても構いません。</para>
+<para><varname>PKG_GID.<replaceable>group</replaceable></varname>
+を定義すると、グループの数字の GID を設定することができます。</para>
+
+<para>もっと前の段階でユーザーやグループを作る必要がある場合は、
+どの相の直後にユーザーやグループを作るかを表すために、
+<varname>USERGROUP_PHASE</varname> を
+<literal>configure</literal> または <literal>build</literal> に設定することができます。
+こうした場合は、作られるユーザーやグループの数字の UID や GID は、
+自動的に最終的なインストール用スクリプトにハードコードされます。</para>
</sect1>
Index: pkginstall.xml
===================================================================
RCS file: /cvsroot/pkgsrc/doc/guide/files/pkginstall.xml,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- pkginstall.xml 12 Feb 2006 14:44:59 -0000 1.10
+++ pkginstall.xml 23 Apr 2006 00:00:43 -0000 1.11
@@ -1,4 +1,4 @@
-<!-- $NetBSD: pkginstall.xml,v 1.10 2006/02/12 14:44:59 rillig Exp $ -->
+<!-- $NetBSD: pkginstall.xml,v 1.11 2006/04/23 00:00:43 jlam Exp $ -->
<chapter id="pkginstall"> <?dbhtml filename="pkginstall.html"?>
<title>The pkginstall framework</title>
@@ -426,33 +426,41 @@
<para>Users can be created by adding entries to the
<varname>PKG_USERS</varname> variable. Each entry has the following
-syntax, which mimics <filename>/etc/passwd</filename>:</para>
+syntax:</para>
<programlisting>
- user:group[:[userid][:[descr][:[home][:shell]]]]
+ user:group
</programlisting>
-<para>Only the user and group are required; everything else is optional,
-but the colons must be in the right places when specifying optional bits.
-By default, a new user will have home directory
-<filename>/nonexistent</filename>, and login shell
-<filename>/sbin/nologin</filename> unless they are specified as part of the
-user element. Note that if the description contains spaces, then spaces
-should be backslash-escaped, as in:</para>
+<para>Further specification of user details may be done by setting per-user
+variables.
+<varname>PKG_UID.<replaceable>user</replaceable></varname> is the numeric
+UID for the user.
+<varname>PKG_GECOS.<replaceable>user</replaceable></varname> is the user's
+description or comment.
+<varname>PKG_HOME.<replaceable>user</replaceable></varname> is the user's
+home directory, and defaults to <filename>/nonexistent</filename> if not
+specified.
+<varname>PKG_SHELL.<replaceable>user</replaceable></varname> is the user's
+shell, and defaults to <filename>/sbinno/login</filename> if not specified.
+</para>
-<programlisting>
- foo:foogrp::The\ Foomister
-</programlisting>
-
-<para>Similarly, groups can be created using the
+<para>Similarly, groups can be created by adding entries to the
<varname>PKG_GROUPS</varname> variable, whose syntax is:</para>
<programlisting>
- group[:groupid]
+ group
</programlisting>
-<para>As before, only the group name is required; the numeric identifier is
-optional.</para>
+<para>The numeric GID of the group may be set by defining
+<varname>PKG_GID.<replaceable>group</replaceable></varname>.</para>
+
+<para>If a package needs to create the users and groups at an earlier
+stage, then it can set <varname>USERGROUP_PHASE</varname> to
+either <literal>configure</literal> or <literal>build</literal> to
+indicate the phase before which the users and groups are created. In
+this case, the numeric UIDs and GIDs of the created users and groups
+are automatically hardcoded into the final installation scripts.</para>
</sect1>