diff options
author | salo <salo@pkgsrc.org> | 2002-11-17 08:58:49 +0000 |
---|---|---|
committer | salo <salo@pkgsrc.org> | 2002-11-17 08:58:49 +0000 |
commit | 1fde293f32677222b26f56dfb47daa804eca44a0 (patch) | |
tree | 3e155d5246ed236de0b61794dce3b642fff4045a /mk/install/deinstall | |
parent | ce99281f43679c6be322687c35f85d16217f630d (diff) | |
download | pkgsrc-1fde293f32677222b26f56dfb47daa804eca44a0.tar.gz |
Introduce new framework which unifies registering packages providing login
shells to /etc/shells.
This feature can be disabled by setting PKG_REGISTER_SHELLS to NO in
/etc/mk.conf.
An excerpt from Packages.txt, section 10.28:
10.28 Packages providing login shells
=====================================
If the purpose of the package is to provide a login shell, the variable
PKG_SHELL should contain the full pathname of the shell executable installed
by this package. The package Makefile also must include
"../../mk/bsd.pkg.install.mk" prior to the inclusion of bsd.pkg.mk to use the
automatically generated INSTALL/DEINSTALL scripts.
An example taken from shells/zsh:
PKG_SHELL= ${PREFIX}/bin/zsh
.include "../../mk/bsd.pkg.install.mk"
The shell is registered into /etc/shells file automatically in the
post-install target by the INSTALL script generated by bsd.pkg.install.mk and
removed in the deinstall target by the DEINSTALL script.
Diffstat (limited to 'mk/install/deinstall')
-rw-r--r-- | mk/install/deinstall | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mk/install/deinstall b/mk/install/deinstall index debc3c768ab..854283fa15f 100644 --- a/mk/install/deinstall +++ b/mk/install/deinstall @@ -1,6 +1,6 @@ # start of deinstall # -# $NetBSD: deinstall,v 1.14 2002/10/23 17:43:17 jlam Exp $ +# $NetBSD: deinstall,v 1.15 2002/11/17 08:58:50 salo Exp $ eval set -- ${PKG_USERS} for userset; do @@ -88,6 +88,12 @@ DEINSTALL) fi done fi + if [ -n "${PKG_SHELL}" -a "${PKG_REGISTER_SHELLS}" = "YES" ]; then + ${ECHO} "===> Updating /etc/shells" + ${CP} /etc/shells /etc/shells.pkgsrc."$$" + (${GREP} -v ${PKG_SHELL} /etc/shells.pkgsrc."$$" || ${TRUE}) > /etc/shells + ${RM} /etc/shells.pkgsrc."$$" + fi ;; POST-DEINSTALL) |