Introducing service supervision/management with s6
v3 cover Introducing service supervision/management with s6
Hi!
This series provides all the packages for programs and libraries to build an embedded system with service supervision and management using s6 from
http://skarnet.org.
Note that these packages only provide the mechanism for supervising/managing services using s6, not the policy. Packages to provide a policy suitable for Buildroot-based embedded systems, using s6 as init (instead of SysV or systemd), may be provided later. An example is available in the buildroot-demo-s6 project [1].
[1] https://github.com/elebihan/buildroot-demo-s6/
Best regards,
ELB
v2 -> v3:
- use --prefix=$(HOST_DIR)/usr for host variants.
- add SoB line to patches for skalibs.
- add comments about skarnet software build system in commit logs.
- remove user visible configuration entries for host variants of execline and s6-rc.
v1 -> v2:
- bump all packages to skarnet.org fall release versions.
- add dependency on BR2_USE_MMU.
- remove limitation to glibc.
- split skalibs endianness and type sizes patches.
Eric Le Bihan (9):
skalibs: new package
execline: new package
s6: new package
s6-dns: new package
s6-networking: new package
s6-rc: new package
s6-portable-utils: new package
s6-linux-utils: new package
s6-linux-init: new package
package/Config.in | 9 ++ package/execline/Config.in | 12 +++ package/execline/execline.hash | 2 + package/execline/execline.mk | 70 ++++++++++++++++ package/s6-dns/Config.in | 9 ++ package/s6-dns/s6-dns.hash | 2 + package/s6-dns/s6-dns.mk | 45 ++++++++++ package/s6-linux-init/Config.in | 11 +++ package/s6-linux-init/s6-linux-init.hash | 2 + package/s6-linux-init/s6-linux-init.mk | 36 ++++++++ package/s6-linux-utils/Config.in | 9 ++ package/s6-linux-utils/s6-linux-utils.hash | 2 + package/s6-linux-utils/s6-linux-utils.mk | 34 ++++++++ package/s6-networking/Config.in | 12 +++ package/s6-networking/s6-networking.hash | 2 + package/s6-networking/s6-networking.mk | 48 +++++++++++ package/s6-portable-utils/Config.in | 11 +++ package/s6-portable-utils/s6-portable-utils.hash | 2 + package/s6-portable-utils/s6-portable-utils.mk | 34 ++++++++ package/s6-rc/Config.in | 11 +++ package/s6-rc/s6-rc.hash | 2 + package/s6-rc/s6-rc.mk | 73 +++++++++++++++++ package/s6/Config.in | 10 +++ package/s6/s6.hash | 2 + package/s6/s6.mk | 70 ++++++++++++++++ .../0001-No-runtime-tests-for-endianness.patch | 95 ++++++++++++++++++++++ .../0002-No-runtime-tests-for-type-sizes.patch | 54 ++++++++++++ package/skalibs/Config.in | 9 ++ package/skalibs/skalibs.hash | 2 + package/skalibs/skalibs.mk | 59 ++++++++++++++ 30 files changed, 739 insertions(+) create mode 100644 package/execline/Config.in create mode 100644 package/execline/execline.hash create mode 100644 package/execline/execline.mk create mode 100644 package/s6-dns/Config.in create mode 100644 package/s6-dns/s6-dns.hash create mode 100644 package/s6-dns/s6-dns.mk create mode 100644 package/s6-linux-init/Config.in create mode 100644 package/s6-linux-init/s6-linux-init.hash create mode 100644 package/s6-linux-init/s6-linux-init.mk create mode 100644 package/s6-linux-utils/Config.in create mode 100644 package/s6-linux-utils/s6-linux-utils.hash create mode 100644 package/s6-linux-utils/s6-linux-utils.mk create mode 100644 package/s6-networking/Config.in create mode 100644 package/s6-networking/s6-networking.hash create mode 100644 package/s6-networking/s6-networking.mk create mode 100644 package/s6-portable-utils/Config.in create mode 100644 package/s6-portable-utils/s6-portable-utils.hash create mode 100644 package/s6-portable-utils/s6-portable-utils.mk create mode 100644 package/s6-rc/Config.in create mode 100644 package/s6-rc/s6-rc.hash create mode 100644 package/s6-rc/s6-rc.mk create mode 100644 package/s6/Config.in create mode 100644 package/s6/s6.hash create mode 100644 package/s6/s6.mk create mode 100644 package/skalibs/0001-No-runtime-tests-for-endianness.patch create mode 100644 package/skalibs/0002-No-runtime-tests-for-type-sizes.patch create mode 100644 package/skalibs/Config.in create mode 100644 package/skalibs/skalibs.hash create mode 100644 package/skalibs/skalibs.mk
Signature · 1 line
2.5.5
PATCH v3 1/9 skalibs: new package
This new package provides skalibs, a collection of free software / open source C development files used for building all softwares from skarnet.org.
Note that, though skalibs (and all skarnet softwares) follows the "./configure; make; make install" convention, it does not behave like a traditional autotools project:
- static libraries are installed in $prefix/usr/lib/skalibs.
- pkg-config and libtool are not used: instead a custom system called "sysdeps" is used and locations to libraries and headers are to be passed explicitly via options of the './configure' script.
The host variant is provided to allow building the host variants of the other skarnet softwares.
--- package/Config.in | 1 + .../0001-No-runtime-tests-for-endianness.patch | 95 ++++++++++++++++++++++ .../0002-No-runtime-tests-for-type-sizes.patch | 54 ++++++++++++ package/skalibs/Config.in | 9 ++ package/skalibs/skalibs.hash | 2 + package/skalibs/skalibs.mk | 59 ++++++++++++++ 6 files changed, 220 insertions(+) create mode 100644 package/skalibs/0001-No-runtime-tests-for-endianness.patch create mode 100644 package/skalibs/0002-No-runtime-tests-for-type-sizes.patch create mode 100644 package/skalibs/Config.in create mode 100644 package/skalibs/skalibs.hash create mode 100644 package/skalibs/skalibs.mk
package/Config.in +1 -0
@@ -1366,6 +1366,7 @@ endif source "package/qhull/Config.in" source "package/qlibc/Config.in" source "package/shapelib/Config.in" + source "package/skalibs/Config.in" source "package/sphinxbase/Config.in" source "package/startup-notification/Config.in" source "package/tinycbor/Config.in"
package/skalibs/0001-No-runtime-tests-for-endianness.patch new file +95 -0
95 lines not on this page · raw message
package/skalibs/0002-No-runtime-tests-for-type-sizes.patch new file +54 -0
54 lines not on this page · raw message
package/skalibs/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_SKALIBS + bool "skalibs" + depends on BR2_USE_MMU # fork() + help + skalibs is a package centralizing the FOSS C development + files used for building all software at skarnet.org: + it contains essentially general-purpose libraries. + + http://skarnet.org/software/skalibs/
package/skalibs/skalibs.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 0708172bc2ec9825f8a4f312d35f8dcd94da5f291425a598c33c873b3de77df8 skalibs-2.4.0.2.tar.gz
package/skalibs/skalibs.mk new file +59 -0
59 lines not on this page · raw message
Signature · 1 line
2.5.5
PATCH v3 1/9 skalibs: new package
Quoted 283 lines · Eric Le Bihan
This new package provides skalibs, a collection of free software / open source C development files used for building all softwares from skarnet.org.
Note that, though skalibs (and all skarnet softwares) follows the "./configure; make; make install" convention, it does not behave like a traditional autotools project:
- static libraries are installed in $prefix/usr/lib/skalibs.
- pkg-config and libtool are not used: instead a custom system called "sysdeps" is used and locations to libraries and headers are to be passed explicitly via options of the './configure' script.The host variant is provided to allow building the host variants of the other skarnet softwares.
Signed-off-by Eric Le Bihan <[email protected]>--- package/Config.in | 1 + .../0001-No-runtime-tests-for-endianness.patch | 95 ++++++++++++++++++++++ .../0002-No-runtime-tests-for-type-sizes.patch | 54 ++++++++++++ package/skalibs/Config.in | 9 ++ package/skalibs/skalibs.hash | 2 + package/skalibs/skalibs.mk | 59 ++++++++++++++ 6 files changed, 220 insertions(+) create mode 100644 package/skalibs/0001-No-runtime-tests-for-endianness.patch create mode 100644 package/skalibs/0002-No-runtime-tests-for-type-sizes.patch create mode 100644 package/skalibs/Config.in create mode 100644 package/skalibs/skalibs.hash create mode 100644 package/skalibs/skalibs.mkpackage/Config.in +1
-0@@ -1366,6 +1366,7 @@ endif source "package/qhull/Config.in" source "package/qlibc/Config.in" source "package/shapelib/Config.in" + source "package/skalibs/Config.in" source "package/sphinxbase/Config.in" source "package/startup-notification/Config.in" source "package/tinycbor/Config.in"package/skalibs/0001-No-runtime-tests-for-endianness.patch new file +95
-0@@ -0,0 +1,95 @@ +From 1e6f0b094c6ce6454be572704b866d2ce0962e59 Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan <[email protected]> +Date: Sun, 4 Dec 2016 19:10:40 +0100 +Subject: [PATCH] No runtime tests for endianness + +Replace build and execution of runtime test programs for determining +the endianness of the target with compile time test programs. + +This improves support for cross-compilation. + +Signed-off-by: Eric Le Bihan <[email protected]> +--- + configure | 15 +++++++++++---- + src/sysdeps/trybigendian.c | 16 ++++++++++++++++ + src/sysdeps/trylittleendian.c | 16 ++++++++++++++++ + 3 files changed, 43 insertions(+), 4 deletions(-) + create mode 100644 src/sysdeps/trybigendian.c + create mode 100644 src/sysdeps/trylittleendian.c + +diff --git a/configure b/configure +index 1579025..4da9c5e 100755 +--- a/configure ++++ b/configure +@@ -463,13 +463,20 @@ EOF + fi + exec 3>&- + +- echo "Checking system endianness..." +- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o tryendianness src/sysdeps/tryendianness.c +- endianness=$(./tryendianness) || fail "$0: unable to determine endianness" ++ echo "Checking system endianness..." ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trybigendian src/sysdeps/trybigendian.c 2>/dev/null; then ++ endianness=big ++ else ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO -o trylittleendian src/sysdeps/trylittleendian.c 2>/dev/null; then ++ endianness=little ++ else ++ fail "$0: unable to determine endianness" ++ fi ++ fi + echo "endianness: $endianness" >> $sysdeps/sysdeps + echo "#define ${package_macro_name}_ENDIANNESS \"$endianness\"" >> $sysdeps/sysdeps.h + echo " ... $endianness" +- rm -f tryendianness ++ rm -f trybigendian trylittleendian + + trytypesize ushort USHORT "unsigned short" + trytypesize uint UINT "unsigned int" +diff --git a/src/sysdeps/trybigendian.c b/src/sysdeps/trybigendian.c +new file mode 100644 +index 0000000..d857572 +--- /dev/null ++++ b/src/sysdeps/trybigendian.c +@@ -0,0 +1,16 @@ ++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN) || \ ++ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) || \ ++ defined(__BIG_ENDIAN) || \ ++ defined(__ARMEB__) || \ ++ defined(__THUMBEB__) || \ ++ defined(__AARCH64EB__) || \ ++ defined(_MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__) ++#define YEAH ++#else ++#error "not big endian" ++#endif ++ ++int main(void) ++{ ++ return 0; ++} +diff --git a/src/sysdeps/trylittleendian.c b/src/sysdeps/trylittleendian.c +new file mode 100644 +index 0000000..eba065a +--- /dev/null ++++ b/src/sysdeps/trylittleendian.c +@@ -0,0 +1,16 @@ ++#if defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN) || \ ++ defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__) || \ ++ defined(__LITTLE_ENDIAN) || \ ++ defined(__ARMEL__) || \ ++ defined(__THUMBEL__) || \ ++ defined(__AARCH64EL__) || \ ++ defined(_MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__) ++#define YEAH ++#else ++#error "not little endian" ++#endif ++ ++int main(void) ++{ ++ return 0; ++} +-- +2.5.5 +package/skalibs/0002-No-runtime-tests-for-type-sizes.patch new file +54
-0@@ -0,0 +1,54 @@ +From d868600a3f437750bc44a783d677a25a48100096 Mon Sep 17 00:00:00 2001 +From: Eric Le Bihan <[email protected]> +Date: Sun, 4 Dec 2016 19:11:25 +0100 +Subject: [PATCH] No runtime tests for type sizes + +Replace build and execution of runtime test programs for determining +some type sizes of the target with compile time test programs. + +This improves support for cross-compilation. + +Signed-off-by: Eric Le Bihan <[email protected]> +--- + configure | 24 +++++++++++++++++++++--- + 1 file changed, 21 insertions(+), 3 deletions(-) + +diff --git a/configure b/configure +index 4da9c5e..b5926ca 100755 +--- a/configure ++++ b/configure +@@ -157,10 +157,28 @@ choose () { + + trytypesize () { + echo "Checking size of $3..." +- $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 src/sysdeps/trysizeof$1.c +- type_size=$(./trysizeof$1) || fail "$0: unable to determine size of $3" ++ r=false ++ type_size=0 ++ while true; do ++ cat<<EOF>trysizeof$1.c ++#include <sys/types.h> ++ ++int main(void) ++{ ++ static int v = 1 / !!((sizeof($3) == $type_size)); ++ return 0; ++} ++EOF ++ if $CC_AUTO $CPPFLAGS_AUTO $CFLAGS_AUTO $LDFLAGS_AUTO -o trysizeof$1 trysizeof$1.c 2>/dev/null; then ++ r=true ++ break ++ fi ++ type_size=$(expr $type_size + 1) ++ test $type_size -le 16 || break ++ done ++ test $r = true || fail "$0: unable to determine size of $3" + type_bits=$(expr 8 \* $type_size) +- rm -f trysizeof$1 ++ rm -f trysizeof$1 trysizeof$1.c + echo "sizeof$1: $type_size" >> $sysdeps/sysdeps + echo "#define ${package_macro_name}_SIZEOF$2 $type_size" >> $sysdeps/sysdeps.h + echo "#define ${package_macro_name}_$2_BITS $type_bits" >> $sysdeps/sysdeps.h +-- +2.5.5 +package/skalibs/Config.in new file +9
-0@@ -0,0 +1,9 @@ +config BR2_PACKAGE_SKALIBS + bool "skalibs" + depends on BR2_USE_MMU # fork() + help + skalibs is a package centralizing the FOSS C development + files used for building all software at skarnet.org: + it contains essentially general-purpose libraries. + + http://skarnet.org/software/skalibs/package/skalibs/skalibs.hash new file +2
-0@@ -0,0 +1,2 @@ +# Locally generated +sha256 0708172bc2ec9825f8a4f312d35f8dcd94da5f291425a598c33c873b3de77df8 skalibs-2.4.0.2.tar.gzpackage/skalibs/skalibs.mk new file +50
-0@@ -0,0 +1,59 @@ +################################################################################ +# +# skalibs +# +################################################################################ + +SKALIBS_VERSION = 2.4.0.2 +SKALIBS_SITE = http://skarnet.org/software/skalibs +SKALIBS_LICENSE = ISC +SKALIBS_LICENSE_FILES = COPYING +SKALIBS_INSTALL_STAGING = YES + +SKALIBS_CONF_OPTS = \ + --prefix=/usr \ + --with-default-path=/sbin:/usr/sbin:/bin:/usr/bin \ + $(SHARED_STATIC_LIBS_OPTS) + +define SKALIBS_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(SKALIBS_CONF_OPTS)) +endef + +define SKALIBS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define SKALIBS_REMOVE_STATIC_LIB_DIR + rm -rf $(TARGET_DIR)/usr/lib/skalibs +endef + +SKALIBS_POST_INSTALL_TARGET_HOOKS += SKALIBS_REMOVE_STATIC_LIB_DIR + +define SKALIBS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +define SKALIBS_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install +endef + +HOST_SKALIBS_CONF_OPTS = \ + --prefix=$(HOST_DIR)/usr \ + --disable-static \ + --enable-shared \ + --disable-allstatic + +define HOST_SKALIBS_CONFIGURE_CMDS + (cd $(@D); $(HOST_CONFIGURE_OPTS) ./configure $(HOST_SKALIBS_CONF_OPTS)) +endef + +define HOST_SKALIBS_BUILD_CMDS
package/skalibs/skalibs.mk
Quoted 10 lines
package/skalibs/skalibs.mk new file +9
-1+ $(HOST_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define HOST_SKALIBS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package)) --
This patch was already applied; I will mark it as such in patchwork.
PATCH v3 2/9 execline: new package
In reply to Eric Le BihanThis package provides execline, a (non-interactive) scripting language, like sh, used in the s6 supervision system.
The host variant is provided as it is required to build and run the host variants of s6 and s6-rc.
--- package/Config.in | 1 + package/execline/Config.in | 12 ++++++++ package/execline/execline.hash | 2 ++ package/execline/execline.mk | 70 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 85 insertions(+) create mode 100644 package/execline/Config.in create mode 100644 package/execline/execline.hash create mode 100644 package/execline/execline.mk
package/Config.in +1 -0
@@ -504,6 +504,7 @@ menu "Erlang libraries/modules" source "package/erlang-p1-zlib/Config.in" endmenu endif + source "package/execline/Config.in" source "package/ficl/Config.in" source "package/gauche/Config.in" source "package/guile/Config.in"
package/execline/Config.in new file +12 -0
@@ -0,0 +1,12 @@ +config BR2_PACKAGE_EXECLINE + bool "execline" + select BR2_PACKAGE_SKALIBS + depends on BR2_USE_MMU # skalibs + help + execline is a (non-interactive) scripting language, like sh ; but its + syntax is quite different from a traditional shell syntax. + The execlineb program is meant to be used as an interpreter for a text + file; the other commands are essentially useful inside an execlineb + script. + + http://skarnet.org/software/execline/
package/execline/execline.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 93bd744f2e3ad204cb89f147efdc6ca4e622f9c6bfc9895e0b2cb8b0480029de execline-2.2.0.0.tar.gz
package/execline/execline.mk new file +70 -0
70 lines not on this page · raw message
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 2/9 execline: new package
Hello,
Quoted 7 lines · Eric Le Bihan
This package provides execline, a (non-interactive) scripting language, like sh, used in the s6 supervision system.
The host variant is provided as it is required to build and run the host variants of s6 and s6-rc.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/execline/Config.in | 12 ++++++++ package/execline/execline.hash | 2 ++ package/execline/execline.mk | 70 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 85 insertions(+) create mode 100644 package/execline/Config.in create mode 100644 package/execline/execline.hash create mode 100644 package/execline/execline.mk
Applied to master, after adding an entry to the DEVELOPERS file for this package.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 3/9 s6: new package
In reply to Eric Le BihanThis new package provides s6, a small suite of programs for UNIX, designed to allow process supervision (a.k.a service supervision), in the line of daemontools and runit.
The host variant is provided as it is required to build the host variant of s6-rc. Only the libraries and headers are installed.
--- package/Config.in | 1 + package/s6/Config.in | 10 ++++++++ package/s6/s6.hash | 2 ++ package/s6/s6.mk | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 83 insertions(+) create mode 100644 package/s6/Config.in create mode 100644 package/s6/s6.hash create mode 100644 package/s6/s6.mk
package/Config.in +1 -0
@@ -1758,6 +1758,7 @@ menu "System tools" source "package/quota/Config.in" source "package/rsyslog/Config.in" source "package/runc/Config.in" + source "package/s6/Config.in" source "package/scrub/Config.in" source "package/scrypt/Config.in" source "package/smack/Config.in"
package/s6/Config.in new file +10 -0
@@ -0,0 +1,10 @@ +config BR2_PACKAGE_S6 + bool "s6" + select BR2_PACKAGE_EXECLINE + depends on BR2_USE_MMU # execline + help + s6 is a small suite of programs for UNIX, designed to allow process + supervision (a.k.a service supervision), in the line of daemontools + and runit, as well as various operations on processes and daemons. + + http://skarnet.org/software/s6/
package/s6/s6.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 5e788d5935dbcce76ac9a99cfcf6ee46a2ffb84220c84225df7589e9a3585560 s6-2.4.0.0.tar.gz
package/s6/s6.mk new file +70 -0
70 lines not on this page · raw message
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 3/9 s6: new package
Hello,
Quoted 8 lines · Eric Le Bihan
This new package provides s6, a small suite of programs for UNIX, designed to allow process supervision (a.k.a service supervision), in the line of daemontools and runit.
The host variant is provided as it is required to build the host variant of s6-rc. Only the libraries and headers are installed.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6/Config.in | 10 ++++++++ package/s6/s6.hash | 2 ++ package/s6/s6.mk | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 83 insertions(+) create mode 100644 package/s6/Config.in create mode 100644 package/s6/s6.hash create mode 100644 package/s6/s6.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 4/9 s6-dns: new package
In reply to Eric Le BihanThis new package provides s6-dns, a suite of DNS client programs and libraries for Unix systems, as an alternative to the BIND, djbdns or other DNS clients.
--- package/Config.in | 1 + package/s6-dns/Config.in | 9 +++++++++ package/s6-dns/s6-dns.hash | 2 ++ package/s6-dns/s6-dns.mk | 45 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 57 insertions(+) create mode 100644 package/s6-dns/Config.in create mode 100644 package/s6-dns/s6-dns.hash create mode 100644 package/s6-dns/s6-dns.mk
package/Config.in +1 -0
@@ -1602,6 +1602,7 @@ endif source "package/rsync/Config.in" source "package/rtorrent/Config.in" source "package/rtptools/Config.in" + source "package/s6-dns/Config.in" source "package/samba4/Config.in" source "package/sconeserver/Config.in" source "package/ser2net/Config.in"
package/s6-dns/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_S6_DNS + bool "s6-dns" + select BR2_PACKAGE_SKALIBS + depends on BR2_USE_MMU # skalibs + help + s6-dns is a suite of DNS client programs and libraries for Unix + systems, as an alternative to the BIND, djbdns or other DNS clients. + + http://skarnet.org/software/s6-dns/
package/s6-dns/s6-dns.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 8455f3b1edad8f01a1340cb1242c141755729bfd5d71059739eced5c006539ad s6-dns-2.1.0.0.tar.gz
package/s6-dns/s6-dns.mk new file +45 -0
45 lines not on this page · raw message
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 4/9 s6-dns: new package
Hello,
Quoted 5 lines · Eric Le Bihan
This new package provides s6-dns, a suite of DNS client programs and libraries for Unix systems, as an alternative to the BIND, djbdns or other DNS clients.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-dns/Config.in | 9 +++++++++ package/s6-dns/s6-dns.hash | 2 ++ package/s6-dns/s6-dns.mk | 45 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 57 insertions(+) create mode 100644 package/s6-dns/Config.in create mode 100644 package/s6-dns/s6-dns.hash create mode 100644 package/s6-dns/s6-dns.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 5/9 s6-networking: new package
In reply to Eric Le BihanThis new package provides s6-networking, a suite of small networking utilities for Unix systems.
--- package/Config.in | 1 + package/s6-networking/Config.in | 12 ++++++++ package/s6-networking/s6-networking.hash | 2 ++ package/s6-networking/s6-networking.mk | 48 ++++++++++++++++++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 package/s6-networking/Config.in create mode 100644 package/s6-networking/s6-networking.hash create mode 100644 package/s6-networking/s6-networking.mk
package/Config.in +1 -0
@@ -1603,6 +1603,7 @@ endif source "package/rtorrent/Config.in" source "package/rtptools/Config.in" source "package/s6-dns/Config.in" + source "package/s6-networking/Config.in" source "package/samba4/Config.in" source "package/sconeserver/Config.in" source "package/ser2net/Config.in"
package/s6-networking/Config.in new file +12 -0
@@ -0,0 +1,12 @@ +config BR2_PACKAGE_S6_NETWORKING + bool "s6-networking" + select BR2_PACKAGE_S6_DNS + select BR2_PACKAGE_S6 + depends on BR2_USE_MMU # s6 + help + s6-networking is a suite of small networking utilities for Unix + systems. It includes command-line client and server management, TCP + access control, privilege escalation across UNIX domain sockets, + IDENT protocol management and clock synchronization. + + http://skarnet.org/software/s6-networking/
package/s6-networking/s6-networking.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 5d8150d7413b335693c6e63092381dd0866b1b6f95662a2cbae5ec17ca449ab0 s6-networking-2.2.1.0.tar.gz
package/s6-networking/s6-networking.mk new file +48 -0
48 lines not on this page · raw message
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 5/9 s6-networking: new package
Hello,
Quoted 4 lines · Eric Le Bihan
This new package provides s6-networking, a suite of small networking utilities for Unix systems.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-networking/Config.in | 12 ++++++++ package/s6-networking/s6-networking.hash | 2 ++ package/s6-networking/s6-networking.mk | 48 ++++++++++++++++++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 package/s6-networking/Config.in create mode 100644 package/s6-networking/s6-networking.hash create mode 100644 package/s6-networking/s6-networking.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 6/9 s6-rc: new package
In reply to Eric Le BihanThis new package provides s6-rc, a service manager for s6-based systems, i.e. a suite of programs that can start and stop services, both long-running daemons and one-time initialization scripts, in the proper order according to a dependency tree.
The host variant is provided so s6-rc-compile is available and can be used to build the services database offline, either in a package Makefile or a post-build script.
--- package/Config.in | 1 + package/s6-rc/Config.in | 11 ++++++++ package/s6-rc/s6-rc.hash | 2 ++ package/s6-rc/s6-rc.mk | 73 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 87 insertions(+) create mode 100644 package/s6-rc/Config.in create mode 100644 package/s6-rc/s6-rc.hash create mode 100644 package/s6-rc/s6-rc.mk
package/Config.in +1 -0
@@ -1761,6 +1761,7 @@ menu "System tools" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s6/Config.in" + source "package/s6-rc/Config.in" source "package/scrub/Config.in" source "package/scrypt/Config.in" source "package/smack/Config.in"
package/s6-rc/Config.in new file +11 -0
@@ -0,0 +1,11 @@ +config BR2_PACKAGE_S6_RC + bool "s6-rc" + select BR2_PACKAGE_S6 + depends on BR2_USE_MMU # s6 + help + s6-rc is a service manager for s6-based systems, i.e. a suite of + programs that can start and stop services, both long-running daemons + and one-time initialization scripts, in the proper order according to + a dependency tree. + + http://skarnet.org/software/s6-rc/
package/s6-rc/s6-rc.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 d04a8a765740ed55e38a33da3639197f51f83b3e498bdef5bc1d1d322b1acff3 s6-rc-0.1.0.0.tar.gz
package/s6-rc/s6-rc.mk new file +73 -0
73 lines not on this page · raw message
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 6/9 s6-rc: new package
Hello,
Quoted 10 lines · Eric Le Bihan
This new package provides s6-rc, a service manager for s6-based systems, i.e. a suite of programs that can start and stop services, both long-running daemons and one-time initialization scripts, in the proper order according to a dependency tree.
The host variant is provided so s6-rc-compile is available and can be used to build the services database offline, either in a package
Makefileor a post-build script.Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-rc/Config.in | 11 ++++++++ package/s6-rc/s6-rc.hash | 2 ++ package/s6-rc/s6-rc.mk | 73 ++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 87 insertions(+) create mode 100644 package/s6-rc/Config.in create mode 100644 package/s6-rc/s6-rc.hash create mode 100644 package/s6-rc/s6-rc.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 6/9 s6-rc: new package
Quoted 12 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Thomas" == Thomas Petazzoni <[email protected]> writes:
Hello,
Quoted 8 lines · Eric Le Bihan
This new package provides s6-rc, a service manager for s6-based systems, i.e. a suite of programs that can start and stop services, both long-running daemons and one-time initialization scripts, in the proper order according to a dependency tree.
The host variant is provided so s6-rc-compile is available and can be used to build the services database offline, either in a package
Makefileor a post-build script.
Hmm, shouldn't it then have a Config.in.host so it can be enabled for post-build scripts?
Signature · 1 line
Bye, Peter Korsgaard
PATCH v3 6/9 s6-rc: new package
Hello,
Quoted 6 lines · Peter Korsgaard
Quoted 6 lines · Eric Le Bihan
Quoted 5 lines
This new package provides s6-rc, a service manager for s6-based systems, i.e. a suite of programs that can start and stop services, both long-running daemons and one-time initialization scripts, in the proper order according to a dependency tree.
Quoted 6 lines
Quoted 3 lines
Quoted 3 lines
The host variant is provided so s6-rc-compile is available and can be used to build the services database offline, either in a package
Makefileor a post-build script.Hmm, shouldn't it then have a Config.in.host so it can be enabled for post-build scripts?
Indeed. I guess that's something Eric can improve in a follow-up patch.
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v3 7/9 s6-portable-utils: new package
In reply to Eric Le BihanThis new package provides s6-portable-utils, a set of tiny general Unix utilities, often performing well-known tasks such as cut and grep, but optimized for simplicity and small size.
--- package/Config.in | 1 + package/s6-portable-utils/Config.in | 11 ++++++++ package/s6-portable-utils/s6-portable-utils.hash | 2 ++ package/s6-portable-utils/s6-portable-utils.mk | 34 ++++++++++++++++++++++++ 4 files changed, 48 insertions(+) create mode 100644 package/s6-portable-utils/Config.in create mode 100644 package/s6-portable-utils/s6-portable-utils.hash create mode 100644 package/s6-portable-utils/s6-portable-utils.mk
package/Config.in +1 -0
@@ -1761,6 +1761,7 @@ menu "System tools" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s6/Config.in" + source "package/s6-portable-utils/Config.in" source "package/s6-rc/Config.in" source "package/scrub/Config.in" source "package/scrypt/Config.in"
package/s6-portable-utils/Config.in new file +11 -0
@@ -0,0 +1,11 @@ +config BR2_PACKAGE_S6_PORTABLE_UTILS + bool "s6-portable-utils" + select BR2_PACKAGE_SKALIBS + depends on BR2_USE_MMU # skalibs + help + s6-portable-utils is a set of tiny general Unix utilities, often + performing well-known tasks such as cut and grep, but optimized for + simplicity and small size. They were designed for embedded systems + and other constrained environments, but they work everywhere. + + http://skarnet.org/software/s6-portable-utils/
package/s6-portable-utils/s6-portable-utils.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 cde145b7b9d1f1685f271c45c8aed635e74221689bb8ec21a11b3e5a252d1c4e s6-portable-utils-2.1.0.0.tar.gz
package/s6-portable-utils/s6-portable-utils.mk new file +34 -0
@@ -0,0 +1,34 @@ +################################################################################ +# +# s6-portable-utils +# +################################################################################ + +S6_PORTABLE_UTILS_VERSION = 2.1.0.0 +S6_PORTABLE_UTILS_SITE = http://skarnet.org/software/s6-portable-utils +S6_PORTABLE_UTILS_LICENSE = ISC +S6_PORTABLE_UTILS_LICENSE_FILES = COPYING +S6_PORTABLE_UTILS_DEPENDENCIES = skalibs + +S6_PORTABLE_UTILS_CONF_OPTS = \ + --prefix=/usr \ + --with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \ + --with-include=$(STAGING_DIR)/usr/include \ + --with-dynlib=$(STAGING_DIR)/usr/lib \ + --with-lib=$(STAGING_DIR)/usr/lib/skalibs \ + $(if $(BR2_STATIC_LIBS),,--disable-allstatic) \ + $(SHARED_STATIC_LIBS_OPTS) + +define S6_PORTABLE_UTILS_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_PORTABLE_UTILS_CONF_OPTS)) +endef + +define S6_PORTABLE_UTILS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define S6_PORTABLE_UTILS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package))
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 7/9 s6-portable-utils: new package
Hello,
Quoted 5 lines · Eric Le Bihan
This new package provides s6-portable-utils, a set of tiny general Unix utilities, often performing well-known tasks such as cut and grep, but optimized for simplicity and small size.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-portable-utils/Config.in | 11 ++++++++ package/s6-portable-utils/s6-portable-utils.hash | 2 ++ package/s6-portable-utils/s6-portable-utils.mk | 34 ++++++++++++++++++++++++ 4 files changed, 48 insertions(+) create mode 100644 package/s6-portable-utils/Config.in create mode 100644 package/s6-portable-utils/s6-portable-utils.hash create mode 100644 package/s6-portable-utils/s6-portable-utils.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 8/9 s6-linux-utils: new package
In reply to Eric Le BihanThis new package provides s6-linux-utils, a set of minimalistic Linux-specific system utilities.
--- package/Config.in | 1 + package/s6-linux-utils/Config.in | 9 ++++++++ package/s6-linux-utils/s6-linux-utils.hash | 2 ++ package/s6-linux-utils/s6-linux-utils.mk | 34 ++++++++++++++++++++++++++++++ 4 files changed, 46 insertions(+) create mode 100644 package/s6-linux-utils/Config.in create mode 100644 package/s6-linux-utils/s6-linux-utils.hash create mode 100644 package/s6-linux-utils/s6-linux-utils.mk
package/Config.in +1 -0
@@ -1761,6 +1761,7 @@ menu "System tools" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s6/Config.in" + source "package/s6-linux-utils/Config.in" source "package/s6-portable-utils/Config.in" source "package/s6-rc/Config.in" source "package/scrub/Config.in"
package/s6-linux-utils/Config.in new file +9 -0
@@ -0,0 +1,9 @@ +config BR2_PACKAGE_S6_LINUX_UTILS + bool "s6-linux-utils" + select BR2_PACKAGE_SKALIBS + depends on BR2_USE_MMU # skalibs + help + s6-linux-utils is a set of minimalistic Linux-specific system + utilities. + + http://skarnet.org/software/s6-linux-utils/
package/s6-linux-utils/s6-linux-utils.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 587745abfbf2cc631bb54dd2b3fd29f39b723e3c50e28165138a85c98fda35f9 s6-linux-utils-2.2.0.0.tar.gz
package/s6-linux-utils/s6-linux-utils.mk new file +34 -0
@@ -0,0 +1,34 @@ +################################################################################ +# +# s6-linux-utils +# +################################################################################ + +S6_LINUX_UTILS_VERSION = 2.2.0.0 +S6_LINUX_UTILS_SITE = http://skarnet.org/software/s6-linux-utils +S6_LINUX_UTILS_LICENSE = ISC +S6_LINUX_UTILS_LICENSE_FILES = COPYING +S6_LINUX_UTILS_DEPENDENCIES = skalibs + +S6_LINUX_UTILS_CONF_OPTS = \ + --prefix=/usr \ + --with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \ + --with-include=$(STAGING_DIR)/usr/include \ + --with-dynlib=$(STAGING_DIR)/usr/lib \ + --with-lib=$(STAGING_DIR)/usr/lib/skalibs \ + $(if $(BR2_STATIC_LIBS),,--disable-allstatic) \ + $(SHARED_STATIC_LIBS_OPTS) + +define S6_LINUX_UTILS_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_LINUX_UTILS_CONF_OPTS)) +endef + +define S6_LINUX_UTILS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define S6_LINUX_UTILS_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package))
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 8/9 s6-linux-utils: new package
Hello,
Quoted 4 lines · Eric Le Bihan
This new package provides s6-linux-utils, a set of minimalistic Linux-specific system utilities.
Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-linux-utils/Config.in | 9 ++++++++ package/s6-linux-utils/s6-linux-utils.hash | 2 ++ package/s6-linux-utils/s6-linux-utils.mk | 34 ++++++++++++++++++++++++++++++ 4 files changed, 46 insertions(+) create mode 100644 package/s6-linux-utils/Config.in create mode 100644 package/s6-linux-utils/s6-linux-utils.hash create mode 100644 package/s6-linux-utils/s6-linux-utils.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 9/9 s6-linux-init: new package
In reply to Eric Le BihanThis new package provides s6-linux-init, a set of minimalistic tools to create a s6-based init system, including a /sbin/init program, on a machine running a Linux kernel.
--- package/Config.in | 1 + package/s6-linux-init/Config.in | 11 ++++++++++ package/s6-linux-init/s6-linux-init.hash | 2 ++ package/s6-linux-init/s6-linux-init.mk | 36 ++++++++++++++++++++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 package/s6-linux-init/Config.in create mode 100644 package/s6-linux-init/s6-linux-init.hash create mode 100644 package/s6-linux-init/s6-linux-init.mk
package/Config.in +1 -0
@@ -1761,6 +1761,7 @@ menu "System tools" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s6/Config.in" + source "package/s6-linux-init/Config.in" source "package/s6-linux-utils/Config.in" source "package/s6-portable-utils/Config.in" source "package/s6-rc/Config.in"
package/s6-linux-init/Config.in new file +11 -0
@@ -0,0 +1,11 @@ +config BR2_PACKAGE_S6_LINUX_INIT + bool "s6-linux-init" + select BR2_PACKAGE_S6 + select BR2_PACKAGE_S6_LINUX_UTILS + select BR2_PACKAGE_S6_PORTABLE_UTILS + depends on BR2_USE_MMU # s6 + help + s6-linux-init is a set of minimalistic tools to create a s6-based + init system, including a /sbin/init binary, on a Linux kernel. + + http://skarnet.org/software/s6-linux-init/
package/s6-linux-init/s6-linux-init.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally generated +sha256 131484e61eff0e671e112f0436b13e8e7d08752f810d8bec4924a68383eee2b9 s6-linux-init-0.2.0.0.tar.gz
package/s6-linux-init/s6-linux-init.mk new file +36 -0
@@ -0,0 +1,36 @@ +################################################################################ +# +# s6-linux-init +# +################################################################################ + +S6_LINUX_INIT_VERSION = 0.2.0.0 +S6_LINUX_INIT_SITE = http://skarnet.org/software/s6-linux-init +S6_LINUX_INIT_LICENSE = ISC +S6_LINUX_INIT_LICENSE_FILES = COPYING +S6_LINUX_INIT_DEPENDENCIES = s6 s6-linux-utils s6-portable-utils + +S6_LINUX_INIT_CONF_OPTS = \ + --prefix=/usr \ + --with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \ + --with-include=$(STAGING_DIR)/usr/include \ + --with-dynlib=$(STAGING_DIR)/usr/lib \ + --with-lib=$(STAGING_DIR)/usr/lib/execline \ + --with-lib=$(STAGING_DIR)/usr/lib/s6 \ + --with-lib=$(STAGING_DIR)/usr/lib/skalibs \ + $(if $(BR2_STATIC_LIBS),,--disable-allstatic) \ + $(SHARED_STATIC_LIBS_OPTS) + +define S6_LINUX_INIT_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_LINUX_INIT_CONF_OPTS)) +endef + +define S6_LINUX_INIT_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define S6_LINUX_INIT_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package))
Signature · 1 line
2.5.5
Thomas Petazzoni
AppliedPATCH v3 9/9 s6-linux-init: new package
Hello,
Quoted 5 lines · Eric Le Bihan
This new package provides s6-linux-init, a set of minimalistic tools to create a s6-based init system, including a
/sbin/initprogram, on a machine running a Linux kernel.Signed-off-by Eric Le Bihan <[email protected]>
Quoted 9 lines
--- package/Config.in | 1 + package/s6-linux-init/Config.in | 11 ++++++++++ package/s6-linux-init/s6-linux-init.hash | 2 ++ package/s6-linux-init/s6-linux-init.mk | 36 ++++++++++++++++++++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 package/s6-linux-init/Config.in create mode 100644 package/s6-linux-init/s6-linux-init.hash create mode 100644 package/s6-linux-init/s6-linux-init.mk
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v3 9/9 s6-linux-init: new package
In reply to Eric Le BihanQuoted 5 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Eric" == Eric Le Bihan <[email protected]> writes:
This new package provides s6-linux-init, a set of minimalistic tools to create a s6-based init system, including a
/sbin/initprogram, on a machine running a Linux kernel.
Hmm, should this then be added as one of the available init options in the system menu? Or if not, at least depend on BR2_INIT_NONE to ensure no other init system overwrites /sbin/init?
Quoted 97 lines
Signed-off-by Eric Le Bihan <[email protected]>--- package/Config.in | 1 + package/s6-linux-init/Config.in | 11 ++++++++++ package/s6-linux-init/s6-linux-init.hash | 2 ++ package/s6-linux-init/s6-linux-init.mk | 36 ++++++++++++++++++++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 package/s6-linux-init/Config.in create mode 100644 package/s6-linux-init/s6-linux-init.hash create mode 100644 package/s6-linux-init/s6-linux-init.mkpackage/Config.in +1
-0@@ -1761,6 +1761,7 @@ menu "System tools" source "package/rsyslog/Config.in" source "package/runc/Config.in" source "package/s6/Config.in" + source "package/s6-linux-init/Config.in" source "package/s6-linux-utils/Config.in" source "package/s6-portable-utils/Config.in" source "package/s6-rc/Config.in"package/s6-linux-init/Config.in new file +11
-0@@ -0,0 +1,11 @@ +config BR2_PACKAGE_S6_LINUX_INIT + bool "s6-linux-init" + select BR2_PACKAGE_S6 + select BR2_PACKAGE_S6_LINUX_UTILS + select BR2_PACKAGE_S6_PORTABLE_UTILS + depends on BR2_USE_MMU # s6 + help + s6-linux-init is a set of minimalistic tools to create a s6-based + init system, including a /sbin/init binary, on a Linux kernel. + + http://skarnet.org/software/s6-linux-init/package/s6-linux-init/s6-linux-init.hash new file +2
-0@@ -0,0 +1,2 @@ +# Locally generated +sha256 131484e61eff0e671e112f0436b13e8e7d08752f810d8bec4924a68383eee2b9 s6-linux-init-0.2.0.0.tar.gzpackage/s6-linux-init/s6-linux-init.mk new file +36
-0@@ -0,0 +1,36 @@ +################################################################################ +# +# s6-linux-init +# +################################################################################ + +S6_LINUX_INIT_VERSION = 0.2.0.0 +S6_LINUX_INIT_SITE = http://skarnet.org/software/s6-linux-init +S6_LINUX_INIT_LICENSE = ISC +S6_LINUX_INIT_LICENSE_FILES = COPYING +S6_LINUX_INIT_DEPENDENCIES = s6 s6-linux-utils s6-portable-utils + +S6_LINUX_INIT_CONF_OPTS = \ + --prefix=/usr \ + --with-sysdeps=$(STAGING_DIR)/usr/lib/skalibs/sysdeps \ + --with-include=$(STAGING_DIR)/usr/include \ + --with-dynlib=$(STAGING_DIR)/usr/lib \ + --with-lib=$(STAGING_DIR)/usr/lib/execline \ + --with-lib=$(STAGING_DIR)/usr/lib/s6 \ + --with-lib=$(STAGING_DIR)/usr/lib/skalibs \ + $(if $(BR2_STATIC_LIBS),,--disable-allstatic) \ + $(SHARED_STATIC_LIBS_OPTS) + +define S6_LINUX_INIT_CONFIGURE_CMDS + (cd $(@D); $(TARGET_CONFIGURE_OPTS) ./configure $(S6_LINUX_INIT_CONF_OPTS)) +endef + +define S6_LINUX_INIT_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define S6_LINUX_INIT_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package))Signature · 6 lines
2.5.5 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 1 line
Bye, Peter Korsgaard
PATCH v3 9/9 s6-linux-init: new package
Hi!
Quoted 9 lines · Peter Korsgaard
Quoted 5 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Eric" == Eric Le Bihan <[email protected]> writes:
This new package provides s6-linux-init, a set of minimalistic tools to create a s6-based init system, including a
/sbin/initprogram, on a machine running a Linux kernel.Hmm, should this then be added as one of the available init options in the system menu? Or if not, at least depend on
BR2_INIT_NONEto ensure no other init system overwrites/sbin/init?
s6-linux-init [1] does not provide a replacement for /sbin/init, but a tool to generate one FROM the target. So when this package is selected, there is no risk of messing up target/sbin/init at build time. Hence no need to make it depend on on BR2_INIT_NONE.
The s6* packages provide the tools to build an init system with service supervision (as the author states it: "mechanism over policy"). It is up to the user to glue everything via post-build scripts or a custom skeleton. A basic example of such a skeleton [2] is available in a personal Buildroot external customization [3].
Should some comments be added in s6-linux-init/Config.in to clarify this?
[1] http://skarnet.org/software/s6-linux-init/
[2] https://github.com/elebihan/s6-br2-init-skeleton/
[3] https://github.com/elebihan/br2-ext-skarnet/blob/master/system/Config.in
--
ELB