Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Jul 2022 22:08:53 +0000
From:      bugzilla-noreply@freebsd.org
To:        doc@FreeBSD.org
Subject:   [Bug 265476] porters-handbook: add documentation of pkg-{pre,post}-[de]install[.lua]
Message-ID:  <bug-265476-9-IMVJQi1FO3@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-265476-9@https.bugs.freebsd.org/bugzilla/>
References:  <bug-265476-9@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D265476

--- Comment #2 from Pau Amma <pauamma@FreeBSD.org> ---
Comment on attachment 235522
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D235522
0001-en-porters-handbook-Add-pkg-de-install-variants

>>From 6d224058b05f25f56b24fa90190b75f1d220aa98 Mon Sep 17 00:00:00 2001
>From: Felix Palmen <felix@palmen-it.de>
>Date: Thu, 28 Jul 2022 11:01:25 +0200
>Subject: [PATCH] en/porters-handbook: Add pkg-[de]install variants
>
>These scripts support "pre" and "post" variants, and these can also be
>written in lua (by adding the ".lua" extension).
>---
> .../porters-handbook/pkg-files/_index.adoc    | 43 ++++++++++++++-----
> 1 file changed, 33 insertions(+), 10 deletions(-)
>
>diff --git a/documentation/content/en/books/porters-handbook/pkg-files/_in=
dex.adoc b/documentation/content/en/books/porters-handbook/pkg-files/_index=
.adoc
>index 969e0b9f43..de5f8038b7 100644
>--- a/documentation/content/en/books/porters-handbook/pkg-files/_index.adoc
>+++ b/documentation/content/en/books/porters-handbook/pkg-files/_index.adoc
>@@ -223,34 +223,45 @@ Most of the time it is by using `maximum_version` to=
 limit its usage to upgrades
> =3D=3D=3D=3D
>=20
> [[pkg-install]]
>-=3D=3D pkg-install
>+=3D=3D pkg-install, pkg-pre-install and pkg-post-install
>=20
> If the port needs to execute commands when the binary package is installe=
d with `pkg add` or `pkg install`, use [.filename]#pkg-install#.
>-This script will automatically be added to the package.
> It will be run twice by `pkg`, the first time as `${SH} pkg-install ${PKG=
NAME} PRE-INSTALL` before the package is installed, and the second time as =
`${SH} pkg-install ${PKGNAME} POST-INSTALL` after it has been installed.
> `$2` can be tested to determine which mode the script is being run in.
> The `PKG_PREFIX` environmental variable will be set to the package instal=
lation directory.
>=20
>+If you use [.filename]#pkg-pre-install# or [.filename]#pkg-post-install# =
instead, the script is only run once, before or after installation of the p=
ackage.

Command line? Specifically, does it also have a $2?

>+You can also use [.filename]#pkg-pre-install.lua# or [.filename]#pkg-post=
-install.lua# to run a lua script instead of a shell script.

Invocation command?

>+Lua scripts run by `pkg` provide some extensions and a few restrictions, =
for these see man:pkg-lua-script[5].

Lua scripts run by `pkg` provide some extensions and a few restrictions, bo=
th
explained in man:pkg-lua-script[5].

>+
>+These scripts will automatically be added to the package.

Do you mean the packing list?

>+
> [IMPORTANT]
> =3D=3D=3D=3D
>-This script is here to help you set up the package so that it is as ready=
 to use as possible.
>-It _must not_ be abused to start services, stop services, or run any othe=
r commands that will modify the currently running system.
>+These scripts are here to help you set up the package so that it is as re=
ady to use as possible.

While here, s/you // for style conformance. (Besides that, it's not you, the
maintainer, it's the user or sysadmin installing the package.)

>+They _must not_ be abused to start services, stop services, or run any ot=
her commands that will modify the currently running system.
> =3D=3D=3D=3D
>=20
> [[pkg-deinstall]]
>-=3D=3D pkg-deinstall
>+=3D=3D pkg-deinstall, pkg-pre-deinstall and pkg-post-deinstall
>=20
>-This script executes when a package is removed.
>+These scripts execute when a package is removed.
>=20
>-This script will be run twice by `pkg delete`.
>+The [.filename]#pkg-deinstall# script will be run twice by `pkg delete`.
> The first time as `${SH} pkg-deinstall ${PKGNAME} DEINSTALL` before the p=
ort is de-installed and the second time as `${SH} pkg-deinstall ${PKGNAME} =
POST-DEINSTALL` after the port has been de-installed.
> `$2` can be tested to determine which mode the script is being run in.
>-The `PKG_PREFIX` environmental variable will be set to the package instal=
lation directory
>+The `PKG_PREFIX` environmental variable will be set to the package instal=
lation directory.
>+
>+If you use [.filename]#pkg-pre-deinstall# or [.filename]#pkg-post-deinsta=
ll# instead, the script is only run once, before or after removal of the pa=
ckage.

$2?

>+You can also use [.filename]#pkg-pre-deinstall.lua# or [.filename]#pkg-po=
st-deinstall.lua# to run a lua script instead of a shell script.

Invocation command?

>+Lua scripts run by `pkg` provide some extensions and a few restrictions, =
for these see man:pkg-lua-script[5].
>+
>+These scripts will automatically be added to the package.

packing list? (as above)

>=20
> [IMPORTANT]
> =3D=3D=3D=3D
>-This script is here to help you set up the package so that it is as ready=
 to use as possible.
>-It _must not_ be abused to start services, stop services, or run any othe=
r commands that will modify the currently running system.
>+These scripts are here to help you set up the package so that it is as re=
ady to use as possible.

s/you // as above.

>+They _must not_ be abused to start services, stop services, or run any ot=
her commands that will modify the currently running system.
> =3D=3D=3D=3D
>=20
> [[pkg-names]]
>@@ -278,9 +289,21 @@ Here is a list of variable names and their default va=
lues.
> |`PKGINSTALL`
> |`${PKGDIR}/pkg-install`
>=20
>+|`PKGPREINSTALL`
>+|`${PKGDIR}/pkg-pre-install`
>+
>+|`PKGPOSTINSTALL`
>+|`${PKGDIR}/pkg-post-install`
>+
> |`PKGDEINSTALL`
> |`${PKGDIR}/pkg-deinstall`
>=20
>+|`PKGPREDEINSTALL`
>+|`${PKGDIR}/pkg-pre-deinstall`
>+
>+|`PKGPOSTDEINSTALL`
>+|`${PKGDIR}/pkg-post-deinstall`
>+
> |`PKGMESSAGE`
> |`${PKGDIR}/pkg-message`
> |=3D=3D=3D
>--=20
>2.37.1
>

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-265476-9-IMVJQi1FO3>