diff options
author | David Vincent <freesilicon@gmail.com> | 2017-06-02 17:16:03 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-06-05 17:59:40 +0100 |
commit | d44816bedadeef420226dc5efb67065cfcda6634 (patch) | |
tree | 13963d54899d7e9a9c9ba6b50098cbe74a7d4e5e | |
parent | 36e6abf387848d8c4383b4d506340811dd371c86 (diff) | |
download | openembedded-core-d44816bedadeef420226dc5efb67065cfcda6634.tar.gz openembedded-core-d44816bedadeef420226dc5efb67065cfcda6634.tar.bz2 openembedded-core-d44816bedadeef420226dc5efb67065cfcda6634.zip |
initscripts: Populate volatile from existing file
In some cases, it may be useful to populate a volatile file from an
existing one, e.g. a file in a read-only rootfs that may be edited in a
read-write destination.
To provide this behavior, creation of volatile files has been updated to
copy a file which has been given in the <linksource> field. If set to
none, the current behavior is preserved.
Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-x | meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh index 22a71ecaae..35316ec2ba 100755 --- a/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh +++ b/meta/recipes-core/initscripts/initscripts-1.0/populate-volatile.sh @@ -25,8 +25,18 @@ COREDEF="00_core" [ "${VERBOSE}" != "no" ] && echo "Populating volatile Filesystems." create_file() { + EXEC="" + [ -z "$2" ] && { + EXEC=" + touch \"$1\"; + " + } || { + EXEC=" + cp \"$2\" \"$1\"; + " + } EXEC=" - touch \"$1\"; + ${EXEC} chown ${TUSER}.${TGROUP} $1 || echo \"Failed to set owner -${TUSER}- for -$1-.\" >/dev/tty0 2>&1; chmod ${TMODE} $1 || echo \"Failed to set mode -${TMODE}- for -$1-.\" >/dev/tty0 2>&1 " @@ -187,7 +197,9 @@ apply_cfgfile() { case "${TTYPE}" in "f") [ "${VERBOSE}" != "no" ] && echo "Creating file -${TNAME}-." - create_file "${TNAME}" + TSOURCE="$TLTARGET" + [ "${TSOURCE}" = "none" ] && TSOURCE="" + create_file "${TNAME}" "${TSOURCE}" & ;; "d") [ "${VERBOSE}" != "no" ] && echo "Creating directory -${TNAME}-." mk_dir "${TNAME}" |