All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd
@ 2015-01-19 16:14 Maxim Mikityanskiy
  2015-01-19 16:14 ` [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script Maxim Mikityanskiy
                   ` (15 more replies)
  0 siblings, 16 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Hello,

There are some enhancements, primarily targeted on better systemd
support, adding some little features to buildroot, and of course some
small fixes.

Please review these patches; if things will go fine, I have plans on
sending a little more enhancements here :)

Maxim Mikityanskiy (16):
  package/busybox: optional udhcpc script
  package: install bash-completion files only with bash
  package/dbus: fix machine-id when using systemd
  package/systemd: add missing dependencies
  package/systemd: apply locale settings in user shells
  package/dosfstools: add missing symlinks
  package/dropbear: install dropbear.service to correct dir
  package/e2fsprogs: make /sbin/fsck available
  package/minidlna: improve systemd support
  package/transmission: improve systemd support
  package/samba: use FHS dirs
  package/samba: add systemd support
  package/tar: add support for acl and xattr
  package/util-linux: add more tool select options
  package/vim: add default vimrc
  package/rng-tools: add systemd support for rngd

 package/busybox/Config.in                        |  5 ++
 package/busybox/busybox.mk                       | 15 +++--
 package/dbus/dbus.mk                             | 13 +++--
 package/dosfstools/dosfstools.mk                 | 13 +++++
 package/dropbear/dropbear.mk                     |  4 +-
 package/e2fsprogs/e2fsprogs.mk                   |  8 +++
 package/kmod/kmod.mk                             |  4 ++
 package/minidlna/minidlna.conf                   | 74 ++++++++++++++++++++++++
 package/minidlna/minidlna.mk                     | 37 ++++++++++++
 package/minidlna/minidlna.service                | 12 ++++
 package/minidlna/minidlna_sysctl.conf            |  1 +
 package/minidlna/minidlna_sysusers.conf          |  1 +
 package/minidlna/minidlna_tmpfiles.conf          |  3 +
 package/rng-tools/rng-tools.mk                   |  8 +++
 package/rng-tools/rngd-exit-code.patch           | 11 ++++
 package/rng-tools/rngd.service                   |  9 +++
 package/samba/S91smb                             |  5 +-
 package/samba/nmbd.service                       | 12 ++++
 package/samba/samba.mk                           | 33 +++++++++--
 package/samba/samba_tmpfiles.conf                |  4 ++
 package/samba/smbd.service                       | 12 ++++
 package/samba/winbindd.service                   | 12 ++++
 package/systemd/Config.in                        |  3 +
 package/systemd/locale.sh                        | 26 +++++++++
 package/systemd/systemd.mk                       | 15 +++++
 package/tar/tar.mk                               | 10 ++++
 package/transmission/transmission-daemon.service | 12 ++++
 package/transmission/transmission.mk             | 45 ++++++++++++++
 package/transmission/transmission_sysctl.conf    |  2 +
 package/transmission/transmission_sysusers.conf  |  1 +
 package/transmission/transmission_tmpfiles.conf  |  1 +
 package/util-linux/Config.in                     | 64 +++++++++++++++++++-
 package/util-linux/util-linux.mk                 | 24 +++++++-
 package/vim/vim.mk                               | 11 ++++
 package/vim/vimrc                                | 14 +++++
 35 files changed, 501 insertions(+), 23 deletions(-)
 create mode 100644 package/minidlna/minidlna.conf
 create mode 100644 package/minidlna/minidlna.service
 create mode 100644 package/minidlna/minidlna_sysctl.conf
 create mode 100644 package/minidlna/minidlna_sysusers.conf
 create mode 100644 package/minidlna/minidlna_tmpfiles.conf
 create mode 100644 package/rng-tools/rngd-exit-code.patch
 create mode 100644 package/rng-tools/rngd.service
 create mode 100644 package/samba/nmbd.service
 create mode 100644 package/samba/samba_tmpfiles.conf
 create mode 100644 package/samba/smbd.service
 create mode 100644 package/samba/winbindd.service
 create mode 100644 package/systemd/locale.sh
 create mode 100644 package/transmission/transmission-daemon.service
 create mode 100644 package/transmission/transmission_sysctl.conf
 create mode 100644 package/transmission/transmission_sysusers.conf
 create mode 100644 package/transmission/transmission_tmpfiles.conf
 create mode 100644 package/vim/vimrc

-- 
2.2.1

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

