Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Nov 2015 20:27:51 -0500
From:      Mark Heily <mark@heily.com>
To:        Joe Maloney <jmaloney@pcbsd.org>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: relaunchd: a portable clone of launchd
Message-ID:  <CAGfo=8kMTFVEA1R=1tigPV_y5weR19YQFPd9dXrBMRd9tgT_Bg@mail.gmail.com>
In-Reply-To: <21B2B211-C52C-4202-BC5F-A190B9C12CD3@pcbsd.org>
References:  <CAGfo=8nPxY6SW%2B04R4sN_a1udOuVRLEownM4p2Yz5Y8YGvheeA@mail.gmail.com> <21B2B211-C52C-4202-BC5F-A190B9C12CD3@pcbsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 15, 2015 at 8:17 PM, Joe Maloney <jmaloney@pcbsd.org> wrote:
> Awesome.  Thank you! I will definitely be trying this out.  One question.=
  Are there any plans to convert this work over from json to UCL which Free=
BSD uses for things like pkg?  It is my understanding that UCL can parse js=
on anyway, and is the preferred format for FreeBSD from what I can tell?
>

Yes, I do plan to migrate from JSON to UCL, and there's an open ticket
in GitHub about it:

    https://github.com/mheily/relaunchd/issues/1

However, in terms of priority, it's not at the top of my list. Before
rewriting the parser to use UCL, I'd like to finish implementing the
missing functionality documented in the README:

* unloading jobs via launchctl
* cron functionality - StartInterval, StartCalendarInterval
* file and directory watches - WatchPaths, QueueDirectories
* restarting jobs if they crash - TimeOut, ExitTimeout,
KeepAliveTimeout, ThrottleInterval
* resource limits - SoftResourceLimits, HardResourceLimits
* miscellaneous - LaunchOnlyOnce, inetdCompatibility, EnableGlobbing,
RunAtLoad, Umask

If anyone wants to help implement these missing pieces, or if you
enjoy rewriting parsers and want to play around with UCL, let me know.

> Joe Maloney
>
>> On Nov 15, 2015, at 6:55 PM, Mark Heily <mark@heily.com> wrote:
>>
>> I've written a clone of the launchd framework found in Mac OS X [1].
>> It's called "relaunchd" and I would like to some help improving it and
>> getting it added to the FreeBSD ports tree [2].
>>
>> Here's the source code:
>>
>>    https://github.com/mheily/relaunchd
>>
>> One of the coolest things I've been able to do with it is to use
>> socket activation to launch an unmodified version of Apache inside of
>> a jail, pass it a socket descriptor bound to port 80 from the primary
>> network interface outside of the jail, and have it "just work" and
>> start serving web content using the pre-existing socket descriptor.
>> This eliminates the need to setup a cumbersome NAT and port forwarding
>> mechanism for each jail [3].
>>
>> This is a completely separate line of development from the work that
>> the NextBSD folks are doing to port the published Apple source code
>> for launchd and all of it's dependencies.
>>
>> I'd be happy to answer questions about relaunchd, and welcome
>> contributions from anyone who wants to help make launchd on FreeBSD a
>> reality.
>>
>> Regards,
>>
>> - Mark
>>
>> [1] https://en.wikipedia.org/wiki/Launchd
>> [2] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D204240
>> [3] Example: http://kbeezie.com/freebsd-jail-single-ip/
>> _______________________________________________
>> freebsd-hackers@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.or=
g"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGfo=8kMTFVEA1R=1tigPV_y5weR19YQFPd9dXrBMRd9tgT_Bg>