Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-10-08 Thread Lennart Poettering
On Tue, 07.10.14 04:59, Barbieri, Gustavo (gustavo.barbi...@intel.com) wrote:

  -Original Message-
  From: Lennart Poettering [mailto:lenn...@poettering.net]
  Sent: Thursday, October 02, 2014 4:16 AM
  To: Barbieri, Gustavo
  Cc: systemd-devel@lists.freedesktop.org
  Subject: Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to
  cope with split packages.
  
  On Thu, 25.09.14 18:12, Gustavo Sverzut Barbieri
  (gustavo.barbi...@intel.com) wrote:
  
   etc.conf was selectively (using m4) using resolved link, now this
  is
   moved to systemd-resolved.conf file. The etc.conf can be static
  and
   does not need to be generated anymore.
  
   systemd.conf was doing all the journal setup, now this is moved to
   systemd-journald.conf file.
  
  journald is not optional. And it won't be. Sorry.
 
 Got it, but clarity sake having it in a different file wouldn't hurt. But is 
 not a big deal if you are completely against it.
 
  
   +z /var/log/journal/remote 2755 root systemd-journal-remote - -
   +z /run/log/journal/remote 2755 root systemd-journal-remote - -
  
  I am not convinced this is really worth it. This line has no effect
  anyway if the dir is missing...
 
 You mean the dir in systemd.conf?

The dirs /var/log/journal/remote and /run/log/journal/remote I
meant. The z lines just fix perms on files/dirs that exist. If they
don't they don't do anything.

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-10-06 Thread Barbieri, Gustavo
 -Original Message-
 From: Lennart Poettering [mailto:lenn...@poettering.net]
 Sent: Thursday, October 02, 2014 4:16 AM
 To: Barbieri, Gustavo
 Cc: systemd-devel@lists.freedesktop.org
 Subject: Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to
 cope with split packages.
 
 On Thu, 25.09.14 18:12, Gustavo Sverzut Barbieri
 (gustavo.barbi...@intel.com) wrote:
 
  etc.conf was selectively (using m4) using resolved link, now this
 is
  moved to systemd-resolved.conf file. The etc.conf can be static
 and
  does not need to be generated anymore.
 
  systemd.conf was doing all the journal setup, now this is moved to
  systemd-journald.conf file.
 
 journald is not optional. And it won't be. Sorry.

Got it, but clarity sake having it in a different file wouldn't hurt. But is 
not a big deal if you are completely against it.

 
  +z /var/log/journal/remote 2755 root systemd-journal-remote - -
  +z /run/log/journal/remote 2755 root systemd-journal-remote - -
 
 I am not convinced this is really worth it. This line has no effect
 anyway if the dir is missing...

You mean the dir in systemd.conf?


  diff --git a/tmpfiles.d/systemd-networkd.conf
 b/tmpfiles.d/systemd-networkd.conf
  new file mode 100644
  index 000..2419755
  --- /dev/null
  +++ b/tmpfiles.d/systemd-networkd.conf
  @@ -0,0 +1,12 @@
  +#  This file is part of systemd.
  +#
  +#  systemd is free software; you can redistribute it and/or
 modify it
  +#  under the terms of the GNU Lesser General Public License as
 published by
  +#  the Free Software Foundation; either version 2.1 of the
 License, or
  +#  (at your option) any later version.
  +
  +# See tmpfiles.d(5) for details
  +
  +d /run/systemd/netif 0755 systemd-network systemd-network -
  +d /run/systemd/netif/links 0755 systemd-network systemd-network -
  +d /run/systemd/netif/leases 0755 systemd-network systemd-network
 -
 
 I am very much against this. Even if networkd is not used the dirs
 should really exist so that libsystemd-network can create an inotify
 watch on it without problem. It won't ever see any interfaces in it,
 but it will at least not fail. It's really just three dirs in /run,
 this costs barely anything.
 
 I am totally not convinced splitting this up is really a good
 idea...

Well, I have to agree with you. It's just weird to have unused stuff in there. 
OTOH right now base-files will also add some of those, like spool/mail in an 
embedded device... so indeed no big deal.

