From: Changqing Li <changqing...@windriver.com>

* Drop VOLATILE_TMP_DIR, use FILESYSTEM_PERMS_TABLES instead. By default,
FILESYSTEM_PERMS_TABLES ?=  "files/fs-perms.txt \
                             files/fs-perms-volatile-log.txt \
                             files/fs-perms-volatile-tmp.txt"
it contains 'files/fs-perms-volatile-tmp.txt', which means volatile tmp
is enabled. User can disable volatile tmp by remove
'files/fs-perms-volatile-tmp.txt' from FILESYSTEM_PERMS_TABLES.
* If volatile tmp is disabled, both /tmp and /var/tmp are persistent

Signed-off-by: Changqing Li <changqing...@windriver.com>
---
 meta/conf/bitbake.conf                        |  7 ++---
 ...fs-perms.txt => fs-perms-volatile-tmp.txt} | 27 -------------------
 meta/files/fs-perms.txt                       |  2 --
 .../base-files/base-files_3.0.14.bb           |  5 ++--
 .../initscripts/initscripts_1.0.bb            |  2 +-
 meta/recipes-core/systemd/systemd_256.5.bb    |  2 +-
 6 files changed, 7 insertions(+), 38 deletions(-)
 copy meta/files/{fs-perms.txt => fs-perms-volatile-tmp.txt} (59%)

diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 76ae17e644..d8252c5b82 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -86,10 +86,6 @@ USRBINPATH:class-nativesdk = "/usr/bin"
 # Root home directory
 ROOT_HOME ??= "/home/root"
 
-# if set to 'yes': /tmp links to /var/tmp which links to /var/volatile/tmp
-# otherwise:       /tmp is on persistent storage
-VOLATILE_TMP_DIR ?= "yes"
-
 BB_RENAMED_VARIABLES[PNBLACKLIST] = "SKIP_RECIPE"
 BB_RENAMED_VARIABLES[CVE_CHECK_PN_WHITELIST] = "CVE_CHECK_SKIP_RECIPE"
 BB_RENAMED_VARIABLES[CVE_CHECK_WHITELIST] = "CVE_CHECK_IGNORE"
@@ -381,7 +377,8 @@ FILESEXTRAPATHS ?= "__default:"
 #  datadir, sysconfdir, servicedir, sharedstatedir, localstatedir, infodir,
 #  mandir, docdir, bindir, sbindir, libexecdir, libdir and includedir
 FILESYSTEM_PERMS_TABLES ?=  "files/fs-perms.txt \
-                             files/fs-perms-volatile-log.txt"
+                             files/fs-perms-volatile-log.txt \
+                             files/fs-perms-volatile-tmp.txt"
 
 ##################################################################
 # General work and output directories for the build system.
diff --git a/meta/files/fs-perms.txt b/meta/files/fs-perms-volatile-tmp.txt
similarity index 59%
copy from meta/files/fs-perms.txt
copy to meta/files/fs-perms-volatile-tmp.txt
index 61f0a6e26a..26247acda8 100644
--- a/meta/files/fs-perms.txt
+++ b/meta/files/fs-perms-volatile-tmp.txt
@@ -28,38 +28,11 @@
 # Note: all standard config directories are automatically assigned "0755 root 
root false - - -"
 
 # Documentation should always be corrected
-${mandir}              0755    root    root    true    0644    root    root
-${infodir}             0755    root    root    true    0644    root    root
-${docdir}              0755    root    root    true    0644    root    root
-${datadir}/gtk-doc     0755    root    root    true    0644    root    root
-
-# Fixup locales
-${datadir}/locale      0755    root    root    true    0644    root    root
-
-# Cleanup headers
-${includedir}          0755    root    root    true    0644    root    root
-
-# Cleanup debug src
-/usr/src/debug         0755    root    root    true    0644    root    root
 
 # Items from base-files
 # Links
-${localstatedir}/run   link    /run
-${localstatedir}/lock  link    /run/lock
 ${localstatedir}/tmp   link    volatile/tmp
 
-/home                          0755    root    root    false - - -
-/srv                           0755    root    root    false - - -
-${prefix}/src                  0755    root    root    false - - -
-${localstatedir}/local         0755    root    root    false - - -
-
 # Special permissions from base-files
 # Set 1777
-/tmp                           01777   root    root    false - - -
 ${localstatedir}/volatile/tmp  01777   root    root    false - - -
