diff --git a/.cockpit.metadata b/.cockpit.metadata
index e4693a5..4569aec 100644
--- a/.cockpit.metadata
+++ b/.cockpit.metadata
@@ -1 +1 @@
-bebdfe5f5156c71acd3f09958a6a807fd0fe3e91 SOURCES/cockpit-0.63.tar.bz2
+24d1c5ff016058a291296dfb550340d388505679 SOURCES/cockpit-0.71.tar.bz2
diff --git a/.gitignore b/.gitignore
index e03dfea..f75e582 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/cockpit-0.63.tar.bz2
+SOURCES/cockpit-0.71.tar.bz2
diff --git a/SPECS/cockpit.spec b/SPECS/cockpit.spec
index c21ff88..d787758 100644
--- a/SPECS/cockpit.spec
+++ b/SPECS/cockpit.spec
@@ -4,12 +4,16 @@
 
 %define branding auto
 
-# Our SELinux policy gets built in tests and f21 and lower
 %if %{defined gitcommit}
 %define extra_flags CFLAGS='-O2 -Wall -Werror -fPIC'
-%define selinux 1
 %define branding default
 %endif
+
+#Defaults for our SELinux policy toggle
+%if %{undefined selinux}
+%if %{defined gitcommit}
+%define selinux 1
+%endif
 %if 0%{?fedora} > 0 && 0%{?fedora} <= 21
 %define selinux 1
 %endif
@@ -19,14 +23,17 @@
 %if 0%{?centos}
 %define rhel 0
 %endif
+%endif
 
 %define _hardened_build 1
 
+%define libssh_version 0.7.1
+
 Name:           cockpit
 %if %{defined gitcommit}
 Version:        %{gitcommit}
 %else
-Version:        0.63
+Version:        0.71
 %endif
 Release:        1%{?dist}
 Summary:        A user interface for Linux servers
@@ -43,13 +50,12 @@ Source1:        cockpit.pam
 
 BuildRequires: pkgconfig(gio-unix-2.0)
 BuildRequires: pkgconfig(json-glib-1.0)
-BuildRequires: pkgconfig(libsystemd-daemon)
 BuildRequires: pkgconfig(polkit-agent-1) >= 0.105
 BuildRequires: pam-devel
 
 BuildRequires: autoconf automake
 BuildRequires: intltool
-BuildRequires: libssh-devel >= 0.6.0
+BuildRequires: libssh-devel >= %{libssh_version}
 BuildRequires: openssl-devel
 BuildRequires: zlib-devel
 BuildRequires: krb5-devel
@@ -61,22 +67,17 @@ BuildRequires: glib-networking
 BuildRequires: sed
 
 BuildRequires: glib2-devel >= 2.37.4
-BuildRequires: systemd
+BuildRequires: systemd-devel
 BuildRequires: polkit
 BuildRequires: pcp-libs-devel
 
-# For cockpit-lvm
-BuildRequires:  libgudev1-devel
-BuildRequires:  lvm2-devel
-BuildRequires:  polkit-devel
-
 %if %{defined gitcommit}
 BuildRequires: npm
 BuildRequires: nodejs
 %endif
 
 # For selinux
-%if %{defined selinux}
+%if 0%{?selinux}
 BuildRequires: selinux-policy-devel
 BuildRequires: checkpolicy
 BuildRequires: selinux-policy-doc
@@ -89,7 +90,8 @@ BuildRequires: xmlto
 Requires: %{name}-bridge = %{version}-%{release}
 Requires: %{name}-ws = %{version}-%{release}
 Requires: %{name}-shell = %{version}-%{release}
-%ifarch x86_64
+Requires: %{name}-storaged = %{version}-%{release}
+%ifarch x86_64 armv7hl
 Requires: %{name}-docker = %{version}-%{release}
 %endif
 %if 0%{?rhel}
@@ -134,17 +136,12 @@ Requires: shadow-utils
 Requires: grep
 Requires: libpwquality
 Requires: /usr/bin/date
-Requires: mdadm
-Requires: lvm2
-%if 0%{?rhel} == 0
-Requires: udisks2 >= 2.1.0
-%else
+%if 0%{?rhel}
 Provides: %{name}-subscriptions = %{version}-%{release}
 Requires: subscription-manager >= 1.13
-%ifarch x86_64
+%ifarch x86_64 armv7hl
 Provides: %{name}-docker = %{version}-%{release}
-Requires: docker
-Provides: %{name}-kubernetes = %{version}-%{release}
+Requires: docker >= 1.3.0
 %endif
 %endif
 Provides: %{name}-assets