BR,
-- Gustavo
(again sorry about the formatting, outlook again -- I'm on vacations and just 
have this laptop with the company mail)

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-10-06 Thread Barbieri, Gustavo
 -Original Message-
 From: Lennart Poettering [mailto:lenn...@poettering.net]
 Sent: Thursday, October 02, 2014 4:22 AM
 To: Barbieri, Gustavo
 Cc: Zbigniew Jędrzejewski-Szmek; systemd-devel@lists.freedesktop.org
 Subject: Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to
 cope with split packages.
 
 On Tue, 30.09.14 14:36, Gustavo Sverzut Barbieri
 (gustavo.barbi...@intel.com) wrote:
 
  On Tue, Sep 30, 2014 at 04:26:38AM +0200, Zbigniew Jędrzejewski-
 Szmek wrote:
   On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut
 Barbieri wrote:
etc.conf was selectively (using m4) using resolved link, now
 this is
moved to systemd-resolved.conf file. The etc.conf can be
 static and
does not need to be generated anymore.
   
systemd.conf was doing all the journal setup, now this is
 moved to
systemd-journald.conf file.
   Is this useful? We don't support journald-less setups.
 
  I did forget about this part but it is important, so here it is:
 
  I just tested, although journald-less systems are not supported,
  they work beautifully (as beautify as it can).
 
  and we run great without a dbus-daemon, even if not running kdbus
 as
  systemctl bus is private and we can do with that (I didn't even
 think
  about that, someone at #systemd alerted me and it will help to
 stop
  those people that complain about dbus usage and that we could
 just do
  socket, the private socket is basically the same, but the
 protocol is
  a standard and not just some random handcrafted one).
 
 It's great if this works, and people can do whatever they want with
 the code. But this is nothing we want to support upstream. In
 upstream
 neither udev, nor dbus, nor the journal are optional. If people want
 to make that work, they can do this downstream.
 
 resolved, networkd, timesyncd are optional, for these it's OK to
 make
 the necessary changes upstream.

It's just cumbersome to have to patch the installed files to split it. Doable, 
but not good to do.

BR,
-- Gustavo
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-10-02 Thread Lennart Poettering
On Thu, 25.09.14 18:12, Gustavo Sverzut Barbieri (gustavo.barbi...@intel.com) 
wrote:

 etc.conf was selectively (using m4) using resolved link, now this is
 moved to systemd-resolved.conf file. The etc.conf can be static and
 does not need to be generated anymore.
 
 systemd.conf was doing all the journal setup, now this is moved to
 systemd-journald.conf file.

journald is not optional. And it won't be. Sorry.

 +z /var/log/journal/remote 2755 root systemd-journal-remote - -
 +z /run/log/journal/remote 2755 root systemd-journal-remote - -

I am not convinced this is really worth it. This line has no effect
anyway if the dir is missing...

 diff --git a/tmpfiles.d/systemd-networkd.conf 
 b/tmpfiles.d/systemd-networkd.conf
 new file mode 100644
 index 000..2419755
 --- /dev/null
 +++ b/tmpfiles.d/systemd-networkd.conf
 @@ -0,0 +1,12 @@
 +#  This file is part of systemd.
 +#
 +#  systemd is free software; you can redistribute it and/or modify it
 +#  under the terms of the GNU Lesser General Public License as published by
 +#  the Free Software Foundation; either version 2.1 of the License, or
 +#  (at your option) any later version.
 +
 +# See tmpfiles.d(5) for details
 +
 +d /run/systemd/netif 0755 systemd-network systemd-network -
 +d /run/systemd/netif/links 0755 systemd-network systemd-network -
 +d /run/systemd/netif/leases 0755 systemd-network systemd-network -

I am very much against this. Even if networkd is not used the dirs
should really exist so that libsystemd-network can create an inotify
watch on it without problem. It won't ever see any interfaces in it,
but it will at least not fail. It's really just three dirs in /run,
this costs barely anything.

I am totally not convinced splitting this up is really a good idea...

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-10-02 Thread Lennart Poettering
On Tue, 30.09.14 14:36, Gustavo Sverzut Barbieri (gustavo.barbi...@intel.com) 
wrote:

 On Tue, Sep 30, 2014 at 04:26:38AM +0200, Zbigniew Jędrzejewski-Szmek wrote:
  On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut Barbieri wrote:
   etc.conf was selectively (using m4) using resolved link, now this is
   moved to systemd-resolved.conf file. The etc.conf can be static and
   does not need to be generated anymore.
  
   systemd.conf was doing all the journal setup, now this is moved to
   systemd-journald.conf file.
  Is this useful? We don't support journald-less setups.
 
 I did forget about this part but it is important, so here it is:
 
 I just tested, although journald-less systems are not supported,
 they work beautifully (as beautify as it can).
 
 and we run great without a dbus-daemon, even if not running kdbus as
 systemctl bus is private and we can do with that (I didn't even think
 about that, someone at #systemd alerted me and it will help to stop
 those people that complain about dbus usage and that we could just do
 socket, the private socket is basically the same, but the protocol is
 a standard and not just some random handcrafted one).

