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>