Skip to content

Commit

Permalink
add experimental support for the launchd startup
Browse files Browse the repository at this point in the history
git-svn-id: https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools@4216 4ea69e1a-61f1-4043-bf83-b5c94c648137
  • Loading branch information
samm2 committed Jan 25, 2016
1 parent 81f122d commit 1b7df8e
Show file tree
Hide file tree
Showing 7 changed files with 34 additions and 95 deletions.
5 changes: 5 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
$Id$

2016-01-25 Alex Samorukov <[email protected]>

os_darwin: add launchctl script for the smartd and remove depricated one.
"On current systems there is only one recommend way: launchd"

2016-01-24 Alex Samorukov <[email protected]>

os_freebsd.cpp: fix possible reallocf with 0 bytes arg (ticket #640)
Expand Down
26 changes: 5 additions & 21 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -363,9 +363,7 @@ EXTRA_DIST = \
update-smart-drivedb.in \
update-smart-drivedb.8.in \
m4/pkg.m4 \
os_darwin/SMART.in \
os_darwin/StartupParameters.plist \
os_darwin/English_Localizable.strings \
os_darwin/com.smartmontools.smartd.plist.in \
os_darwin/pkg/PackageInfo.in \
os_darwin/pkg/Distribution.in \
os_darwin/pkg/installer/README.html \
Expand Down Expand Up @@ -465,31 +463,17 @@ smartd_warning.sh: smartd_warning.sh.in config.status

if INSTALL_INITSCRIPT
if OS_DARWIN
initd_DATA = SMART \
os_darwin/StartupParameters.plist \
os_darwin/English_Localizable.strings

initd_install_name = SMART
initd_DATA = com.smartmontools.smartd.plist

initd_DATA_install = install-initdDATA-darwin
initd_DATA_uninstall = uninstall-initdDATA-darwin

SMART : os_darwin/SMART.in
com.smartmontools.smartd.plist : os_darwin/com.smartmontools.smartd.plist.in
sed "s|/usr/sbin/|$(sbindir)/|" $< > $@

install-initdDATA-darwin: $(initd_DATA)
$(MKDIR_P) $(DESTDIR)$(initddir)
$(MKDIR_P) $(DESTDIR)$(initddir)/SMART
$(MKDIR_P) $(DESTDIR)$(initddir)/SMART/Resources
$(INSTALL_SCRIPT) $(top_builddir)/SMART $(DESTDIR)$(initddir)/SMART
$(INSTALL_DATA) $(srcdir)/os_darwin/StartupParameters.plist \
$(DESTDIR)$(initddir)/SMART/StartupParameters.plist
for i in English ; do \
RDIR=$(DESTDIR)$(initddir)/SMART/Resources/$${i}.lproj ; \
$(MKDIR_P) $$RDIR ;\
$(INSTALL_DATA) $(srcdir)/os_darwin/$${i}_Localizable.strings \
$$RDIR/Localizable.strings ; \
done
$(MKDIR_P) '$(DESTDIR)$(initddir)'
$(INSTALL_SCRIPT) $(top_builddir)/com.smartmontools.smartd.plist $(DESTDIR)$(initddir)/com.smartmontools.smartd.plist

uninstall-initdDATA-darwin:
rm -rf $(DESTDIR)$(initddir)/$(initd_install_name)
Expand Down
5 changes: 4 additions & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,9 @@ case "${host}" in
*-*-freebsd*)
initdfile="smartd.freebsd.initd"
;;
*-apple-darwin*)
initdfile="com.smartmontools.smartd.plist"
;;
*)
initdfile="smartd.initd"
;;
Expand Down Expand Up @@ -638,7 +641,7 @@ case "$host_os" in
echo "smartd plugin path: [[disabled]]" >&AS_MESSAGE_FD
fi
if test -n "$initddir"; then
echo "smartd initd script: `eval eval eval echo $initddir`/smartd${smartd_suffix}" >&AS_MESSAGE_FD
echo "smartd initd script: `eval eval eval echo $initddir`/${initdfile}" >&AS_MESSAGE_FD
elif test -z "$systemdsystemunitdir"; then
echo "smartd initd script: [[disabled]]" >&AS_MESSAGE_FD
fi
Expand Down
12 changes: 0 additions & 12 deletions os_darwin/English_Localizable.strings

This file was deleted.

56 changes: 0 additions & 56 deletions os_darwin/SMART.in

This file was deleted.

5 changes: 0 additions & 5 deletions os_darwin/StartupParameters.plist

This file was deleted.

20 changes: 20 additions & 0 deletions os_darwin/com.smartmontools.smartd.plist.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>Label</key>
<string>com.smartmontools.smartd</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/sbin/smartd</string>
<string>-n</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>

0 comments on commit 1b7df8e

Please sign in to comment.