Skip to content

do post-installation proecudres as part of 'make install' #16

@dseomn

Description

@dseomn

The README currently has a section dedicated to post-installation procedures that boils down to this:

for d in \
    "${sysconfdir}"/rpstir \
    "${localstatedir}"/cache/rpstir \
    "${localstatedir}"/log/rpstir \
    "${localstatedir}"/lib/rpstir \
    ;
do
    mkdir -p "${d}"
    chmod -R o-rwx "${d}"
done
[ -f "${sysconfdir}"/rpstir/rpstir.conf ] \
    || cp "${docdir}"/examples/rpstir.conf "${sysconfdir}"/rpstir
# edit "${sysconfdir}"/rpstir/rpstir.conf as desired
rpstir-initialize -f

This ticket is about simplifying the installation procedure by doing something similar during make install (probably via the install utility).

  • etc/rpstir.conf.in should be modified to use sensible defaults for all parameters except for DatabasePassword. DatabasePassword should be set by make install.
  • configure.ac should be modified to:
    • take optional --with-user= and --with-group= parameters for the username and group name to use for the files that README currently says to chown
    • test for (but don't require) the presence of a pseudo-random number generating file (e.g., /dev/urandom)
  • make install should be modified to:
    • When installing "${docdir}"/examples/rpstir.conf, set DatabasePassword to an example password.
    • Create the directories mentioned above and in the README. If the username and/or group were specified to configure, use those. Otherwise, use the current user/group.
    • If "${sysconfdir}"/rpstir/rpstir.conf does not exist, and a PRNG device is available, install etc/rpstir.conf.in to "${sysconfdir}"/rpstir/rpstir.conf and set DatabasePassword to a random password. (Note that this only makes sense in conjunction with [make initialize/upgrade safer, easier, and more powerful #20] and possibly also [automatic upgrade or init #21])
  • README should be updated

Reported by: rhansen

Original Ticket: rpstir/tickets/16

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions