diff --git a/rpm/moose.spec b/rpm/moose.spec
new file mode 100644
index 0000000000000000000000000000000000000000..a54ffb931a4fcc2a7977037c9411f40cf367df83
--- /dev/null
+++ b/rpm/moose.spec
@@ -0,0 +1,156 @@
+# spec file for package moose
+#
+# Copyright (c) 2009-2017 Upinder S. Bhalla <bhalla@ncbs.res.in> and NCBS Bangalore
+#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+%global version 3.1.3
+#%define _unpackaged_files_terminate_build 0 
+
+# When ON, build MOOGLI extention as well.
+%define with_moogli ON
+
+Name: moose
+
+# fixme: build debuginfo if possible with given complicated cmake calls.
+%define debug_package %{nil}
+
+Group: Applications/Biology
+Summary: Neuronal modeling software spanning molecules, electrophysiology and networks
+
+Version: %{version}
+Release: 1%{?dist}
+Url: http://github.com/BhallaLab/moose
+Source: moose-%{version}.tar.gz
+License: GPL-3.0
+
+BuildRequires: gcc-c++
+BuildRequires: cmake
+BuildRequires: python-devel
+BuildRequires: libxml2-devel
+
+
+%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?scientificlinux_version}
+BuildRequires: pkg-config
+BuildRequires: boost-devel
+%else
+BuildRequires: pkgconfig
+BuildRequires: fdupes
+BuildRequires: gsl-devel
+%endif
+
+%if 0%{?suse_version} 
+BuildRequires: python-sip
+%else
+BuildRequires: sip-devel
+%endif
+
+%if 0%{?suse_version} 
+BuildRequires: python-qt4-devel
+BuildRequires: libqt4-devel
+%else
+BuildRequires: PyQt4-devel
+BuildRequires: qt4-devel  libjpeg-devel
+%endif
+
+%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?scientificlinux_version}
+BuildRequires: numpy atlas
+%else
+BuildRequires: python-numpy-devel
+%endif
+
+%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?scientificlinux_version}
+Requires: PyQt4
+%else
+Requires: python-qt4
+%endif
+
+Requires: python-networkx
+Requires: python-matplotlib
+Requires: python-lxml
+Requires: libxml2
+Requires: gsl >= 1.16
+
+%if 0%{?fedora_version} || 0%{?suse_version} || 0%{?centos_version} || 0%{?scientificlinux_version}
+Requires: numpy 
+%else
+Requires: python-numpy
+%endif
+
+%if 0%{?suse_version} || 0%{?rhel_version} 
+Requires: python-qt4
+%else
+Requires: PyQt4
+%endif
+
+
+%description
+MOOSE is the Multiscale Object-Oriented Simulation Environment. It is designed
+to simulate neural systems ranging from biochemical signaling to complex models
+of single neurons, circuits, and large networks. A typical use case is to model
+neural activity-driven synaptic plasticity, in which network activity to
+synapses triggers biochemical reaction-diffusion events, which in turn modulate
+ion channels to give rise to synaptic plasticity.
+
+%prep
+%setup -q
+
+%build
+# Explicitly adding flags.
+mkdir -p _build
+cd _build 
+cmake \
+          -DWITH_DOC=OFF \
+          -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr \
+          -DCMAKE_INSALL_LIBEXEC=%_libexecdir \
+          -DCMAKE_C_FLAGS=%optflags \
+          -DCMAKE_CXX_FLAGS=%optflags \
+          -DMOOSE_VERSION=%version \
+          -DCMAKE_BUILD_TYPE="Release|RelWithDebugInfo" \
+          -DCMAKE_INSTALL_DO_STRIP=0 \
+%if 0%{?centos_version}
+          -DWITH_MOOGLI=OFF \
+%else
+          -DWITH_MOOGLI=ON \
+%endif
+          ..
+
+make VERBOSE=1 %{?_smp_mflags}
+
+%install
+cd _build
+make install
+# Note: direct installation causes following
+# http://lists.opensuse.org/opensuse-factory/2012-01/msg00235.html
+find "%{buildroot}%{python_sitelib}" -type f -name "*.pyc" -exec %__rm {} \;
+%__python -c 'import compileall; 
+compileall.compile_dir("%{buildroot}/%{python_sitelib}/"
+    , ddir="%{python_sitelib}/", force=1)'
+
+# Create a launcher.
+GUIBIN=%{buildroot}/%{_prefix}/bin/moosegui
+cat > $GUIBIN <<EOF
+#!/bin/bash
+cd %{_prefix}/lib/moose/gui && python mgui.py & 
+EOF
+chmod a+x $GUIBIN
+%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?scientificlinux_version}
+%else
+%fdupes %{buildroot}/%{_prefix}
+%endif
+
+%files 
+%defattr(-,root,root)
+/usr/bin/moosegui
+%defattr(-,root,root)
+%{python_sitelib}/*
+%dir /usr/lib/moose
+/usr/lib/moose/gui
+/usr/lib/moose/moose-examples