All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
@ 2020-09-11  0:30 Charles Hardin
  2020-09-14 21:20 ` Yann E. MORIN
  2020-09-27  7:15 ` Yann E. MORIN
  0 siblings, 2 replies; 5+ messages in thread
From: Charles Hardin @ 2020-09-11  0:30 UTC (permalink / raw)
  To: buildroot

From: Charles Hardin <ckhardin@gmail.com>

The fakeroot script does not appear to be used in any of the checked
in defconfig targets, but it seems that most often the post
fakeroot script should be done after all the packages rules have
been applied instead of before.

Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
to disable a service or fixup a systemd configuration. The systemd
move makes sense, and this just tries to preserve the same ability
to fixup a rootfs after all the cmd hooks are processed.

Refer to commit 65b63785a642bbc565924edf365b5d7c080f961c for
the change that instigated this reordering.

Signed-off-by: Charles Hardin <ckhardin@gmail.com>
---
 fs/common.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/common.mk b/fs/common.mk
index ec6aa831d1..84e13d1b7e 100644
--- a/fs/common.mk
+++ b/fs/common.mk
@@ -173,11 +173,11 @@ $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): $$(ROOTFS_$(2)_DEPENDENCIES)
 	echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
 	PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(ROOTFS_FULL_USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT)
 	echo "$$(HOST_DIR)/bin/makedevs -d $$(ROOTFS_FULL_DEVICES_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
+	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
+		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
 	$$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\
 		echo "echo '$$(TERM_BOLD)>>>   Executing fakeroot script $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \
 		echo $$(EXTRA_ENV) $$(s) $$(TARGET_DIR) $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep))
