diff --git a/conf/type/__start_on_boot/explorer/cksum b/conf/type/__start_on_boot/explorer/cksum
new file mode 100755
index 00000000..dcad99ba
--- /dev/null
+++ b/conf/type/__start_on_boot/explorer/cksum
@@ -0,0 +1,34 @@
+#!/bin/sh
+#
+# 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 .
+#
+#
+# Retrieve the md5sum of a file to be created, if it is already existing.
+#
+
+destination="/$__object_id"
+
+if [ -e "$destination" ]; then
+ if [ -f "$destination" ]; then
+ cksum < "$destination"
+ else
+ echo "NO REGULAR FILE"
+ fi
+else
+ echo "NO FILE FOUND, NO CHECKSUM CALCULATED."
+fi
diff --git a/conf/type/__start_on_boot/explorer/exists b/conf/type/__start_on_boot/explorer/exists
new file mode 100755
index 00000000..f8b85671
--- /dev/null
+++ b/conf/type/__start_on_boot/explorer/exists
@@ -0,0 +1,30 @@
+#!/bin/sh
+#
+# 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 .
+#
+#
+# Check whether file exists or not
+#
+
+destination="/$__object_id"
+
+if [ -e "$destination" ]; then
+ echo yes
+else
+ echo no
+fi
diff --git a/conf/type/__start_on_boot/gencode-local b/conf/type/__start_on_boot/gencode-local
new file mode 100755
index 00000000..d9839a19
--- /dev/null
+++ b/conf/type/__start_on_boot/gencode-local
@@ -0,0 +1,43 @@
+#!/bin/sh
+#
+# 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 .
+#
+#
+# __file is a very basic type, which will probably be reused quite often
+#
+
+destination="/$__object_id"
+state_should="$(cat "$__object/parameter/state")"
+
+if [ "$state_should" = "present" ]; then
+ if [ -f "$__object/parameter/source" ]; then
+ source="$(cat "$__object/parameter/source")"
+
+ if [ -f "$source" ]; then
+ local_cksum="$(cksum < "$source")"
+ remote_cksum="$(cat "$__object/explorer/cksum")"
+
+ if [ "$local_cksum" != "$remote_cksum" ]; then
+ echo "$__remote_copy" "$source" "${__target_host}:${destination}"
+ fi
+ else
+ echo "Source \"$source\" does not exist." >&2
+ exit 1
+ fi
+ fi
+fi
diff --git a/conf/type/__start_on_boot/gencode-remote b/conf/type/__start_on_boot/gencode-remote
new file mode 100755
index 00000000..9e700934
--- /dev/null
+++ b/conf/type/__start_on_boot/gencode-remote
@@ -0,0 +1,66 @@
+#!/bin/sh
+#
+# 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 .
+#
+#
+# __file is a very basic type, which will probably be reused quite often
+#
+
+destination="/$__object_id"
+state_should="$(cat "$__object/parameter/state")"
+exists="$(cat "$__object/explorer/exists")"
+
+case "$state_should" in
+ present)
+ # No source? Create empty file
+ if [ ! -f "$__object/parameter/source" ]; then
+ if [ "$exists" = "no" ]; then
+ echo touch \"$destination\"
+ fi
+ fi
+
+ # Mode settings
+ if [ -f "$__object/parameter/mode" ]; then
+ echo chmod \"$(cat "$__object/parameter/mode")\" \"$destination\"
+ fi
+
+ # Group
+ if [ -f "$__object/parameter/group" ]; then
+ echo chgrp \"$(cat "$__object/parameter/group")\" \"$destination\"
+ fi
+
+ # Owner
+ if [ -f "$__object/parameter/owner" ]; then
+ echo chown \"$(cat "$__object/parameter/owner")\" \"$destination\"
+ fi
+ ;;
+
+ absent)
+
+ if [ "$exists" = "yes" ]; then
+ echo rm -f \"$destination\"
+ fi
+
+ ;;
+
+ *)
+ echo "Unknown state: $state_should" >&2
+ exit 1
+ ;;
+
+esac
diff --git a/conf/type/__start_on_boot/man.text b/conf/type/__start_on_boot/man.text
new file mode 100644
index 00000000..5e91599f
--- /dev/null
+++ b/conf/type/__start_on_boot/man.text
@@ -0,0 +1,69 @@
+cdist-type__file(7)
+===================
+Nico Schottelius
+
+
+NAME
+----
+cdist-type__file - Manage files
+
+
+DESCRIPTION
+-----------
+This cdist type allows you to create files, remove files and set file
+attributes on the target.
+
+
+REQUIRED PARAMETERS
+-------------------
+None.
+
+OPTIONAL PARAMETERS
+-------------------
+state::
+ 'present' or 'absent', defaults to 'present'
+
+group::
+ Group to chgrp to.
+
+mode::
+ Unix permissions, suitable for chmod.
+
+owner::
+ User to chown to.
+
+source::
+ If supplied, copy this file from the host running cdist to the target.
+ If not supplied, an empty file or directory will be created.
+
+
+EXAMPLES
+--------
+
+--------------------------------------------------------------------------------
+# Create /etc/cdist-configured as an empty file
+__file /etc/cdist-configured
+# The same thing
+__file /etc/cdist-configured --state present
+# Delete existing file
+__file /etc/cdist-configured --state absent
+
+# Use __file from another type
+__file /etc/issue --source "$__type/files/archlinux" --state present
+
+# Supply some more settings
+__file /etc/shadow --source "$__type/files/shadow" \
+ --owner root --group shadow --mode 0640 \
+ --state present
+--------------------------------------------------------------------------------
+
+
+SEE ALSO
+--------
+- cdist-type(7)
+
+
+COPYING
+-------
+Copyright \(C) 2011-2012 Nico Schottelius. Free use of this software is
+granted under the terms of the GNU General Public License version 3 (GPLv3).
diff --git a/conf/type/__start_on_boot/manifest b/conf/type/__start_on_boot/manifest
new file mode 100755
index 00000000..6b5e1ca7
--- /dev/null
+++ b/conf/type/__start_on_boot/manifest
@@ -0,0 +1,24 @@
+#!/bin/sh
+#
+# 2011 Steven Armstrong (steven-cdist at armstrong.cc)
+# 2012 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 .
+#
+
+# set default: present, if not setup
+statefile="$__object/parameter/state"
+[ -f "$statefile" ] || echo present > "$statefile"
diff --git a/conf/type/__start_on_boot/parameter/optional b/conf/type/__start_on_boot/parameter/optional
new file mode 100644
index 00000000..c696d592
--- /dev/null
+++ b/conf/type/__start_on_boot/parameter/optional
@@ -0,0 +1,5 @@
+state
+group
+mode
+owner
+source