summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/classes-recipe/rootfs-postcommands.bbclass13
-rw-r--r--meta/lib/oe/rootfs.py12
2 files changed, 16 insertions, 9 deletions
diff --git a/meta/classes-recipe/rootfs-postcommands.bbclass b/meta/classes-recipe/rootfs-postcommands.bbclass
index 29ee74932a..163c7f41b1 100644
--- a/meta/classes-recipe/rootfs-postcommands.bbclass
+++ b/meta/classes-recipe/rootfs-postcommands.bbclass
@@ -55,19 +55,14 @@ inherit image-artifact-names
55# deterministic. Package installs are not deterministic, causing the ordering 55# deterministic. Package installs are not deterministic, causing the ordering
56# of entries to change between builds. In case that this isn't desired, 56# of entries to change between builds. In case that this isn't desired,
57# the command can be overridden. 57# the command can be overridden.
58SORT_PASSWD_POSTPROCESS_COMMAND ??= "tidy_shadowutils_files"
59ROOTFS_POSTPROCESS_COMMAND += '${SORT_PASSWD_POSTPROCESS_COMMAND}'
60
58# 61#
59# Note that useradd-staticids.bbclass has to be used to ensure that 62# Note that useradd-staticids.bbclass has to be used to ensure that
60# the numeric IDs of dynamically created entries remain stable. 63# the numeric IDs of dynamically created entries remain stable.
61# 64#
62# We want this to run as late as possible, in particular after 65ROOTFS_POSTPROCESS_COMMAND += 'rootfs_reproducible'
63# systemd_sysusers_create and set_user_group. Using :append is not
64# enough for that, set_user_group is added that way and would end
65# up running after us.
66SORT_PASSWD_POSTPROCESS_COMMAND ??= "tidy_shadowutils_files"
67python () {
68 d.appendVar('ROOTFS_POSTPROCESS_COMMAND', ' ${SORT_PASSWD_POSTPROCESS_COMMAND}')
69 d.appendVar('ROOTFS_POSTPROCESS_COMMAND', ' rootfs_reproducible')
70}
71 66
72# Resolve the ID as described in the sysusers.d(5) manual: ID can be a numeric 67# Resolve the ID as described in the sysusers.d(5) manual: ID can be a numeric
73# uid, a couple uid:gid or uid:groupname or it is '-' meaning leaving it 68# uid, a couple uid:gid or uid:groupname or it is '-' meaning leaving it
diff --git a/meta/lib/oe/rootfs.py b/meta/lib/oe/rootfs.py
index 3f27164536..8cd48f9450 100644
--- a/meta/lib/oe/rootfs.py
+++ b/meta/lib/oe/rootfs.py
@@ -194,6 +194,18 @@ class Rootfs(object, metaclass=ABCMeta):
194 post_process_cmds = self.d.getVar("ROOTFS_POSTPROCESS_COMMAND") 194 post_process_cmds = self.d.getVar("ROOTFS_POSTPROCESS_COMMAND")
195 rootfs_post_install_cmds = self.d.getVar('ROOTFS_POSTINSTALL_COMMAND') 195 rootfs_post_install_cmds = self.d.getVar('ROOTFS_POSTINSTALL_COMMAND')
196 196
197 def make_last(command, commands):
198 commands = commands.split()
199 if command in commands:
200 commands.remove(command)
201 commands.append(command)
202 return "".join(commands)
203
204 # We want this to run as late as possible, in particular after
205 # systemd_sysusers_create and set_user_group. Using :append is not enough
206 make_last("tidy_shadowutils_files", post_process_cmds)
207 make_last("rootfs_reproducible", post_process_cmds)
208
197 execute_pre_post_process(self.d, pre_process_cmds) 209 execute_pre_post_process(self.d, pre_process_cmds)
198 210
199 if self.progress_reporter: 211 if self.progress_reporter: