summaryrefslogtreecommitdiffstats
path: root/tools/freebsd
diff options
context:
space:
mode:
authorWilliam Jon McCann <mccann@jhu.edu>2008-01-22 17:03:46 -0500
committerWilliam Jon McCann <mccann@jhu.edu>2008-01-22 17:43:22 -0500
commit5ce97e6f22fd25279793fbc75211d2e86413ae73 (patch)
tree5de0565516b1d90ed382dc5f0ed969c8e512706c /tools/freebsd
parent2fba24e67597bf59ae00db2867df7a348c81b094 (diff)
initial stop/restart support
Add Stop and Restart methods to the Manager object. We'll rename the Manager object to System in the near future. Use libpolkit to determine authorization.
Diffstat (limited to 'tools/freebsd')
-rw-r--r--tools/freebsd/Makefile.am38
-rwxr-xr-xtools/freebsd/ck-system-restart12
-rwxr-xr-xtools/freebsd/ck-system-stop18
3 files changed, 68 insertions, 0 deletions
diff --git a/tools/freebsd/Makefile.am b/tools/freebsd/Makefile.am
new file mode 100644
index 0000000..d25930e
--- /dev/null
+++ b/tools/freebsd/Makefile.am
@@ -0,0 +1,38 @@
+## We require new-style dependency handling.
+AUTOMAKE_OPTIONS = 1.7
+
+NULL =
+
+SUBDIRS = \
+ $(NULL)
+
+scriptdir = $(libdir)/ConsoleKit/scripts
+script_SCRIPTS = \
+ ck-system-stop \
+ ck-system-restart \
+ $(NULL)
+
+EXTRA_DIST = \
+ $(script_SCRIPTS) \
+ $(NULL)
+
+MAINTAINERCLEANFILES = \
+ *~ \
+ Makefile.in
+
+
+check:
+ for f in $(script_SCRIPTS); do \
+ echo -n "Validate bash syntax in $$f : "; \
+ bash -n $(srcdir)/$$f 2> bash.error;\
+ if test -s bash.error; then \
+ echo failed; \
+ cat bash.error; \
+ rm -f bash.error; \
+ exit 1; \
+ else \
+ echo ok; \
+ rm -f bash.error; \
+ fi; \
+ done;
+
diff --git a/tools/freebsd/ck-system-restart b/tools/freebsd/ck-system-restart
new file mode 100755
index 0000000..8e0664e
--- /dev/null
+++ b/tools/freebsd/ck-system-restart
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+#Try for common tools
+if [ -x "/sbin/shutdown" ] ; then
+ /sbin/shutdown -r now
+ exit $?
+elif [ -x "/usr/sbin/shutdown" ] ; then
+ /usr/sbin/shutdown -r now
+ exit $?
+else
+ exit 1
+fi
diff --git a/tools/freebsd/ck-system-stop b/tools/freebsd/ck-system-stop
new file mode 100755
index 0000000..c947bea
--- /dev/null
+++ b/tools/freebsd/ck-system-stop
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+unsupported() {
+ echo "org.freedesktop.Hal.Device.SystemPowerManagement.NotSupported" >&2
+ echo "No shutdown command found" >&2
+ exit 1
+}
+
+#Try for common tools
+if [ -x "/sbin/shutdown" ] ; then
+ /sbin/shutdown -p now
+ exit $?
+elif [ -x "/usr/sbin/shutdown" ] ; then
+ /usr/sbin/shutdown -p now
+ exit $?
+else
+ unsupported
+fi