@@ -159,6 +156,7 @@ Summary: Cockpit Web Service
 Requires: glib-networking
 Requires: openssl
 Requires: glib2 >= 2.37.4
+Requires: libssh >= %{libssh_version}
 Requires(post): systemd
 Requires(preun): systemd
 Requires(postun): systemd
@@ -177,17 +175,16 @@ The Cockpit Web Service listens on the network, and authenticates users.
 env NOCONFIGURE=1 ./autogen.sh
 %endif
 %configure --disable-static --disable-silent-rules --with-cockpit-user=cockpit-ws --with-branding=%{branding}
-make -j1 %{?extra_flags} all
-%if %{defined selinux}
+make -j %{?extra_flags} all
+%if 0%{?selinux}
 make selinux
 %endif
 
 %check
-# The check doesnt run on koji as it requires network
-# make check
+make -j check
 
 %install
-make install DESTDIR=%{buildroot} DBGDIR=/debug
+make install DESTDIR=%{buildroot}
 %if %{defined gitcommit}
 make install-test-assets DESTDIR=%{buildroot}
 mkdir -p %{buildroot}/%{_datadir}/polkit-1/rules.d
@@ -199,7 +196,7 @@ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d
 install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/cockpit
 rm -f %{buildroot}/%{_libdir}/cockpit/*.so
 install -p -m 644 AUTHORS COPYING README.md %{buildroot}%{_docdir}/%{name}/
-%if %{defined selinux}
+%if 0%{?selinux}
 install -d %{buildroot}%{_datadir}/selinux/targeted
 install -p -m 644 cockpit.pp %{buildroot}%{_datadir}/selinux/targeted/
 %endif
@@ -223,6 +220,9 @@ find %{buildroot}%{_datadir}/%{name}/system -type f >> shell.list
 echo '%dir %{_datadir}/%{name}/subscriptions' > subscriptions.list
 find %{buildroot}%{_datadir}/%{name}/subscriptions -type f >> subscriptions.list
 
+echo '%dir %{_datadir}/%{name}/storage' > storaged.list
+find %{buildroot}%{_datadir}/%{name}/storage -type f >> storaged.list
+
 %ifarch x86_64 armv7hl
 echo '%dir %{_datadir}/%{name}/docker' > docker.list
 find %{buildroot}%{_datadir}/%{name}/docker -type f >> docker.list
@@ -241,24 +241,17 @@ touch kubernetes.list
 
 sed -i "s|%{buildroot}||" *.list
 
-%if 0%{?rhel}
+# Build the package lists for debug package, and move debug files to installed locations
+find %{buildroot}/usr/src/debug%{_datadir}/%{name} -type f -o -type l > debug.list
+sed -i "s|%{buildroot}/usr/src/debug||" debug.list
+tar -C %{buildroot}/usr/src/debug -cf - . | tar -C %{buildroot} -xf -
+rm -rf %{buildroot}/usr/src/debug
+
 # On RHEL subscriptions and docker are part of the shell package
+%if 0%{?rhel}
 cat subscriptions.list docker.list >> shell.list
-
-# The dashboard is not ready for RHEL
-sed -i '/dashboard\/manifest.json/d' shell.list
-rm %{buildroot}%{_datadir}/%{name}/dashboard/manifest.json
-
-# Kubernetes is not ready for RHEL
-rm -rf %{buildroot}%{_datadir}/%{name}/kubernetes
 %endif
 
-# Build the package lists for debug package, and move debug files to installed locations
-find %{buildroot}/debug%{_datadir}/%{name} -type f -o -type l > debug.list
-sed -i "s|%{buildroot}/debug||" debug.list
-tar -C %{buildroot}/debug -cf - . | tar -C %{buildroot} -xf -
-rm -rf %{buildroot}/debug
-
 # Redefine how debug info is built to slip in our extra debug files
 %define __debug_install_post   \
    %{_rpmconfigdir}/find-debuginfo.sh %{?_missing_build_ids_terminate_build:--strict-build-id} %{?_include_minidebuginfo:-m} %{?_find_debuginfo_dwz_opts} %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}" \
@@ -279,14 +272,8 @@ rm -rf %{buildroot}/debug
 %{_bindir}/cockpit-bridge
 %attr(4755, -, -) %{_libexecdir}/cockpit-polkit
 %{_libexecdir}/cockpit-wrapper
-%{_libexecdir}/cockpit-lvm
-%{_libexecdir}/cockpit-lvm-helper
 %{_libdir}/security/pam_reauthorize.so
 %{_datadir}/dbus-1/services/com.redhat.Cockpit.service
-%{_sysconfdir}/dbus-1/system.d/com.redhat.Cockpit.LVM.conf
-%{_datadir}/dbus-1/system-services/com.redhat.Cockpit.LVM.service
-%{_datadir}/polkit-1/actions/com.redhat.Cockpit.LVM.policy
-%{_datadir}/cockpit/lvm-nolocking/lvm.conf
 
 %files doc
 %exclude %{_docdir}/%{name}/AUTHORS
@@ -296,11 +283,11 @@ rm -rf %{buildroot}/debug
 
 %files pcp
 %{_libexecdir}/cockpit-pcp
-/var/lib/pcp/config/pmlogconf/tools/cockpit
+%{_localstatedir}/lib/pcp/config/pmlogconf/tools/cockpit
 
 %post pcp
 # HACK - https://bugzilla.redhat.com/show_bug.cgi?id=1185749
-( cd /var/lib/pcp/pmns && ./Rebuild -du )
+( cd %{_localstatedir}/lib/pcp/pmns && ./Rebuild -du )
 # HACK - https://bugzilla.redhat.com/show_bug.cgi?id=1185764
 # We can't use "systemctl reload-or-try-restart" since systemctl might
 # be out of sync with reality.
@@ -320,7 +307,7 @@ rm -rf %{buildroot}/debug
 %{_sbindir}/remotectl
 %{_libexecdir}/cockpit-ws
 %attr(4750, root, cockpit-ws) %{_libexecdir}/cockpit-session
-%attr(775, -, wheel) %{_sharedstatedir}/%{name}
+%attr(775, -, wheel) %{_localstatedir}/lib/%{name}
 %{_datadir}/%{name}/static
 %{_datadir}/%{name}/branding
 
@@ -368,11 +355,13 @@ This package is not yet complete.
 
 %endif
 
+%endif
+
 %ifarch x86_64
 
 %package kubernetes
 Summary: Cockpit user interface for Kubernetes cluster
-Requires: kubernetes >= 0.16.2
+Requires: /usr/bin/kubectl
 
 %description kubernetes
 The Cockpit components for visualizing and configuring a Kubernetes
@@ -382,7 +371,14 @@ cluster. Installed on the Kubernetes master. This package is not yet complete.
 
 %endif
 
-%endif
+%package storaged
+Summary: Cockpit user interface for storage, using Storaged
+Requires: storaged >= 2.1.1
+
+%description storaged
+The Cockpit component for managing storage.  This package uses Storaged.
+
+%files storaged -f storaged.list
 
 %if %{defined gitcommit}
 
@@ -405,7 +401,7 @@ pulls in some necessary packages via dependencies.
 
 %endif
 
-%if %{defined selinux}
+%if 0%{?selinux}
 
 %package selinux-policy
 Summary: SELinux policy for Cockpit testing
@@ -427,19 +423,32 @@ SELinux policy for Cockpit testing.
 /usr/sbin/semodule -s targeted -i %{_datadir}/selinux/targeted/cockpit.pp
 /sbin/fixfiles -R cockpit restore || :
 /sbin/fixfiles -R cockpit-test-assets restore || :
-/sbin/restorecon -R %{_sharedstatedir}/%{name}
+/sbin/restorecon -R %{_localstatedir}/lib/%{name}
 
 %postun selinux-policy
 if [ $1 -eq 0 ] ; then
   /usr/sbin/semodule -s targeted -r cockpit &> /dev/null || :
   /sbin/fixfiles -R cockpit-selinux-policy restore || :
-  [ -d %{_sharedstatedir}/%{name} ]  && \
-    /sbin/restorecon -R %{_sharedstatedir}/%{name} &> /dev/null || :
+  [ -d %{_localstatedir}/lib/%{name} ]  && \
+    /sbin/restorecon -R %{_localstatedir}/lib/%{name} &> /dev/null || :
 fi
 
 %endif
 
 %changelog
+* Mon Aug 17 2015 Peter <petervo@redhat.com> - 0.71-1
+- Update to 0.71 release.
+
+* Mon Aug 17 2015 Stef Walter <stefw@redhat.com> - 0.70-3
+- Fix systemd dependency
+- Skip -2 because it's built in another branch
+
+* Fri Aug 14 2015 Stef Walter <stefw@redhat.com> - 0.70-1
+- Update to 0.70 release rhbz#1253368
+
+* Fri Jul 24 2015 Peter <petervo@redhat.com> - 0.63-2
+- Build kubernetes package
+
 * Mon Jul 06 2015 Stef Walter <stefw@redhat.com> - 0.63-1
 - Update to 0.63 release rhbz#1239086