diff --git a/doc/TODO b/doc/TODO index 2e639374a8..0509623b33 100644 --- a/doc/TODO +++ b/doc/TODO @@ -11,7 +11,6 @@ Packages: in a package, to know when update it. * Create /etc/issue. * Create files in /etc/skel for new users. - * Register shells in /etc/shells. xbps-bin: * Add support to handle conf_files and keep_dirs from package metadata. diff --git a/shutils/metadata.sh b/shutils/metadata.sh index 83926f248c..e0bd863254 100644 --- a/shutils/metadata.sh +++ b/shutils/metadata.sh @@ -320,6 +320,15 @@ _EOF else rm -f $TMPINFOLIST fi + + # Register the shells into /etc/shells if requested. + if [ -n "${register_shell}" ]; then + triggers="$triggers register-shell" + for f in ${register_shell}; do + echo $f >> $metadir/shells + done + fi + $XBPS_REGPKGDB_CMD sanitize-plist $metadir/files.plist $XBPS_REGPKGDB_CMD sanitize-plist $metadir/props.plist chmod 644 $metadir/* diff --git a/shutils/tmpl_funcs.sh b/shutils/tmpl_funcs.sh index 4eb301abae..be949db653 100644 --- a/shutils/tmpl_funcs.sh +++ b/shutils/tmpl_funcs.sh @@ -61,7 +61,7 @@ reset_tmpl_vars() local TMPL_VARS="pkgname distfiles configure_args configure_env \ make_build_args make_install_args build_style \ short_desc maintainer long_desc checksum wrksrc \ - patch_files make_cmd base_chroot \ + patch_files make_cmd base_chroot register_shell \ make_build_target configure_script \ pre_configure pre_build pre_install post_install \ make_install_target version \ diff --git a/templates/bash/template b/templates/bash/template index 611b7f0d52..848a3e8e8d 100644 --- a/templates/bash/template +++ b/templates/bash/template @@ -22,6 +22,7 @@ long_desc=" modification." base_chroot=yes +register_shell="/bin/bash" Add_dependency run glibc Add_dependency full ncurses diff --git a/templates/dash/template b/templates/dash/template index fee6b27e1b..6534613241 100644 --- a/templates/dash/template +++ b/templates/dash/template @@ -19,6 +19,7 @@ long_desc=" dash in 2002." base_chroot=yes +register_shell="/bin/sh" Add_dependency run glibc post_install()