<p dir="ltr">Well, this sounds like your service should have some equivalent to NetworkManager's or systemd-networkd's "wait-until-online" tools.</p>
<p dir="ltr">For example, there's NetworkManager-wait-online.service which blocks until NM has configured at least one connection fully, so other services can order against it (usually via network-online.target).</p>
<p dir="ltr">(In fact, this sounds like you're talking about NetworkManager...)</p>
<br><div class="gmail_quote"><div dir="ltr">On Tue, Apr 26, 2016, 12:42 george Karakou <<a href="mailto:mad-proffessor@hotmail.com">mad-proffessor@hotmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF">
    <br>
    <div>On 04/26/2016 09:35 AM, Andrei
      Borzenkov wrote:<br>
    </div>
    </div><div text="#000000" bgcolor="#FFFFFF"><blockquote type="cite">
      <pre>On Tue, Apr 26, 2016 at 9:27 AM, george Karakou
<a href="mailto:mad-proffessor@hotmail.com" target="_blank"><mad-proffessor@hotmail.com></a> wrote:
</pre>
      </blockquote></div><div text="#000000" bgcolor="#FFFFFF"><blockquote type="cite"><blockquote type="cite">
        <pre>Hi list, how are you all? I hope everyone is doing well.
I have a long starting unit that executes some(many actually) scripts and
with the parallel nature of systemd init process it doesn't fully start up
before some other units i have starting after it. Meaning "After="
directives in [Unit] section don't fully fill my needs here.
Is there a workaround?
</pre>
      </blockquote>
      <pre>Is Type=oneshot an option?

</pre></blockquote></div><div text="#000000" bgcolor="#FFFFFF"><blockquote type="cite">
      <blockquote type="cite">
        <pre>I understand that this demand somewhat violates the
parallel principle of the systemd init daemon but can it somehow be
serialized?
Thanks for any advice.
_______________________________________________
systemd-devel mailing list
<a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a>
<a href="https://lists.freedesktop.org/mailman/listinfo/systemd-devel" target="_blank">https://lists.freedesktop.org/mailman/listinfo/systemd-devel</a>
</pre>
      </blockquote>
    </blockquote></div><div text="#000000" bgcolor="#FFFFFF"><blockquote type="cite"></blockquote>
    <br>
    The service is of type dbus and i don't know if i want to break its
    functionality(since its a system-service and registers a name on the
    bus). But thanks.</div><div text="#000000" bgcolor="#FFFFFF"><br>
    <br>
    <div>On 04/26/2016 10:01 AM, Mantas
      Mikulėnas wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr">
        <div class="gmail_extra">
          <div class="gmail_quote">On Tue, Apr 26, 2016 at 9:27 AM,
            george Karakou <span dir="ltr"><<a href="mailto:mad-proffessor@hotmail.com" target="_blank"><a href="mailto:mad-proffessor@hotmail.com" target="_blank">mad-proffessor@hotmail.com</a></a>></span>
            wrote:<br>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi list,
              how are you all? I hope everyone is doing well.<br>
              I have a long starting unit that executes some(many
              actually) scripts and with the parallel nature of systemd
              init process it doesn't fully start up before some other
              units i have starting after it. Meaning "After="
              directives in [Unit] section don't fully fill my needs
              here.<br>
            </blockquote>
            <div><br>
            </div>
            <div>No, that's *exactly* the case for After= directives. To
              disable parallelization for some parts of the boot
              process, you use Before= and After= – that's it.</div>
            <div><br>
            </div>
            <div>That said, if After=foo.service doesn't work properly,
              it usually means foo.service is lying to systemd about
              when it has "finished starting". If that's the case, you'd
              have exactly the same problems no matter what kind of
              serialization you try to enable.</div>
            <div><br>
            </div>
            <div>If your megascript starts multiple daemons, then maybe
              it should be split into several independent .service
              units, one for each daemon? If that's not acceptable, try
              changing it to Type=notify, and make it use
              `systemd-notify READY=1` once it's done.</div>
          </div>
          <div><br>
          </div>
          -- <br>
          <div>
            <div dir="ltr">Mantas Mikulėnas <<a href="mailto:grawity@gmail.com" target="_blank"><a href="mailto:grawity@gmail.com" target="_blank">grawity@gmail.com</a></a>></div>
          </div>
        </div>
      </div>
    </blockquote></div><div text="#000000" bgcolor="#FFFFFF">
    This service is vital for the networking part since it adds
    interfaces to bridge, adds static arp entries and some other stuff
    and the point is to have all this networking initialization in a
    central unit and then start everything else, after the interfaces
    have been "upped". And since it is a dbus service i don't know if i
    want to "break" it's functionality. Anyway i don't see anything
    severely broken, like firewalls complaining of non-existent
    interfaces after they have initialized, so i am aknowledging this as
    not so high priority and i therefor thank you both.<br>
  </div>

</blockquote></div>