-
-# Set 0700
-${ROOT_HOME}                   0700    root    root    false - - -
-
-# Set 2775-lsb
-${localstatedir}/mail          02775   root    mail    false - - -
diff --git a/meta/files/fs-perms.txt b/meta/files/fs-perms.txt
index 61f0a6e26a..d2266c1b26 100644
--- a/meta/files/fs-perms.txt
+++ b/meta/files/fs-perms.txt
@@ -46,7 +46,6 @@ ${includedir}         0755    root    root    true    0644    
root    root
 # Links
 ${localstatedir}/run   link    /run
 ${localstatedir}/lock  link    /run/lock
-${localstatedir}/tmp   link    volatile/tmp
 
 /home                          0755    root    root    false - - -
 /srv                           0755    root    root    false - - -
@@ -56,7 +55,6 @@ ${localstatedir}/local                0755    root    root    
false - - -
 # Special permissions from base-files
 # Set 1777
 /tmp                           01777   root    root    false - - -
-${localstatedir}/volatile/tmp  01777   root    root    false - - -
 
 # Set 0700
 ${ROOT_HOME}                   0700    root    root    false - - -
diff --git a/meta/recipes-core/base-files/base-files_3.0.14.bb 
b/meta/recipes-core/base-files/base-files_3.0.14.bb
index dc1292ae55..8bcd91e699 100644
--- a/meta/recipes-core/base-files/base-files_3.0.14.bb
+++ b/meta/recipes-core/base-files/base-files_3.0.14.bb
@@ -31,7 +31,7 @@ UNPACKDIR = "${S}"
 INHIBIT_DEFAULT_DEPS = "1"
 
 docdir:append = "/${P}"
-dirs1777 = "/tmp ${localstatedir}/volatile/tmp"
+dirs1777 = "/tmp 
${localstatedir}/${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-tmp.txt', 'volatile/', '', d)}tmp"
 dirs2775 = ""
 dirs555 = "/sys /proc"
 dirs755 = "/boot /dev ${base_bindir} ${base_sbindir} ${base_libdir} \
@@ -55,7 +55,8 @@ dirs755-lsb = "/srv  \
                ${prefix}/lib/locale"
 dirs2775-lsb = "/var/mail"
 
-volatiles = "${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-log.txt', 'log', '', d)} tmp"
+volatiles = "${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-log.txt', 'log', '', d)} \
+             ${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-tmp.txt', 'tmp', '', d)}"
 conffiles = "${sysconfdir}/debian_version ${sysconfdir}/host.conf \
              ${sysconfdir}/issue /${sysconfdir}/issue.net \
              ${sysconfdir}/nsswitch.conf ${sysconfdir}/profile \
diff --git a/meta/recipes-core/initscripts/initscripts_1.0.bb 
b/meta/recipes-core/initscripts/initscripts_1.0.bb
index 0879b30623..98693fa66e 100644
--- a/meta/recipes-core/initscripts/initscripts_1.0.bb
+++ b/meta/recipes-core/initscripts/initscripts_1.0.bb
@@ -110,7 +110,7 @@ do_install () {
                sed -i -e '\@^d root root 0755 /var/volatile/log none$@ a\l 
root root 0755 /var/log /var/volatile/log' \
                        ${D}${sysconfdir}/default/volatiles/00_core
        fi
-       if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then
+       if ! ${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-tmp.txt', 'true', 'false', d)}; then
                sed -i -e "/\<tmp\>/d" 
${D}${sysconfdir}/default/volatiles/00_core
        fi
        install -m 0755    ${S}/dmesg.sh                ${D}${sysconfdir}/init.d
diff --git a/meta/recipes-core/systemd/systemd_256.5.bb 
b/meta/recipes-core/systemd/systemd_256.5.bb
index 7f66c921ab..1485614c71 100644
--- a/meta/recipes-core/systemd/systemd_256.5.bb
+++ b/meta/recipes-core/systemd/systemd_256.5.bb
@@ -327,7 +327,7 @@ do_install() {
 
        # if the user requests /tmp be on persistent storage (i.e. not volatile)
        # then don't use a tmpfs for /tmp
-       if [ "${VOLATILE_TMP_DIR}" != "yes" ]; then
+       if ! ${@bb.utils.contains('FILESYSTEM_PERMS_TABLES', 
'files/fs-perms-volatile-tmp.txt', 'true', 'false', d)}; then
                rm -f ${D}${rootlibexecdir}/systemd/system/tmp.mount
                rm -f 
${D}${rootlibexecdir}/systemd/system/local-fs.target.wants/tmp.mount
        fi
-- 
2.25.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#203829): 
https://lists.openembedded.org/g/openembedded-core/message/203829
Mute This Topic: https://lists.openembedded.org/mt/108120955/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to