* [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-01-26 21:26   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash Maxim Mikityanskiy
                   ` (14 subsequent siblings)
  15 siblings, 1 reply; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Create new config option BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT to control
whether to install optional udhcpc default.script. It is possible that
udhcpc is not enabled in busybox config, so default.script is useless in
that case.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/busybox/Config.in  |  5 +++++
 package/busybox/busybox.mk | 15 +++++++++++----
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/package/busybox/Config.in b/package/busybox/Config.in
index f2f2990..626faf5 100644
--- a/package/busybox/Config.in
+++ b/package/busybox/Config.in
@@ -26,6 +26,11 @@ config BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	  Show packages in menuconfig that are potentially also provided
 	  by busybox.
 
+config BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT
+	bool "Install the udhcpc default script"
+	help
+	  Install /usr/share/udhcp/default.script for udhcpc.
+
 config BR2_PACKAGE_BUSYBOX_WATCHDOG
 	bool "Install the watchdog daemon startup script"
 	help
diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
index f68a2f8..fbdde62 100644
--- a/package/busybox/busybox.mk
+++ b/package/busybox/busybox.mk
@@ -49,10 +49,20 @@ BUSYBOX_KCONFIG_FILE = $(BUSYBOX_CONFIG_FILE)
 BUSYBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig
 BUSYBOX_KCONFIG_OPTS = $(BUSYBOX_MAKE_OPTS)
 
+ifeq ($(BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT),y)
+define BUSYBOX_INSTALL_UDHCPC_SCRIPT
+	$(INSTALL) -m 0755 -D package/busybox/udhcpc.script \
+		$(TARGET_DIR)/usr/share/udhcpc/default.script; \
+endef
 define BUSYBOX_PERMISSIONS
 	/bin/busybox                     f 4755 0  0 - - - - -
 	/usr/share/udhcpc/default.script f 755  0  0 - - - - -
 endef
+else
+define BUSYBOX_PERMISSIONS
+	/bin/busybox                     f 4755 0  0 - - - - -
+endef
+endif
 
 # If mdev will be used for device creation enable it and copy S10mdev to /etc/init.d
 ifeq ($(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV),y)
@@ -210,10 +220,7 @@ endef
 
 define BUSYBOX_INSTALL_TARGET_CMDS
 	$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) -C $(@D) install
-	$(INSTALL) -m 0755 -D package/busybox/udhcpc.script \
-		$(TARGET_DIR)/usr/share/udhcpc/default.script
-	$(INSTALL) -m 0755 -d \
-		$(TARGET_DIR)/usr/share/udhcpc/default.script.d
+	$(BUSYBOX_INSTALL_UDHCPC_SCRIPT)
 	$(BUSYBOX_INSTALL_MDEV_CONF)
 endef
 
-- 
2.2.1

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

* [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
  2015-01-19 16:14 ` [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-01-26 22:00   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd Maxim Mikityanskiy
                   ` (13 subsequent siblings)
  15 siblings, 1 reply; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

package/systemd, package/kmod, package/util-linux: don't install
bash-completion files if bash is not selected to be installed.
Otherwise, install bash-completion files.

package/systemd: don't install zsh-completion files is zsh is not
selected to be installed. Otherwise, install zsh-completion files.

package/util-linux: don't install empty
/usr/share/bash-completion/completions directory if bash is not going to
be installed, and install bash-completion files if bash is selected to
be installed.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/kmod/kmod.mk             | 4 ++++
 package/systemd/systemd.mk       | 8 ++++++++
 package/util-linux/util-linux.mk | 7 ++++++-
 3 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk
index cc185c8..ff07c78 100644
--- a/package/kmod/kmod.mk
+++ b/package/kmod/kmod.mk
@@ -64,6 +64,10 @@ else
 KMOD_CONF_OPTS += --disable-tools
 endif
 
+ifeq ($(BR2_PACKAGE_BASH),)
+KMOD_CONF_OPTS += --with-bashcompletiondir=
+endif
+
 # We only install depmod, since that's the only tool used for the
 # host.
 define HOST_KMOD_INSTALL_TOOLS
diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
index dbfce71..92f99c2 100644
--- a/package/systemd/systemd.mk
+++ b/package/systemd/systemd.mk
@@ -133,6 +133,14 @@ else
 SYSTEMD_CONF_OPTS += --disable-smack
 endif
 
+ifeq ($(BR2_PACKAGE_BASH),)
+SYSTEMD_CONF_OPTS += --with-bashcompletiondir=
+endif
+
+ifeq ($(BR2_PACKAGE_ZSH),)
+SYSTEMD_CONF_OPTS += --with-zshcompletiondir=
+endif
+
 # mq_getattr needs -lrt
 SYSTEMD_MAKE_OPTS += LIBS=-lrt
 SYSTEMD_MAKE_OPTS += LDFLAGS+=-ldl
diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk
index a530596..c8fb77c 100644
--- a/package/util-linux/util-linux.mk
+++ b/package/util-linux/util-linux.mk
@@ -21,9 +21,14 @@ UTIL_LINUX_CONF_ENV = scanf_cv_type_modifier=no
 UTIL_LINUX_CONF_OPTS += \
 	--disable-rpath \
 	--disable-makeinstall-chown \
-	--disable-bash-completion \
 	--without-python
 
+ifeq ($(BR2_PACKAGE_BASH),)
+UTIL_LINUX_CONF_OPTS += \
+	--disable-bash-completion \
+	--with-bashcompletiondir=
+endif
+
 # We don't want the host-busybox dependency to be added automatically
 HOST_UTIL_LINUX_DEPENDENCIES = host-pkgconf
 
-- 
2.2.1

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

* [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
  2015-01-19 16:14 ` [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script Maxim Mikityanskiy
  2015-01-19 16:14 ` [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 14:50   ` Samuel Martin
  2015-07-12 23:48   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies Maxim Mikityanskiy
                   ` (12 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

When systemd is used, /var/lib/dbus becomes dangling symlink, because
nobody does mkdir /tmp/dbus, so /var/lib/dbus/machine-id could not be
written. On SysVinit systems there is init script that creates
/tmp/dbus.

This patch preserves old behavior for SysVinit systems, and introduces
new one for systemd-booted systems: /var/lib/dbus is a persistent
directory, it holds symlink /var/lib/dbus/machine-id -> /etc/machine-id
as machine-id(5) suggests, and /etc/machine-id is managed by systemd.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/dbus/dbus.mk | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk
index faad2b5..266e27b 100644
--- a/package/dbus/dbus.mk
+++ b/package/dbus/dbus.mk
@@ -73,17 +73,18 @@ endef
 
 DBUS_POST_INSTALL_TARGET_HOOKS += DBUS_REMOVE_DEVFILES
 
-define DBUS_INSTALL_TARGET_FIXUP
+define DBUS_INSTALL_INIT_SYSV
+	$(INSTALL) -m 0755 -D package/dbus/S30dbus \
+		$(TARGET_DIR)/etc/init.d/S30dbus
+
 	mkdir -p $(TARGET_DIR)/var/lib
 	rm -rf $(TARGET_DIR)/var/lib/dbus
 	ln -sf /tmp/dbus $(TARGET_DIR)/var/lib/dbus
 endef
 
-DBUS_POST_INSTALL_TARGET_HOOKS += DBUS_INSTALL_TARGET_FIXUP
-
-define DBUS_INSTALL_INIT_SYSV
-	$(INSTALL) -m 0755 -D package/dbus/S30dbus \
-		$(TARGET_DIR)/etc/init.d/S30dbus
+define DBUS_INSTALL_INIT_SYSTEMD
+	mkdir -p $(TARGET_DIR)/var/lib/dbus
+	ln -sf /etc/machine-id $(TARGET_DIR)/var/lib/dbus/machine-id
 endef
 
 HOST_DBUS_DEPENDENCIES = host-pkgconf host-expat
-- 
2.2.1

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

* [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (2 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 14:22   ` Samuel Martin
  2015-07-12 22:27   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells Maxim Mikityanskiy
                   ` (11 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Systemd depends on mount and nologin from util-linux. Mount from busybox
is not fine, because its behavior differs from util-linux mount. Busybox
mount does not handle correctly 'mount / -o remount' (should apply
options from /etc/fstab). Nologin should be present, because
systemd-sysusers uses it as shell for newly created system users.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/systemd/Config.in | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/package/systemd/Config.in b/package/systemd/Config.in
index ed59c8d..8a73398 100644
--- a/package/systemd/Config.in
+++ b/package/systemd/Config.in
@@ -22,6 +22,9 @@ config BR2_PACKAGE_SYSTEMD
 	select BR2_PACKAGE_UTIL_LINUX
 	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
 	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
+	select BR2_PACKAGE_UTIL_LINUX_BINARIES
+	select BR2_PACKAGE_UTIL_LINUX_MOUNT
+	select BR2_PACKAGE_UTIL_LINUX_NOLOGIN
 	select BR2_PACKAGE_KMOD
 	select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # kmod-tools
 	select BR2_PACKAGE_KMOD_TOOLS
-- 
2.2.1

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

* [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (3 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 15:20   ` Samuel Martin
  2015-07-12 22:55   ` [Buildroot] [PATCH v2] skeleton: " Arnout Vandecappelle
  2015-01-19 16:14 ` [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks Maxim Mikityanskiy
                   ` (10 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Add /etc/profile.d/locale.sh script from Arch Linux to apply systemd
locale settings in user shells.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/systemd/locale.sh  | 26 ++++++++++++++++++++++++++
 package/systemd/systemd.mk |  7 +++++++
 2 files changed, 33 insertions(+)
 create mode 100644 package/systemd/locale.sh

diff --git a/package/systemd/locale.sh b/package/systemd/locale.sh
new file mode 100644
index 0000000..b665872
--- /dev/null
+++ b/package/systemd/locale.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+if [ -z "$LANG" ]; then
+  if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then
+    . "$XDG_CONFIG_HOME/locale.conf"
+  elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then
+    . "$HOME/.config/locale.conf"
+  elif [ -r /etc/locale.conf ]; then
+    . /etc/locale.conf
+  fi
+fi
+
+LANG=${LANG:-C}
+export LANG
+[ -n "$LC_CTYPE" ]          && export LC_CTYPE
+[ -n "$LC_NUMERIC" ]        && export LC_NUMERIC
+[ -n "$LC_TIME" ]           && export LC_TIME
+[ -n "$LC_COLLATE" ]        && export LC_COLLATE
+[ -n "$LC_MONETARY" ]       && export LC_MONETARY
+[ -n "$LC_MESSAGES" ]       && export LC_MESSAGES
+[ -n "$LC_PAPER" ]          && export LC_PAPER
+[ -n "$LC_NAME" ]           && export LC_NAME
+[ -n "$LC_ADDRESS" ]        && export LC_ADDRESS
+[ -n "$LC_TELEPHONE" ]      && export LC_TELEPHONE
+[ -n "$LC_MEASUREMENT" ]    && export LC_MEASUREMENT
+[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION
diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
index 92f99c2..ef14c76 100644
--- a/package/systemd/systemd.mk
+++ b/package/systemd/systemd.mk
@@ -158,6 +158,12 @@ define SYSTEMD_INSTALL_MACHINEID_HOOK
 	touch $(TARGET_DIR)/etc/machine-id
 endef
 
+define SYSTEMD_INSTALL_LOCALE_SH_HOOK
+	mkdir -p $(TARGET_DIR)/etc/profile.d
+	$(INSTALL) -D -m 644 package/systemd/locale.sh \
+		$(TARGET_DIR)/etc/profile.d/locale.sh
+endef
+
 define SYSTEMD_SANITIZE_PATH_IN_UNITS
 	find $(TARGET_DIR)/lib/systemd/system -name '*.service' \
 		-exec $(SED) 's,$(HOST_DIR),,g' {} \;
@@ -172,6 +178,7 @@ endef
 SYSTEMD_POST_INSTALL_TARGET_HOOKS += \
 	SYSTEMD_INSTALL_INIT_HOOK \
 	SYSTEMD_INSTALL_MACHINEID_HOOK \
+	SYSTEMD_INSTALL_LOCALE_SH_HOOK \
 	SYSTEMD_INSTALL_RESOLVCONF_HOOK \
 	SYSTEMD_DISABLE_LDCONFIG_SERVICE_HOOK \
 	SYSTEMD_SANITIZE_PATH_IN_UNITS
-- 
2.2.1

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

* [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (4 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 16:22   ` Samuel Martin
  2015-03-08 22:04   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir Maxim Mikityanskiy
                   ` (9 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Install alternative symlinks for dosfstools mkfs.fat, fsck.fat and
fatlabel. Those symlinks are generally installed by make install, but
buildroot does not use make install for dosfstools, but symlinks should
be installed anyway.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/dosfstools/dosfstools.mk | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/package/dosfstools/dosfstools.mk b/package/dosfstools/dosfstools.mk
index a9d8392..f768c97 100644
--- a/package/dosfstools/dosfstools.mk
+++ b/package/dosfstools/dosfstools.mk
@@ -37,6 +37,19 @@ define DOSFSTOOLS_INSTALL_TARGET_CMDS
 	test -z "$(DOSFSTOOLS_INSTALL_BIN_FILES_y)" || \
 	$(INSTALL) -m 755 $(addprefix $(@D)/,$(DOSFSTOOLS_INSTALL_BIN_FILES_y)) \
 		$(TARGET_DIR)/sbin/
+	if [[ "$(BR2_PACKAGE_DOSFSTOOLS_FATLABEL)" = y ]]; then \
+		ln -fs fatlabel $(TARGET_DIR)/sbin/dosfslabel; \
+	fi
+	if [[ "$(BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT)" = y ]]; then \
+		ln -fs fsck.fat $(TARGET_DIR)/sbin/dosfsck; \
+		ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.msdos; \
+		ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.vfat; \
+	fi
+	if [[ "$(BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT)" = y ]]; then \
+		ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkdosfs; \
+		ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.msdos; \
+		ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.vfat; \
+	fi
 endef
 
 define HOST_DOSFSTOOLS_BUILD_CMDS
-- 
2.2.1

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

* [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (5 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 20:41   ` Samuel Martin
  2015-02-23 11:38   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available Maxim Mikityanskiy
                   ` (8 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

The place for package-provided systemd units is /lib/systemd/system.
/etc/systemd/system is for custom units.
---
 package/dropbear/dropbear.mk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk
index 696095d..2230c61 100644
--- a/package/dropbear/dropbear.mk
+++ b/package/dropbear/dropbear.mk
@@ -46,9 +46,9 @@ endef
 
 define DROPBEAR_INSTALL_INIT_SYSTEMD
 	$(INSTALL) -D -m 644 package/dropbear/dropbear.service \
-		$(TARGET_DIR)/etc/systemd/system/dropbear.service
+		$(TARGET_DIR)/lib/systemd/system/dropbear.service
 	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
-	ln -fs ../dropbear.service \
+	ln -fs /lib/systemd/system/dropbear.service \
 		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/dropbear.service
 endef
 
-- 
2.2.1

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

* [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (6 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 20:44   ` Samuel Martin
  2015-07-10 17:35   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support Maxim Mikityanskiy
                   ` (7 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

systemd looks for fsck in /sbin, so make symlink:
/sbin/fsck -> /usr/sbin/fsck

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/e2fsprogs/e2fsprogs.mk | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk
index b4f0950..9f0310d 100644
--- a/package/e2fsprogs/e2fsprogs.mk
+++ b/package/e2fsprogs/e2fsprogs.mk
@@ -117,5 +117,13 @@ ifeq ($(BR2_PACKAGE_E2FSPROGS_FINDFS),y)
 E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FINDFS_SYMLINK
 endif
 
+define E2FSPROGS_TARGET_FSCK_SYMLINK
+	ln -sf ../usr/sbin/fsck $(TARGET_DIR)/sbin/fsck
+endef
+
+ifeq ($(BR2_PACKAGE_E2FSPROGS_FSCK),y)
+E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FSCK_SYMLINK
+endif
+
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))
-- 
2.2.1

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (7 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 21:12   ` Samuel Martin
  2015-03-08 21:52   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
                   ` (6 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Support running minidlna in system-wide mode using systemd:

1. Set --with-db-path and --with-log-path configure options to make
default minidlna directories comply with FHS.

2. Install suitable minidlna.conf for system-wide mode.

3. Install sysctl.d config file to increase inotify watches count.

4. Install tmpfiles.d config file to mkdir and chmod necessary
directories for minidlna running in system-wide mode.

5. Install sysusers.d config file to create minidlna user when using
systemd.

6. Install minidlna.service for systemd.

Note: User=minidlna should be set in minidlna.service, not in
minidlna.conf, because minidlna is unable to drop privileges correctly
by itself: it does not get any privileges provided by groups of minidlna
user. Systemd drops privileges correctly in that case.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/minidlna/minidlna.conf          | 74 +++++++++++++++++++++++++++++++++
 package/minidlna/minidlna.mk            | 37 +++++++++++++++++
 package/minidlna/minidlna.service       | 12 ++++++
 package/minidlna/minidlna_sysctl.conf   |  1 +
 package/minidlna/minidlna_sysusers.conf |  1 +
 package/minidlna/minidlna_tmpfiles.conf |  3 ++
 6 files changed, 128 insertions(+)
 create mode 100644 package/minidlna/minidlna.conf
 create mode 100644 package/minidlna/minidlna.service
 create mode 100644 package/minidlna/minidlna_sysctl.conf
 create mode 100644 package/minidlna/minidlna_sysusers.conf
 create mode 100644 package/minidlna/minidlna_tmpfiles.conf

diff --git a/package/minidlna/minidlna.conf b/package/minidlna/minidlna.conf
new file mode 100644
index 0000000..9e4fbc9
--- /dev/null
+++ b/package/minidlna/minidlna.conf
@@ -0,0 +1,74 @@
+# port for HTTP (descriptions, SOAP, media transfer) traffic
+port=8200
+
+# network interfaces to serve, comma delimited
+#network_interface=eth0
+
+# set this to the directory you want scanned.
+# * if you want multiple directories, you can have multiple media_dir= lines
+# * if you want to restrict a media_dir to specific content types, you
+#   can prepend the types, followed by a comma, to the directory:
+#   + "A" for audio  (eg. media_dir=A,/home/jmaggard/Music)
+#   + "V" for video  (eg. media_dir=V,/home/jmaggard/Videos)
+#   + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures)
+#   + "PV" for pictures and video (eg. media_dir=PV,/home/jmaggard/digital_camera)
+#media_dir=/home
+
+# set this to merge all media_dir base contents into the root container
+# note: the default is no
+#merge_media_dirs=no
+
+# set this if you want to customize the name that shows up on your clients
+friendly_name=Buildroot DLNA Server
+
+# set this to change the verbosity of the information that is logged
+# each section can use a different level: off, fatal, error, warn, info, or debug
+#log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn
+
+# this should be a list of file names to check for when searching for album art
+# note: names should be delimited with a forward slash ("/")
+album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
+
+# set this to no to disable inotify monitoring to automatically discover new files
+# note: the default is yes
+inotify=yes
+
+# set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO
+enable_tivo=no
+
+# set this to strictly adhere to DLNA standards.
+# * This will allow server-side downscaling of very large JPEG images,
+#   which may hurt JPEG serving performance on (at least) Sony DLNA products.
+strict_dlna=no
+
+# default presentation url is http address on port 80
+#presentation_url=http://www.mylan/index.php
+
+# notify interval in seconds. default is 895 seconds.
+notify_interval=900
+
+# serial and model number the daemon will report to clients
+# in its XML description
+serial=12345678
+model_number=1
+
+# specify the path to the MiniSSDPd socket
+#minissdpdsocket=/var/run/minissdpd.sock
+
+# use different container as root of the tree
+# possible values:
+#   + "." - use standard container (this is the default)
+#   + "B" - "Browse Directory"
+#   + "M" - "Music"
+#   + "V" - "Video"
+#   + "P" - "Pictures"
+#   + Or, you can specify the ObjectID of your desired root container (eg. 1$F for Music/Playlists)
+# if you specify "B" and client device is audio-only then "Music/Folders" will be used as root
+#root_container=.
+
+# always force SortCriteria to this value, regardless of the SortCriteria passed by the client
+#force_sort_criteria=+upnp:class,+upnp:originalTrackNumber,+dc:title
+
+# maximum number of simultaneous connections
+# note: many clients open several simultaneous connections while streaming
+#max_connections=50
diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk
index bcbe5fa..fcc9d06 100644
--- a/package/minidlna/minidlna.mk
+++ b/package/minidlna/minidlna.mk
@@ -24,4 +24,41 @@ MINIDLNA_CONF_OPTS = \
 	--disable-static
 endif
 
+MINIDLNA_CONF_OPTS += \
+	--with-db-path=/var/cache/minidlna \
+	--with-log-path=/var/log/minidlna
+
+define MINIDLNA_INSTALL_CONF_HOOK
+	$(INSTALL) -D -m 644 package/minidlna/minidlna.conf \
+		$(TARGET_DIR)/etc/minidlna.conf
+endef
+
+define MINIDLNA_INSTALL_SYSUSERS_HOOK
+	$(INSTALL) -D -m 644 package/minidlna/minidlna_sysusers.conf \
+		$(TARGET_DIR)/usr/lib/sysusers.d/minidlna.conf
+endef
+
+define MINIDLNA_INSTALL_TMPFILES_HOOK
+	$(INSTALL) -D -m 644 package/minidlna/minidlna_tmpfiles.conf \
+		$(TARGET_DIR)/usr/lib/tmpfiles.d/minidlna.conf
+endef
+
+define MINIDLNA_INSTALL_SYSCTL_HOOK
+	$(INSTALL) -D -m 644 package/minidlna/minidlna_sysctl.conf \
+		$(TARGET_DIR)/usr/lib/sysctl.d/20-minidlna.conf
+endef
+
+ifeq ($(BR2_INIT_SYSTEMD),y)
+MINIDLNA_POST_INSTALL_TARGET_HOOKS += \
+	MINIDLNA_INSTALL_CONF_HOOK \
+	MINIDLNA_INSTALL_SYSUSERS_HOOK \
+	MINIDLNA_INSTALL_TMPFILES_HOOK \
+	MINIDLNA_INSTALL_SYSCTL_HOOK
+endif
+
+define MINIDLNA_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 644 package/minidlna/minidlna.service \
+		$(TARGET_DIR)/lib/systemd/system/minidlna.service
+endef
+
 $(eval $(autotools-package))
diff --git a/package/minidlna/minidlna.service b/package/minidlna/minidlna.service
new file mode 100644
index 0000000..45b72f0
--- /dev/null
+++ b/package/minidlna/minidlna.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=minidlna server
+After=network.target
+
+[Service]
+User=minidlna
+Type=forking
+ExecStart=/usr/sbin/minidlnad -P /run/minidlna/minidlna.pid
+PIDFile=/run/minidlna/minidlna.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/minidlna/minidlna_sysctl.conf b/package/minidlna/minidlna_sysctl.conf
new file mode 100644
index 0000000..0745b37
--- /dev/null
+++ b/package/minidlna/minidlna_sysctl.conf
@@ -0,0 +1 @@
+fs.inotify.max_user_watches = 65536
diff --git a/package/minidlna/minidlna_sysusers.conf b/package/minidlna/minidlna_sysusers.conf
new file mode 100644
index 0000000..1dc06f3
--- /dev/null
+++ b/package/minidlna/minidlna_sysusers.conf
@@ -0,0 +1 @@
+u minidlna - "DLNA server"
diff --git a/package/minidlna/minidlna_tmpfiles.conf b/package/minidlna/minidlna_tmpfiles.conf
new file mode 100644
index 0000000..a6e66e7
--- /dev/null
+++ b/package/minidlna/minidlna_tmpfiles.conf
@@ -0,0 +1,3 @@
+d /var/run/minidlna 0755 minidlna minidlna -
+d /var/cache/minidlna 0700 minidlna minidlna -
+d /var/log/minidlna 0755 minidlna minidlna -
-- 
2.2.1

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

* [Buildroot] [PATCH 10/16] package/transmission: improve systemd support
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (8 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 22:09   ` Samuel Martin
                     ` (2 more replies)
  2015-01-19 16:14 ` [Buildroot] [PATCH 11/16] package/samba: use FHS dirs Maxim Mikityanskiy
                   ` (5 subsequent siblings)
  15 siblings, 3 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Support running transmission-daemon in system-wide mode using systemd:

1. Pass --with-systemd-daemon to configure script if systemd is enabled.

2. Install sysctl.d config file to increase send and receive buffer
sizes.

3. Install tmpfiles.d config file to create transmission config
directory.

4. Install sysusers.d config file to create transmission user when using
systemd. Create transmission user when not using systemd.

5. Install transmission-daemon.service for systemd.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/transmission/transmission-daemon.service | 12 +++++++
 package/transmission/transmission.mk             | 45 ++++++++++++++++++++++++
 package/transmission/transmission_sysctl.conf    |  2 ++
 package/transmission/transmission_sysusers.conf  |  1 +
 package/transmission/transmission_tmpfiles.conf  |  1 +
 5 files changed, 61 insertions(+)
 create mode 100644 package/transmission/transmission-daemon.service
 create mode 100644 package/transmission/transmission_sysctl.conf
 create mode 100644 package/transmission/transmission_sysusers.conf
 create mode 100644 package/transmission/transmission_tmpfiles.conf

diff --git a/package/transmission/transmission-daemon.service b/package/transmission/transmission-daemon.service
new file mode 100644
index 0000000..4e7c98b
--- /dev/null
+++ b/package/transmission/transmission-daemon.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Transmission BitTorrent Daemon
+After=network.target
+
+[Service]
+User=transmission
+Type=notify
+ExecStart=/usr/bin/transmission-daemon -f --log-error -g /var/lib/transmission/config
+ExecReload=/bin/kill -s HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
index b8a5c42..b5b9c8b 100644
--- a/package/transmission/transmission.mk
+++ b/package/transmission/transmission.mk
@@ -36,11 +36,56 @@ endif
 ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
 	TRANSMISSION_CONF_OPTS += --enable-daemon
 
+ifeq ($(BR2_PACKAGE_SYSTEMD),y)
+	TRANSMISSION_DEPENDENCIES += systemd
+	TRANSMISSION_CONF_OPTS += --with-systemd-daemon
+endif
+
+ifeq ($(BR2_INIT_SYSTEMD),)
+define TRANSMISSION_USERS
+	transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
+endef
+endif
+
 define TRANSMISSION_INSTALL_INIT_SYSV
 	$(INSTALL) -m 0755 -D package/transmission/S92transmission \
 		$(TARGET_DIR)/etc/init.d/S92transmission
 endef
 
+define TRANSMISSION_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 644 package/transmission/transmission-daemon.service \
+		$(TARGET_DIR)/lib/systemd/system/transmission-daemon.service
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs /lib/systemd/system/transmission-daemon.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
+
+	mkdir -p $(TARGET_DIR)/var/lib/transmission/config
+endef
+
+define TRANSMISSION_INSTALL_SYSCTL_HOOK
+	$(INSTALL) -D -m 644 package/transmission/transmission_sysctl.conf \
+		$(TARGET_DIR)/usr/lib/sysctl.d/20-transmission.conf
+endef
+
+TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
+	TRANSMISSION_INSTALL_SYSCTL_HOOK
+
+define TRANSMISSION_INSTALL_TMPFILES_HOOK
+	$(INSTALL) -D -m 644 package/transmission/transmission_tmpfiles.conf \
+		$(TARGET_DIR)/usr/lib/tmpfiles.d/transmission.conf
+endef
+
+TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
+	TRANSMISSION_INSTALL_TMPFILES_HOOK
+
+define TRANSMISSION_INSTALL_SYSUSERS_HOOK
+	$(INSTALL) -D -m 644 package/transmission/transmission_sysusers.conf \
+		$(TARGET_DIR)/usr/lib/sysusers.d/transmission.conf
+endef
+
+TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
+	TRANSMISSION_INSTALL_SYSUSERS_HOOK
+
 else
 	TRANSMISSION_CONF_OPTS += --disable-daemon
 endif
diff --git a/package/transmission/transmission_sysctl.conf b/package/transmission/transmission_sysctl.conf
new file mode 100644
index 0000000..7862332
--- /dev/null
+++ b/package/transmission/transmission_sysctl.conf
@@ -0,0 +1,2 @@
+net.core.wmem_max = 1048576
+net.core.rmem_max = 4194304
diff --git a/package/transmission/transmission_sysusers.conf b/package/transmission/transmission_sysusers.conf
new file mode 100644
index 0000000..09396d4
--- /dev/null
+++ b/package/transmission/transmission_sysusers.conf
@@ -0,0 +1 @@
+u transmission - "Transmission daemon" /var/lib/transmission
diff --git a/package/transmission/transmission_tmpfiles.conf b/package/transmission/transmission_tmpfiles.conf
new file mode 100644
index 0000000..e40b94a
--- /dev/null
+++ b/package/transmission/transmission_tmpfiles.conf
@@ -0,0 +1 @@
+d /var/lib/transmission/config 0700 transmission users -
-- 
2.2.1

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

* [Buildroot] [PATCH 11/16] package/samba: use FHS dirs
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (9 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 22:49   ` Samuel Martin
  2015-04-06  9:45   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 12/16] package/samba: add systemd support Maxim Mikityanskiy
                   ` (4 subsequent siblings)
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Clean up system directories by making samba conform to FHS and by using
subdirectories e.g. /var/log/samba and /var/run/samba instead of
/var/log and /var/run.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/samba/S91smb   |  5 +++--
 package/samba/samba.mk | 10 +++++-----
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/package/samba/S91smb b/package/samba/S91smb
index c190771..2e03e82 100755
--- a/package/samba/S91smb
+++ b/package/samba/S91smb
@@ -10,6 +10,7 @@
 mkdir -p /var/cache/samba
 mkdir -p /var/log/samba
 mkdir -p /var/lock/subsys
+mkdir -p /var/run/samba
 
 RETVAL=0
 
@@ -33,13 +34,13 @@ stop() {
 	echo -n "Shutting down SMB services: "
 	kill -9 `pidof smbd`
 	RETVAL=$?
-	rm -f /var/run/smbd.pid
+	rm -f /var/run/samba/smbd.pid
 	echo "done"
 
 	echo -n "Shutting down NMB services: "
 	kill -9 `pidof nmbd`
 	RETVAL2=$?
-	rm -f /var/run/nmbd.pid
+	rm -f /var/run/samba/nmbd.pid
 
 	[ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb
 	echo "done"
diff --git a/package/samba/samba.mk b/package/samba/samba.mk
index d25e94e..31ad644 100644
--- a/package/samba/samba.mk
+++ b/package/samba/samba.mk
@@ -33,11 +33,11 @@ SAMBA_CONF_ENV = \
 	$(if $(BR2_PACKAGE_SAMBA_AVAHI),AVAHI_LIBS=-pthread)
 
 SAMBA_CONF_OPTS = \
-	--with-piddir=/var/run \
-	--with-lockdir=/var/lock \
-	--with-logfilebase=/var/log \
-	--with-configdir=/etc/samba \
-	--with-privatedir=/etc/samba \
+	--with-fhs \
+	--with-piddir=/var/run/samba \
+	--with-lockdir=/var/cache/samba \
+	--with-ncalrpcdir=/var/run/ncalrpc \
+	--with-nmbdsocketdir=/var/run/nmbd \
 	\
 	--disable-cups \
 	--enable-shared-libs \
-- 
2.2.1

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

* [Buildroot] [PATCH 12/16] package/samba: add systemd support
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (10 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 11/16] package/samba: use FHS dirs Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 22:38   ` Samuel Martin
  2015-01-19 16:14 ` [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr Maxim Mikityanskiy
                   ` (3 subsequent siblings)
  15 siblings, 1 reply; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Add {smbd,nmbd,winbindd}.service files for systemd. Add tmpfiles.d
config file to create samba directories.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/samba/nmbd.service        | 12 ++++++++++++
 package/samba/samba.mk            | 23 +++++++++++++++++++++++
 package/samba/samba_tmpfiles.conf |  4 ++++
 package/samba/smbd.service        | 12 ++++++++++++
 package/samba/winbindd.service    | 12 ++++++++++++
 5 files changed, 63 insertions(+)
 create mode 100644 package/samba/nmbd.service
 create mode 100644 package/samba/samba_tmpfiles.conf
 create mode 100644 package/samba/smbd.service
 create mode 100644 package/samba/winbindd.service

diff --git a/package/samba/nmbd.service b/package/samba/nmbd.service
new file mode 100644
index 0000000..6e241ea
--- /dev/null
+++ b/package/samba/nmbd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Samba NetBIOS name server
+After=network.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/samba/nmbd.pid
+ExecStart=/usr/sbin/nmbd -D
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/samba/samba.mk b/package/samba/samba.mk
index 31ad644..5a11ebe 100644
--- a/package/samba/samba.mk
+++ b/package/samba/samba.mk
@@ -182,6 +182,29 @@ endef
 
 SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_CONFIG
 
+ifeq ($(BR2_INIT_SYSTEMD),y)
+define SAMBA_INSTALL_TMPFILES_HOOK
+	$(INSTALL) -D -m 644 package/samba/samba_tmpfiles.conf \
+		$(TARGET_DIR)/usr/lib/tmpfiles.d/samba.conf
+endef
+
+SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_TMPFILES_HOOK
+endif
+
+define SAMBA_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 644 package/samba/smbd.service \
+		$(TARGET_DIR)/lib/systemd/system/smbd.service
+	$(INSTALL) -D -m 644 package/samba/nmbd.service \
+		$(TARGET_DIR)/lib/systemd/system/nmbd.service
+	$(if $(BR2_PACKAGE_SAMBA_WINBINDD),$(INSTALL) -D -m 644 package/samba/winbindd.service $(TARGET_DIR)/lib/systemd/system/winbindd.service)
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs /lib/systemd/system/smbd.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/smbd.service
+	ln -fs /lib/systemd/system/nmbd.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nmbd.service
+	$(if $(BR2_PACKAGE_SAMBA_WINBINDD),ln -fs /lib/systemd/system/winbindd.service $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/winbindd.service)
+endef
+
 define SAMBA_INSTALL_INIT_SYSV
 	$(INSTALL) -m 0755 -D package/samba/S91smb $(TARGET_DIR)/etc/init.d/S91smb
 endef
diff --git a/package/samba/samba_tmpfiles.conf b/package/samba/samba_tmpfiles.conf
new file mode 100644
index 0000000..e265f75
--- /dev/null
+++ b/package/samba/samba_tmpfiles.conf
@@ -0,0 +1,4 @@
+d /var/cache/samba 0755 root root -
+d /var/log/samba 0755 root root -
+d /var/lock/samba 0755 root root -
+d /var/run/samba 0755 root root -
diff --git a/package/samba/smbd.service b/package/samba/smbd.service
new file mode 100644
index 0000000..64abf56
--- /dev/null
+++ b/package/samba/smbd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Samba SMB/CIFS server
+After=network.target nmbd.service winbindd.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/samba/smbd.pid
+ExecStart=/usr/sbin/smbd -D
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
diff --git a/package/samba/winbindd.service b/package/samba/winbindd.service
new file mode 100644
index 0000000..214c17e
--- /dev/null
+++ b/package/samba/winbindd.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Samba Winbind daemon
+After=network.target nmbd.service
+
+[Service]
+Type=forking
+PIDFile=/var/run/samba/winbindd.pid
+ExecStart=/usr/sbin/winbindd -D
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target
-- 
2.2.1

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

* [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (11 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 12/16] package/samba: add systemd support Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02  8:26   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options Maxim Mikityanskiy
                   ` (2 subsequent siblings)
  15 siblings, 1 reply; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

If acl or attr is going to be installed, add support for them to tar.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/tar/tar.mk | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/package/tar/tar.mk b/package/tar/tar.mk
index caaa5ad..e3f538d 100644
--- a/package/tar/tar.mk
+++ b/package/tar/tar.mk
@@ -19,6 +19,16 @@ TAR_DEPENDENCIES += busybox
 HOST_TAR_DEPENDENCIES =
 endif
 
+ifeq ($(BR2_PACKAGE_ACL),y)
+TAR_DEPENDENCIES += acl
+TAR_CONF_OPTS += --with-posix-acls
+endif
+
+ifeq ($(BR2_PACKAGE_ATTR),y)
+TAR_DEPENDENCIES += attr
+TAR_CONF_OPTS += --with-xattrs
+endif
+
 $(eval $(autotools-package))
 
 # host-tar: use cpio.gz instead of tar.gz to prevent chicken-egg problem
-- 
2.2.1

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

* [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (12 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-01-26 22:11   ` Thomas Petazzoni
  2015-02-07 22:00   ` Yann E. MORIN
  2015-01-19 16:14 ` [Buildroot] [PATCH 15/16] package/vim: add default vimrc Maxim Mikityanskiy
  2015-01-19 16:14 ` [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd Maxim Mikityanskiy
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Add more options to Config.in to allow optionally select or deselect
util-linux tools.

Also fix s/BR2_PACKAGE_WDCTL/BR2_PACKAGE_UTIL_LINUX_WDCTL/

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/util-linux/Config.in     | 64 +++++++++++++++++++++++++++++++++++++++-
 package/util-linux/util-linux.mk | 17 +++++++++--
 2 files changed, 78 insertions(+), 3 deletions(-)

diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in
index a8dfa1c..78648c1 100644
--- a/package/util-linux/Config.in
+++ b/package/util-linux/Config.in
@@ -26,6 +26,11 @@ config BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
 	help
 	  Install libmount.
 
+config BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
+	bool "libsmartcols"
+	help
+	  Install libsmartcols.
+
 config BR2_PACKAGE_UTIL_LINUX_LIBUUID
 	bool "libuuid"
 	help
@@ -36,6 +41,7 @@ config BR2_PACKAGE_UTIL_LINUX_BINARIES
 	depends on BR2_USE_MMU # fork()
 	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
 	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
+	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS
 	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
 	help
 	  Install the basic set of util-linux binaries.
@@ -52,6 +58,11 @@ config BR2_PACKAGE_UTIL_LINUX_ARCH
 	help
 	  Print machine architecture
 
+config BR2_PACKAGE_UTIL_LINUX_BFS
+	bool "bfs"
+	help
+	  SCO bfs filesystem support
+
 config BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH
 	bool "chfn/chsh"
 	depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
@@ -86,16 +97,31 @@ config BR2_PACKAGE_UTIL_LINUX_FALLOCATE
 	help
 	  Preallocate space to a file
 
+config BR2_PACKAGE_UTIL_LINUX_FDFORMAT
+	bool "fdformat"
+	help
+	  Low-level format a floppy disk
+
 config BR2_PACKAGE_UTIL_LINUX_FSCK
 	bool "fsck"
 	help
 	  Check and repair a linux filesystem
 
+config BR2_PACKAGE_UTIL_LINUX_HWCLOCK
+	bool "hwclock"
+	help
+	  Query or set the hardware clock (RTC)
+
 config BR2_PACKAGE_UTIL_LINUX_KILL
 	bool "kill"
 	help
 	  Send a signal to a process
 
+config BR2_PACKAGE_UTIL_LINUX_LAST
+	bool "last"
+	help
+	  Show a listing of last logged in users
+
 config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS
 	bool "login utilities"
 	depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
@@ -118,6 +144,11 @@ config BR2_PACKAGE_UTIL_LINUX_MESG
 	help
 	  Control write access to your terminal
 
+config BR2_PACKAGE_UTIL_LINUX_MINIX
+	bool "minix"
+	help
+	  Minix filesystem support
+
 config BR2_PACKAGE_UTIL_LINUX_NSENTER
 	bool "nsenter"
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
@@ -127,16 +158,31 @@ config BR2_PACKAGE_UTIL_LINUX_NSENTER
 comment "nsenter needs a toolchain w/ headers >= 3.0"
 	depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
 
+config BR2_PACKAGE_UTIL_LINUX_MORE
+	bool "more"
+	help
+	  File perusal filter for crt viewing
+
 config BR2_PACKAGE_UTIL_LINUX_MOUNT
 	bool "mount/umount"
 	help
 	  Mount/unmount filesystems
 
+config BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT
+	bool "mountpoint"
+	help
+	  See if a directory is a mountpoint
+
 config BR2_PACKAGE_UTIL_LINUX_NEWGRP
 	bool "newgrp"
 	help
 	  Log in to a new group
 
+config BR2_PACKAGE_UTIL_LINUX_NOLOGIN
+	bool "nologin"
+	help
+	  Politely refuse a login
+
 config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT
 	bool "pivot_root"
 	help
@@ -167,11 +213,27 @@ config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS
 	help
 	  Scheduling utilities (chrt, ionice, taskset)
 
+config BR2_PACKAGE_UTIL_LINUX_SETPRIV
+	bool "setpriv"
+	select BR2_PACKAGE_LIBCAP_NG
+	help
+	  Run a program with different Linux privilege settings
+
+config BR2_PACKAGE_UTIL_LINUX_SETTERM
+	bool "setterm"
+	help
+	  Set terminal attributes
+
 config BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT
 	bool "switch_root"
 	help
 	  Switch to another filesystem as the root of the mount tree
 
+config BR2_PACKAGE_UTIL_LINUX_UL
+	bool "ul"
+	help
+	  Do underlining
+
 config BR2_PACKAGE_UTIL_LINUX_UNSHARE
 	bool "unshare"
 	help
@@ -197,7 +259,7 @@ config BR2_PACKAGE_UTIL_LINUX_WALL
 	help
 	  Send a message to everybody's terminal
 
-config BR2_PACKAGE_WDCTL
+config BR2_PACKAGE_UTIL_LINUX_WDCTL
 	bool "wdctl"
 	help
 	  Shows hardware watchdog status
diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk
index c8fb77c..a70363f 100644
--- a/package/util-linux/util-linux.mk
+++ b/package/util-linux/util-linux.mk
@@ -66,34 +66,47 @@ UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_LINUX_PAM),linux-pam)
 UTIL_LINUX_CONF_OPTS += \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_AGETTY),--enable-agetty,--disable-agetty) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_ARCH),--enable-arch,--disable-arch) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_BFS),--enable-bfs,--disable-bfs) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH),--enable-chfn-chsh,--disable-chfn-chsh) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_CRAMFS),--enable-cramfs,--disable-cramfs) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_DDATE),--enable-ddate,--disable-ddate) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_EJECT),--enable-eject,--disable-eject) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_FALLOCATE),--enable-fallocate,--disable-fallocate) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_FDFORMAT),--enable-fdformat,--disable-fdformat) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_FSCK),--enable-fsck,--disable-fsck) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_HWCLOCK),--enable-hwclock,--disable-hwclock) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_KILL),--enable-kill,--disable-kill) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_LAST),--enable-last,--disable-last) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBBLKID),--enable-libblkid,--disable-libblkid) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),--enable-libmount,--disable-libmount) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS),--enable-libsmartcols,--disable-libsmartcols) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBUUID),--enable-libuuid,--disable-libuuid) \
-	$(if $(BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS),--enable-last --enable-login --enable-su --enable-sulogin,--disable-last --disable-login --disable-su --disable-sulogin) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS),--enable-last --enable-login --enable-runuser --enable-su --enable-sulogin,--disable-last --disable-login --disable-runuser --disable-su --disable-sulogin) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_LOSETUP),--enable-losetup,--disable-losetup) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_MESG),--enable-mesg,--disable-mesg) \
-	$(if $(BR2_PACKAGE_UTIL_LINUX_NSENTER),--enable-nsenter,--disable-nsenter) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_MINIX),--enable-minix,--disable-minix) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_MORE),--enable-more,--disable-more) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_MOUNT),--enable-mount,--disable-mount) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_MOUNTPOINT),--enable-mountpoint,--disable-mountpoint) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_NEWGRP),--enable-newgrp,--disable-newgrp) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_NOLOGIN),--enable-nologin,--disable-nologin) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_NSENTER),--enable-nsenter,--disable-nsenter) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_PARTX),--enable-partx,--disable-partx) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT),--enable-pivot_root,--disable-pivot_root) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_RAW),--enable-raw,--disable-raw) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_RENAME),--enable-rename,--disable-rename) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_RESET),--enable-reset,--disable-reset) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS),--enable-schedutils,--disable-schedutils) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_SETPRIV),--enable-setpriv,--disable-setpriv) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_SETTERM),--enable-setterm,--disable-setterm) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT),--enable-switch_root,--disable-switch_root) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_UL),--enable-ul,--disable-ul) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_UNSHARE),--enable-unshare,--disable-unshare) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_UTMPDUMP),--enable-utmpdump,--disable-utmpdump) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_UUIDD),--enable-uuidd,--disable-uuidd) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_VIPW),--enable-vipw,--disable-vipw) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_WALL),--enable-wall,--disable-wall) \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_WDCTL),--enable-wdctl,--disable-wdctl) \
 	$(if $(BR2_PACKAGE_UTIL_LINUX_WRITE),--enable-write,--disable-write)
 
 # In the host version of util-linux, we so far only require libuuid,
-- 
2.2.1

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

* [Buildroot] [PATCH 15/16] package/vim: add default vimrc
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (13 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 23:00   ` Samuel Martin
  2015-07-10 18:24   ` Thomas Petazzoni
  2015-01-19 16:14 ` [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd Maxim Mikityanskiy
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Support /etc/vim/vimrc as system-wide vimrc file. Add some default
sample vimrc.

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/vim/vim.mk | 11 +++++++++++
 package/vim/vimrc  | 14 ++++++++++++++
 2 files changed, 25 insertions(+)
 create mode 100644 package/vim/vimrc

diff --git a/package/vim/vim.mk b/package/vim/vim.mk
index da84d14..992e41b 100644
--- a/package/vim/vim.mk
+++ b/package/vim/vim.mk
@@ -28,6 +28,12 @@ VIM_CONF_OPTS = --with-tlib=ncurses --enable-gui=no --without-x
 VIM_LICENSE = Charityware
 VIM_LICENSE_FILES = README.txt
 
+define VIM_VIMRC_HOOK
+	echo '#define SYS_VIMRC_FILE "/etc/vim/vimrc"' >> $(@D)/src/feature.h
+endef
+
+VIM_PRE_CONFIGURE_HOOKS += VIM_VIMRC_HOOK
+
 define VIM_INSTALL_TARGET_CMDS
 	cd $(@D)/src; \
 		$(MAKE) DESTDIR=$(TARGET_DIR) installvimbin; \
@@ -51,6 +57,11 @@ define VIM_INSTALL_VI_SYMLINK
 endef
 VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VI_SYMLINK
 
+define VIM_INSTALL_VIMRC
+	$(INSTALL) -D -m 644 package/vim/vimrc $(TARGET_DIR)/etc/vim/vimrc
+endef
+VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VIMRC
+
 ifeq ($(BR2_PACKAGE_VIM_RUNTIME),y)
 VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_RUNTIME_CMDS
 VIM_POST_INSTALL_TARGET_HOOKS += VIM_REMOVE_DOCS
diff --git a/package/vim/vimrc b/package/vim/vimrc
new file mode 100644
index 0000000..bfc2087
--- /dev/null
+++ b/package/vim/vimrc
@@ -0,0 +1,14 @@
+set nocompatible
+
+set ai
+set background=dark
+set backspace=indent,eol,start
+set nomodeline
+set ruler
+
+set ignorecase smartcase incsearch hlsearch
+
+syntax on
+
+filetype plugin on
+filetype indent on
-- 
2.2.1

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

* [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd
  2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
                   ` (14 preceding siblings ...)
  2015-01-19 16:14 ` [Buildroot] [PATCH 15/16] package/vim: add default vimrc Maxim Mikityanskiy
@ 2015-01-19 16:14 ` Maxim Mikityanskiy
  2015-02-02 17:12   ` Samuel Martin
  2015-04-22 20:10   ` Thomas Petazzoni
  15 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-01-19 16:14 UTC (permalink / raw)
  To: buildroot

Add rngd.service for systemd. Also patch rngd with patch from Fedora to
ignore failure if no hwrng present:
https://bugzilla.redhat.com/show_bug.cgi?id=892178

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
---
 package/rng-tools/rng-tools.mk         |  8 ++++++++
 package/rng-tools/rngd-exit-code.patch | 11 +++++++++++
 package/rng-tools/rngd.service         |  9 +++++++++
 3 files changed, 28 insertions(+)
 create mode 100644 package/rng-tools/rngd-exit-code.patch
 create mode 100644 package/rng-tools/rngd.service

diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk
index 5b89656..13352cc 100644
--- a/package/rng-tools/rng-tools.mk
+++ b/package/rng-tools/rng-tools.mk
@@ -21,4 +21,12 @@ else
 RNG_TOOLS_CONF_OPTS += --without-libgcrypt
 endif
 
+define RNG_TOOLS_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 644 package/rng-tools/rngd.service \
+		$(TARGET_DIR)/lib/systemd/system/rngd.service
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs /lib/systemd/system/rngd.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/rngd.service
+endef
+
 $(eval $(autotools-package))
diff --git a/package/rng-tools/rngd-exit-code.patch b/package/rng-tools/rngd-exit-code.patch
new file mode 100644
index 0000000..5f87161
--- /dev/null
+++ b/package/rng-tools/rngd-exit-code.patch
@@ -0,0 +1,11 @@
+--- a/rngd.c
++++ b/rngd.c
+@@ -319,7 +319,7 @@ int main(int argc, char **argv)
+ 			message(LOG_DAEMON|LOG_ERR,
+ 				"Maybe RNG device modules are not loaded\n");
+ 		}
+-		return 1;
++		return 66;
+ 	}
+ 
+ 	if (arguments->verbose) {
diff --git a/package/rng-tools/rngd.service b/package/rng-tools/rngd.service
new file mode 100644
index 0000000..3bdc4c1
--- /dev/null
+++ b/package/rng-tools/rngd.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Hardware RNG Entropy Gatherer Daemon
+
+[Service]
+ExecStart=/usr/sbin/rngd -f
+SuccessExitStatus=66
+
+[Install]
+WantedBy=multi-user.target
-- 
2.2.1

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

* [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script
  2015-01-19 16:14 ` [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script Maxim Mikityanskiy
@ 2015-01-26 21:26   ` Thomas Petazzoni
  2015-01-26 22:06     ` Peter Korsgaard
  0 siblings, 1 reply; 60+ messages in thread
From: Thomas Petazzoni @ 2015-01-26 21:26 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:01 +0200, Maxim Mikityanskiy wrote:
> Create new config option BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT to control
> whether to install optional udhcpc default.script. It is possible that
> udhcpc is not enabled in busybox config, so default.script is useless in
> that case.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Thanks for this patch. However, rather than using a new option, can we
instead simply test if udhcpc is enabled in the Busybox configuration?

> diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
> index f68a2f8..fbdde62 100644
> --- a/package/busybox/busybox.mk
> +++ b/package/busybox/busybox.mk
> @@ -49,10 +49,20 @@ BUSYBOX_KCONFIG_FILE = $(BUSYBOX_CONFIG_FILE)
>  BUSYBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig
>  BUSYBOX_KCONFIG_OPTS = $(BUSYBOX_MAKE_OPTS)
>  
> +ifeq ($(BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT),y)
> +define BUSYBOX_INSTALL_UDHCPC_SCRIPT
> +	$(INSTALL) -m 0755 -D package/busybox/udhcpc.script \
> +		$(TARGET_DIR)/usr/share/udhcpc/default.script; \
> +endef
>  define BUSYBOX_PERMISSIONS
>  	/bin/busybox                     f 4755 0  0 - - - - -
>  	/usr/share/udhcpc/default.script f 755  0  0 - - - - -
>  endef
> +else
> +define BUSYBOX_PERMISSIONS
> +	/bin/busybox                     f 4755 0  0 - - - - -
> +endef
> +endif

I believe we can remove /usr/share/udhcpc/default.script entirely from
BUSYBOX_PERMISSIONS: it doesn't need any special permission or
ownership, so the default done by Buildroot will be fine in terms of
ownership, and in terms of permissions, 755 is already enforced by the
install command below.

>  # If mdev will be used for device creation enable it and copy S10mdev to /etc/init.d
>  ifeq ($(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV),y)
> @@ -210,10 +220,7 @@ endef
>  
>  define BUSYBOX_INSTALL_TARGET_CMDS
>  	$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) -C $(@D) install
> -	$(INSTALL) -m 0755 -D package/busybox/udhcpc.script \
> -		$(TARGET_DIR)/usr/share/udhcpc/default.script
> -	$(INSTALL) -m 0755 -d \
> -		$(TARGET_DIR)/usr/share/udhcpc/default.script.d
> +	$(BUSYBOX_INSTALL_UDHCPC_SCRIPT)
>  	$(BUSYBOX_INSTALL_MDEV_CONF)
>  endef

Here I'd prefer something like:

	if grep -q CONFIG_UDHCPC=y $(BUSYBOX_BUILD_CONFIG) ; then
		... do the udhcpc scripts installation
	fi

Which allows to get rid of the new Config.in option.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash
  2015-01-19 16:14 ` [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash Maxim Mikityanskiy
@ 2015-01-26 22:00   ` Thomas Petazzoni
  0 siblings, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-01-26 22:00 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:02 +0200, Maxim Mikityanskiy wrote:
> package/systemd, package/kmod, package/util-linux: don't install
> bash-completion files if bash is not selected to be installed.
> Otherwise, install bash-completion files.
> 
> package/systemd: don't install zsh-completion files is zsh is not
> selected to be installed. Otherwise, install zsh-completion files.
> 
> package/util-linux: don't install empty
> /usr/share/bash-completion/completions directory if bash is not going to
> be installed, and install bash-completion files if bash is selected to
> be installed.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Thanks, applied.

However, long term I wonder if we shouldn't think of a more centralized
and radical solution. In package/bash/bash.mk:

ifeq ($(BR2_PACKAGE_BASH),)
define BASH_REMOVE_COMPLETION_FILES
	$(RM) -rf $(TARGET_DIR)/usr/share/bash-completion/
endef
TARGET_FINALIZE_HOOKS += BASH_REMOVE_COMPLETION_FILES
endif

This way, as long as bash is not enabled, all bash completion files are
removed. We could do the same with zsh.

The only trick here is that such a solution relies on
package/bash/bash.mk being included/parsed unconditionally. This is
currently the case today: regardless of whether a package is enabled or
not, its .mk file is always included/parsed. But at some point in the
past, we have been talking on changing this, in order to speed up the
parsing time of all the .mk files, which linearly increases with the
number of packages we add in Buildroot. But oh well, if we ever want to
do that, we can always change the way to handle the bash completion
thing, and other similar target finalization stuff that needs to be
done if a package is *not* installed.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script
  2015-01-26 21:26   ` Thomas Petazzoni
@ 2015-01-26 22:06     ` Peter Korsgaard
  0 siblings, 0 replies; 60+ messages in thread
From: Peter Korsgaard @ 2015-01-26 22:06 UTC (permalink / raw)
  To: buildroot

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@free-electrons.com> writes:

 > Dear Maxim Mikityanskiy,
 > On Mon, 19 Jan 2015 18:14:01 +0200, Maxim Mikityanskiy wrote:
 >> Create new config option BR2_PACKAGE_BUSYBOX_UDHCPC_SCRIPT to control
 >> whether to install optional udhcpc default.script. It is possible that
 >> udhcpc is not enabled in busybox config, so default.script is useless in
 >> that case.
 >> 
 >> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

 > Thanks for this patch. However, rather than using a new option, can we
 > instead simply test if udhcpc is enabled in the Busybox configuration?

Agreed, that would be a lot nicer.

>> +define BUSYBOX_PERMISSIONS
 >> +	/bin/busybox                     f 4755 0  0 - - - - -
 >> +endef
 >> +endif

 > I believe we can remove /usr/share/udhcpc/default.script entirely from
 > BUSYBOX_PERMISSIONS: it doesn't need any special permission or
 > ownership, so the default done by Buildroot will be fine in terms of
 > ownership, and in terms of permissions, 755 is already enforced by the
 > install command below.

Exactly.

-- 
Bye, Peter Korsgaard

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

* [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options
  2015-01-19 16:14 ` [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options Maxim Mikityanskiy
@ 2015-01-26 22:11   ` Thomas Petazzoni
  2015-02-07 22:00   ` Yann E. MORIN
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-01-26 22:11 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:14 +0200, Maxim Mikityanskiy wrote:
> Add more options to Config.in to allow optionally select or deselect
> util-linux tools.
> 
> Also fix s/BR2_PACKAGE_WDCTL/BR2_PACKAGE_UTIL_LINUX_WDCTL/

Ideally, this fix should have been in a separate patch. Note that there
is no need for Config.in.legacy handling, because the option has never
done anything, so renaming it doesn't hurt.

> @@ -36,6 +41,7 @@ config BR2_PACKAGE_UTIL_LINUX_BINARIES
>  	depends on BR2_USE_MMU # fork()
>  	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
>  	select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
> +	select BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS

I was originally not very happy of this additional select, which means
that libsmartcols now gets installed regardless of which binaries you
install. But it seems to be used by quite a few util-linux binaries
anyway, so ok.

So: applied, thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr
  2015-01-19 16:14 ` [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr Maxim Mikityanskiy
@ 2015-02-02  8:26   ` Thomas Petazzoni
  0 siblings, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-02-02  8:26 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:13 +0200, Maxim Mikityanskiy wrote:
> If acl or attr is going to be installed, add support for them to tar.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/tar/tar.mk | 10 ++++++++++
>  1 file changed, 10 insertions(+)

Applied, thanks! I added a 'else' condition, which makes sure to
explicitly disable the acl and attr support when the corresponding
packages are not available.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies
  2015-01-19 16:14 ` [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies Maxim Mikityanskiy
@ 2015-02-02 14:22   ` Samuel Martin
  2015-07-12 22:27   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 14:22 UTC (permalink / raw)
  To: buildroot

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Systemd depends on mount and nologin from util-linux. Mount from busybox
> is not fine, because its behavior differs from util-linux mount. Busybox
> mount does not handle correctly 'mount / -o remount' (should apply
> options from /etc/fstab). Nologin should be present, because
> systemd-sysusers uses it as shell for newly created system users.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd
  2015-01-19 16:14 ` [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd Maxim Mikityanskiy
@ 2015-02-02 14:50   ` Samuel Martin
  2015-02-02 15:18     ` Maxim Mikityanskiy
  2015-07-12 23:48   ` Thomas Petazzoni
  1 sibling, 1 reply; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 14:50 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> When systemd is used, /var/lib/dbus becomes dangling symlink, because
> nobody does mkdir /tmp/dbus, so /var/lib/dbus/machine-id could not be
> written. On SysVinit systems there is init script that creates
> /tmp/dbus.

Maybe we should add /tmp/dbus to a tmpfiles config file (see [1]).

>
> This patch preserves old behavior for SysVinit systems, and introduces
> new one for systemd-booted systems: /var/lib/dbus is a persistent
> directory, it holds symlink /var/lib/dbus/machine-id -> /etc/machine-id
> as machine-id(5) suggests, and /etc/machine-id is managed by systemd.

This assumes that /etc is witable... which is not necessary the case :-/

>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/dbus/dbus.mk | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)
>
> diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk
> index faad2b5..266e27b 100644
> --- a/package/dbus/dbus.mk
> +++ b/package/dbus/dbus.mk
> @@ -73,17 +73,18 @@ endef
>
>  DBUS_POST_INSTALL_TARGET_HOOKS += DBUS_REMOVE_DEVFILES
>
> -define DBUS_INSTALL_TARGET_FIXUP
> +define DBUS_INSTALL_INIT_SYSV
> +       $(INSTALL) -m 0755 -D package/dbus/S30dbus \
> +               $(TARGET_DIR)/etc/init.d/S30dbus
> +
>         mkdir -p $(TARGET_DIR)/var/lib
>         rm -rf $(TARGET_DIR)/var/lib/dbus
>         ln -sf /tmp/dbus $(TARGET_DIR)/var/lib/dbus
>  endef
>
> -DBUS_POST_INSTALL_TARGET_HOOKS += DBUS_INSTALL_TARGET_FIXUP
> -
> -define DBUS_INSTALL_INIT_SYSV
> -       $(INSTALL) -m 0755 -D package/dbus/S30dbus \
> -               $(TARGET_DIR)/etc/init.d/S30dbus
> +define DBUS_INSTALL_INIT_SYSTEMD
> +       mkdir -p $(TARGET_DIR)/var/lib/dbus
> +       ln -sf /etc/machine-id $(TARGET_DIR)/var/lib/dbus/machine-id
>  endef
>
>  HOST_DBUS_DEPENDENCIES = host-pkgconf host-expat
> --
> 2.2.1

I'd prefer keeping the filesystem layout as close as possible between
sysVinit and systemd.
So, adding a symlink /etc/machine-id pointing to
/var/lib/dbus/machine-id (which will ends up in /tmp/dbus/machine-id
thanks to the tmpfiles.d stuff) should be enough.

Then the last thing to check is that systemd-machine-id-setup
correctly generates the machine-id file even if /etc/machine-id is a
symlink pointing to a non-existing file.

[1] http://www.freedesktop.org/software/systemd/man/tmpfiles.d.html

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd
  2015-02-02 14:50   ` Samuel Martin
@ 2015-02-02 15:18     ` Maxim Mikityanskiy
  0 siblings, 0 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-02-02 15:18 UTC (permalink / raw)
  To: buildroot

Sorry, resending my last message, I've answered off-the-list. My fault :(


Hi Samuel,

2015-02-02 16:50 GMT+02:00 Samuel Martin <s.martin49@gmail.com>:
> Hi Maxim,
>
> On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
>> When systemd is used, /var/lib/dbus becomes dangling symlink, because
>> nobody does mkdir /tmp/dbus, so /var/lib/dbus/machine-id could not be
>> written. On SysVinit systems there is init script that creates
>> /tmp/dbus.
>
> Maybe we should add /tmp/dbus to a tmpfiles config file (see [1]).
>
>>
>> This patch preserves old behavior for SysVinit systems, and introduces
>> new one for systemd-booted systems: /var/lib/dbus is a persistent
>> directory, it holds symlink /var/lib/dbus/machine-id -> /etc/machine-id
>> as machine-id(5) suggests, and /etc/machine-id is managed by systemd.
>
> This assumes that /etc is witable... which is not necessary the case :-/

No, this doesn't assume that /etc is writable. Let me explain.

When systemd is installed, it creates empty /etc/machine-id file (look
at SYSTEMD_INSTALL_MACHINEID_HOOK in package/systemd/systemd.mk). If
/etc is writable, /etc/machine-id is populated at first boot, and
/var/lib/dbus/machine-id symlink just points at this file, as
machine-id(5) man page suggests. If /etc is read-only, systemd does
bind mount /run/machine-id to /etc/machine-id and populates temporary
file. /var/lib/dbus/machine-id also just points at this file. So no
problem with read-only /etc.
I'm afraid it is wrong solution. At first, we can't just add
/etc/machine-id -> /var/lib/dbus/machine-id symlink, because
package/systemd/systemd.mk creates empty file /etc/machine-id ;)

At second, if /etc/machine-id will always point to temporary location,
it will be regenerated at every boot even if /etc is writable. It
leads to wrong behavior of systemd-journald: it will create new 16 MiB
journal file at every boot because of changing machine-id.

> Then the last thing to check is that systemd-machine-id-setup
> correctly generates the machine-id file even if /etc/machine-id is a
> symlink pointing to a non-existing file.
>
> [1] http://www.freedesktop.org/software/systemd/man/tmpfiles.d.html
>
> Regards,
>
> --
> Samuel

/etc/machine-id is such file that should be invariant from boot to
boot, so placing it to temporary location is wrong (at least it causes
problems with systemd-journald). But if /etc is read-only (and
/etc/machine-id is not populated in post-build scripts), systemd will
also handle this and bind mount temporary /run/machine-id to
/etc/machine-id. /var/lib/dbus/machine-id just points to
/etc/machine-id that is always populated on systemd systems.

What about keeping similar filesystem layout on SysVinit and systemd
systems, it would be nice if there was some simple way to support
/etc/machine-id on SysVinit systems. But it is easier to preserve old
behavior, because it works and causes no troubles on SysVinit systems.

Cheers,
Maxim

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

* [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells
  2015-01-19 16:14 ` [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells Maxim Mikityanskiy
@ 2015-02-02 15:20   ` Samuel Martin
  2015-02-02 15:28     ` Maxim Mikityanskiy
  2015-07-12 22:55   ` [Buildroot] [PATCH v2] skeleton: " Arnout Vandecappelle
  1 sibling, 1 reply; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 15:20 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Add /etc/profile.d/locale.sh script from Arch Linux to apply systemd
> locale settings in user shells.

I don't really see the point of doing it especially when systemd is used.
This configuration file is for shell, even busybox should support it...

Why not putting it in the default skeleton?
Any thought about this from other users/developpers?

>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/systemd/locale.sh  | 26 ++++++++++++++++++++++++++
>  package/systemd/systemd.mk |  7 +++++++
>  2 files changed, 33 insertions(+)
>  create mode 100644 package/systemd/locale.sh
>
> diff --git a/package/systemd/locale.sh b/package/systemd/locale.sh
> new file mode 100644
> index 0000000..b665872
> --- /dev/null
> +++ b/package/systemd/locale.sh
> @@ -0,0 +1,26 @@
> +#!/bin/sh
> +
> +if [ -z "$LANG" ]; then
> +  if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then
> +    . "$XDG_CONFIG_HOME/locale.conf"
> +  elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then
> +    . "$HOME/.config/locale.conf"
> +  elif [ -r /etc/locale.conf ]; then
> +    . /etc/locale.conf
> +  fi
> +fi
> +
> +LANG=${LANG:-C}
> +export LANG
> +[ -n "$LC_CTYPE" ]          && export LC_CTYPE
> +[ -n "$LC_NUMERIC" ]        && export LC_NUMERIC
> +[ -n "$LC_TIME" ]           && export LC_TIME
> +[ -n "$LC_COLLATE" ]        && export LC_COLLATE
> +[ -n "$LC_MONETARY" ]       && export LC_MONETARY
> +[ -n "$LC_MESSAGES" ]       && export LC_MESSAGES
> +[ -n "$LC_PAPER" ]          && export LC_PAPER
> +[ -n "$LC_NAME" ]           && export LC_NAME
> +[ -n "$LC_ADDRESS" ]        && export LC_ADDRESS
> +[ -n "$LC_TELEPHONE" ]      && export LC_TELEPHONE
> +[ -n "$LC_MEASUREMENT" ]    && export LC_MEASUREMENT
> +[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION
> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
> index 92f99c2..ef14c76 100644
> --- a/package/systemd/systemd.mk
> +++ b/package/systemd/systemd.mk
> @@ -158,6 +158,12 @@ define SYSTEMD_INSTALL_MACHINEID_HOOK
>         touch $(TARGET_DIR)/etc/machine-id
>  endef
>
> +define SYSTEMD_INSTALL_LOCALE_SH_HOOK
> +       mkdir -p $(TARGET_DIR)/etc/profile.d
> +       $(INSTALL) -D -m 644 package/systemd/locale.sh \
> +               $(TARGET_DIR)/etc/profile.d/locale.sh
> +endef
> +
>  define SYSTEMD_SANITIZE_PATH_IN_UNITS
>         find $(TARGET_DIR)/lib/systemd/system -name '*.service' \
>                 -exec $(SED) 's,$(HOST_DIR),,g' {} \;
> @@ -172,6 +178,7 @@ endef
>  SYSTEMD_POST_INSTALL_TARGET_HOOKS += \
>         SYSTEMD_INSTALL_INIT_HOOK \
>         SYSTEMD_INSTALL_MACHINEID_HOOK \
> +       SYSTEMD_INSTALL_LOCALE_SH_HOOK \
>         SYSTEMD_INSTALL_RESOLVCONF_HOOK \
>         SYSTEMD_DISABLE_LDCONFIG_SERVICE_HOOK \
>         SYSTEMD_SANITIZE_PATH_IN_UNITS
> --
> 2.2.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells
  2015-02-02 15:20   ` Samuel Martin
@ 2015-02-02 15:28     ` Maxim Mikityanskiy
  0 siblings, 0 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-02-02 15:28 UTC (permalink / raw)
  To: buildroot

Hi Samuel,

2015-02-02 17:20 GMT+02:00 Samuel Martin <s.martin49@gmail.com>:
> Hi Maxim,
>
> On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
>> Add /etc/profile.d/locale.sh script from Arch Linux to apply systemd
>> locale settings in user shells.
>
> I don't really see the point of doing it especially when systemd is used.
> This configuration file is for shell, even busybox should support it...

This /etc/profile.d/locale.sh file reads locale settings from
/etc/locale.conf (and possibly user-specific files) and applies these
settings on shell logins. /etc/locale.conf was introduced with
systemd, it is written by localectl tool from systemd, so I decided to
install /etc/profile.d/locale.sh when systemd is used.

> Why not putting it in the default skeleton?

Of course, /etc/locale.conf is just a text file, it is not necessary
should be generated by localectl, it could be written in text editor,
so /etc/profile.d/locale.sh could be put in the default skeleton, so
there will be convenient place for storing locale settings on both
systemd and SysVinit systems. I just didn't think about this before.

> Any thought about this from other users/developpers?
>
>>
>> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
>> ---
>>  package/systemd/locale.sh  | 26 ++++++++++++++++++++++++++
>>  package/systemd/systemd.mk |  7 +++++++
>>  2 files changed, 33 insertions(+)
>>  create mode 100644 package/systemd/locale.sh
>>
>> diff --git a/package/systemd/locale.sh b/package/systemd/locale.sh
>> new file mode 100644
>> index 0000000..b665872
>> --- /dev/null
>> +++ b/package/systemd/locale.sh
>> @@ -0,0 +1,26 @@
>> +#!/bin/sh
>> +
>> +if [ -z "$LANG" ]; then
>> +  if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then
>> +    . "$XDG_CONFIG_HOME/locale.conf"
>> +  elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then
>> +    . "$HOME/.config/locale.conf"
>> +  elif [ -r /etc/locale.conf ]; then
>> +    . /etc/locale.conf
>> +  fi
>> +fi
>> +
>> +LANG=${LANG:-C}
>> +export LANG
>> +[ -n "$LC_CTYPE" ]          && export LC_CTYPE
>> +[ -n "$LC_NUMERIC" ]        && export LC_NUMERIC
>> +[ -n "$LC_TIME" ]           && export LC_TIME
>> +[ -n "$LC_COLLATE" ]        && export LC_COLLATE
>> +[ -n "$LC_MONETARY" ]       && export LC_MONETARY
>> +[ -n "$LC_MESSAGES" ]       && export LC_MESSAGES
>> +[ -n "$LC_PAPER" ]          && export LC_PAPER
>> +[ -n "$LC_NAME" ]           && export LC_NAME
>> +[ -n "$LC_ADDRESS" ]        && export LC_ADDRESS
>> +[ -n "$LC_TELEPHONE" ]      && export LC_TELEPHONE
>> +[ -n "$LC_MEASUREMENT" ]    && export LC_MEASUREMENT
>> +[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION
>> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
>> index 92f99c2..ef14c76 100644
>> --- a/package/systemd/systemd.mk
>> +++ b/package/systemd/systemd.mk
>> @@ -158,6 +158,12 @@ define SYSTEMD_INSTALL_MACHINEID_HOOK
>>         touch $(TARGET_DIR)/etc/machine-id
>>  endef
>>
>> +define SYSTEMD_INSTALL_LOCALE_SH_HOOK
>> +       mkdir -p $(TARGET_DIR)/etc/profile.d
>> +       $(INSTALL) -D -m 644 package/systemd/locale.sh \
>> +               $(TARGET_DIR)/etc/profile.d/locale.sh
>> +endef
>> +
>>  define SYSTEMD_SANITIZE_PATH_IN_UNITS
>>         find $(TARGET_DIR)/lib/systemd/system -name '*.service' \
>>                 -exec $(SED) 's,$(HOST_DIR),,g' {} \;
>> @@ -172,6 +178,7 @@ endef
>>  SYSTEMD_POST_INSTALL_TARGET_HOOKS += \
>>         SYSTEMD_INSTALL_INIT_HOOK \
>>         SYSTEMD_INSTALL_MACHINEID_HOOK \
>> +       SYSTEMD_INSTALL_LOCALE_SH_HOOK \
>>         SYSTEMD_INSTALL_RESOLVCONF_HOOK \
>>         SYSTEMD_DISABLE_LDCONFIG_SERVICE_HOOK \
>>         SYSTEMD_SANITIZE_PATH_IN_UNITS
>> --
>> 2.2.1
>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot at busybox.net
>> http://lists.busybox.net/mailman/listinfo/buildroot
>
> Regards,
>
> --
> Samuel

Cheers,
Maxim

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

* [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks
  2015-01-19 16:14 ` [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks Maxim Mikityanskiy
@ 2015-02-02 16:22   ` Samuel Martin
  2015-03-08 22:04   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 16:22 UTC (permalink / raw)
  To: buildroot

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Install alternative symlinks for dosfstools mkfs.fat, fsck.fat and
> fatlabel. Those symlinks are generally installed by make install, but
> buildroot does not use make install for dosfstools, but symlinks should
> be installed anyway.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

Regards,


-- 
Samuel

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

* [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd
  2015-01-19 16:14 ` [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd Maxim Mikityanskiy
@ 2015-02-02 17:12   ` Samuel Martin
  2015-04-22 20:10   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 17:12 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Add rngd.service for systemd. Also patch rngd with patch from Fedora to
> ignore failure if no hwrng present:
> https://bugzilla.redhat.com/show_bug.cgi?id=892178
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/rng-tools/rng-tools.mk         |  8 ++++++++
>  package/rng-tools/rngd-exit-code.patch | 11 +++++++++++
>  package/rng-tools/rngd.service         |  9 +++++++++
>  3 files changed, 28 insertions(+)
>  create mode 100644 package/rng-tools/rngd-exit-code.patch
>  create mode 100644 package/rng-tools/rngd.service
>
> diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk
> index 5b89656..13352cc 100644
> --- a/package/rng-tools/rng-tools.mk
> +++ b/package/rng-tools/rng-tools.mk
> @@ -21,4 +21,12 @@ else
>  RNG_TOOLS_CONF_OPTS += --without-libgcrypt
>  endif
>
> +define RNG_TOOLS_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 644 package/rng-tools/rngd.service \
> +               $(TARGET_DIR)/lib/systemd/system/rngd.service
> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> +       ln -fs /lib/systemd/system/rngd.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/rngd.service
> +endef
> +
>  $(eval $(autotools-package))
> diff --git a/package/rng-tools/rngd-exit-code.patch b/package/rng-tools/rngd-exit-code.patch
> new file mode 100644
> index 0000000..5f87161
> --- /dev/null
> +++ b/package/rng-tools/rngd-exit-code.patch

Few comments about the patch:
- patch filename should follow what `git format-patch` generates, so
something 0001-<some description>.patch;
- patch should have a non-empty description and sob-line.

Check [1] for detailed package's patch requirements.

> @@ -0,0 +1,11 @@
> +--- a/rngd.c
> ++++ b/rngd.c
> +@@ -319,7 +319,7 @@ int main(int argc, char **argv)
> +                       message(LOG_DAEMON|LOG_ERR,
> +                               "Maybe RNG device modules are not loaded\n");
> +               }
> +-              return 1;
> ++              return 66;
> +       }
> +
> +       if (arguments->verbose) {
> diff --git a/package/rng-tools/rngd.service b/package/rng-tools/rngd.service
> new file mode 100644
> index 0000000..3bdc4c1
> --- /dev/null
> +++ b/package/rng-tools/rngd.service
> @@ -0,0 +1,9 @@
> +[Unit]
> +Description=Hardware RNG Entropy Gatherer Daemon
> +
> +[Service]
> +ExecStart=/usr/sbin/rngd -f
> +SuccessExitStatus=66
> +
> +[Install]
> +WantedBy=multi-user.target
> --
> 2.2.1
>

[1] http://nightly.buildroot.org/manual.html#patch-policy

Regards,


-- 
Samuel

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

* [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir
  2015-01-19 16:14 ` [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir Maxim Mikityanskiy
@ 2015-02-02 20:41   ` Samuel Martin
  2015-02-23 11:38   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 20:41 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

Looks like you forget your sob-line here ;-)

Anyway, you got my:

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> The place for package-provided systemd units is /lib/systemd/system.
> /etc/systemd/system is for custom units.
> ---
>  package/dropbear/dropbear.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk
> index 696095d..2230c61 100644
> --- a/package/dropbear/dropbear.mk
> +++ b/package/dropbear/dropbear.mk
> @@ -46,9 +46,9 @@ endef
>
>  define DROPBEAR_INSTALL_INIT_SYSTEMD
>         $(INSTALL) -D -m 644 package/dropbear/dropbear.service \
> -               $(TARGET_DIR)/etc/systemd/system/dropbear.service
> +               $(TARGET_DIR)/lib/systemd/system/dropbear.service
>         mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> -       ln -fs ../dropbear.service \
> +       ln -fs /lib/systemd/system/dropbear.service \
>                 $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/dropbear.service

Though, you might often find relative symlinks, so they are correctly
resolved when looking at $(TARGET_DIR).

>  endef
>
> --
> 2.2.1


Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available
  2015-01-19 16:14 ` [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available Maxim Mikityanskiy
@ 2015-02-02 20:44   ` Samuel Martin
  2015-07-10 17:35   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 20:44 UTC (permalink / raw)
  To: buildroot

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> systemd looks for fsck in /sbin, so make symlink:
> /sbin/fsck -> /usr/sbin/fsck
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

> ---
>  package/e2fsprogs/e2fsprogs.mk | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk
> index b4f0950..9f0310d 100644
> --- a/package/e2fsprogs/e2fsprogs.mk
> +++ b/package/e2fsprogs/e2fsprogs.mk
> @@ -117,5 +117,13 @@ ifeq ($(BR2_PACKAGE_E2FSPROGS_FINDFS),y)
>  E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FINDFS_SYMLINK
>  endif
>
> +define E2FSPROGS_TARGET_FSCK_SYMLINK
> +       ln -sf ../usr/sbin/fsck $(TARGET_DIR)/sbin/fsck
> +endef
> +
> +ifeq ($(BR2_PACKAGE_E2FSPROGS_FSCK),y)
> +E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FSCK_SYMLINK
> +endif
> +
>  $(eval $(autotools-package))
>  $(eval $(host-autotools-package))
> --
> 2.2.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support Maxim Mikityanskiy
@ 2015-02-02 21:12   ` Samuel Martin
  2015-02-02 21:30     ` Maxim Mikityanskiy
  2015-03-08 21:52   ` Thomas Petazzoni
  1 sibling, 1 reply; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 21:12 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Support running minidlna in system-wide mode using systemd:
>
> 1. Set --with-db-path and --with-log-path configure options to make
> default minidlna directories comply with FHS.
>
> 2. Install suitable minidlna.conf for system-wide mode.
>
> 3. Install sysctl.d config file to increase inotify watches count.
>
> 4. Install tmpfiles.d config file to mkdir and chmod necessary
> directories for minidlna running in system-wide mode.
>
> 5. Install sysusers.d config file to create minidlna user when using
> systemd.

To make minidlna compliant with non-systemd ssytem, you should add the
user using _USERS infra [1].

>
> 6. Install minidlna.service for systemd.
>
> Note: User=minidlna should be set in minidlna.service, not in
> minidlna.conf, because minidlna is unable to drop privileges correctly
> by itself: it does not get any privileges provided by groups of minidlna
> user. Systemd drops privileges correctly in that case.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/minidlna/minidlna.conf          | 74 +++++++++++++++++++++++++++++++++
>  package/minidlna/minidlna.mk            | 37 +++++++++++++++++
>  package/minidlna/minidlna.service       | 12 ++++++
>  package/minidlna/minidlna_sysctl.conf   |  1 +
>  package/minidlna/minidlna_sysusers.conf |  1 +
>  package/minidlna/minidlna_tmpfiles.conf |  3 ++
>  6 files changed, 128 insertions(+)
>  create mode 100644 package/minidlna/minidlna.conf
>  create mode 100644 package/minidlna/minidlna.service
>  create mode 100644 package/minidlna/minidlna_sysctl.conf
>  create mode 100644 package/minidlna/minidlna_sysusers.conf
>  create mode 100644 package/minidlna/minidlna_tmpfiles.conf
>
> diff --git a/package/minidlna/minidlna.conf b/package/minidlna/minidlna.conf
> new file mode 100644
> index 0000000..9e4fbc9
> --- /dev/null
> +++ b/package/minidlna/minidlna.conf
> @@ -0,0 +1,74 @@
> +# port for HTTP (descriptions, SOAP, media transfer) traffic
> +port=8200
> +
> +# network interfaces to serve, comma delimited
> +#network_interface=eth0
> +
> +# set this to the directory you want scanned.
> +# * if you want multiple directories, you can have multiple media_dir= lines
> +# * if you want to restrict a media_dir to specific content types, you
> +#   can prepend the types, followed by a comma, to the directory:
> +#   + "A" for audio  (eg. media_dir=A,/home/jmaggard/Music)
> +#   + "V" for video  (eg. media_dir=V,/home/jmaggard/Videos)
> +#   + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures)
> +#   + "PV" for pictures and video (eg. media_dir=PV,/home/jmaggard/digital_camera)
> +#media_dir=/home
> +
> +# set this to merge all media_dir base contents into the root container
> +# note: the default is no
> +#merge_media_dirs=no
> +
> +# set this if you want to customize the name that shows up on your clients
> +friendly_name=Buildroot DLNA Server
> +
> +# set this to change the verbosity of the information that is logged
> +# each section can use a different level: off, fatal, error, warn, info, or debug
> +#log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn
> +
> +# this should be a list of file names to check for when searching for album art
> +# note: names should be delimited with a forward slash ("/")
> +album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
> +
> +# set this to no to disable inotify monitoring to automatically discover new files
> +# note: the default is yes
> +inotify=yes
> +
> +# set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO
> +enable_tivo=no
> +
> +# set this to strictly adhere to DLNA standards.
> +# * This will allow server-side downscaling of very large JPEG images,
> +#   which may hurt JPEG serving performance on (at least) Sony DLNA products.
> +strict_dlna=no
> +
> +# default presentation url is http address on port 80
> +#presentation_url=http://www.mylan/index.php
> +
> +# notify interval in seconds. default is 895 seconds.
> +notify_interval=900
> +
> +# serial and model number the daemon will report to clients
> +# in its XML description
> +serial=12345678
> +model_number=1
> +
> +# specify the path to the MiniSSDPd socket
> +#minissdpdsocket=/var/run/minissdpd.sock
> +
> +# use different container as root of the tree
> +# possible values:
> +#   + "." - use standard container (this is the default)
> +#   + "B" - "Browse Directory"
> +#   + "M" - "Music"
> +#   + "V" - "Video"
> +#   + "P" - "Pictures"
> +#   + Or, you can specify the ObjectID of your desired root container (eg. 1$F for Music/Playlists)
> +# if you specify "B" and client device is audio-only then "Music/Folders" will be used as root
> +#root_container=.
> +
> +# always force SortCriteria to this value, regardless of the SortCriteria passed by the client
> +#force_sort_criteria=+upnp:class,+upnp:originalTrackNumber,+dc:title
> +
> +# maximum number of simultaneous connections
> +# note: many clients open several simultaneous connections while streaming
> +#max_connections=50

We usually prefer minmal default configuration files, with only
necessary stuff (i.e. no comments), letting the user browsing the
package manual to set all config he/she needs.

> diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk
> index bcbe5fa..fcc9d06 100644
> --- a/package/minidlna/minidlna.mk
> +++ b/package/minidlna/minidlna.mk
> @@ -24,4 +24,41 @@ MINIDLNA_CONF_OPTS = \
>         --disable-static
>  endif
>
> +MINIDLNA_CONF_OPTS += \
> +       --with-db-path=/var/cache/minidlna \
> +       --with-log-path=/var/log/minidlna
> +
> +define MINIDLNA_INSTALL_CONF_HOOK
> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.conf \
> +               $(TARGET_DIR)/etc/minidlna.conf
> +endef
> +
> +define MINIDLNA_INSTALL_SYSUSERS_HOOK
> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysusers.conf \
> +               $(TARGET_DIR)/usr/lib/sysusers.d/minidlna.conf
> +endef
> +
> +define MINIDLNA_INSTALL_TMPFILES_HOOK
> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_tmpfiles.conf \
> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/minidlna.conf
> +endef
> +
> +define MINIDLNA_INSTALL_SYSCTL_HOOK
> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysctl.conf \
> +               $(TARGET_DIR)/usr/lib/sysctl.d/20-minidlna.conf
> +endef
> +
> +ifeq ($(BR2_INIT_SYSTEMD),y)
> +MINIDLNA_POST_INSTALL_TARGET_HOOKS += \
> +       MINIDLNA_INSTALL_CONF_HOOK \

This hook could be run even if init is not systemd, no?

> +       MINIDLNA_INSTALL_SYSUSERS_HOOK \
> +       MINIDLNA_INSTALL_TMPFILES_HOOK \
> +       MINIDLNA_INSTALL_SYSCTL_HOOK

Maybe you could put all systemd stuff in 1 and single hook.

> +endif
> +
> +define MINIDLNA_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.service \
> +               $(TARGET_DIR)/lib/systemd/system/minidlna.service
> +endef
> +
>  $(eval $(autotools-package))
> diff --git a/package/minidlna/minidlna.service b/package/minidlna/minidlna.service
> new file mode 100644
> index 0000000..45b72f0
> --- /dev/null
> +++ b/package/minidlna/minidlna.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=minidlna server
> +After=network.target
> +
> +[Service]
> +User=minidlna
> +Type=forking
> +ExecStart=/usr/sbin/minidlnad -P /run/minidlna/minidlna.pid
> +PIDFile=/run/minidlna/minidlna.pid
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/package/minidlna/minidlna_sysctl.conf b/package/minidlna/minidlna_sysctl.conf
> new file mode 100644
> index 0000000..0745b37
> --- /dev/null
> +++ b/package/minidlna/minidlna_sysctl.conf
> @@ -0,0 +1 @@
> +fs.inotify.max_user_watches = 65536
> diff --git a/package/minidlna/minidlna_sysusers.conf b/package/minidlna/minidlna_sysusers.conf
> new file mode 100644
> index 0000000..1dc06f3
> --- /dev/null
> +++ b/package/minidlna/minidlna_sysusers.conf
> @@ -0,0 +1 @@
> +u minidlna - "DLNA server"
> diff --git a/package/minidlna/minidlna_tmpfiles.conf b/package/minidlna/minidlna_tmpfiles.conf
> new file mode 100644
> index 0000000..a6e66e7
> --- /dev/null
> +++ b/package/minidlna/minidlna_tmpfiles.conf
> @@ -0,0 +1,3 @@
> +d /var/run/minidlna 0755 minidlna minidlna -
> +d /var/cache/minidlna 0700 minidlna minidlna -
> +d /var/log/minidlna 0755 minidlna minidlna -
> --
> 2.2.1
>

[1] http://nightly.buildroot.org/manual.html#customize-users

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-02-02 21:12   ` Samuel Martin
@ 2015-02-02 21:30     ` Maxim Mikityanskiy
  2015-02-02 23:22       ` Samuel Martin
  2015-02-03  9:10       ` Arnout Vandecappelle
  0 siblings, 2 replies; 60+ messages in thread
From: Maxim Mikityanskiy @ 2015-02-02 21:30 UTC (permalink / raw)
  To: buildroot

Hi Samuel,

2015-02-02 23:12 GMT+02:00 Samuel Martin <s.martin49@gmail.com>:
> Hi Maxim,
>
> On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
>> Support running minidlna in system-wide mode using systemd:
>>
>> 1. Set --with-db-path and --with-log-path configure options to make
>> default minidlna directories comply with FHS.
>>
>> 2. Install suitable minidlna.conf for system-wide mode.
>>
>> 3. Install sysctl.d config file to increase inotify watches count.
>>
>> 4. Install tmpfiles.d config file to mkdir and chmod necessary
>> directories for minidlna running in system-wide mode.
>>
>> 5. Install sysusers.d config file to create minidlna user when using
>> systemd.
>
> To make minidlna compliant with non-systemd ssytem, you should add the
> user using _USERS infra [1].

There were two reasons I preferred sysusers over _USERS. At first, my
patch only adds systemd unit file and doesn't add initscript for
SysVinit-based systems. So minidlna user will be useless on
non-systemd systems. At second, I've noticed that _USERS create users
with UID >= 1000. UIDs < 1000 are reserved for system users, and UIDs
>= 1000 are for real users. Systemd-sysusers, however, creates users
with UID < 1000. I think minidlna user should have UID < 1000. So
should I really replace sysusers with _USERS for creating minidlna
user here?

>>
>> 6. Install minidlna.service for systemd.
>>
>> Note: User=minidlna should be set in minidlna.service, not in
>> minidlna.conf, because minidlna is unable to drop privileges correctly
>> by itself: it does not get any privileges provided by groups of minidlna
>> user. Systemd drops privileges correctly in that case.
>>
>> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
>> ---
>>  package/minidlna/minidlna.conf          | 74 +++++++++++++++++++++++++++++++++
>>  package/minidlna/minidlna.mk            | 37 +++++++++++++++++
>>  package/minidlna/minidlna.service       | 12 ++++++
>>  package/minidlna/minidlna_sysctl.conf   |  1 +
>>  package/minidlna/minidlna_sysusers.conf |  1 +
>>  package/minidlna/minidlna_tmpfiles.conf |  3 ++
>>  6 files changed, 128 insertions(+)
>>  create mode 100644 package/minidlna/minidlna.conf
>>  create mode 100644 package/minidlna/minidlna.service
>>  create mode 100644 package/minidlna/minidlna_sysctl.conf
>>  create mode 100644 package/minidlna/minidlna_sysusers.conf
>>  create mode 100644 package/minidlna/minidlna_tmpfiles.conf
>>
>> diff --git a/package/minidlna/minidlna.conf b/package/minidlna/minidlna.conf
>> new file mode 100644
>> index 0000000..9e4fbc9
>> --- /dev/null
>> +++ b/package/minidlna/minidlna.conf
>> @@ -0,0 +1,74 @@
>> +# port for HTTP (descriptions, SOAP, media transfer) traffic
>> +port=8200
>> +
>> +# network interfaces to serve, comma delimited
>> +#network_interface=eth0
>> +
>> +# set this to the directory you want scanned.
>> +# * if you want multiple directories, you can have multiple media_dir= lines
>> +# * if you want to restrict a media_dir to specific content types, you
>> +#   can prepend the types, followed by a comma, to the directory:
>> +#   + "A" for audio  (eg. media_dir=A,/home/jmaggard/Music)
>> +#   + "V" for video  (eg. media_dir=V,/home/jmaggard/Videos)
>> +#   + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures)
>> +#   + "PV" for pictures and video (eg. media_dir=PV,/home/jmaggard/digital_camera)
>> +#media_dir=/home
>> +
>> +# set this to merge all media_dir base contents into the root container
>> +# note: the default is no
>> +#merge_media_dirs=no
>> +
>> +# set this if you want to customize the name that shows up on your clients
>> +friendly_name=Buildroot DLNA Server
>> +
>> +# set this to change the verbosity of the information that is logged
>> +# each section can use a different level: off, fatal, error, warn, info, or debug
>> +#log_level=general,artwork,database,inotify,scanner,metadata,http,ssdp,tivo=warn
>> +
>> +# this should be a list of file names to check for when searching for album art
>> +# note: names should be delimited with a forward slash ("/")
>> +album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg
>> +
>> +# set this to no to disable inotify monitoring to automatically discover new files
>> +# note: the default is yes
>> +inotify=yes
>> +
>> +# set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO
>> +enable_tivo=no
>> +
>> +# set this to strictly adhere to DLNA standards.
>> +# * This will allow server-side downscaling of very large JPEG images,
>> +#   which may hurt JPEG serving performance on (at least) Sony DLNA products.
>> +strict_dlna=no
>> +
>> +# default presentation url is http address on port 80
>> +#presentation_url=http://www.mylan/index.php
>> +
>> +# notify interval in seconds. default is 895 seconds.
>> +notify_interval=900
>> +
>> +# serial and model number the daemon will report to clients
>> +# in its XML description
>> +serial=12345678
>> +model_number=1
>> +
>> +# specify the path to the MiniSSDPd socket
>> +#minissdpdsocket=/var/run/minissdpd.sock
>> +
>> +# use different container as root of the tree
>> +# possible values:
>> +#   + "." - use standard container (this is the default)
>> +#   + "B" - "Browse Directory"
>> +#   + "M" - "Music"
>> +#   + "V" - "Video"
>> +#   + "P" - "Pictures"
>> +#   + Or, you can specify the ObjectID of your desired root container (eg. 1$F for Music/Playlists)
>> +# if you specify "B" and client device is audio-only then "Music/Folders" will be used as root
>> +#root_container=.
>> +
>> +# always force SortCriteria to this value, regardless of the SortCriteria passed by the client
>> +#force_sort_criteria=+upnp:class,+upnp:originalTrackNumber,+dc:title
>> +
>> +# maximum number of simultaneous connections
>> +# note: many clients open several simultaneous connections while streaming
>> +#max_connections=50
>
> We usually prefer minmal default configuration files, with only
> necessary stuff (i.e. no comments), letting the user browsing the
> package manual to set all config he/she needs.

OK, I'll consider it. This config has lots of comments because it's
based on default one shipped with package.

>> diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk
>> index bcbe5fa..fcc9d06 100644
>> --- a/package/minidlna/minidlna.mk
>> +++ b/package/minidlna/minidlna.mk
>> @@ -24,4 +24,41 @@ MINIDLNA_CONF_OPTS = \
>>         --disable-static
>>  endif
>>
>> +MINIDLNA_CONF_OPTS += \
>> +       --with-db-path=/var/cache/minidlna \
>> +       --with-log-path=/var/log/minidlna
>> +
>> +define MINIDLNA_INSTALL_CONF_HOOK
>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.conf \
>> +               $(TARGET_DIR)/etc/minidlna.conf
>> +endef
>> +
>> +define MINIDLNA_INSTALL_SYSUSERS_HOOK
>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysusers.conf \
>> +               $(TARGET_DIR)/usr/lib/sysusers.d/minidlna.conf
>> +endef
>> +
>> +define MINIDLNA_INSTALL_TMPFILES_HOOK
>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_tmpfiles.conf \
>> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/minidlna.conf
>> +endef
>> +
>> +define MINIDLNA_INSTALL_SYSCTL_HOOK
>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysctl.conf \
>> +               $(TARGET_DIR)/usr/lib/sysctl.d/20-minidlna.conf
>> +endef
>> +
>> +ifeq ($(BR2_INIT_SYSTEMD),y)
>> +MINIDLNA_POST_INSTALL_TARGET_HOOKS += \
>> +       MINIDLNA_INSTALL_CONF_HOOK \
>
> This hook could be run even if init is not systemd, no?

It could be run, but it will be useless because there is no initscript
for non-systemd systems anyway. Maybe I should resend this patch with
initscript added.

>> +       MINIDLNA_INSTALL_SYSUSERS_HOOK \
>> +       MINIDLNA_INSTALL_TMPFILES_HOOK \
>> +       MINIDLNA_INSTALL_SYSCTL_HOOK
>
> Maybe you could put all systemd stuff in 1 and single hook.
>
>> +endif
>> +
>> +define MINIDLNA_INSTALL_INIT_SYSTEMD
>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.service \
>> +               $(TARGET_DIR)/lib/systemd/system/minidlna.service
>> +endef
>> +
>>  $(eval $(autotools-package))
>> diff --git a/package/minidlna/minidlna.service b/package/minidlna/minidlna.service
>> new file mode 100644
>> index 0000000..45b72f0
>> --- /dev/null
>> +++ b/package/minidlna/minidlna.service
>> @@ -0,0 +1,12 @@
>> +[Unit]
>> +Description=minidlna server
>> +After=network.target
>> +
>> +[Service]
>> +User=minidlna
>> +Type=forking
>> +ExecStart=/usr/sbin/minidlnad -P /run/minidlna/minidlna.pid
>> +PIDFile=/run/minidlna/minidlna.pid
>> +
>> +[Install]
>> +WantedBy=multi-user.target
>> diff --git a/package/minidlna/minidlna_sysctl.conf b/package/minidlna/minidlna_sysctl.conf
>> new file mode 100644
>> index 0000000..0745b37
>> --- /dev/null
>> +++ b/package/minidlna/minidlna_sysctl.conf
>> @@ -0,0 +1 @@
>> +fs.inotify.max_user_watches = 65536
>> diff --git a/package/minidlna/minidlna_sysusers.conf b/package/minidlna/minidlna_sysusers.conf
>> new file mode 100644
>> index 0000000..1dc06f3
>> --- /dev/null
>> +++ b/package/minidlna/minidlna_sysusers.conf
>> @@ -0,0 +1 @@
>> +u minidlna - "DLNA server"
>> diff --git a/package/minidlna/minidlna_tmpfiles.conf b/package/minidlna/minidlna_tmpfiles.conf
>> new file mode 100644
>> index 0000000..a6e66e7
>> --- /dev/null
>> +++ b/package/minidlna/minidlna_tmpfiles.conf
>> @@ -0,0 +1,3 @@
>> +d /var/run/minidlna 0755 minidlna minidlna -
>> +d /var/cache/minidlna 0700 minidlna minidlna -
>> +d /var/log/minidlna 0755 minidlna minidlna -
>> --
>> 2.2.1
>>
>
> [1] http://nightly.buildroot.org/manual.html#customize-users
>
> Regards,
>
> --
> Samuel

Cheers,
Maxim

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

* [Buildroot] [PATCH 10/16] package/transmission: improve systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
@ 2015-02-02 22:09   ` Samuel Martin
  2015-02-03  9:11     ` Arnout Vandecappelle
  2015-07-14 13:51   ` [Buildroot] [PATCHv2] transmission: " Aurélien Chabot
  2015-07-19 22:18   ` [Buildroot] [PATCH v3] " Aurélien Chabot
  2 siblings, 1 reply; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 22:09 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Support running transmission-daemon in system-wide mode using systemd:
>
> 1. Pass --with-systemd-daemon to configure script if systemd is enabled.
>
> 2. Install sysctl.d config file to increase send and receive buffer
> sizes.
>
> 3. Install tmpfiles.d config file to create transmission config
> directory.
>
> 4. Install sysusers.d config file to create transmission user when using
> systemd. Create transmission user when not using systemd.
>
> 5. Install transmission-daemon.service for systemd.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/transmission/transmission-daemon.service | 12 +++++++
>  package/transmission/transmission.mk             | 45 ++++++++++++++++++++++++
>  package/transmission/transmission_sysctl.conf    |  2 ++
>  package/transmission/transmission_sysusers.conf  |  1 +
>  package/transmission/transmission_tmpfiles.conf  |  1 +
>  5 files changed, 61 insertions(+)
>  create mode 100644 package/transmission/transmission-daemon.service
>  create mode 100644 package/transmission/transmission_sysctl.conf
>  create mode 100644 package/transmission/transmission_sysusers.conf
>  create mode 100644 package/transmission/transmission_tmpfiles.conf
>
> diff --git a/package/transmission/transmission-daemon.service b/package/transmission/transmission-daemon.service
> new file mode 100644
> index 0000000..4e7c98b
> --- /dev/null
> +++ b/package/transmission/transmission-daemon.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=Transmission BitTorrent Daemon
> +After=network.target
> +
> +[Service]
> +User=transmission
> +Type=notify
> +ExecStart=/usr/bin/transmission-daemon -f --log-error -g /var/lib/transmission/config
> +ExecReload=/bin/kill -s HUP $MAINPID
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
> index b8a5c42..b5b9c8b 100644
> --- a/package/transmission/transmission.mk
> +++ b/package/transmission/transmission.mk
> @@ -36,11 +36,56 @@ endif
>  ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
>         TRANSMISSION_CONF_OPTS += --enable-daemon
>
> +ifeq ($(BR2_PACKAGE_SYSTEMD),y)
> +       TRANSMISSION_DEPENDENCIES += systemd
> +       TRANSMISSION_CONF_OPTS += --with-systemd-daemon

We usually like when option are symetrical, so here, just add:
<snip>
else
TRANSMISSION_CONF_OPTS += --without-systemd-daemon
</snip>

 Note that, we usually don't indent variable assignation ;)

> +endif
> +
> +ifeq ($(BR2_INIT_SYSTEMD),)
> +define TRANSMISSION_USERS
> +       transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
> +endef
> +endif
> +
>  define TRANSMISSION_INSTALL_INIT_SYSV
>         $(INSTALL) -m 0755 -D package/transmission/S92transmission \
>                 $(TARGET_DIR)/etc/init.d/S92transmission
>  endef
>
> +define TRANSMISSION_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 644 package/transmission/transmission-daemon.service \
> +               $(TARGET_DIR)/lib/systemd/system/transmission-daemon.service
> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> +       ln -fs /lib/systemd/system/transmission-daemon.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
> +
> +       mkdir -p $(TARGET_DIR)/var/lib/transmission/config
> +endef
> +
> +define TRANSMISSION_INSTALL_SYSCTL_HOOK
> +       $(INSTALL) -D -m 644 package/transmission/transmission_sysctl.conf \
> +               $(TARGET_DIR)/usr/lib/sysctl.d/20-transmission.conf
> +endef
> +
> +TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
> +       TRANSMISSION_INSTALL_SYSCTL_HOOK
> +
> +define TRANSMISSION_INSTALL_TMPFILES_HOOK
> +       $(INSTALL) -D -m 644 package/transmission/transmission_tmpfiles.conf \
> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/transmission.conf
> +endef
> +
> +TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
> +       TRANSMISSION_INSTALL_TMPFILES_HOOK
> +
> +define TRANSMISSION_INSTALL_SYSUSERS_HOOK
> +       $(INSTALL) -D -m 644 package/transmission/transmission_sysusers.conf \
> +               $(TARGET_DIR)/usr/lib/sysusers.d/transmission.conf
> +endef
> +
> +TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
> +       TRANSMISSION_INSTALL_SYSUSERS_HOOK

The 3 above hooks are for systemd only, no?
If yes, put them all together in a single hook only added to the
TRANSMISSION_POST_INSTALL_TARGET_HOOKS when init is systemd.

> +
>  else
>         TRANSMISSION_CONF_OPTS += --disable-daemon
>  endif
> diff --git a/package/transmission/transmission_sysctl.conf b/package/transmission/transmission_sysctl.conf
> new file mode 100644
> index 0000000..7862332
> --- /dev/null
> +++ b/package/transmission/transmission_sysctl.conf
> @@ -0,0 +1,2 @@
> +net.core.wmem_max = 1048576
> +net.core.rmem_max = 4194304
> diff --git a/package/transmission/transmission_sysusers.conf b/package/transmission/transmission_sysusers.conf
> new file mode 100644
> index 0000000..09396d4
> --- /dev/null
> +++ b/package/transmission/transmission_sysusers.conf
> @@ -0,0 +1 @@
> +u transmission - "Transmission daemon" /var/lib/transmission
> diff --git a/package/transmission/transmission_tmpfiles.conf b/package/transmission/transmission_tmpfiles.conf
> new file mode 100644
> index 0000000..e40b94a
> --- /dev/null
> +++ b/package/transmission/transmission_tmpfiles.conf
> @@ -0,0 +1 @@
> +d /var/lib/transmission/config 0700 transmission users -
> --
> 2.2.1
>

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 12/16] package/samba: add systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 12/16] package/samba: add systemd support Maxim Mikityanskiy
@ 2015-02-02 22:38   ` Samuel Martin
  2015-07-13 20:47     ` Maxime Hadjinlian
  0 siblings, 1 reply; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 22:38 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Add {smbd,nmbd,winbindd}.service files for systemd. Add tmpfiles.d
> config file to create samba directories.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/samba/nmbd.service        | 12 ++++++++++++
>  package/samba/samba.mk            | 23 +++++++++++++++++++++++
>  package/samba/samba_tmpfiles.conf |  4 ++++
>  package/samba/smbd.service        | 12 ++++++++++++
>  package/samba/winbindd.service    | 12 ++++++++++++
>  5 files changed, 63 insertions(+)
>  create mode 100644 package/samba/nmbd.service
>  create mode 100644 package/samba/samba_tmpfiles.conf
>  create mode 100644 package/samba/smbd.service
>  create mode 100644 package/samba/winbindd.service
>
> diff --git a/package/samba/nmbd.service b/package/samba/nmbd.service
> new file mode 100644
> index 0000000..6e241ea
> --- /dev/null
> +++ b/package/samba/nmbd.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=Samba NetBIOS name server
> +After=network.target
> +
> +[Service]
> +Type=forking
> +PIDFile=/var/run/samba/nmbd.pid
> +ExecStart=/usr/sbin/nmbd -D
> +ExecReload=/bin/kill -HUP $MAINPID
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/package/samba/samba.mk b/package/samba/samba.mk
> index 31ad644..5a11ebe 100644
> --- a/package/samba/samba.mk
> +++ b/package/samba/samba.mk
> @@ -182,6 +182,29 @@ endef
>
>  SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_CONFIG
>
> +ifeq ($(BR2_INIT_SYSTEMD),y)
> +define SAMBA_INSTALL_TMPFILES_HOOK
> +       $(INSTALL) -D -m 644 package/samba/samba_tmpfiles.conf \
> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/samba.conf
> +endef
> +
> +SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_TMPFILES_HOOK
> +endif
> +
> +define SAMBA_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 644 package/samba/smbd.service \
> +               $(TARGET_DIR)/lib/systemd/system/smbd.service

smbd can be disabled, so its *.service installation should be optional
WRT its option.

> +       $(INSTALL) -D -m 644 package/samba/nmbd.service \
> +               $(TARGET_DIR)/lib/systemd/system/nmbd.service

ditto for nmbd.

> +       $(if $(BR2_PACKAGE_SAMBA_WINBINDD),$(INSTALL) -D -m 644 package/samba/winbindd.service $(TARGET_DIR)/lib/systemd/system/winbindd.service)
> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> +       ln -fs /lib/systemd/system/smbd.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/smbd.service

ditto

> +       ln -fs /lib/systemd/system/nmbd.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nmbd.service

ditto

> +       $(if $(BR2_PACKAGE_SAMBA_WINBINDD),ln -fs /lib/systemd/system/winbindd.service $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/winbindd.service)
> +endef
> +
>  define SAMBA_INSTALL_INIT_SYSV
>         $(INSTALL) -m 0755 -D package/samba/S91smb $(TARGET_DIR)/etc/init.d/S91smb
>  endef
> diff --git a/package/samba/samba_tmpfiles.conf b/package/samba/samba_tmpfiles.conf
> new file mode 100644
> index 0000000..e265f75
> --- /dev/null
> +++ b/package/samba/samba_tmpfiles.conf
> @@ -0,0 +1,4 @@
> +d /var/cache/samba 0755 root root -
> +d /var/log/samba 0755 root root -
> +d /var/lock/samba 0755 root root -
> +d /var/run/samba 0755 root root -
> diff --git a/package/samba/smbd.service b/package/samba/smbd.service
> new file mode 100644
> index 0000000..64abf56
> --- /dev/null
> +++ b/package/samba/smbd.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=Samba SMB/CIFS server
> +After=network.target nmbd.service winbindd.service
> +
> +[Service]
> +Type=forking
> +PIDFile=/var/run/samba/smbd.pid
> +ExecStart=/usr/sbin/smbd -D
> +ExecReload=/bin/kill -HUP $MAINPID
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/package/samba/winbindd.service b/package/samba/winbindd.service
> new file mode 100644
> index 0000000..214c17e
> --- /dev/null
> +++ b/package/samba/winbindd.service
> @@ -0,0 +1,12 @@
> +[Unit]
> +Description=Samba Winbind daemon
> +After=network.target nmbd.service
> +
> +[Service]
> +Type=forking
> +PIDFile=/var/run/samba/winbindd.pid
> +ExecStart=/usr/sbin/winbindd -D
> +ExecReload=/bin/kill -HUP $MAINPID
> +
> +[Install]
> +WantedBy=multi-user.target
> --
> 2.2.1

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 11/16] package/samba: use FHS dirs
  2015-01-19 16:14 ` [Buildroot] [PATCH 11/16] package/samba: use FHS dirs Maxim Mikityanskiy
@ 2015-02-02 22:49   ` Samuel Martin
  2015-04-06  9:45   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 22:49 UTC (permalink / raw)
  To: buildroot

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Clean up system directories by making samba conform to FHS and by using
> subdirectories e.g. /var/log/samba and /var/run/samba instead of
> /var/log and /var/run.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

> ---
>  package/samba/S91smb   |  5 +++--
>  package/samba/samba.mk | 10 +++++-----
>  2 files changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/package/samba/S91smb b/package/samba/S91smb
> index c190771..2e03e82 100755
> --- a/package/samba/S91smb
> +++ b/package/samba/S91smb
> @@ -10,6 +10,7 @@
>  mkdir -p /var/cache/samba
>  mkdir -p /var/log/samba
>  mkdir -p /var/lock/subsys
> +mkdir -p /var/run/samba
>
>  RETVAL=0
>
> @@ -33,13 +34,13 @@ stop() {
>         echo -n "Shutting down SMB services: "
>         kill -9 `pidof smbd`
>         RETVAL=$?
> -       rm -f /var/run/smbd.pid
> +       rm -f /var/run/samba/smbd.pid
>         echo "done"
>
>         echo -n "Shutting down NMB services: "
>         kill -9 `pidof nmbd`
>         RETVAL2=$?
> -       rm -f /var/run/nmbd.pid
> +       rm -f /var/run/samba/nmbd.pid
>
>         [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb
>         echo "done"
> diff --git a/package/samba/samba.mk b/package/samba/samba.mk
> index d25e94e..31ad644 100644
> --- a/package/samba/samba.mk
> +++ b/package/samba/samba.mk
> @@ -33,11 +33,11 @@ SAMBA_CONF_ENV = \
>         $(if $(BR2_PACKAGE_SAMBA_AVAHI),AVAHI_LIBS=-pthread)
>
>  SAMBA_CONF_OPTS = \
> -       --with-piddir=/var/run \
> -       --with-lockdir=/var/lock \
> -       --with-logfilebase=/var/log \
> -       --with-configdir=/etc/samba \
> -       --with-privatedir=/etc/samba \
> +       --with-fhs \
> +       --with-piddir=/var/run/samba \
> +       --with-lockdir=/var/cache/samba \
> +       --with-ncalrpcdir=/var/run/ncalrpc \
> +       --with-nmbdsocketdir=/var/run/nmbd \
>         \
>         --disable-cups \
>         --enable-shared-libs \
> --
> 2.2.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 15/16] package/vim: add default vimrc
  2015-01-19 16:14 ` [Buildroot] [PATCH 15/16] package/vim: add default vimrc Maxim Mikityanskiy
@ 2015-02-02 23:00   ` Samuel Martin
  2015-07-10 18:24   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 23:00 UTC (permalink / raw)
  To: buildroot

Hi Maxim,

On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Support /etc/vim/vimrc as system-wide vimrc file. Add some default
> sample vimrc.
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/vim/vim.mk | 11 +++++++++++
>  package/vim/vimrc  | 14 ++++++++++++++
>  2 files changed, 25 insertions(+)
>  create mode 100644 package/vim/vimrc
>
> diff --git a/package/vim/vim.mk b/package/vim/vim.mk
> index da84d14..992e41b 100644
> --- a/package/vim/vim.mk
> +++ b/package/vim/vim.mk
> @@ -28,6 +28,12 @@ VIM_CONF_OPTS = --with-tlib=ncurses --enable-gui=no --without-x
>  VIM_LICENSE = Charityware
>  VIM_LICENSE_FILES = README.txt
>
> +define VIM_VIMRC_HOOK
> +       echo '#define SYS_VIMRC_FILE "/etc/vim/vimrc"' >> $(@D)/src/feature.h
> +endef
> +
> +VIM_PRE_CONFIGURE_HOOKS += VIM_VIMRC_HOOK
> +
>  define VIM_INSTALL_TARGET_CMDS
>         cd $(@D)/src; \
>                 $(MAKE) DESTDIR=$(TARGET_DIR) installvimbin; \
> @@ -51,6 +57,11 @@ define VIM_INSTALL_VI_SYMLINK
>  endef
>  VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VI_SYMLINK
>
> +define VIM_INSTALL_VIMRC
> +       $(INSTALL) -D -m 644 package/vim/vimrc $(TARGET_DIR)/etc/vim/vimrc
> +endef
> +VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_VIMRC
> +
>  ifeq ($(BR2_PACKAGE_VIM_RUNTIME),y)
>  VIM_POST_INSTALL_TARGET_HOOKS += VIM_INSTALL_RUNTIME_CMDS
>  VIM_POST_INSTALL_TARGET_HOOKS += VIM_REMOVE_DOCS
> diff --git a/package/vim/vimrc b/package/vim/vimrc
> new file mode 100644
> index 0000000..bfc2087
> --- /dev/null
> +++ b/package/vim/vimrc
> @@ -0,0 +1,14 @@
> +set nocompatible
> +
> +set ai
> +set background=dark
> +set backspace=indent,eol,start
> +set nomodeline
> +set ruler
> +
> +set ignorecase smartcase incsearch hlsearch
> +
> +syntax on
> +
> +filetype plugin on
> +filetype indent on
> --
> 2.2.1
>

I'm usually not so fond of this kind fo config... just for comfort
IMHO ;-) but since this one is fairly short:

Reviewed-by: Samuel Martin <s.martin49@gmail.com>

-- 
Samuel

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-02-02 21:30     ` Maxim Mikityanskiy
@ 2015-02-02 23:22       ` Samuel Martin
  2015-02-03  9:10       ` Arnout Vandecappelle
  1 sibling, 0 replies; 60+ messages in thread
From: Samuel Martin @ 2015-02-02 23:22 UTC (permalink / raw)
  To: buildroot

Maxim,

On Mon, Feb 2, 2015 at 10:30 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
> Hi Samuel,
>
> 2015-02-02 23:12 GMT+02:00 Samuel Martin <s.martin49@gmail.com>:
>> Hi Maxim,
>>
>> On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
>>> Support running minidlna in system-wide mode using systemd:
>>>
>>> 1. Set --with-db-path and --with-log-path configure options to make
>>> default minidlna directories comply with FHS.
>>>
>>> 2. Install suitable minidlna.conf for system-wide mode.
>>>
>>> 3. Install sysctl.d config file to increase inotify watches count.
>>>
>>> 4. Install tmpfiles.d config file to mkdir and chmod necessary
>>> directories for minidlna running in system-wide mode.
>>>
>>> 5. Install sysusers.d config file to create minidlna user when using
>>> systemd.
>>
>> To make minidlna compliant with non-systemd ssytem, you should add the
>> user using _USERS infra [1].
>
> There were two reasons I preferred sysusers over _USERS. At first, my
> patch only adds systemd unit file and doesn't add initscript for
> SysVinit-based systems.

Indeed, but if we are adding initscript for systemd, why not adding it
for sysV as well? ;)

> So minidlna user will be useless on
> non-systemd systems. At second, I've noticed that _USERS create users
> with UID >= 1000. UIDs < 1000 are reserved for system users, and UIDs
>>= 1000 are for real users.

This more a convention, that something enforced by systemd itself or
any program runs as daemon.

> Systemd-sysusers, however, creates users
> with UID < 1000. I think minidlna user should have UID < 1000. So
> should I really replace sysusers with _USERS for creating minidlna
> user here?

The _USERS infra will pick-up a uid >=1000 only if you let the infra
pic-up a uid, if you set it, you can set anything you want ;-)

>
>>>
>>> 6. Install minidlna.service for systemd.
>>>
>>> Note: User=minidlna should be set in minidlna.service, not in
>>> minidlna.conf, because minidlna is unable to drop privileges correctly
>>> by itself: it does not get any privileges provided by groups of minidlna
>>> user. Systemd drops privileges correctly in that case.
>>>
>>> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
>>> ---

[...]

>>
>> We usually prefer minmal default configuration files, with only
>> necessary stuff (i.e. no comments), letting the user browsing the
>> package manual to set all config he/she needs.
>
> OK, I'll consider it. This config has lots of comments because it's
> based on default one shipped with package.
>
>>> diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk
>>> index bcbe5fa..fcc9d06 100644
>>> --- a/package/minidlna/minidlna.mk
>>> +++ b/package/minidlna/minidlna.mk
>>> @@ -24,4 +24,41 @@ MINIDLNA_CONF_OPTS = \
>>>         --disable-static
>>>  endif
>>>
>>> +MINIDLNA_CONF_OPTS += \
>>> +       --with-db-path=/var/cache/minidlna \
>>> +       --with-log-path=/var/log/minidlna
>>> +
>>> +define MINIDLNA_INSTALL_CONF_HOOK
>>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.conf \
>>> +               $(TARGET_DIR)/etc/minidlna.conf
>>> +endef
>>> +
>>> +define MINIDLNA_INSTALL_SYSUSERS_HOOK
>>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysusers.conf \
>>> +               $(TARGET_DIR)/usr/lib/sysusers.d/minidlna.conf
>>> +endef
>>> +
>>> +define MINIDLNA_INSTALL_TMPFILES_HOOK
>>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_tmpfiles.conf \
>>> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/minidlna.conf
>>> +endef
>>> +
>>> +define MINIDLNA_INSTALL_SYSCTL_HOOK
>>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna_sysctl.conf \
>>> +               $(TARGET_DIR)/usr/lib/sysctl.d/20-minidlna.conf
>>> +endef
>>> +
>>> +ifeq ($(BR2_INIT_SYSTEMD),y)
>>> +MINIDLNA_POST_INSTALL_TARGET_HOOKS += \
>>> +       MINIDLNA_INSTALL_CONF_HOOK \
>>
>> This hook could be run even if init is not systemd, no?
>
> It could be run, but it will be useless because there is no initscript
> for non-systemd systems anyway. Maybe I should resend this patch with
> initscript added.

I think so; so when sysV initscript will be added, the conf will be in
place already.

>
>>> +       MINIDLNA_INSTALL_SYSUSERS_HOOK \
>>> +       MINIDLNA_INSTALL_TMPFILES_HOOK \
>>> +       MINIDLNA_INSTALL_SYSCTL_HOOK
>>
>> Maybe you could put all systemd stuff in 1 and single hook.
>>
>>> +endif
>>> +
>>> +define MINIDLNA_INSTALL_INIT_SYSTEMD
>>> +       $(INSTALL) -D -m 644 package/minidlna/minidlna.service \
>>> +               $(TARGET_DIR)/lib/systemd/system/minidlna.service
>>> +endef
>>> +
>>>  $(eval $(autotools-package))
[...]

Regards,

-- 
Samuel

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-02-02 21:30     ` Maxim Mikityanskiy
  2015-02-02 23:22       ` Samuel Martin
@ 2015-02-03  9:10       ` Arnout Vandecappelle
  1 sibling, 0 replies; 60+ messages in thread
From: Arnout Vandecappelle @ 2015-02-03  9:10 UTC (permalink / raw)
  To: buildroot

On 02/02/15 22:30, Maxim Mikityanskiy wrote:
>> To make minidlna compliant with non-systemd ssytem, you should add the
>> > user using _USERS infra [1].
> There were two reasons I preferred sysusers over _USERS.


 I think that where possible, we should use sysusers on a systemd system and
_USERS on a non-systemd system. Perhaps the _USERS infrastructure should be
extended to do this automatically - AFAIK there is no advantage of using a
static user when you use systemd, right? Except of course when the package
requires one specific UID, but IIRC even that can be encoded in the sysusers
configuration, no?

 Regards,
 Arnout

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH 10/16] package/transmission: improve systemd support
  2015-02-02 22:09   ` Samuel Martin
@ 2015-02-03  9:11     ` Arnout Vandecappelle
  0 siblings, 0 replies; 60+ messages in thread
From: Arnout Vandecappelle @ 2015-02-03  9:11 UTC (permalink / raw)
  To: buildroot

On 02/02/15 23:09, Samuel Martin wrote:
> We usually like when option are symetrical, so here, just add:
> <snip>
> else
> TRANSMISSION_CONF_OPTS += --without-systemd-daemon
> </snip>
> 
>  Note that, we usually don't indent variable assignation ;)

 To be more accurate: we normally don't indent the bodies of make conditions.
But the transmission.mk file already violates that principle.

 Regards,
 Arnout

-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

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

* [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options
  2015-01-19 16:14 ` [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options Maxim Mikityanskiy
  2015-01-26 22:11   ` Thomas Petazzoni
@ 2015-02-07 22:00   ` Yann E. MORIN
  1 sibling, 0 replies; 60+ messages in thread
From: Yann E. MORIN @ 2015-02-07 22:00 UTC (permalink / raw)
  To: buildroot

Maxim, All,

On 2015-01-19 18:14 +0200, Maxim Mikityanskiy spake thusly:
> Add more options to Config.in to allow optionally select or deselect
> util-linux tools.
> 
> Also fix s/BR2_PACKAGE_WDCTL/BR2_PACKAGE_UTIL_LINUX_WDCTL/
[--SNIP--]
> -config BR2_PACKAGE_WDCTL
> +config BR2_PACKAGE_UTIL_LINUX_WDCTL

BR2_PACKAGE_WDCTL should have been added to config.in.legacy to provide
backward compatibility with previos .config/defconfig files.
 I'll submit a patch for that in a momemnt.

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  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.  |
'------------------------------^-------^------------------^--------------------'

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

* [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir
  2015-01-19 16:14 ` [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir Maxim Mikityanskiy
  2015-02-02 20:41   ` Samuel Martin
@ 2015-02-23 11:38   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-02-23 11:38 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:07 +0200, Maxim Mikityanskiy wrote:
> The place for package-provided systemd units is /lib/systemd/system.
> /etc/systemd/system is for custom units.
> ---
>  package/dropbear/dropbear.mk | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Applied to next, thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support Maxim Mikityanskiy
  2015-02-02 21:12   ` Samuel Martin
@ 2015-03-08 21:52   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-03-08 21:52 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:09 +0200, Maxim Mikityanskiy wrote:
> Support running minidlna in system-wide mode using systemd:
> 
> 1. Set --with-db-path and --with-log-path configure options to make
> default minidlna directories comply with FHS.
> 
> 2. Install suitable minidlna.conf for system-wide mode.
> 
> 3. Install sysctl.d config file to increase inotify watches count.
> 
> 4. Install tmpfiles.d config file to mkdir and chmod necessary
> directories for minidlna running in system-wide mode.
> 
> 5. Install sysusers.d config file to create minidlna user when using
> systemd.
> 
> 6. Install minidlna.service for systemd.
> 
> Note: User=minidlna should be set in minidlna.service, not in
> minidlna.conf, because minidlna is unable to drop privileges correctly
> by itself: it does not get any privileges provided by groups of minidlna
> user. Systemd drops privileges correctly in that case.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

I applied another patch adding a systemd service file for minidlna.
Could you rebase this patch on top of the latest Buildroot Git tree?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks
  2015-01-19 16:14 ` [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks Maxim Mikityanskiy
  2015-02-02 16:22   ` Samuel Martin
@ 2015-03-08 22:04   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-03-08 22:04 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:06 +0200, Maxim Mikityanskiy wrote:
> Install alternative symlinks for dosfstools mkfs.fat, fsck.fat and
> fatlabel. Those symlinks are generally installed by make install, but
> buildroot does not use make install for dosfstools, but symlinks should
> be installed anyway.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>

Thanks, I've applied your patch, but I've basically rewritten entirely
the installation logic to use makefile code instead of shell code. See
http://git.buildroot.net/buildroot/commit/?id=cef6a787cad4d5417b8672c8fd4c200bf29655ac.

To be honest, I wonder why dosfstools provides such sub-options to
select which binaries should be installed. The binaries are really
small:

-rwxr-xr-x 1 thomas thomas 40780 mars   8 22:59 fatlabel
-rwxr-xr-x 1 thomas thomas 42816 mars   8 22:59 fsck.fat
-rwxr-xr-x 1 thomas thomas 24432 mars   8 22:59 mkfs.fat

So I believe we could probably just install all of them unconditionally.

But oh, well, this is for another patch.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 11/16] package/samba: use FHS dirs
  2015-01-19 16:14 ` [Buildroot] [PATCH 11/16] package/samba: use FHS dirs Maxim Mikityanskiy
  2015-02-02 22:49   ` Samuel Martin
@ 2015-04-06  9:45   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-04-06  9:45 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:11 +0200, Maxim Mikityanskiy wrote:
> Clean up system directories by making samba conform to FHS and by using
> subdirectories e.g. /var/log/samba and /var/run/samba instead of
> /var/log and /var/run.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/samba/S91smb   |  5 +++--
>  package/samba/samba.mk | 10 +++++-----
>  2 files changed, 8 insertions(+), 7 deletions(-)

Even though we recently marked the samba package as deprecated, I've
applied this patch.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd
  2015-01-19 16:14 ` [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd Maxim Mikityanskiy
  2015-02-02 17:12   ` Samuel Martin
@ 2015-04-22 20:10   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-04-22 20:10 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:16 +0200, Maxim Mikityanskiy wrote:
> Add rngd.service for systemd. Also patch rngd with patch from Fedora to
> ignore failure if no hwrng present:
> https://bugzilla.redhat.com/show_bug.cgi?id=892178
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/rng-tools/rng-tools.mk         |  8 ++++++++
>  package/rng-tools/rngd-exit-code.patch | 11 +++++++++++
>  package/rng-tools/rngd.service         |  9 +++++++++
>  3 files changed, 28 insertions(+)
>  create mode 100644 package/rng-tools/rngd-exit-code.patch
>  create mode 100644 package/rng-tools/rngd.service

Applied, after doing a number of changes:

    [Thomas:
     - rename patch to the proper naming convention
     - add description and SoB to patch
     - install service file to /usr/lib/systemd and not /lib/systemd
     - use a relative symbolic link instead of an absolute one]

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available
  2015-01-19 16:14 ` [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available Maxim Mikityanskiy
  2015-02-02 20:44   ` Samuel Martin
@ 2015-07-10 17:35   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-10 17:35 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:08 +0200, Maxim Mikityanskiy wrote:
> systemd looks for fsck in /sbin, so make symlink:
> /sbin/fsck -> /usr/sbin/fsck
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/e2fsprogs/e2fsprogs.mk | 8 ++++++++
>  1 file changed, 8 insertions(+)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 15/16] package/vim: add default vimrc
  2015-01-19 16:14 ` [Buildroot] [PATCH 15/16] package/vim: add default vimrc Maxim Mikityanskiy
  2015-02-02 23:00   ` Samuel Martin
@ 2015-07-10 18:24   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-10 18:24 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:15 +0200, Maxim Mikityanskiy wrote:
> Support /etc/vim/vimrc as system-wide vimrc file. Add some default
> sample vimrc.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/vim/vim.mk | 11 +++++++++++
>  package/vim/vimrc  | 14 ++++++++++++++
>  2 files changed, 25 insertions(+)
>  create mode 100644 package/vim/vimrc

I don't think it's really that useful to have a custom vimrc installed
by default. We do install a default config file for daemons when they
need it to have some sane default behavior, but for things like text
editors, I'm not sure it's really worth it.

So I've marked your patch as Rejected in our patch tracking system.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies
  2015-01-19 16:14 ` [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies Maxim Mikityanskiy
  2015-02-02 14:22   ` Samuel Martin
@ 2015-07-12 22:27   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-12 22:27 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:04 +0200, Maxim Mikityanskiy wrote:
> Systemd depends on mount and nologin from util-linux. Mount from busybox
> is not fine, because its behavior differs from util-linux mount. Busybox
> mount does not handle correctly 'mount / -o remount' (should apply
> options from /etc/fstab). Nologin should be present, because
> systemd-sysusers uses it as shell for newly created system users.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/systemd/Config.in | 3 +++
>  1 file changed, 3 insertions(+)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v2] skeleton: apply locale settings in user shells
  2015-01-19 16:14 ` [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells Maxim Mikityanskiy
  2015-02-02 15:20   ` Samuel Martin
@ 2015-07-12 22:55   ` Arnout Vandecappelle
  2015-07-13 20:36     ` Thomas Petazzoni
  1 sibling, 1 reply; 60+ messages in thread
From: Arnout Vandecappelle @ 2015-07-12 22:55 UTC (permalink / raw)
  To: buildroot

From: Maxim Mikityanskiy <maxtram95@gmail.com>

Add /etc/profile.d/locale.sh script from Arch Linux to /etc/profile.
This script looks for locale.conf, sources it, and exports the LANG and
LC_* variables.

[Arnout: put in /etc/profile in the skeleton rather than making it
 systemd specific.]

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
---
v2 [Arnout]: make the modification to /etc/profile in the skeleton
rather than something systemd-specific - proposed by Samuel Martin.
---
 system/skeleton/etc/profile | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/system/skeleton/etc/profile b/system/skeleton/etc/profile
index 3812dda..c7438fe 100644
--- a/system/skeleton/etc/profile
+++ b/system/skeleton/etc/profile
@@ -35,6 +35,29 @@ if [ "$PS1" ]; then
 
 fi;
 
+if [ -z "$LANG" ]; then
+  if [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then
+    . "$HOME/.config/locale.conf"
+  elif [ -r /etc/locale.conf ]; then
+    . /etc/locale.conf
+  fi
+fi
+
+LANG=${LANG:-C}
+export LANG
+[ -n "$LC_CTYPE" ]          && export LC_CTYPE
+[ -n "$LC_NUMERIC" ]        && export LC_NUMERIC
+[ -n "$LC_TIME" ]           && export LC_TIME
+[ -n "$LC_COLLATE" ]        && export LC_COLLATE
+[ -n "$LC_MONETARY" ]       && export LC_MONETARY
+[ -n "$LC_MESSAGES" ]       && export LC_MESSAGES
+[ -n "$LC_PAPER" ]          && export LC_PAPER
+[ -n "$LC_NAME" ]           && export LC_NAME
+[ -n "$LC_ADDRESS" ]        && export LC_ADDRESS
+[ -n "$LC_TELEPHONE" ]      && export LC_TELEPHONE
+[ -n "$LC_MEASUREMENT" ]    && export LC_MEASUREMENT
+[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION
+
 # Source configuration files from /etc/profile.d
 for i in /etc/profile.d/*.sh ; do
     if [ -r "$i" ]; then
-- 
2.1.4

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

* [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd
  2015-01-19 16:14 ` [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd Maxim Mikityanskiy
  2015-02-02 14:50   ` Samuel Martin
@ 2015-07-12 23:48   ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-12 23:48 UTC (permalink / raw)
  To: buildroot

Dear Maxim Mikityanskiy,

On Mon, 19 Jan 2015 18:14:03 +0200, Maxim Mikityanskiy wrote:
> When systemd is used, /var/lib/dbus becomes dangling symlink, because
> nobody does mkdir /tmp/dbus, so /var/lib/dbus/machine-id could not be
> written. On SysVinit systems there is init script that creates
> /tmp/dbus.
> 
> This patch preserves old behavior for SysVinit systems, and introduces
> new one for systemd-booted systems: /var/lib/dbus is a persistent
> directory, it holds symlink /var/lib/dbus/machine-id -> /etc/machine-id
> as machine-id(5) suggests, and /etc/machine-id is managed by systemd.
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> ---
>  package/dbus/dbus.mk | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH v2] skeleton: apply locale settings in user shells
  2015-07-12 22:55   ` [Buildroot] [PATCH v2] skeleton: " Arnout Vandecappelle
@ 2015-07-13 20:36     ` Thomas Petazzoni
  0 siblings, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-13 20:36 UTC (permalink / raw)
  To: buildroot

Dear Arnout Vandecappelle (Essensium/Mind),

On Mon, 13 Jul 2015 00:55:13 +0200, Arnout Vandecappelle
(Essensium/Mind) wrote:
> From: Maxim Mikityanskiy <maxtram95@gmail.com>
> 
> Add /etc/profile.d/locale.sh script from Arch Linux to /etc/profile.
> This script looks for locale.conf, sources it, and exports the LANG and
> LC_* variables.
> 
> [Arnout: put in /etc/profile in the skeleton rather than making it
>  systemd specific.]
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> ---
> v2 [Arnout]: make the modification to /etc/profile in the skeleton
> rather than something systemd-specific - proposed by Samuel Martin.
> ---
>  system/skeleton/etc/profile | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

* [Buildroot] [PATCH 12/16] package/samba: add systemd support
  2015-02-02 22:38   ` Samuel Martin
@ 2015-07-13 20:47     ` Maxime Hadjinlian
  0 siblings, 0 replies; 60+ messages in thread
From: Maxime Hadjinlian @ 2015-07-13 20:47 UTC (permalink / raw)
  To: buildroot

Hi Samuel, Maxim, all

On Mon, Feb 2, 2015 at 11:38 PM, Samuel Martin <s.martin49@gmail.com> wrote:
> Hi Maxim,
>
On a more general note, we want to install your systemd services into
/usr/lib/systemd/system/ instead of the /lib/systemd/system that you
used.
> On Mon, Jan 19, 2015 at 5:14 PM, Maxim Mikityanskiy <maxtram95@gmail.com> wrote:
>> Add {smbd,nmbd,winbindd}.service files for systemd. Add tmpfiles.d
>> config file to create samba directories.
>>
>> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
>> ---
>>  package/samba/nmbd.service        | 12 ++++++++++++
>>  package/samba/samba.mk            | 23 +++++++++++++++++++++++
>>  package/samba/samba_tmpfiles.conf |  4 ++++
>>  package/samba/smbd.service        | 12 ++++++++++++
>>  package/samba/winbindd.service    | 12 ++++++++++++
>>  5 files changed, 63 insertions(+)
>>  create mode 100644 package/samba/nmbd.service
>>  create mode 100644 package/samba/samba_tmpfiles.conf
>>  create mode 100644 package/samba/smbd.service
>>  create mode 100644 package/samba/winbindd.service
>>
>> diff --git a/package/samba/nmbd.service b/package/samba/nmbd.service
>> new file mode 100644
>> index 0000000..6e241ea
>> --- /dev/null
>> +++ b/package/samba/nmbd.service
>> @@ -0,0 +1,12 @@
>> +[Unit]
>> +Description=Samba NetBIOS name server
>> +After=network.target
>> +
>> +[Service]
>> +Type=forking
>> +PIDFile=/var/run/samba/nmbd.pid
>> +ExecStart=/usr/sbin/nmbd -D
>> +ExecReload=/bin/kill -HUP $MAINPID
>> +
>> +[Install]
>> +WantedBy=multi-user.target
>> diff --git a/package/samba/samba.mk b/package/samba/samba.mk
>> index 31ad644..5a11ebe 100644
>> --- a/package/samba/samba.mk
>> +++ b/package/samba/samba.mk
>> @@ -182,6 +182,29 @@ endef
>>
>>  SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_CONFIG
>>
>> +ifeq ($(BR2_INIT_SYSTEMD),y)
>> +define SAMBA_INSTALL_TMPFILES_HOOK
>> +       $(INSTALL) -D -m 644 package/samba/samba_tmpfiles.conf \
>> +               $(TARGET_DIR)/usr/lib/tmpfiles.d/samba.conf
>> +endef
>> +
>> +SAMBA_POST_INSTALL_TARGET_HOOKS += SAMBA_INSTALL_TMPFILES_HOOK
>> +endif
>> +
>> +define SAMBA_INSTALL_INIT_SYSTEMD
>> +       $(INSTALL) -D -m 644 package/samba/smbd.service \
>> +               $(TARGET_DIR)/lib/systemd/system/smbd.service
>
> smbd can be disabled, so its *.service installation should be optional
> WRT its option.
>
>> +       $(INSTALL) -D -m 644 package/samba/nmbd.service \
>> +               $(TARGET_DIR)/lib/systemd/system/nmbd.service
>
> ditto for nmbd.
>
>> +       $(if $(BR2_PACKAGE_SAMBA_WINBINDD),$(INSTALL) -D -m 644 package/samba/winbindd.service $(TARGET_DIR)/lib/systemd/system/winbindd.service)
>> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
>> +       ln -fs /lib/systemd/system/smbd.service \
>> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/smbd.service
>
> ditto
>
>> +       ln -fs /lib/systemd/system/nmbd.service \
>> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nmbd.service
>
> ditto
>
>> +       $(if $(BR2_PACKAGE_SAMBA_WINBINDD),ln -fs /lib/systemd/system/winbindd.service $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/winbindd.service)
>> +endef
>> +
>>  define SAMBA_INSTALL_INIT_SYSV
>>         $(INSTALL) -m 0755 -D package/samba/S91smb $(TARGET_DIR)/etc/init.d/S91smb
>>  endef
>> diff --git a/package/samba/samba_tmpfiles.conf b/package/samba/samba_tmpfiles.conf
>> new file mode 100644
>> index 0000000..e265f75
>> --- /dev/null
>> +++ b/package/samba/samba_tmpfiles.conf
>> @@ -0,0 +1,4 @@
>> +d /var/cache/samba 0755 root root -
>> +d /var/log/samba 0755 root root -
>> +d /var/lock/samba 0755 root root -
>> +d /var/run/samba 0755 root root -
>> diff --git a/package/samba/smbd.service b/package/samba/smbd.service
>> new file mode 100644
>> index 0000000..64abf56
>> --- /dev/null
>> +++ b/package/samba/smbd.service
>> @@ -0,0 +1,12 @@
>> +[Unit]
>> +Description=Samba SMB/CIFS server
>> +After=network.target nmbd.service winbindd.service
>> +
>> +[Service]
>> +Type=forking
>> +PIDFile=/var/run/samba/smbd.pid
>> +ExecStart=/usr/sbin/smbd -D
>> +ExecReload=/bin/kill -HUP $MAINPID
>> +
>> +[Install]
>> +WantedBy=multi-user.target
>> diff --git a/package/samba/winbindd.service b/package/samba/winbindd.service
>> new file mode 100644
>> index 0000000..214c17e
>> --- /dev/null
>> +++ b/package/samba/winbindd.service
>> @@ -0,0 +1,12 @@
>> +[Unit]
>> +Description=Samba Winbind daemon
>> +After=network.target nmbd.service
>> +
>> +[Service]
>> +Type=forking
>> +PIDFile=/var/run/samba/winbindd.pid
>> +ExecStart=/usr/sbin/winbindd -D
>> +ExecReload=/bin/kill -HUP $MAINPID
>> +
>> +[Install]
>> +WantedBy=multi-user.target
>> --
>> 2.2.1
>
> Regards,
>
> --
> Samuel
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

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

* [Buildroot] [PATCHv2] transmission: improve systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
  2015-02-02 22:09   ` Samuel Martin
@ 2015-07-14 13:51   ` Aurélien Chabot
  2015-07-14 14:05     ` Maxime Hadjinlian
  2015-07-19 22:18   ` [Buildroot] [PATCH v3] " Aurélien Chabot
  2 siblings, 1 reply; 60+ messages in thread
From: Aurélien Chabot @ 2015-07-14 13:51 UTC (permalink / raw)
  To: buildroot

From: Maxim Mikityanskiy <maxtram95@gmail.com>

Support running transmission-daemon in system-wide mode using systemd:

1. Pass --with-systemd-daemon to configure script if systemd is enabled.

2. Install sysctl.d config file to increase send and receive buffer
sizes.

3. Install sysusers.d config file to create transmission user when using
systemd. Create transmission user when not using systemd.

4. Install transmission-daemon.service for systemd.

[Aur?lien : Fix symlink relative path, use upstream service file,
no need for config path, and use transmission user in sysv script]

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
Signed-off-by: Aur?lien Chabot <aurelien@chabot.fr>
---
 package/transmission/S92transmission            |  4 +--
 package/transmission/transmission.mk            | 37 +++++++++++++++++++++++++
 package/transmission/transmission_sysctl.conf   |  2 ++
 package/transmission/transmission_sysusers.conf |  1 +
 4 files changed, 41 insertions(+), 3 deletions(-)
 create mode 100644 package/transmission/transmission_sysctl.conf
 create mode 100644 package/transmission/transmission_sysusers.conf

diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission
index 1870522..e5976b0 100644
--- a/package/transmission/S92transmission
+++ b/package/transmission/S92transmission
@@ -24,9 +24,7 @@
 # by default, this is set to 'transmission'.
 # For the sake of security you shouldn't set a password
 # on this user
-#USERNAME=transmission
-USERNAME=default
-
+USERNAME=transmission
 
 
 # ----- *ADVANCED* CONFIGURATION -----
diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
index bbc32bf..81dd110 100644
--- a/package/transmission/transmission.mk
+++ b/package/transmission/transmission.mk
@@ -36,11 +36,48 @@ endif
 ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
 TRANSMISSION_CONF_OPTS += --enable-daemon
 
+ifeq ($(BR2_PACKAGE_SYSTEMD),y)
+TRANSMISSION_DEPENDENCIES += systemd
+TRANSMISSION_CONF_OPTS += --with-systemd-daemon
+else
+TRANSMISSION_CONF_OPTS += --without-systemd-daemon
+endif
+
+ifeq ($(BR2_INIT_SYSTEMD),)
+define TRANSMISSION_USERS
+	transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
+endef
+endif
+
 define TRANSMISSION_INSTALL_INIT_SYSV
 	$(INSTALL) -m 0755 -D package/transmission/S92transmission \
 		$(TARGET_DIR)/etc/init.d/S92transmission
 endef
 
+define TRANSMISSION_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 0755 $(@D)/daemon/transmission-daemon.service \
+		$(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs ../../../../usr/lib/systemd/system/transmission-daemon.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
+endef
+
+define TRANSMISSION_INSTALL_SYSCTL_HOOK
+	$(INSTALL) -D -m 644 package/transmission/transmission_sysctl.conf \
+		$(TARGET_DIR)/usr/lib/sysctl.d/20-transmission.conf
+endef
+
+TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
+	TRANSMISSION_INSTALL_SYSCTL_HOOK
+
+define TRANSMISSION_INSTALL_SYSUSERS_HOOK
+	$(INSTALL) -D -m 644 package/transmission/transmission_sysusers.conf \
+		$(TARGET_DIR)/usr/lib/sysusers.d/transmission.conf
+endef
+
+TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
+	TRANSMISSION_INSTALL_SYSUSERS_HOOK
+
 else
 TRANSMISSION_CONF_OPTS += --disable-daemon
 endif
diff --git a/package/transmission/transmission_sysctl.conf b/package/transmission/transmission_sysctl.conf
new file mode 100644
index 0000000..7862332
--- /dev/null
+++ b/package/transmission/transmission_sysctl.conf
@@ -0,0 +1,2 @@
+net.core.wmem_max = 1048576
+net.core.rmem_max = 4194304
diff --git a/package/transmission/transmission_sysusers.conf b/package/transmission/transmission_sysusers.conf
new file mode 100644
index 0000000..09396d4
--- /dev/null
+++ b/package/transmission/transmission_sysusers.conf
@@ -0,0 +1 @@
+u transmission - "Transmission daemon" /var/lib/transmission
-- 
2.4.5

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

* [Buildroot] [PATCHv2] transmission: improve systemd support
  2015-07-14 13:51   ` [Buildroot] [PATCHv2] transmission: " Aurélien Chabot
@ 2015-07-14 14:05     ` Maxime Hadjinlian
  2015-07-16 21:27       ` Aurélien Chabot
  0 siblings, 1 reply; 60+ messages in thread
From: Maxime Hadjinlian @ 2015-07-14 14:05 UTC (permalink / raw)
  To: buildroot

Hi Aur?lien, all

On Tue, Jul 14, 2015 at 3:51 PM, Aur?lien Chabot <aurelien@chabot.fr> wrote:
> From: Maxim Mikityanskiy <maxtram95@gmail.com>
>
> Support running transmission-daemon in system-wide mode using systemd:
>
> 1. Pass --with-systemd-daemon to configure script if systemd is enabled.
>
> 2. Install sysctl.d config file to increase send and receive buffer
> sizes.
>
> 3. Install sysusers.d config file to create transmission user when using
> systemd. Create transmission user when not using systemd.
>
> 4. Install transmission-daemon.service for systemd.
>
> [Aur?lien : Fix symlink relative path, use upstream service file,
> no need for config path, and use transmission user in sysv script]
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> Signed-off-by: Aur?lien Chabot <aurelien@chabot.fr>
> ---
>  package/transmission/S92transmission            |  4 +--
>  package/transmission/transmission.mk            | 37 +++++++++++++++++++++++++
>  package/transmission/transmission_sysctl.conf   |  2 ++
>  package/transmission/transmission_sysusers.conf |  1 +
>  4 files changed, 41 insertions(+), 3 deletions(-)
>  create mode 100644 package/transmission/transmission_sysctl.conf
>  create mode 100644 package/transmission/transmission_sysusers.conf
>
> diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission
> index 1870522..e5976b0 100644
> --- a/package/transmission/S92transmission
> +++ b/package/transmission/S92transmission
> @@ -24,9 +24,7 @@
>  # by default, this is set to 'transmission'.
>  # For the sake of security you shouldn't set a password
>  # on this user
> -#USERNAME=transmission
> -USERNAME=default
> -
> +USERNAME=transmission
>
>
>  # ----- *ADVANCED* CONFIGURATION -----
> diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
> index bbc32bf..81dd110 100644
> --- a/package/transmission/transmission.mk
> +++ b/package/transmission/transmission.mk
> @@ -36,11 +36,48 @@ endif
>  ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
>  TRANSMISSION_CONF_OPTS += --enable-daemon
>
> +ifeq ($(BR2_PACKAGE_SYSTEMD),y)
> +TRANSMISSION_DEPENDENCIES += systemd
> +TRANSMISSION_CONF_OPTS += --with-systemd-daemon
> +else
> +TRANSMISSION_CONF_OPTS += --without-systemd-daemon
> +endif
> +
> +ifeq ($(BR2_INIT_SYSTEMD),)
> +define TRANSMISSION_USERS
> +       transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
> +endef
> +endif
> +
>  define TRANSMISSION_INSTALL_INIT_SYSV
>         $(INSTALL) -m 0755 -D package/transmission/S92transmission \
>                 $(TARGET_DIR)/etc/init.d/S92transmission
>  endef
>
> +define TRANSMISSION_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 0755 $(@D)/daemon/transmission-daemon.service \
> +               $(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service
Do we still need to install the service ? Doesn't the transmission
Makefile do it for us ?
> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> +       ln -fs ../../../../usr/lib/systemd/system/transmission-daemon.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
> +endef
> +
> +define TRANSMISSION_INSTALL_SYSCTL_HOOK
> +       $(INSTALL) -D -m 644 package/transmission/transmission_sysctl.conf \
> +               $(TARGET_DIR)/usr/lib/sysctl.d/20-transmission.conf
> +endef
> +
> +TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
> +       TRANSMISSION_INSTALL_SYSCTL_HOOK
> +
I don't know what the other think about it but I really don't like the
fact that there's some sysctl conf installed by a package.
> +define TRANSMISSION_INSTALL_SYSUSERS_HOOK
> +       $(INSTALL) -D -m 644 package/transmission/transmission_sysusers.conf \
> +               $(TARGET_DIR)/usr/lib/sysusers.d/transmission.conf
> +endef
> +
> +TRANSMISSION_POST_INSTALL_TARGET_HOOKS += \
> +       TRANSMISSION_INSTALL_SYSUSERS_HOOK
> +
>  else
>  TRANSMISSION_CONF_OPTS += --disable-daemon
>  endif
> diff --git a/package/transmission/transmission_sysctl.conf b/package/transmission/transmission_sysctl.conf
> new file mode 100644
> index 0000000..7862332
> --- /dev/null
> +++ b/package/transmission/transmission_sysctl.conf
> @@ -0,0 +1,2 @@
> +net.core.wmem_max = 1048576
> +net.core.rmem_max = 4194304
So I would scratch that too.
> diff --git a/package/transmission/transmission_sysusers.conf b/package/transmission/transmission_sysusers.conf
> new file mode 100644
> index 0000000..09396d4
> --- /dev/null
> +++ b/package/transmission/transmission_sysusers.conf
> @@ -0,0 +1 @@
> +u transmission - "Transmission daemon" /var/lib/transmission
> --
Have you tested with a read-only file system ? Since
/var/lib/transmission is not a tmpfs, I don't know if transmission
will be very happy about that.
> 2.4.5
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

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

* [Buildroot] [PATCHv2] transmission: improve systemd support
  2015-07-14 14:05     ` Maxime Hadjinlian
@ 2015-07-16 21:27       ` Aurélien Chabot
  2015-07-18 15:20         ` Maxime Hadjinlian
  0 siblings, 1 reply; 60+ messages in thread
From: Aurélien Chabot @ 2015-07-16 21:27 UTC (permalink / raw)
  To: buildroot

On Tue, Jul 14, 2015 at 4:05 PM, Maxime Hadjinlian <
maxime.hadjinlian@gmail.com> wrote:

> Have you tested with a read-only file system ? Since
> /var/lib/transmission is not a tmpfs, I don't know if transmission
> will be very happy about that.
>

From what I try, transmission doesn't crash or stop if it cannot write it's
configuration. That's why I remove the tmpfs. Moreover the tmpfs stuff was
only added for systemd, and if we choose to do that we should do the same
for sysvinit.

I just saw a well that with systemd the folder /var/lib/transmission is not
created, so I should have kept the line creating the folder.
BTW, is it really the prefer solution to user sysuser.d instead of the
buildroot user target ? Isn't this cause also problem on read only fs,
because ets/passwd will not be writable ?

Aur?lien
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20150716/c2794fc3/attachment-0001.html>

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

* [Buildroot] [PATCHv2] transmission: improve systemd support
  2015-07-16 21:27       ` Aurélien Chabot
@ 2015-07-18 15:20         ` Maxime Hadjinlian
  0 siblings, 0 replies; 60+ messages in thread
From: Maxime Hadjinlian @ 2015-07-18 15:20 UTC (permalink / raw)
  To: buildroot

Hi Aur?lien, all

On Thu, Jul 16, 2015 at 11:27 PM, Aur?lien Chabot <aurelien@chabot.fr> wrote:
>
> On Tue, Jul 14, 2015 at 4:05 PM, Maxime Hadjinlian
> <maxime.hadjinlian@gmail.com> wrote:
>>
>> Have you tested with a read-only file system ? Since
>> /var/lib/transmission is not a tmpfs, I don't know if transmission
>> will be very happy about that.
>
>
> From what I try, transmission doesn't crash or stop if it cannot write it's
> configuration. That's why I remove the tmpfs. Moreover the tmpfs stuff was
> only added for systemd, and if we choose to do that we should do the same
> for sysvinit.
>
> I just saw a well that with systemd the folder /var/lib/transmission is not
> created, so I should have kept the line creating the folder.
> BTW, is it really the prefer solution to user sysuser.d instead of the
> buildroot user target ? Isn't this cause also problem on read only fs,
> because ets/passwd will not be writable ?
You are absolutely right, that's not the way to go, you should use the
Buildroot infra to do that.
As I said before, please remove also the sysctl settings, it should
not be install by us.

I'll try to give it a better look and test that tonight or tomorrow.
>
> Aur?lien
>

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

* [Buildroot] [PATCH v3] transmission: improve systemd support
  2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
  2015-02-02 22:09   ` Samuel Martin
  2015-07-14 13:51   ` [Buildroot] [PATCHv2] transmission: " Aurélien Chabot
@ 2015-07-19 22:18   ` Aurélien Chabot
  2015-07-26 21:38     ` Maxime Hadjinlian
  2015-07-27 21:56     ` Thomas Petazzoni
  2 siblings, 2 replies; 60+ messages in thread
From: Aurélien Chabot @ 2015-07-19 22:18 UTC (permalink / raw)
  To: buildroot

From: Maxim Mikityanskiy <maxtram95@gmail.com>

Support running transmission-daemon in system-wide mode using systemd:

1. Pass --with-systemd-daemon to configure script if systemd is enabled.

2. Create the transmission user if having daemon

3. Install transmission-daemon.service for systemd.

[Aur?lien : Fix symlink relative path, use upstream service file,
no need for config path, and use transmission user in sysv script,
remove sysctl stuff]

Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
Signed-off-by: Aur?lien Chabot <aurelien@chabot.fr>
---
 package/transmission/S92transmission |  4 +---
 package/transmission/transmission.mk | 19 +++++++++++++++++++
 2 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission
index 1870522..e5976b0 100644
--- a/package/transmission/S92transmission
+++ b/package/transmission/S92transmission
@@ -24,9 +24,7 @@
 # by default, this is set to 'transmission'.
 # For the sake of security you shouldn't set a password
 # on this user
-#USERNAME=transmission
-USERNAME=default
-
+USERNAME=transmission
 
 
 # ----- *ADVANCED* CONFIGURATION -----
diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
index bbc32bf..efc00a1 100644
--- a/package/transmission/transmission.mk
+++ b/package/transmission/transmission.mk
@@ -36,11 +36,30 @@ endif
 ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
 TRANSMISSION_CONF_OPTS += --enable-daemon
 
+ifeq ($(BR2_PACKAGE_SYSTEMD),y)
+TRANSMISSION_DEPENDENCIES += systemd
+TRANSMISSION_CONF_OPTS += --with-systemd-daemon
+else
+TRANSMISSION_CONF_OPTS += --without-systemd-daemon
+endif
+
+define TRANSMISSION_USERS
+	transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
+endef
+
 define TRANSMISSION_INSTALL_INIT_SYSV
 	$(INSTALL) -m 0755 -D package/transmission/S92transmission \
 		$(TARGET_DIR)/etc/init.d/S92transmission
 endef
 
+define TRANSMISSION_INSTALL_INIT_SYSTEMD
+	$(INSTALL) -D -m 0755 $(@D)/daemon/transmission-daemon.service \
+		$(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service
+	mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
+	ln -fs ../../../../usr/lib/systemd/system/transmission-daemon.service \
+		$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
+endef
+
 else
 TRANSMISSION_CONF_OPTS += --disable-daemon
 endif
-- 
2.4.6

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

* [Buildroot] [PATCH v3] transmission: improve systemd support
  2015-07-19 22:18   ` [Buildroot] [PATCH v3] " Aurélien Chabot
@ 2015-07-26 21:38     ` Maxime Hadjinlian
  2015-07-27 21:56     ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Maxime Hadjinlian @ 2015-07-26 21:38 UTC (permalink / raw)
  To: buildroot

Hi Aur?lien, all

On Mon, Jul 20, 2015 at 12:18 AM, Aur?lien Chabot <aurelien@chabot.fr> wrote:
> From: Maxim Mikityanskiy <maxtram95@gmail.com>
>
> Support running transmission-daemon in system-wide mode using systemd:
>
> 1. Pass --with-systemd-daemon to configure script if systemd is enabled.
>
> 2. Create the transmission user if having daemon
>
> 3. Install transmission-daemon.service for systemd.
>
> [Aur?lien : Fix symlink relative path, use upstream service file,
> no need for config path, and use transmission user in sysv script,
> remove sysctl stuff]
>
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> Signed-off-by: Aur?lien Chabot <aurelien@chabot.fr>
> ---
>  package/transmission/S92transmission |  4 +---
>  package/transmission/transmission.mk | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 3 deletions(-)
>
> diff --git a/package/transmission/S92transmission b/package/transmission/S92transmission
> index 1870522..e5976b0 100644
> --- a/package/transmission/S92transmission
> +++ b/package/transmission/S92transmission
> @@ -24,9 +24,7 @@
>  # by default, this is set to 'transmission'.
>  # For the sake of security you shouldn't set a password
>  # on this user
> -#USERNAME=transmission
> -USERNAME=default
> -
> +USERNAME=transmission
>
>
>  # ----- *ADVANCED* CONFIGURATION -----
> diff --git a/package/transmission/transmission.mk b/package/transmission/transmission.mk
> index bbc32bf..efc00a1 100644
> --- a/package/transmission/transmission.mk
> +++ b/package/transmission/transmission.mk
> @@ -36,11 +36,30 @@ endif
>  ifeq ($(BR2_PACKAGE_TRANSMISSION_DAEMON),y)
>  TRANSMISSION_CONF_OPTS += --enable-daemon
>
> +ifeq ($(BR2_PACKAGE_SYSTEMD),y)
> +TRANSMISSION_DEPENDENCIES += systemd
> +TRANSMISSION_CONF_OPTS += --with-systemd-daemon
> +else
> +TRANSMISSION_CONF_OPTS += --without-systemd-daemon
> +endif
> +
> +define TRANSMISSION_USERS
> +       transmission -1 transmission -1 * /var/lib/transmission - transmission Transmission Daemon
> +endef
> +
>  define TRANSMISSION_INSTALL_INIT_SYSV
>         $(INSTALL) -m 0755 -D package/transmission/S92transmission \
>                 $(TARGET_DIR)/etc/init.d/S92transmission
>  endef
>
> +define TRANSMISSION_INSTALL_INIT_SYSTEMD
> +       $(INSTALL) -D -m 0755 $(@D)/daemon/transmission-daemon.service \
> +               $(TARGET_DIR)/usr/lib/systemd/system/transmission-daemon.service
> +       mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> +       ln -fs ../../../../usr/lib/systemd/system/transmission-daemon.service \
> +               $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/transmission-daemon.service
> +endef
> +
>  else
>  TRANSMISSION_CONF_OPTS += --disable-daemon
>  endif
> --
> 2.4.6
>
Acked-by Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

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

* [Buildroot] [PATCH v3] transmission: improve systemd support
  2015-07-19 22:18   ` [Buildroot] [PATCH v3] " Aurélien Chabot
  2015-07-26 21:38     ` Maxime Hadjinlian
@ 2015-07-27 21:56     ` Thomas Petazzoni
  1 sibling, 0 replies; 60+ messages in thread
From: Thomas Petazzoni @ 2015-07-27 21:56 UTC (permalink / raw)
  To: buildroot

Dear Aur?lien Chabot,

On Mon, 20 Jul 2015 00:18:01 +0200, Aur?lien Chabot wrote:
> From: Maxim Mikityanskiy <maxtram95@gmail.com>
> 
> Support running transmission-daemon in system-wide mode using systemd:
> 
> 1. Pass --with-systemd-daemon to configure script if systemd is enabled.
> 
> 2. Create the transmission user if having daemon
> 
> 3. Install transmission-daemon.service for systemd.
> 
> [Aur?lien : Fix symlink relative path, use upstream service file,
> no need for config path, and use transmission user in sysv script,
> remove sysctl stuff]
> 
> Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com>
> Signed-off-by: Aur?lien Chabot <aurelien@chabot.fr>
> ---
>  package/transmission/S92transmission |  4 +---
>  package/transmission/transmission.mk | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 3 deletions(-)

Applied, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

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

end of thread, other threads:[~2015-07-27 21:56 UTC | newest]

Thread overview: 60+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-19 16:14 [Buildroot] [PATCH 00/16] Different enhancements, primarily for systemd Maxim Mikityanskiy
2015-01-19 16:14 ` [Buildroot] [PATCH 01/16] package/busybox: optional udhcpc script Maxim Mikityanskiy
2015-01-26 21:26   ` Thomas Petazzoni
2015-01-26 22:06     ` Peter Korsgaard
2015-01-19 16:14 ` [Buildroot] [PATCH 02/16] package: install bash-completion files only with bash Maxim Mikityanskiy
2015-01-26 22:00   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 03/16] package/dbus: fix machine-id when using systemd Maxim Mikityanskiy
2015-02-02 14:50   ` Samuel Martin
2015-02-02 15:18     ` Maxim Mikityanskiy
2015-07-12 23:48   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 04/16] package/systemd: add missing dependencies Maxim Mikityanskiy
2015-02-02 14:22   ` Samuel Martin
2015-07-12 22:27   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 05/16] package/systemd: apply locale settings in user shells Maxim Mikityanskiy
2015-02-02 15:20   ` Samuel Martin
2015-02-02 15:28     ` Maxim Mikityanskiy
2015-07-12 22:55   ` [Buildroot] [PATCH v2] skeleton: " Arnout Vandecappelle
2015-07-13 20:36     ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 06/16] package/dosfstools: add missing symlinks Maxim Mikityanskiy
2015-02-02 16:22   ` Samuel Martin
2015-03-08 22:04   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 07/16] package/dropbear: install dropbear.service to correct dir Maxim Mikityanskiy
2015-02-02 20:41   ` Samuel Martin
2015-02-23 11:38   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 08/16] package/e2fsprogs: make /sbin/fsck available Maxim Mikityanskiy
2015-02-02 20:44   ` Samuel Martin
2015-07-10 17:35   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 09/16] package/minidlna: improve systemd support Maxim Mikityanskiy
2015-02-02 21:12   ` Samuel Martin
2015-02-02 21:30     ` Maxim Mikityanskiy
2015-02-02 23:22       ` Samuel Martin
2015-02-03  9:10       ` Arnout Vandecappelle
2015-03-08 21:52   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 10/16] package/transmission: " Maxim Mikityanskiy
2015-02-02 22:09   ` Samuel Martin
2015-02-03  9:11     ` Arnout Vandecappelle
2015-07-14 13:51   ` [Buildroot] [PATCHv2] transmission: " Aurélien Chabot
2015-07-14 14:05     ` Maxime Hadjinlian
2015-07-16 21:27       ` Aurélien Chabot
2015-07-18 15:20         ` Maxime Hadjinlian
2015-07-19 22:18   ` [Buildroot] [PATCH v3] " Aurélien Chabot
2015-07-26 21:38     ` Maxime Hadjinlian
2015-07-27 21:56     ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 11/16] package/samba: use FHS dirs Maxim Mikityanskiy
2015-02-02 22:49   ` Samuel Martin
2015-04-06  9:45   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 12/16] package/samba: add systemd support Maxim Mikityanskiy
2015-02-02 22:38   ` Samuel Martin
2015-07-13 20:47     ` Maxime Hadjinlian
2015-01-19 16:14 ` [Buildroot] [PATCH 13/16] package/tar: add support for acl and xattr Maxim Mikityanskiy
2015-02-02  8:26   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 14/16] package/util-linux: add more tool select options Maxim Mikityanskiy
2015-01-26 22:11   ` Thomas Petazzoni
2015-02-07 22:00   ` Yann E. MORIN
2015-01-19 16:14 ` [Buildroot] [PATCH 15/16] package/vim: add default vimrc Maxim Mikityanskiy
2015-02-02 23:00   ` Samuel Martin
2015-07-10 18:24   ` Thomas Petazzoni
2015-01-19 16:14 ` [Buildroot] [PATCH 16/16] package/rng-tools: add systemd support for rngd Maxim Mikityanskiy
2015-02-02 17:12   ` Samuel Martin
2015-04-22 20:10   ` Thomas Petazzoni

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.