diff --git a/setup.py b/setup.py
old mode 100644
new mode 100755
index ecff0dc62e864399ebb00eb11da74666de90403b..78523f0158cac6215afa8577298d9159aa86130b
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,20 @@
-import hashlib
-import os
+#!/usr/bin/env python3
+# Copyright (C) 2015-2018  The Software Heritage developers
+# See the AUTHORS file at the top-level directory of this distribution
+# License: GNU General Public License version 3, or any later version
+# See top-level LICENSE file for more information
 
 from setuptools import setup, find_packages
+import hashlib
+
+from os import path
+from io import open
+
+here = path.abspath(path.dirname(__file__))
+
+# Get the long description from the README file
+with open(path.join(here, 'README.md'), encoding='utf-8') as f:
+    long_description = f.read()
 
 
 def parse_requirements(name=None):
@@ -11,7 +24,7 @@ def parse_requirements(name=None):
         reqf = 'requirements.txt'
 
     requirements = []
-    if not os.path.exists(reqf):
+    if not path.exists(reqf):
         return requirements
 
     with open(reqf) as f:
@@ -45,19 +58,32 @@ else:
 setup(
     name='swh.model',
     description='Software Heritage data model',
+    long_description=long_description,
+    long_description_content_type='text/markdown',
     author='Software Heritage developers',
     author_email='swh-devel@inria.fr',
     url='https://forge.softwareheritage.org/diffusion/DMOD/',
-    packages=find_packages(),  # packages's modules
-    scripts=[],   # scripts to package
+    packages=find_packages(),
+    setup_requires=['vcversioner'],
     install_requires=(parse_requirements() + parse_requirements('swh') +
                       extra_requirements),
+    extras_require={'testing': parse_requirements('test')},
+    vcversioner={},
+    include_package_data=True,
     entry_points='''
         [console_scripts]
         swh-identify=swh.model.cli:identify
     ''',
-    setup_requires=['vcversioner'],
-    extras_require={'testing': parse_requirements('test')},
-    vcversioner={},
-    include_package_data=True,
+    classifiers=[
+        "Programming Language :: Python :: 3",
+        "Intended Audience :: Developers",
+        "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
+        "Operating System :: OS Independent",
+        "Development Status :: 5 - Production/Stable",
+    ],
+    project_urls={
+        'Bug Reports': 'https://forge.softwareheritage.org/maniphest',
+        'Funding': 'https://www.softwareheritage.org/donate',
+        'Source': 'https://forge.softwareheritage.org/source/swh-model',
+    },
 )