It's great if this works, and people can do whatever they want with
the code. But this is nothing we want to support upstream. In upstream
neither udev, nor dbus, nor the journal are optional. If people want
to make that work, they can do this downstream.

resolved, networkd, timesyncd are optional, for these it's OK to make
the necessary changes upstream.

Lennart

-- 
Lennart Poettering, Red Hat
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-09-30 Thread Gustavo Sverzut Barbieri
On Tue, Sep 30, 2014 at 04:26:38AM +0200, Zbigniew Jędrzejewski-Szmek wrote:
 On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut Barbieri wrote:
  etc.conf was selectively (using m4) using resolved link, now this is
  moved to systemd-resolved.conf file. The etc.conf can be static and
  does not need to be generated anymore.
 
  systemd.conf was doing all the journal setup, now this is moved to
  systemd-journald.conf file.
 Is this useful? We don't support journald-less setups.

  systemd-remote.conf was renamed to systemd-journal-remote.conf for
  conssitency.
 This doesn't feel right either. systemd-remote.conf is not only
 for systemd-journal-remote, but also for systemd-journal-upload
 and systemd-journal-gateway, so the rename would be misleading.
 Current name is also the same as the name of the directory 
 (src/journal-remote),
 so even if not perfect, it is not accidental.

I understand that, this is why I did the rename as people adding new
stuff only for upload would remember to create a new file.

my idea with split files for upload/remote is that they are vastly
different use cases and dependencies. Take an embedded system, it may
use upload to keep pushing crashes to manufacturer, takes only
curl. OTOH it does not need libmicrohttpd/gnutls to provide remote,
that is to be used on their server.

of course providing some tmpfiles/sysusers that are not used are not
that harmful, BUT to create the split packages they will get in the
way, as the file would be needed by both packages, this would need the
creation of yet-another package that would be required by both :-/


  systemd.conf was doing all the networkd setup, now this is moved to
  systemd-networkd.conf file.
 This part probably makes the most sense, since networkd is largely
 a separate beast.

 Those filenames form a kind of an interface, since they are overriden
 by name, so we shouldn't change them lightly.

 Can you respin the patch with just the networkd change?

well, I still hope you consider as per above explanations.

if not, could you do it for me? I'm going on vacation with limited
connectivity and no PC, fixing the patch from a tablet using some
remote build/test will be a PITA :-D otherwise I'm back in 15 days.

--
Gustavo Sverzut Barbieri
Intel Open source Technology Center
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-09-30 Thread Gustavo Sverzut Barbieri
On Tue, Sep 30, 2014 at 04:26:38AM +0200, Zbigniew Jędrzejewski-Szmek wrote:
 On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut Barbieri wrote:
  etc.conf was selectively (using m4) using resolved link, now this is
  moved to systemd-resolved.conf file. The etc.conf can be static and
  does not need to be generated anymore.
 
  systemd.conf was doing all the journal setup, now this is moved to
  systemd-journald.conf file.
 Is this useful? We don't support journald-less setups.

I did forget about this part but it is important, so here it is:

I just tested, although journald-less systems are not supported,
they work beautifully (as beautify as it can).

and we run great without a dbus-daemon, even if not running kdbus as
systemctl bus is private and we can do with that (I didn't even think
about that, someone at #systemd alerted me and it will help to stop
those people that complain about dbus usage and that we could just do
socket, the private socket is basically the same, but the protocol is
a standard and not just some random handcrafted one).

my goal is to provide a decent systemd package for yocto, it will be
split so people can choose what to use, but there are a -essential
package that includes sysusers, sysctl, tmpfiles, journald... as well
as a -base that includes hostnamed, localed, timedatad... and a
-all  with all packages that would not be so common in embedded
systems such as machined, nspawn...

