_STAGE_SEQ ordering (was: gnome-post-install ordering)

Don Lewis truckman at FreeBSD.org
Wed Mar 16 21:54:49 UTC 2016


Now that the ports framework has been totally converted to staging, I
don't think the order of targets in _STAGE_SEQ is optimal.  The current
ordering is:

    100:stage-dir
    150:run-depends
    151:lib-depends
    200:apply-slist
    300:pre-install
    400:generate-plist
    450:pre-su-install
    475:create-users-groups
    500:do-install
    550:kmod-post-install
    700:post-install
    750:post-install-script
    800:post-stage
    850:compress-man
    860:install-rc-script
    870:install-ldconfig-file
    900:add-plist-info
    910:add-plist-docs
    920:add-plist-examples
    930:add-plist-data
    940:add-plist-post

When generating a dynamic plist, it would be handy to be able to just
override generate-plist (or have a knob that causes the default target
to dynamically generate the plist), but this has to be done after
do-install.  Some ports dynamically generate their plist at the end of
their do-install target, but that will break if they add any do-install
option helpers.  Other ports generate their plist in in their
post-install target, but that causes problems for targets that expect to
parse the plist before post-install, such as 690:gnome-post-install).

Since create-users-groups no longer creates the users and groups, but
just generates a script to do so that gets packaged and or adds stuff to
the plist, I don't think it needs to precede do-install, and moving
later reduces the possibility that a dynamically generated plist created
by do-install will stomp on what this target adds to the plist.

The pre-su-install is probably less necessary now due to staging, but
some ports use it so it would need to be retained and has to stay ahead
of do-install.

Something like the following looks better to me:

    375:pre-su-install
    400:do-install
    500:generate-plist
    525:create-users-groups

This looks compatible with other users of _USES_install except for
600:webplugin-post-install, which should be moved earlier in the
sequence, between 400 and 500.  The cran:auto-plist knob could use
a generic auto-plist knob instead of its own 750:cran-auto-plist.



More information about the freebsd-ports mailing list