Skip to contentSkip to conversation

mutt: fix build with BR2_PACKAGE_SKELETON_NONE

PATCH Superseded Baruch Siach 2 participants 4 messages Aug 6, 2017 – Aug 8, 2017

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 mutt: fix build with BR2_PACKAGE_SKELETON_NONE

BR2_PACKAGE_SKELETON_NONE does not provide the /var subdirectory which break symlink creation in that directory. Ignore the symlink creation error. It is up to the user to provide a functional skeleton.

Fixes:
http://autobuild.buildroot.net/results/32d/32dff0df759baf1120e4f11335e735eb0708b237/

---
 package/mutt/mutt.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/mutt/mutt.mk +1 -1
index abd40e5dd612..447c336b4893 100644
@@ -66,7 +66,7 @@ MUTT_CONF_ENV += \
 MUTT_CONF_OPTS += --with-mailpath=/var/mail
 
 define MUTT_VAR_MAIL
-	ln -sf /tmp $(TARGET_DIR)/var/mail
+	-ln -sf /tmp $(TARGET_DIR)/var/mail
 endef
 MUTT_POST_INSTALL_TARGET_HOOKS += MUTT_VAR_MAIL
 
Signature · 1 line
2.13.2
#1 lore raw

PATCH 1/1 mutt: fix build with BR2_PACKAGE_SKELETON_NONE

Baruch, All,

On 2017-08-06 21:08 +0300, Baruch Siach spake thusly:

Quoted 3 lines

BR2_PACKAGE_SKELETON_NONE does not provide the /var subdirectory which break symlink creation in that directory. Ignore the symlink creation error. It is up to the user to provide a functional skeleton.

Note that this defconfig does not use a custom skeleton; it uses the default skeleton. In this situation, the user is not providing the skeleton, so he has no chance to "provide a functional skeleton."

Instead, we must ensure that our default skeleton for the "none" init system is correct.

So, we have two options:
- provide /var in the skeleton-none
- have mutt do the mkdir as it needs it

My preference goes with the second solution, because it looks to me that it is the best solution: mutt needs /var? Then it has to ensure that /var exists before it uses it.

I do agreee however that one may consider that /var is a "magic" directory, like /etc or /bin and /lib, and that it should always exist. Nonetheless, I believe the second solution is still technically better, because it does not make any assumption.

Care to respin by doing an mkdir, please?

Regards,
Yann E. MORIN.

Quoted 28 lines

Fixes:
http://autobuild.buildroot.net/results/32d/32dff0df759baf1120e4f11335e735eb0708b237/

---
 package/mutt/mutt.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/mutt/mutt.mk +1 -1
index abd40e5dd612..447c336b4893 100644
@@ -66,7 +66,7 @@ MUTT_CONF_ENV += \
 MUTT_CONF_OPTS += --with-mailpath=/var/mail
 
 define MUTT_VAR_MAIL
-	ln -sf /tmp $(TARGET_DIR)/var/mail
+	-ln -sf /tmp $(TARGET_DIR)/var/mail
 endef
 MUTT_POST_INSTALL_TARGET_HOOKS += MUTT_VAR_MAIL
 
Signature · 6 lines
2.13.2

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#2 lore raw

PATCH 1/1 mutt: fix build with BR2_PACKAGE_SKELETON_NONE

Hi Yann,

Quoted 16 lines · Yann E. MORIN

On 2017-08-06 21:08 +0300, Baruch Siach spake thusly:

Quoted 3 lines

BR2_PACKAGE_SKELETON_NONE does not provide the /var subdirectory which break symlink creation in that directory. Ignore the symlink creation error. It is up to the user to provide a functional skeleton.

Note that this defconfig does not use a custom skeleton; it uses the default skeleton. In this situation, the user is not providing the skeleton, so he has no chance to "provide a functional skeleton."

Instead, we must ensure that our default skeleton for the "none" init system is correct.

So, we have two options:
- provide /var in the skeleton-none
- have mutt do the mkdir as it needs it