right now I see embedded systems people doing the mistake of running
away from systemd with many wrong reasons. One of them is size, but
they do compare busybox + sysvinit and that includes nothing. When we
compare just systemd to busybox+sysvinit we realize they are not that
far away and that reason goes away. Since almost no system will work
solely on busybox + syvinit, then people will add stuff on top, and
while systemd would pay off, people already made the previous choice
to NOT use it... making the mistake even bigger.

my hope is to deliver the split packages to the yocto project and some
comparison of size and features. even with the bare systemd, no
journal or similar, you already get much more, from cgroup management
(and proc babysitting) to sandboxing (useful in embedded and in many
forms using systemd, from seccomp to selinux), private network,
private tmp, etc. You also get timer so no need for cron/at, you get
proper dependencies and much more as you know.

it will also highlight what you get when you add the different
needs. Take runtime package management (rpm/opkg), if there is a
package that adds users/groups for its services, traditionally you
pull in shadow* packages, which is way bigger than sysusers!

--
Gustavo Sverzut Barbieri
Intel Open source Technology Center
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-09-29 Thread Gustavo Sverzut Barbieri
On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut Barbieri wrote:
 etc.conf was selectively (using m4) using resolved link, now this is
 moved to systemd-resolved.conf file. The etc.conf can be static and
 does not need to be generated anymore.

 systemd.conf was doing all the journal setup, now this is moved to
 systemd-journald.conf file.

 systemd-remote.conf was renamed to systemd-journal-remote.conf for
 conssitency.

 systemd.conf was doing all the networkd setup, now this is moved to
 systemd-networkd.conf file.

