diff options
Diffstat (limited to 'Keywords/sample.ucl')
-rw-r--r-- | Keywords/sample.ucl | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Keywords/sample.ucl b/Keywords/sample.ucl new file mode 100644 index 000000000000..6c9ac688bd0d --- /dev/null +++ b/Keywords/sample.ucl @@ -0,0 +1,31 @@ +# $FreeBSD$ +# +# MAINTAINER: portmgr@FreeBSD.org +# +# @sample etc/somefile.conf.sample +# +# This will install the somefile.conf.sample and automatically copy to +# somefile.conf if it doesn't exist. On deinstall it will remove the +# somefile.conf if it still matches the sample, otherwise it is +# kept. +# +# This replaces the old pattern: +# @unexec if cmp -s %D/etc/pkgtools.conf %D/etc/pkgtools.conf.sample; then rm -f %D/etc/pkgtools.conf; fi +# etc/pkgtools.conf.sample +# @exec [ -f %B/pkgtools.conf ] || cp %B/%f %B/pkgtools.conf + +actions: [file] +post-install: <<EOD + sample_file="%D/%@" + target_file="${sample_file%.sample}" + if ! [ -f "${target_file}" ]; then + /bin/cp -p "${sample_file}" "${target_file}" + fi +EOD +pre-deinstall: <<EOD + sample_file="%D/%@" + target_file="${sample_file%.sample}" + if cmp -s "${target_file}" "${sample_file}"; then + rm -f "${target_file}" + fi +EOD |