Quoted 6 lines

My preference goes with the second solution, because it looks to me that it is the best solution: mutt needs /var? Then it has to ensure that /var exists before it uses it.

I do agreee however that one may consider that /var is a "magic" directory, like /etc or /bin and /lib, and that it should always exist.

So do you think it is a good idea to add /var to skeleton-common? Maybe skeleton-none only?

Quoted 4 lines

Nonetheless, I believe the second solution is still technically better, because it does not make any assumption.

Care to respin by doing an mkdir, please?

Done.

baruch

Quoted 20 lines
Quoted 20 lines

Fixes:
http://autobuild.buildroot.net/results/32d/32dff0df759baf1120e4f11335e735eb0708b237/

---
 package/mutt/mutt.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/mutt/mutt.mk +1 -1
index abd40e5dd612..447c336b4893 100644
@@ -66,7 +66,7 @@ MUTT_CONF_ENV += \
 MUTT_CONF_OPTS += --with-mailpath=/var/mail
 
 define MUTT_VAR_MAIL
-	ln -sf /tmp $(TARGET_DIR)/var/mail
+	-ln -sf /tmp $(TARGET_DIR)/var/mail
 endef
 MUTT_POST_INSTALL_TARGET_HOOKS += MUTT_VAR_MAIL
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
#3 lore raw

PATCH 1/1 mutt: fix build with BR2_PACKAGE_SKELETON_NONE

Baruch, All,

On 2017-08-07 20:57 +0300, Baruch Siach spake thusly:

Quoted 21 lines · Yann E. MORIN
Quoted 20 lines

On 2017-08-06 21:08 +0300, Baruch Siach spake thusly:

Quoted 3 lines

BR2_PACKAGE_SKELETON_NONE does not provide the /var subdirectory which break symlink creation in that directory. Ignore the symlink creation error. It is up to the user to provide a functional skeleton.

Note that this defconfig does not use a custom skeleton; it uses the default skeleton. In this situation, the user is not providing the skeleton, so he has no chance to "provide a functional skeleton."

Instead, we must ensure that our default skeleton for the "none" init system is correct.

So, we have two options:
- provide /var in the skeleton-none
- have mutt do the mkdir as it needs it

My preference goes with the second solution, because it looks to me that it is the best solution: mutt needs /var? Then it has to ensure that /var exists before it uses it.

Quoted 5 lines
Quoted 2 lines

I do agreee however that one may consider that /var is a "magic" directory, like /etc or /bin and /lib, and that it should always exist.

So do you think it is a good idea to add /var to skeleton-common? Maybe skeleton-none only?

WE should not add /var to skeleton-common, because it is used by both sys-v and systemd skeletons, and the systemd skeleton wants /var to be a symlink in case the roots is readonly. Which was all the point of the biggish skeleton rework series that has been merged a few days ago.

So, no /var is skeleton-common, ever, please. ;-)

Quoted 6 lines
Quoted 4 lines

Nonetheless, I believe the second solution is still technically better, because it does not make any assumption.

Care to respin by doing an mkdir, please?

Done.

Thanks. I see it was just applied, good! :-)

Regards,
Yann E. MORIN.

Quoted 27 lines

baruch

Quoted 20 lines
Quoted 20 lines

Fixes:
http://autobuild.buildroot.net/results/32d/32dff0df759baf1120e4f11335e735eb0708b237/

---
 package/mutt/mutt.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/mutt/mutt.mk +1 -1
index abd40e5dd612..447c336b4893 100644
@@ -66,7 +66,7 @@ MUTT_CONF_ENV += \
 MUTT_CONF_OPTS += --with-mailpath=/var/mail
 
 define MUTT_VAR_MAIL
-	ln -sf /tmp $(TARGET_DIR)/var/mail
+	-ln -sf /tmp $(TARGET_DIR)/var/mail
 endef
 MUTT_POST_INSTALL_TARGET_HOOKS += MUTT_VAR_MAIL
Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'