From 02da74e4374732ba4e8060ed446e5960ac70d811 Mon Sep 17 00:00:00 2001
From: Nico Schottelius <nico@kr.ethz.ch>
Date: Mon, 4 Apr 2011 23:57:36 +0200
Subject: [PATCH] add explorer os_version supporting openbsd

Signed-off-by: Nico Schottelius <nico@kr.ethz.ch>
---
 conf/explorer/os_version | 97 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 97 insertions(+)
 create mode 100755 conf/explorer/os_version

diff --git a/conf/explorer/os_version b/conf/explorer/os_version
new file mode 100755
index 00000000..d4dd2bc9
--- /dev/null
+++ b/conf/explorer/os_version
@@ -0,0 +1,97 @@
+#!/bin/sh
+#
+# 2010-2011 Nico Schottelius (nico-cdist at schottelius.org)
+#
+# This file is part of cdist.
+#
+# cdist is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# cdist is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with cdist. If not, see <http://www.gnu.org/licenses/>.
+#
+#
+# All os variables are lower case
+#
+#
+
+case "$($__explorer/os)" in
+   openbsd)
+      uname -r
+   ;;
+esac
+
+exit 0
+
+# Ubuntu is also Debian, thus return if Ubuntu was found
+if grep -q ^DISTRIB_ID=Ubuntu /etc/lsb-release 2>/dev/null; then
+   echo ubuntu
+   exit 0
+fi
+
+if [ -f /etc/arch-release ]; then
+   echo archlinux
+   exit 0
+fi
+
+if [ -f /etc/debian_version ]; then
+   echo debian
+   exit 0
+fi
+
+if [ -f /etc/gentoo-release ]; then
+   echo gentoo
+   exit 0
+fi
+
+# Fedora is also Redhat, thus return before redhat!
+if grep -q ^Fedora /etc/redhat-release 2>/dev/null; then
+   echo fedora
+   exit 0
+fi
+
+if [ -f /etc/redhat-release ]; then
+   echo redhat
+   exit 0
+fi
+
+if [ -f /etc/SuSE-release ]; then
+   echo suse
+   exit 0
+fi
+
+uname_s="$(uname -s)"
+
+# Assume there is no tr on the client -> do lower case ourselves
+case "$uname_s" in
+   Darwin)
+      echo macosx
+      exit 0
+   ;;
+   NetBSD)
+      echo netbsd
+      exit 0
+   ;;
+   FreeBSD)
+      echo freebsd
+      exit 0
+   ;;
+   OpenBSD)
+      echo openbsd
+      exit 0
+   ;;
+   SunOS)
+      echo solaris
+      exit 0
+   ;;
+esac
+
+echo "Unknown OS" >&2
+exit 1