no comments, could you apply it? :-)




 ---
  Makefile.am| 25 +
  tmpfiles.d/.gitignore  |  1 -
  tmpfiles.d/etc.conf| 15 +++
  tmpfiles.d/etc.conf.m4 | 17 -
  tmpfiles.d/systemd-journal-remote.conf | 11 +++
  tmpfiles.d/systemd-journald.conf   | 14 ++
  tmpfiles.d/systemd-networkd.conf   | 12 
  tmpfiles.d/systemd-remote.conf | 11 ---
  tmpfiles.d/systemd-resolved.conf   | 10 ++
  tmpfiles.d/systemd.conf|  9 -
  10 files changed, 79 insertions(+), 46 deletions(-)
  delete mode 100644 tmpfiles.d/.gitignore
  create mode 100644 tmpfiles.d/etc.conf
  delete mode 100644 tmpfiles.d/etc.conf.m4
  create mode 100644 tmpfiles.d/systemd-journal-remote.conf
  create mode 100644 tmpfiles.d/systemd-journald.conf
  create mode 100644 tmpfiles.d/systemd-networkd.conf
  delete mode 100644 tmpfiles.d/systemd-remote.conf
  create mode 100644 tmpfiles.d/systemd-resolved.conf

 diff --git a/Makefile.am b/Makefile.am
 index 52f578b..d8b7636 100644
 --- a/Makefile.am
 +++ b/Makefile.am
 @@ -1967,17 +1967,30 @@ nodist_systemunit_DATA += \
   units/systemd-tmpfiles-setup.service \
   units/systemd-tmpfiles-clean.service

 -nodist_tmpfiles_DATA = \
 - tmpfiles.d/etc.conf
 -
  dist_tmpfiles_DATA = \
 + tmpfiles.d/etc.conf \
   tmpfiles.d/systemd.conf \
   tmpfiles.d/systemd-nologin.conf \
 - tmpfiles.d/systemd-remote.conf \
 + tmpfiles.d/systemd-journald.conf \
   tmpfiles.d/tmp.conf \
   tmpfiles.d/x11.conf \
   tmpfiles.d/var.conf

 +if HAVE_MICROHTTPD
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-journal-remote.conf
 +endif
 +
 +if ENABLE_NETWORKD
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-networkd.conf
 +endif
 +
 +if ENABLE_RESOLVED
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-resolved.conf
 +endif
 +
  if HAVE_SYSV_COMPAT
  dist_tmpfiles_DATA += \
   tmpfiles.d/legacy.conf
 @@ -1999,14 +2012,10 @@ INSTALL_DIRS += \
  endif

  EXTRA_DIST += \
 - tmpfiles.d/etc.conf.m4 \
   units/systemd-tmpfiles-setup-dev.service.in \
   units/systemd-tmpfiles-setup.service.in \
   units/systemd-tmpfiles-clean.service.in

 -CLEANFILES += \
 - tmpfiles.d/etc.conf
 -
  # 
 --
  if ENABLE_SYSUSERS
  systemd_sysusers_SOURCES = \
 diff --git a/tmpfiles.d/.gitignore b/tmpfiles.d/.gitignore
 deleted file mode 100644
 index eb32315..000
 --- a/tmpfiles.d/.gitignore
 +++ /dev/null
 @@ -1 +0,0 @@
 -etc.conf
 diff --git a/tmpfiles.d/etc.conf b/tmpfiles.d/etc.conf
 new file mode 100644
 index 000..88ad78e
 --- /dev/null
 +++ b/tmpfiles.d/etc.conf
 @@ -0,0 +1,15 @@
 +#  This file is part of systemd.
 +#
 +#  systemd is free software; you can redistribute it and/or modify it
 +#  under the terms of the GNU Lesser General Public License as published by
 +#  the Free Software Foundation; either version 2.1 of the License, or
 +#  (at your option) any later version.
 +
 +# See tmpfiles.d(5) for details
 +
 +L /etc/os-release - - - - ../usr/lib/os-release
 +L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
 +L+ /etc/mtab - - - - ../proc/self/mounts
 +
 +C /etc/nsswitch.conf - - - -
 +C /etc/pam.d - - - -
 diff --git a/tmpfiles.d/etc.conf.m4 b/tmpfiles.d/etc.conf.m4
 deleted file mode 100644
 index f567c8d..000
 --- a/tmpfiles.d/etc.conf.m4
 +++ /dev/null
 @@ -1,17 +0,0 @@
 -#  This file is part of systemd.
 -#
 -#  systemd is free software; you can redistribute it and/or modify it
 -#  under the terms of the GNU Lesser General Public License as published by
 -#  the Free Software Foundation; either version 2.1 of the License, or
 -#  (at your option) any later version.
 -
 -# See tmpfiles.d(5) for details
 -
 -L /etc/os-release - - - - ../usr/lib/os-release
 -L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
 -L+ /etc/mtab - - - - ../proc/self/mounts
 -m4_ifdef(`ENABLE_RESOLVED',
 -L /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf
 -)
 -C /etc/nsswitch.conf - - - -
 -C /etc/pam.d - - - -
 diff --git a/tmpfiles.d/systemd-journal-remote.conf 
 b/tmpfiles.d/systemd-journal-remote.conf
 new file mode 100644
 index 000..1b8973a
 --- /dev/null
 +++ b/tmpfiles.d/systemd-journal-remote.conf
 @@ -0,0 +1,11 @@
 +#  This file is 

Re: [systemd-devel] [PATCH 1/2] tmpfiles.d: split files to cope with split packages.

2014-09-29 Thread Zbigniew Jędrzejewski-Szmek
On Thu, Sep 25, 2014 at 06:12:50PM -0300, Gustavo Sverzut Barbieri wrote:
 etc.conf was selectively (using m4) using resolved link, now this is
 moved to systemd-resolved.conf file. The etc.conf can be static and
 does not need to be generated anymore.
 
 systemd.conf was doing all the journal setup, now this is moved to
 systemd-journald.conf file.
Is this useful? We don't support journald-less setups.

 systemd-remote.conf was renamed to systemd-journal-remote.conf for
 conssitency.
This doesn't feel right either. systemd-remote.conf is not only
for systemd-journal-remote, but also for systemd-journal-upload
and systemd-journal-gateway, so the rename would be misleading.
Current name is also the same as the name of the directory (src/journal-remote),
so even if not perfect, it is not accidental.

 systemd.conf was doing all the networkd setup, now this is moved to
 systemd-networkd.conf file.
This part probably makes the most sense, since networkd is largely
a separate beast.

Those filenames form a kind of an interface, since they are overriden
by name, so we shouldn't change them lightly.

Can you respin the patch with just the networkd change?

Zbyszek


 ---
  Makefile.am| 25 +
  tmpfiles.d/.gitignore  |  1 -
  tmpfiles.d/etc.conf| 15 +++
  tmpfiles.d/etc.conf.m4 | 17 -
  tmpfiles.d/systemd-journal-remote.conf | 11 +++
  tmpfiles.d/systemd-journald.conf   | 14 ++
  tmpfiles.d/systemd-networkd.conf   | 12 
  tmpfiles.d/systemd-remote.conf | 11 ---
  tmpfiles.d/systemd-resolved.conf   | 10 ++
  tmpfiles.d/systemd.conf|  9 -
  10 files changed, 79 insertions(+), 46 deletions(-)
  delete mode 100644 tmpfiles.d/.gitignore
  create mode 100644 tmpfiles.d/etc.conf
  delete mode 100644 tmpfiles.d/etc.conf.m4
  create mode 100644 tmpfiles.d/systemd-journal-remote.conf
  create mode 100644 tmpfiles.d/systemd-journald.conf
  create mode 100644 tmpfiles.d/systemd-networkd.conf
  delete mode 100644 tmpfiles.d/systemd-remote.conf
  create mode 100644 tmpfiles.d/systemd-resolved.conf
 
 diff --git a/Makefile.am b/Makefile.am
 index 52f578b..d8b7636 100644
 --- a/Makefile.am
 +++ b/Makefile.am
 @@ -1967,17 +1967,30 @@ nodist_systemunit_DATA += \
   units/systemd-tmpfiles-setup.service \
   units/systemd-tmpfiles-clean.service
  
 -nodist_tmpfiles_DATA = \
 - tmpfiles.d/etc.conf
 -
  dist_tmpfiles_DATA = \
 + tmpfiles.d/etc.conf \
   tmpfiles.d/systemd.conf \
   tmpfiles.d/systemd-nologin.conf \
 - tmpfiles.d/systemd-remote.conf \
 + tmpfiles.d/systemd-journald.conf \
   tmpfiles.d/tmp.conf \
   tmpfiles.d/x11.conf \
   tmpfiles.d/var.conf
  
 +if HAVE_MICROHTTPD
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-journal-remote.conf
 +endif
 +
 +if ENABLE_NETWORKD
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-networkd.conf
 +endif
 +
 +if ENABLE_RESOLVED
 +dist_tmpfiles_DATA += \
 + tmpfiles.d/systemd-resolved.conf
 +endif
 +
  if HAVE_SYSV_COMPAT
  dist_tmpfiles_DATA += \
   tmpfiles.d/legacy.conf
 @@ -1999,14 +2012,10 @@ INSTALL_DIRS += \
  endif
  
  EXTRA_DIST += \
 - tmpfiles.d/etc.conf.m4 \
   units/systemd-tmpfiles-setup-dev.service.in \
   units/systemd-tmpfiles-setup.service.in \
   units/systemd-tmpfiles-clean.service.in
  
 -CLEANFILES += \
 - tmpfiles.d/etc.conf
 -
  # 
 --
  if ENABLE_SYSUSERS
  systemd_sysusers_SOURCES = \
 diff --git a/tmpfiles.d/.gitignore b/tmpfiles.d/.gitignore
 deleted file mode 100644
 index eb32315..000
 --- a/tmpfiles.d/.gitignore
 +++ /dev/null
 @@ -1 +0,0 @@
 -etc.conf
 diff --git a/tmpfiles.d/etc.conf b/tmpfiles.d/etc.conf
 new file mode 100644
 index 000..88ad78e
 --- /dev/null
 +++ b/tmpfiles.d/etc.conf
 @@ -0,0 +1,15 @@
 +#  This file is part of systemd.
 +#
 +#  systemd is free software; you can redistribute it and/or modify it
 +#  under the terms of the GNU Lesser General Public License as published by
 +#  the Free Software Foundation; either version 2.1 of the License, or
 +#  (at your option) any later version.
 +
 +# See tmpfiles.d(5) for details
 +
 +L /etc/os-release - - - - ../usr/lib/os-release
 +L /etc/localtime - - - - ../usr/share/zoneinfo/UTC
 +L+ /etc/mtab - - - - ../proc/self/mounts
 +
 +C /etc/nsswitch.conf - - - -
 +C /etc/pam.d - - - -
 diff --git a/tmpfiles.d/etc.conf.m4 b/tmpfiles.d/etc.conf.m4
 deleted file mode 100644
 index f567c8d..000
 --- a/tmpfiles.d/etc.conf.m4
 +++ /dev/null
 @@ -1,17 +0,0 @@
 -#  This file is part of systemd.
 -#
 -#  systemd is free software; you can redistribute it and/or modify it
 -#  under the terms of the GNU Lesser General Public License as published by
 -#  the Free Software Foundation; either version 2.1 of the License, or
 -#  (at