-	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
-		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
 
 	$$(foreach hook,$$(ROOTFS_$(2)_PRE_GEN_HOOKS),\
 		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
-- 
2.21.1 (Apple Git-122.3)

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
  2020-09-11  0:30 [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks Charles Hardin
@ 2020-09-14 21:20 ` Yann E. MORIN
  2020-09-14 22:44   ` Charles Hardin
  2020-09-27  7:15 ` Yann E. MORIN
  1 sibling, 1 reply; 5+ messages in thread
From: Yann E. MORIN @ 2020-09-14 21:20 UTC (permalink / raw)
  To: buildroot

Charles, All,

On 2020-09-10 17:30 -0700, Charles Hardin spake thusly:
> From: Charles Hardin <ckhardin@gmail.com>
> 
> The fakeroot script does not appear to be used in any of the checked
> in defconfig targets, but it seems that most often the post
> fakeroot script should be done after all the packages rules have
> been applied instead of before.
> 
> Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
> a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
> to disable a service or fixup a systemd configuration. The systemd
> move makes sense, and this just tries to preserve the same ability
> to fixup a rootfs after all the cmd hooks are processed.
> 
> Refer to commit 65b63785a642bbc565924edf365b5d7c080f961c for
> the change that instigated this reordering.
> 
> Signed-off-by: Charles Hardin <ckhardin@gmail.com>

Did you verify that our run-time testing still works:

    support/testing/tests/core/test_post_scripts.py

which can be tested with:

    ./support/testing/run-tests \
        -o /path/to/where/you/want/temp/stuff \
        -d /path/to/BR2_DL_DIR \
        -k \
        tests.core.test_post_scripts

Otherwise, this change does make sense, because we do want to allow
users to be able to override the internal decisions.

Regards,
Yann E. MORIN.

> ---
>  fs/common.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/common.mk b/fs/common.mk
> index ec6aa831d1..84e13d1b7e 100644
> --- a/fs/common.mk
> +++ b/fs/common.mk
> @@ -173,11 +173,11 @@ $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): $$(ROOTFS_$(2)_DEPENDENCIES)
>  	echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
>  	PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(ROOTFS_FULL_USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT)
>  	echo "$$(HOST_DIR)/bin/makedevs -d $$(ROOTFS_FULL_DEVICES_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
> +	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> +		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
>  	$$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\
>  		echo "echo '$$(TERM_BOLD)>>>   Executing fakeroot script $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \
>  		echo $$(EXTRA_ENV) $$(s) $$(TARGET_DIR) $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep))
> -	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> -		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
>  
>  	$$(foreach hook,$$(ROOTFS_$(2)_PRE_GEN_HOOKS),\
>  		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
  2020-09-14 21:20 ` Yann E. MORIN
@ 2020-09-14 22:44   ` Charles Hardin
  0 siblings, 0 replies; 5+ messages in thread
From: Charles Hardin @ 2020-09-14 22:44 UTC (permalink / raw)
  To: buildroot

Yes - inline

On Mon, Sep 14, 2020 at 2:20 PM Yann E. MORIN <yann.morin.1998@free.fr>
wrote:

> Charles, All,
>
> On 2020-09-10 17:30 -0700, Charles Hardin spake thusly:
> > From: Charles Hardin <ckhardin@gmail.com>
> >
> > The fakeroot script does not appear to be used in any of the checked
> > in defconfig targets, but it seems that most often the post
> > fakeroot script should be done after all the packages rules have
> > been applied instead of before.
> >
> > Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
> > a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
> > to disable a service or fixup a systemd configuration. The systemd
> > move makes sense, and this just tries to preserve the same ability
> > to fixup a rootfs after all the cmd hooks are processed.
> >
> > Refer to commit 65b63785a642bbc565924edf365b5d7c080f961c for
> > the change that instigated this reordering.
> >
> > Signed-off-by: Charles Hardin <ckhardin@gmail.com>
>
> Did you verify that our run-time testing still works:
>
>     support/testing/tests/core/test_post_scripts.py
>
> which can be tested with:
>
>     ./support/testing/run-tests \
>         -o /path/to/where/you/want/temp/stuff \
>         -d /path/to/BR2_DL_DIR \
>         -k \
>         tests.core.test_post_scripts
>
>
vagrant$ ./support/testing/run-tests -o ~/dumpster -d ~/build/buildroot-dl
-k tests.core.test_post_scripts

22:35:57 TestPostScripts                          Starting

22:36:03 TestPostScripts                          Building

22:41:26 TestPostScripts                          Building done

22:41:26 TestPostScripts                          Cleaning up

.

----------------------------------------------------------------------

Ran 1 test in 328.762s


OK

Otherwise, this change does make sense, because we do want to allow
> users to be able to override the internal decisions.
>
> Regards,
> Yann E. MORIN.
>
> > ---
> >  fs/common.mk | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/fs/common.mk b/fs/common.mk
> > index ec6aa831d1..84e13d1b7e 100644
> > --- a/fs/common.mk
> > +++ b/fs/common.mk
> > @@ -173,11 +173,11 @@ $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME):
> $$(ROOTFS_$(2)_DEPENDENCIES)
> >       echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
> >       PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers
> $$(ROOTFS_FULL_USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT)
> >       echo "$$(HOST_DIR)/bin/makedevs -d $$(ROOTFS_FULL_DEVICES_TABLE)
> $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
> > +     $$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> > +             $$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
> >       $$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\
> >               echo "echo '$$(TERM_BOLD)>>>   Executing fakeroot script
> $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \
> >               echo $$(EXTRA_ENV) $$(s) $$(TARGET_DIR)
> $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep))
> > -     $$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> > -             $$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
> >
> >       $$(foreach hook,$$(ROOTFS_$(2)_PRE_GEN_HOOKS),\
> >               $$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
>
> --
>
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics'
> conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___
>      |
> | +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is
> no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v
>  conspiracy.  |
>
> '------------------------------^-------^------------------^--------------------'
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20200914/7ade830e/attachment.html>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
  2020-09-11  0:30 [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks Charles Hardin
  2020-09-14 21:20 ` Yann E. MORIN
@ 2020-09-27  7:15 ` Yann E. MORIN
  2020-10-02  8:39   ` Peter Korsgaard
  1 sibling, 1 reply; 5+ messages in thread
From: Yann E. MORIN @ 2020-09-27  7:15 UTC (permalink / raw)
  To: buildroot

Charles, All,

On 2020-09-10 17:30 -0700, Charles Hardin spake thusly:
> From: Charles Hardin <ckhardin@gmail.com>
> 
> The fakeroot script does not appear to be used in any of the checked
> in defconfig targets, but it seems that most often the post
> fakeroot script should be done after all the packages rules have
> been applied instead of before.
> 
> Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
> a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
> to disable a service or fixup a systemd configuration. The systemd
> move makes sense, and this just tries to preserve the same ability
> to fixup a rootfs after all the cmd hooks are processed.
> 
> Refer to commit 65b63785a642bbc565924edf365b5d7c080f961c for
> the change that instigated this reordering.
> 
> Signed-off-by: Charles Hardin <ckhardin@gmail.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  fs/common.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/common.mk b/fs/common.mk
> index ec6aa831d1..84e13d1b7e 100644
> --- a/fs/common.mk
> +++ b/fs/common.mk
> @@ -173,11 +173,11 @@ $$(BINARIES_DIR)/$$(ROOTFS_$(2)_FINAL_IMAGE_NAME): $$(ROOTFS_$(2)_DEPENDENCIES)
>  	echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
>  	PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(ROOTFS_FULL_USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT)
>  	echo "$$(HOST_DIR)/bin/makedevs -d $$(ROOTFS_FULL_DEVICES_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT)
> +	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> +		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
>  	$$(foreach s,$$(call qstrip,$$(BR2_ROOTFS_POST_FAKEROOT_SCRIPT)),\
>  		echo "echo '$$(TERM_BOLD)>>>   Executing fakeroot script $$(s)$$(TERM_RESET)'" >> $$(FAKEROOT_SCRIPT); \
>  		echo $$(EXTRA_ENV) $$(s) $$(TARGET_DIR) $$(BR2_ROOTFS_POST_SCRIPT_ARGS) >> $$(FAKEROOT_SCRIPT)$$(sep))
> -	$$(foreach hook,$$(ROOTFS_PRE_CMD_HOOKS),\
> -		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))
>  
>  	$$(foreach hook,$$(ROOTFS_$(2)_PRE_GEN_HOOKS),\
>  		$$(call PRINTF,$$($$(hook))) >> $$(FAKEROOT_SCRIPT)$$(sep))

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks
  2020-09-27  7:15 ` Yann E. MORIN
@ 2020-10-02  8:39   ` Peter Korsgaard
  0 siblings, 0 replies; 5+ messages in thread
From: Peter Korsgaard @ 2020-10-02  8:39 UTC (permalink / raw)
  To: buildroot

>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 > Charles, All,
 > On 2020-09-10 17:30 -0700, Charles Hardin spake thusly:
 >> From: Charles Hardin <ckhardin@gmail.com>
 >> 
 >> The fakeroot script does not appear to be used in any of the checked
 >> in defconfig targets, but it seems that most often the post
 >> fakeroot script should be done after all the packages rules have
 >> been applied instead of before.
 >> 
 >> Given that a change in systemd moved the SYSTEMD_PRESET_ALL hook to
 >> a ROOTFS_PRE_CMD_HOOKS, there was no way to use a FAKEROOT script
 >> to disable a service or fixup a systemd configuration. The systemd
 >> move makes sense, and this just tries to preserve the same ability
 >> to fixup a rootfs after all the cmd hooks are processed.
 >> 
 >> Refer to commit 65b63785a642bbc565924edf365b5d7c080f961c for
 >> the change that instigated this reordering.
 >> 
 >> Signed-off-by: Charles Hardin <ckhardin@gmail.com>

 > Applied to master, thanks.

Committed to 2020.08.x, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-10-02  8:39 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-11  0:30 [Buildroot] [PATCH 1/1] fs/common.mk: move BR2_ROOTFS_POST_FAKEROOT_SCRIPT after pre cmd hooks Charles Hardin
2020-09-14 21:20 ` Yann E. MORIN
2020-09-14 22:44   ` Charles Hardin
2020-09-27  7:15 ` Yann E. MORIN
2020-10-02  8:39   ` Peter Korsgaard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.