A launchd(8) port for non-Darwin systems https://wiki.freebsd.org/launchd
Torstein Husebø 34b7703146 Import launchd-842.90.1 4 years ago
SystemStarter Convert some spaces back to tabs, looks like my editor is set correctly now 5 years ago
launchctl Missed a makefile update for launchctl 4 years ago
launchd Import launchd-842.90.1 4 years ago
launchproxy Rename launchd.prog.mk to launchd.mk which makes a bit more sense 4 years ago
liblaunch Import launchd-842.90.1 4 years ago
man Import launchd-842.90.1 4 years ago
rc Initial import of launchd-842.1.4 5 years ago
support Add cmocka as a submodule for c-based unit tests 5 years ago
t Clean-up the tests a bit more, handle every case but the addition of a mountpoint for wait4path 5 years ago
wait4path Rename launchd.prog.mk to launchd.mk which makes a bit more sense 4 years ago
xcscripts Initial import of launchd-842.1.4 5 years ago
.gitignore Ignore a few more object files 4 years ago
.gitmodules Add cmocka as a submodule for c-based unit tests 5 years ago
COPYING Added COPYING file 5 years ago
DEPENDS.md libdispatch is used by launchd, and is available as a FreeBSD port, let's use it for now 5 years ago
Makefile Remove launchd from the test target 4 years ago
README.md Separate out the getting involved section 4 years ago
ROADMAP.md Add a first cut at some sequential roadmap items 5 years ago
launchd.doxy Add a doxygen configuration file to build some source docs 4 years ago
launchd.mk Rename launchd.prog.mk to launchd.mk which makes a bit more sense 4 years ago

README.md

Open Launchd

Mac OS X 10.4 Tiger introduced a new program called launchd. The daemon replaced SystemStarter (MacOS legacy) and older rc.d (BSD legacy) startup processes and job management functionality.

Launchd can be split into two logical pieces, "process 1", i.e. the root launchd which controls system startup and system daemons and "user launchd" which allows invividual users to manage their own processes/jobs.

Why?

The primary goal of this project is to port launchd in its entirety over to FreeBSD, hopefully making it usable by other BSD or Linux systems along the way. That said, the primary motivator for the original porting work in 2005 was to improve boot time. While improved boot time would be of tangible benefit to FreeBSD users, the current motivator of this project is to enable modern process management for user and system level processes on FreeBSD systems.

Getting involved:

Helpful links

  • The main project home page can be found on the FreeBSD project wiki.
  • rwatson@ runs fxr.watson.org which can be very useful for cross-referencing Apple system headers and code, with FreeBSD system headers and code