From 7ad14eb8aa65034a266faab4dc28748ea801b5b9 Mon Sep 17 00:00:00 2001 From: Some One Date: Wed, 20 Aug 2025 20:38:44 +0200 Subject: [PATCH] Initial service2 work --- amo-validator.nix | 17 ++++ amo-validator.patch | 17 ++++ amqp.nix | 13 +++ anyjson.nix | 13 +++ argparse.nix | 13 +++ asn1crypto.nix | 13 +++ babel.nix | 13 +++ billiard.nix | 13 +++ bleach.nix | 13 +++ celery.nix | 13 +++ certifi.nix | 13 +++ cffi.nix | 14 +++ chardet.nix | 13 +++ contextlib2.nix | 13 +++ cryptography.nix | 18 ++++ cssutils.nix | 13 +++ defusedxml.nix | 13 +++ django-aesfield.nix | 13 +++ django-cache-machine.nix | 14 +++ django-csp.nix | 14 +++ django-environ.nix | 13 +++ django-extensions.nix | 16 ++++ django-extensions.patch | 14 +++ django-jinja.nix | 13 +++ django-mozilla-product-details.nix | 13 +++ django-multidb-router.nix | 13 +++ django-rest-framework-jwt.nix | 13 +++ django-rest-framework.nix | 13 +++ django-session-csrf.nix | 13 +++ django-statsd-mozilla.nix | 13 +++ django-waffle.nix | 13 +++ django.nix | 13 +++ dockerflow.nix | 13 +++ easy-thumbnails.nix | 13 +++ elasticsearch.nix | 13 +++ enum34.nix | 13 +++ fastchardet.nix | 13 +++ flufl-lock.nix | 13 +++ funcsigs.nix | 13 +++ html5lib.nix | 13 +++ idna.nix | 13 +++ idna_2_5.nix | 13 +++ ipaddress.nix | 13 +++ isodate.nix | 13 +++ jingo-minify.nix | 13 +++ jingo.nix | 13 +++ jinja2.nix | 10 +-- kombu.nix | 13 +++ lxml.nix | 10 +-- m2secret-py3.nix | 13 +++ markupsafe.nix | 13 +++ mock.nix | 13 +++ mozilla-logger.nix | 13 +++ mysqlclient.nix | 15 ++++ natsort.nix | 13 +++ nobot.nix | 13 +++ olefile.nix | 13 +++ overlay.nix | 132 +++++++++++++++++++++++++---- pbr.nix | 13 +++ pillow.nix | 15 ++++ puente.nix | 13 +++ py.nix | 13 +++ pyJWT.nix | 13 +++ pyOpenSSL.nix | 13 +++ pycparser.nix | 13 +++ pytest.nix | 13 +++ python-memcached.nix | 13 +++ pytz.nix | 13 +++ raven.nix | 13 +++ rdflib.nix | 13 +++ requests.nix | 13 +++ requests_2_18_1.nix | 13 +++ runService2.nix | 36 +++++++- signing-clients.nix | 13 +++ simplejson.nix | 13 +++ six.nix | 13 +++ spidermonkey.nix | 13 +++ statsd.nix | 13 +++ urllib3.nix | 13 +++ urllib3_1_21.nix | 13 +++ 80 files changed, 1169 insertions(+), 31 deletions(-) create mode 100644 amo-validator.nix create mode 100644 amo-validator.patch create mode 100644 amqp.nix create mode 100644 anyjson.nix create mode 100644 argparse.nix create mode 100644 asn1crypto.nix create mode 100644 babel.nix create mode 100644 billiard.nix create mode 100644 bleach.nix create mode 100644 celery.nix create mode 100644 certifi.nix create mode 100644 cffi.nix create mode 100644 chardet.nix create mode 100644 contextlib2.nix create mode 100644 cryptography.nix create mode 100644 cssutils.nix create mode 100644 defusedxml.nix create mode 100644 django-aesfield.nix create mode 100644 django-cache-machine.nix create mode 100644 django-csp.nix create mode 100644 django-environ.nix create mode 100644 django-extensions.nix create mode 100644 django-extensions.patch create mode 100644 django-jinja.nix create mode 100644 django-mozilla-product-details.nix create mode 100644 django-multidb-router.nix create mode 100644 django-rest-framework-jwt.nix create mode 100644 django-rest-framework.nix create mode 100644 django-session-csrf.nix create mode 100644 django-statsd-mozilla.nix create mode 100644 django-waffle.nix create mode 100644 django.nix create mode 100644 dockerflow.nix create mode 100644 easy-thumbnails.nix create mode 100644 elasticsearch.nix create mode 100644 enum34.nix create mode 100644 fastchardet.nix create mode 100644 flufl-lock.nix create mode 100644 funcsigs.nix create mode 100644 html5lib.nix create mode 100644 idna.nix create mode 100644 idna_2_5.nix create mode 100644 ipaddress.nix create mode 100644 isodate.nix create mode 100644 jingo-minify.nix create mode 100644 jingo.nix create mode 100644 kombu.nix create mode 100644 m2secret-py3.nix create mode 100644 markupsafe.nix create mode 100644 mock.nix create mode 100644 mozilla-logger.nix create mode 100644 mysqlclient.nix create mode 100644 natsort.nix create mode 100644 nobot.nix create mode 100644 olefile.nix create mode 100644 pbr.nix create mode 100644 pillow.nix create mode 100644 puente.nix create mode 100644 py.nix create mode 100644 pyJWT.nix create mode 100644 pyOpenSSL.nix create mode 100644 pycparser.nix create mode 100644 pytest.nix create mode 100644 python-memcached.nix create mode 100644 pytz.nix create mode 100644 raven.nix create mode 100644 rdflib.nix create mode 100644 requests.nix create mode 100644 requests_2_18_1.nix create mode 100644 signing-clients.nix create mode 100644 simplejson.nix create mode 100644 six.nix create mode 100644 spidermonkey.nix create mode 100644 statsd.nix create mode 100644 urllib3.nix create mode 100644 urllib3_1_21.nix diff --git a/amo-validator.nix b/amo-validator.nix new file mode 100644 index 0000000..5127ecb --- /dev/null +++ b/amo-validator.nix @@ -0,0 +1,17 @@ +{stdenv, python27Packages, simplejson, mock, spidermonkey, argparse, cssutils, requests, natsort, +rdflib, pytest, fastchardet, defusedxml}: python27Packages.buildPythonPackage rec { + pname = "amo-validator"; + version = "1.10.70"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-/7RjxSaDXBLhwvd77LqQO4mk3JWQzaqN9oX65aLpMhI="; + }; + + patches = [./amo-validator.patch]; + + propagatedBuildInputs = [python27Packages.setuptools simplejson mock spidermonkey argparse cssutils requests natsort + rdflib pytest fastchardet defusedxml]; +} diff --git a/amo-validator.patch b/amo-validator.patch new file mode 100644 index 0000000..064fb45 --- /dev/null +++ b/amo-validator.patch @@ -0,0 +1,17 @@ +diff --git a/requirements.txt b/requirements.txt +index b5b47be..5787c13 100644 +--- a/requirements.txt ++++ b/requirements.txt +@@ -4,8 +4,8 @@ defusedxml==0.5.0 + fastchardet==0.2.0 + mock==2.0.0 + natsort==5.0.3 +-pytest==3.1.3 ++pytest>=3.1.3 + rdflib==3.4.0 # pyup: <4.0 +-requests==2.18.1 ++requests>=2.18.1 + simplejson==3.11.1 +-spidermonkey==55.0a1.post2 +\ No newline at end of file ++spidermonkey==55.0a1.post2 diff --git a/amqp.nix b/amqp.nix new file mode 100644 index 0000000..93e562d --- /dev/null +++ b/amqp.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "amqp"; + version = "1.4.9"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-LepNFtBzyQLDuJ2blmIPtnKawPepI7vHd8tK2CfAxho="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/anyjson.nix b/anyjson.nix new file mode 100644 index 0000000..22aa7e9 --- /dev/null +++ b/anyjson.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "anyjson"; + version = "0.3.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-N4Ethjya0+NcBzTELgvwMgzow77YLNIK1UyzTRWBV7o="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/argparse.nix b/argparse.nix new file mode 100644 index 0000000..75cc49b --- /dev/null +++ b/argparse.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "argparse"; + version = "1.4.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-YrCJpVvh2JSc0rx+DfC9254Cj678jDIDjMhIYq791uQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/asn1crypto.nix b/asn1crypto.nix new file mode 100644 index 0000000..0e23982 --- /dev/null +++ b/asn1crypto.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "asn1crypto"; + version = "0.22.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-y7rdZA0xZasksG7yXR3KCaNEFhGsFfamtFJHT98K7Ro="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/babel.nix b/babel.nix new file mode 100644 index 0000000..c9482bd --- /dev/null +++ b/babel.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, pytz}: python27Packages.buildPythonPackage rec { + pname = "Babel"; + version = "2.4.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-jJj15fj18IhXHyxr2I1TDjMcu8uVpzEaDbadPcp+xWM="; + }; + + propagatedBuildInputs = [python27Packages.setuptools pytz]; +} diff --git a/billiard.nix b/billiard.nix new file mode 100644 index 0000000..89f2281 --- /dev/null +++ b/billiard.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "billiard"; + version = "3.3.0.23"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-aSoqWlXuOaQry3VXkw4lQdqF356oHG4kgn9juAzTnQs="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/bleach.nix b/bleach.nix new file mode 100644 index 0000000..7ffedbf --- /dev/null +++ b/bleach.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, html5lib}: python27Packages.buildPythonPackage rec { + pname = "bleach"; + version = "1.5.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-l451hZm1TNPKouFg10ECh5sjDqjck4cdB4NyHu9YvGU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools html5lib]; +} diff --git a/celery.nix b/celery.nix new file mode 100644 index 0000000..d9eaad0 --- /dev/null +++ b/celery.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, kombu, pytz, billiard}: python27Packages.buildPythonPackage rec { + pname = "celery"; + version = "3.1.23"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-GjWcgVg3+dvxk6fbxq3a+jRhLAd/9wxm47FuFO69JBg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools kombu pytz billiard]; +} diff --git a/certifi.nix b/certifi.nix new file mode 100644 index 0000000..6b5fdce --- /dev/null +++ b/certifi.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "certifi"; + version = "2017.4.17"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-91J+v3RhWCzpX3qeA90UHOgQ1AWQg09Owgzd1UI0wQo="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/cffi.nix b/cffi.nix new file mode 100644 index 0000000..7d93c98 --- /dev/null +++ b/cffi.nix @@ -0,0 +1,14 @@ +{stdenv, python27Packages, libffi, pycparser}: python27Packages.buildPythonPackage rec { + pname = "cffi"; + version = "1.10.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-s7ApEesfatogOwdjupJCNGKbUVhvcqIfqsxjgmn0ztU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools pycparser]; + buildInputs = [libffi]; +} diff --git a/chardet.nix b/chardet.nix new file mode 100644 index 0000000..08d5333 --- /dev/null +++ b/chardet.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "chardet"; + version = "3.0.4"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-hKuS7RxNTxaRbgWQa2t1psD7XbghzGXnDL1ko+Kl6q4="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/contextlib2.nix b/contextlib2.nix new file mode 100644 index 0000000..4564998 --- /dev/null +++ b/contextlib2.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "contextlib2"; + version = "0.5.5"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-UJ+UGe6RzdALo0RDIX1cpR9aNkpATh3Onol5zqlpykg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/cryptography.nix b/cryptography.nix new file mode 100644 index 0000000..88b80b5 --- /dev/null +++ b/cryptography.nix @@ -0,0 +1,18 @@ +{stdenv, python27Packages, cffi, openssl_1_1, ipaddress, idna, asn1crypto, six, enum34}: python27Packages.buildPythonPackage rec { + pname = "cryptography"; + version = "2.0.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-0EuyQlCGw/6G97xIkVKQsT55hJeDn7sYq39t/8+YzDo="; + }; + + env = { + NIX_CFLAGS_COMPILE="-Wno-incompatible-pointer-types"; + }; + + propagatedBuildInputs = [python27Packages.setuptools cffi ipaddress idna asn1crypto six enum34]; + buildInputs = [openssl_1_1]; +} diff --git a/cssutils.nix b/cssutils.nix new file mode 100644 index 0000000..63ab60b --- /dev/null +++ b/cssutils.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "cssutils"; + version = "1.0.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-ovzwZGdVMDjpj+qc/javK/FAY+sUenCVjPyqj1eGrK8="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/defusedxml.nix b/defusedxml.nix new file mode 100644 index 0000000..d4c04ca --- /dev/null +++ b/defusedxml.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "defusedxml"; + version = "0.5.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-JNfy+U9/PLYGGsshVoXlEl+83ECoV+/53iJRiCCwpPQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/django-aesfield.nix b/django-aesfield.nix new file mode 100644 index 0000000..970affc --- /dev/null +++ b/django-aesfield.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, m2secret-py3}: python27Packages.buildPythonPackage rec { + pname = "django-aesfield"; + version = "1.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-lxRIGqnsdKIOeTWd2IuBmJMCje+gsXr+aBYbdr3AUtk="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django m2secret-py3]; +} diff --git a/django-cache-machine.nix b/django-cache-machine.nix new file mode 100644 index 0000000..c24423f --- /dev/null +++ b/django-cache-machine.nix @@ -0,0 +1,14 @@ +{stdenv, fetchFromGitHub, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "django-cache-machine"; + version = "0.9.1"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "EnTeQuAk"; + repo = "django-cache-machine"; + rev = "1cac98a3e1dcc3cb654665cc67b6b15ab60d62c4"; + hash = "sha256-PiRRp/FqZgezcCUx94W12/thQUcdQT6QBBkXwgptzqQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django-csp.nix b/django-csp.nix new file mode 100644 index 0000000..11bc41e --- /dev/null +++ b/django-csp.nix @@ -0,0 +1,14 @@ +{stdenv, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "django-csp"; + version = "3.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + pname = "django_csp"; + inherit version; + extension = "tar.gz"; + hash = "sha256-2wgrdQdWcvuc9KYix1yU7mJMtWb/6dKmRWh+WFmLbTk="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django-environ.nix b/django-environ.nix new file mode 100644 index 0000000..7cd6f0f --- /dev/null +++ b/django-environ.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, six}: python27Packages.buildPythonPackage rec { + pname = "django-environ"; + version = "0.4.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-97zlr4pCMvk6nZ5o8K+m4nbFfYFEwXvzMOvajMV/LMo="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django six]; +} diff --git a/django-extensions.nix b/django-extensions.nix new file mode 100644 index 0000000..2b564c9 --- /dev/null +++ b/django-extensions.nix @@ -0,0 +1,16 @@ +{stdenv, python27Packages, django, six}: python27Packages.buildPythonPackage rec { + pname = "django-extensions"; + version = "1.6.7"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + pname = "django-extensions"; + inherit version; + extension = "tar.gz"; + hash = "sha256-fDPxvmrPdBRTnP3vKWe/YkDTyTF1UbXYRiLf94JM08Y="; + }; + + patches = [./django-extensions.patch]; + + propagatedBuildInputs = [python27Packages.setuptools django six]; +} diff --git a/django-extensions.patch b/django-extensions.patch new file mode 100644 index 0000000..8434b2c --- /dev/null +++ b/django-extensions.patch @@ -0,0 +1,14 @@ +diff --git a/django_extensions/management/commands/reset_db.py b/django_extensions/management/commands/reset_db.py +index 85b61c8..cb93da6 100644 +--- a/django_extensions/management/commands/reset_db.py ++++ b/django_extensions/management/commands/reset_db.py +@@ -81,7 +81,8 @@ class Command(BaseCommand): + + verbosity = int(options.get('verbosity', 1)) + if options.get('interactive'): +- confirm = input(""" ++ confirm = 'yes' ++ print(""" + You have requested a database reset. + This will IRREVERSIBLY DESTROY + ALL data in the database "%s". diff --git a/django-jinja.nix b/django-jinja.nix new file mode 100644 index 0000000..3e853fc --- /dev/null +++ b/django-jinja.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, jinja2}: python27Packages.buildPythonPackage rec { + pname = "django-jinja"; + version = "2.3.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-6/3kTLcW5Xqc3/bBpJNfxJx0GepM0LK4m87MaWucDIY="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django jinja2]; +} diff --git a/django-mozilla-product-details.nix b/django-mozilla-product-details.nix new file mode 100644 index 0000000..1ff57f8 --- /dev/null +++ b/django-mozilla-product-details.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, requests}: python27Packages.buildPythonPackage rec { + pname = "django-mozilla-product-details"; + version = "0.12.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-oxpREC6MLwR/iqYri9xVL3ox2cafLLFjkyJcPuDbcrU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django requests]; +} diff --git a/django-multidb-router.nix b/django-multidb-router.nix new file mode 100644 index 0000000..a5bfe1c --- /dev/null +++ b/django-multidb-router.nix @@ -0,0 +1,13 @@ +{stdenv, fetchFromGitHub, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "django-multidb-router"; + version = "0.6"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-TEiNy4TP/Yi80rFlGWK3Z/m7JFIGQHyOpngEPNOdPKg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django-rest-framework-jwt.nix b/django-rest-framework-jwt.nix new file mode 100644 index 0000000..34f4dc9 --- /dev/null +++ b/django-rest-framework-jwt.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, pyJWT}: python27Packages.buildPythonPackage rec { + pname = "djangorestframework-jwt"; + version = "1.11.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-Xv4zAy86RRijANxRpRySFFrZX7b0snLlqiRwHbZ5Nqc="; + }; + + propagatedBuildInputs = [python27Packages.setuptools pyJWT]; +} diff --git a/django-rest-framework.nix b/django-rest-framework.nix new file mode 100644 index 0000000..31356cb --- /dev/null +++ b/django-rest-framework.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "djangorestframework"; + version = "3.6.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-aqaq/ft/YVKkAYc+yuk6/561TXp0JmBlNHz03mgniuQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django-session-csrf.nix b/django-session-csrf.nix new file mode 100644 index 0000000..f4a9330 --- /dev/null +++ b/django-session-csrf.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "django-session-csrf"; + version = "0.7.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-4XF35uLmUY7HzmaTrRClx0f4Vx0J9M+pCCWZM0QhYF0="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django-statsd-mozilla.nix b/django-statsd-mozilla.nix new file mode 100644 index 0000000..ea10632 --- /dev/null +++ b/django-statsd-mozilla.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, statsd}: python27Packages.buildPythonPackage rec { + pname = "django-statsd-mozilla"; + version = "0.3.16"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-kl8PE+Wh54Y+XtEXn9D28aUZ5aApNxS6dnRShqrX7QI="; + }; + + propagatedBuildInputs = [python27Packages.setuptools statsd]; +} diff --git a/django-waffle.nix b/django-waffle.nix new file mode 100644 index 0000000..de1255d --- /dev/null +++ b/django-waffle.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django}: python27Packages.buildPythonPackage rec { + pname = "django-waffle"; + version = "0.12.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-s32jwmudRJIOn1uzWhM5qfgyBDdCPnM6qLH44Dw5y3Q="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django]; +} diff --git a/django.nix b/django.nix new file mode 100644 index 0000000..3ea5d9f --- /dev/null +++ b/django.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "Django"; + version = "1.8.18"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-x2Ec3V4lOaRDt5YMfK/YZ9mGwnIKG0SAjeqmDOPaUMc="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/dockerflow.nix b/dockerflow.nix new file mode 100644 index 0000000..99ac493 --- /dev/null +++ b/dockerflow.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "dockerflow"; + version = "2017.5.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-6B6fcJkYgF2Eej4CoPyFTlOH23v9kRsPrD12nq36wFg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools python27Packages.setuptools_scm]; +} diff --git a/easy-thumbnails.nix b/easy-thumbnails.nix new file mode 100644 index 0000000..a51521c --- /dev/null +++ b/easy-thumbnails.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, pillow, django}: python27Packages.buildPythonPackage rec { + pname = "easy-thumbnails"; + version = "2.4.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-XMUcbsfeEQNV0PjNVsnt5uKUnofC/LNLyGSiDs1CQnA="; + }; + + propagatedBuildInputs = [python27Packages.setuptools pillow django]; +} diff --git a/elasticsearch.nix b/elasticsearch.nix new file mode 100644 index 0000000..c12e59d --- /dev/null +++ b/elasticsearch.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, urllib3}: python27Packages.buildPythonPackage rec { + pname = "elasticsearch"; + version = "5.4.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-51TGiOIP5zFg+29/W2Pypxx4eI3J5pCJUGgdOjm1boU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools urllib3]; +} diff --git a/enum34.nix b/enum34.nix new file mode 100644 index 0000000..4a56bff --- /dev/null +++ b/enum34.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "enum34"; + version = "1.1.6"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-itjEeDv2He10Unv/tI7ZtUFmaF5CMDhqntmxJ54t9bE="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/fastchardet.nix b/fastchardet.nix new file mode 100644 index 0000000..c7e067c --- /dev/null +++ b/fastchardet.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "fastchardet"; + version = "0.2.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-1mOjUSm7A0LVk6pYEogmNHz69Arf+mKrQWtBvPrxZBo="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/flufl-lock.nix b/flufl-lock.nix new file mode 100644 index 0000000..5a67de5 --- /dev/null +++ b/flufl-lock.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "flufl.lock"; + version = "2.4.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-cmOayj7wN5rvElxzRrBCaRw0UhUoQ/MBgBs8LdysEDI="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/funcsigs.nix b/funcsigs.nix new file mode 100644 index 0000000..a2cf218 --- /dev/null +++ b/funcsigs.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "funcsigs"; + version = "1.0.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-p7sPLPOj/Rqycyy0nrpCUsKvQkBEJBW0q847hwIqj1A="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/html5lib.nix b/html5lib.nix new file mode 100644 index 0000000..81562a0 --- /dev/null +++ b/html5lib.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, six}: python27Packages.buildPythonPackage rec { + pname = "html5lib"; + version = "0.9999999"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-JhKhkajVhCv6BX5BulC7udy3IkGdJAjHjP9HWNB1SGg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools six]; +} diff --git a/idna.nix b/idna.nix new file mode 100644 index 0000000..b8f9c51 --- /dev/null +++ b/idna.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "idna"; + version = "2.6"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-LGpd4wiQCePafF3eZKFB28hVHVt/bPTtfCVo0MxSCo8="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/idna_2_5.nix b/idna_2_5.nix new file mode 100644 index 0000000..9e8d71d --- /dev/null +++ b/idna_2_5.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "idna"; + version = "2.5"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-PLXOCARsTjpWD8AvE40Kxj4A+M5ZAaVrMuyLeZQIKqs="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/ipaddress.nix b/ipaddress.nix new file mode 100644 index 0000000..a7dfeeb --- /dev/null +++ b/ipaddress.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "ipaddress"; + version = "1.0.18"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-XYU0yOGF8tih/aHvc/LI9LIyZOjjAGP+65UR1JKkE+E="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/isodate.nix b/isodate.nix new file mode 100644 index 0000000..44f6429 --- /dev/null +++ b/isodate.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "isodate"; + version = "0.5.4"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-QhBcQdA3JG3BmH422W83Uv/VwMJINN0S5P2+HnlUTjE="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/jingo-minify.nix b/jingo-minify.nix new file mode 100644 index 0000000..a0ebf8b --- /dev/null +++ b/jingo-minify.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, jingo}: python27Packages.buildPythonPackage rec { + pname = "jingo_minify"; + version = "0.7.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-9H7HhoRnobJw4RXDAaQnATeDbdt7X1dVLmXf9chq7gU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools jingo]; +} diff --git a/jingo.nix b/jingo.nix new file mode 100644 index 0000000..fbcb78c --- /dev/null +++ b/jingo.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, jinja2}: python27Packages.buildPythonPackage rec { + pname = "jingo"; + version = "0.9.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-N95UNWItBXY7xV0aPQp+3PmY7OnmBIu0cNtDHRqoPDo="; + }; + + propagatedBuildInputs = [python27Packages.setuptools jinja2]; +} diff --git a/jinja2.nix b/jinja2.nix index 6fe1cc3..59fd5ec 100644 --- a/jinja2.nix +++ b/jinja2.nix @@ -1,13 +1,13 @@ -{stdenv, python26Packages }: python26Packages.buildPythonPackage rec { +{stdenv, python27Packages, markupsafe}: python27Packages.buildPythonPackage rec { pname = "Jinja2"; - version = "2.5.2"; + version = "2.9.6"; format = "setuptools"; - src = python26Packages.fetchPypi { + src = python27Packages.fetchPypi { inherit pname version; extension = "tar.gz"; - hash = "sha256-GQQPAbOp2MY+TVeTb3hxCQgZm2k3CrRKD3QH3YkfAZs="; + hash = "sha256-3aoBohLNbWQUAcsBtgX0pNnze/yTBD1/dg7HD7mf+f8="; }; - propagatedBuildInputs = [python26Packages.setuptools python26Packages.argparse]; + propagatedBuildInputs = [python27Packages.setuptools markupsafe]; } diff --git a/kombu.nix b/kombu.nix new file mode 100644 index 0000000..a6d91f5 --- /dev/null +++ b/kombu.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, amqp, anyjson}: python27Packages.buildPythonPackage rec { + pname = "kombu"; + version = "3.0.35"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-IqszaheWJxel2UcFR+VQjUvPG27BDNlIaGja9OXttyc="; + }; + + propagatedBuildInputs = [python27Packages.setuptools amqp anyjson]; +} diff --git a/lxml.nix b/lxml.nix index 895ee5b..774959d 100644 --- a/lxml.nix +++ b/lxml.nix @@ -1,15 +1,15 @@ -{stdenv, python26Packages, libxml2, libxslt, zlib}: python26Packages.buildPythonPackage rec { +{stdenv, python27Packages, libxml2, libxslt, zlib}: python27Packages.buildPythonPackage rec { pname = "lxml"; - version = "2.2.6"; + version = "3.8.0"; format = "setuptools"; - src = python26Packages.fetchPypi { + src = python27Packages.fetchPypi { inherit pname version; extension = "tar.gz"; - hash = "sha256-f9NuSlY2DNXXMZ41ewSpDixrg26iIMiPlFHDAK4zzF4="; + hash = "sha256-c29yvhXKrYEWiR62qkoHi1kNIx/cY4GMQMIWJKxx25Y="; }; - propagatedBuildInputs = [python26Packages.setuptools]; + propagatedBuildInputs = [python27Packages.setuptools]; nativeBuildInputs = [ libxml2 libxslt ]; buildInputs = [ zlib ]; diff --git a/m2secret-py3.nix b/m2secret-py3.nix new file mode 100644 index 0000000..fd674bc --- /dev/null +++ b/m2secret-py3.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, cryptography}: python27Packages.buildPythonPackage rec { + pname = "m2secret-py3"; + version = "1.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-jYeJ1KfP/yiQhRxX1Ba7/MO7hXt2gQ9WrkERnN2w3lQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools cryptography]; +} diff --git a/markupsafe.nix b/markupsafe.nix new file mode 100644 index 0000000..0d44bf1 --- /dev/null +++ b/markupsafe.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "MarkupSafe"; + version = "1.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-pr5pCR2sI26pxrx9ASvqtCAQ+pFMRZeR1ifa1JEOtmU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/mock.nix b/mock.nix new file mode 100644 index 0000000..081829c --- /dev/null +++ b/mock.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, pbr, funcsigs, six}: python27Packages.buildPythonPackage rec { + pname = "mock"; + version = "2.0.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-sVi233bt0jm4II1IHcRrav1FqEa3gS/wzliXHPW8i7o="; + }; + + propagatedBuildInputs = [python27Packages.setuptools pbr funcsigs six]; +} diff --git a/mozilla-logger.nix b/mozilla-logger.nix new file mode 100644 index 0000000..7126a4f --- /dev/null +++ b/mozilla-logger.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "mozilla-logger"; + version = "0.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-CF23OQHqOHKKxesUGXl5rouVJFEbp/DYlB1wZQtYbvU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/mysqlclient.nix b/mysqlclient.nix new file mode 100644 index 0000000..52c89ad --- /dev/null +++ b/mysqlclient.nix @@ -0,0 +1,15 @@ +{stdenv, python27Packages, mysql}: python27Packages.buildPythonPackage rec { + pname = "mysqlclient"; + version = "1.3.10"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-RSqvnSuhpPuFwTTIj5sYV4Ut7tY7OxMlXXpl0sEpcmI="; + }; + + nativeBuildInputs = [ mysql ]; + buildInputs = [ mysql ]; + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/natsort.nix b/natsort.nix new file mode 100644 index 0000000..d1786ea --- /dev/null +++ b/natsort.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "natsort"; + version = "5.0.3"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-1Xt6AVbxb0nGwBDJzpfiEllWaXhG8xu6fNVEzSSwB8E="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/nobot.nix b/nobot.nix new file mode 100644 index 0000000..9144b32 --- /dev/null +++ b/nobot.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, requests, six}: python27Packages.buildPythonPackage rec { + pname = "nobot"; + version = "0.4.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-uue8eF6B1O3Mfn5mRXaXmVxHR14KKrpAWzpcuCaX6IA="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django requests six]; +} diff --git a/olefile.nix b/olefile.nix new file mode 100644 index 0000000..14a4480 --- /dev/null +++ b/olefile.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "olefile"; + version = "0.44"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "zip"; + hash = "sha256-YfLKDNCqdyeeuUPAf2B0OO3zdAlrZjMvrh7mSm8Pc60="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/overlay.nix b/overlay.nix index e358076..9f345f9 100644 --- a/overlay.nix +++ b/overlay.nix @@ -6,34 +6,130 @@ bommels = pkgs.lib.makeScope pkgs.newScope (self: rec { automake = automake; }; - openssl = (pkgs.callPackage ./openssl/default.nix { }).openssl_1_0_2; + #openssl = (pkgs.callPackage ./openssl/default.nix { }).openssl_1_0_2; - libxml2 = pkgs.callPackage ./libxml2.nix { inherit autoreconfHook; }; - libxslt = pkgs.callPackage ./libxslt.nix { inherit autoreconfHook libxml2; }; - libmemcached = pkgs.callPackage ./libmemcached.nix { inherit autoreconfHook; }; + #libxml2 = pkgs.callPackage ./libxml2.nix { inherit autoreconfHook; }; + #libxslt = pkgs.callPackage ./libxslt.nix { inherit autoreconfHook libxml2; }; + #libmemcached = pkgs.callPackage ./libmemcached.nix { inherit autoreconfHook; }; mysql = pkgs.callPackage ./mysql.nix { inherit autoreconfHook; }; - pythonInterpreters = self.callPackage ./python-interpreters.nix { bopenssl = openssl; inherit nixpkgsPath; }; - inherit (pythonInterpreters) python26; - python26Packages = python26.pkgs; - pythonPackages = python26Packages; + #pythonInterpreters = self.callPackage ./python-interpreters.nix { bopenssl = openssl; inherit nixpkgsPath; }; + #inherit (pythonInterpreters) python26; + #python26Packages = python26.pkgs; + #pythonPackages = python26Packages; - jinja2 = self.callPackage ./jinja2.nix { inherit python26Packages; }; - lxml = self.callPackage ./lxml.nix { inherit python26Packages libxml2 libxslt; }; - pylibmc = self.callPackage ./pylibmc.nix { inherit python26Packages libmemcached; }; - coverage = self.callPackage ./coverage.nix { inherit python26Packages; }; - pil = self.callPackage ./pil.nix { inherit python26Packages; }; - django-pylibmc = self.callPackage ./django-pylibmc.nix { inherit python26Packages; }; - mysql-python = self.callPackage ./mysql-python.nix { inherit python26Packages mysql; }; + #jinja2 = self.callPackage ./jinja2.nix { inherit python26Packages; }; + #lxml = self.callPackage ./lxml.nix { inherit python26Packages libxml2 libxslt; }; + #pylibmc = self.callPackage ./pylibmc.nix { inherit python26Packages libmemcached; }; + #coverage = self.callPackage ./coverage.nix { inherit python26Packages; }; + #pil = self.callPackage ./pil.nix { inherit python26Packages; }; + #django-pylibmc = self.callPackage ./django-pylibmc.nix { inherit python26Packages; }; + #mysql-python = self.callPackage ./mysql-python.nix { inherit python26Packages mysql; }; #python-magic = self.callPackage ./python-magic.nix { inherit python26Packages; }; #gitModulesFixer = pkgs.callPackage ./gitModulesFixer.nix { }; #service1 = pkgs.callPackage ./service1.nix { }; - service1 = pkgs.callPackage ./runService1.nix { inherit jinja2 mysql-python pil lxml mysql; }; - service2 = pkgs.callPackage ./runService2.nix { }; + #service1 = pkgs.callPackage ./runService1.nix { inherit jinja2 mysql-python pil lxml mysql; }; - some-package = pkgs.callPackage ./some-package.nix { inherit pythonPackages; }; + # -- Python 2.7 -- + six = self.callPackage ./six.nix { }; + idna = self.callPackage ./idna.nix { }; + pytz = self.callPackage ./pytz.nix { }; + html5lib = self.callPackage ./html5lib.nix { inherit six; }; + + chardet = self.callPackage ./chardet.nix { }; + urllib3 = self.callPackage ./urllib3.nix { }; + certifi = self.callPackage ./certifi.nix { }; + requests = self.callPackage ./requests.nix { inherit chardet urllib3 idna certifi; }; + + pycparser = self.callPackage ./pycparser.nix { }; + cffi = self.callPackage ./cffi.nix { inherit pycparser; }; + ipaddress = self.callPackage ./ipaddress.nix { }; + asn1crypto = self.callPackage ./asn1crypto.nix { }; + enum34 = self.callPackage ./enum34.nix { }; + cryptography = self.callPackage ./cryptography.nix { inherit cffi ipaddress idna asn1crypto six enum34; }; + m2secret-py3 = self.callPackage ./m2secret-py3.nix { inherit cryptography; }; + + markupsafe = self.callPackage ./markupsafe.nix { }; + jinja2 = self.callPackage ./jinja2.nix { inherit markupsafe; }; + + django = self.callPackage ./django.nix { }; + django-environ = self.callPackage ./django-environ.nix { inherit django six; }; + django-session-csrf = self.callPackage ./django-session-csrf.nix { inherit django; }; + django-mozilla-product-details = self.callPackage ./django-mozilla-product-details.nix { inherit django requests; }; + django-csp = self.callPackage ./django-csp.nix { inherit django; }; + django-aesfield = self.callPackage ./django-aesfield.nix { inherit django m2secret-py3; }; + django-extensions = self.callPackage ./django-extensions.nix { inherit django six; }; + django-rest-framework = self.callPackage ./django-rest-framework.nix { inherit django; }; + django-waffle = self.callPackage ./django-waffle.nix { inherit django; }; + django-jinja = self.callPackage ./django-jinja.nix { inherit django jinja2; }; + django-cache-machine = self.callPackage ./django-cache-machine.nix { inherit django; }; + django-multidb-router = self.callPackage ./django-multidb-router.nix { inherit django; }; + nobot = self.callPackage ./nobot.nix { inherit django requests six; }; + + lxml = self.callPackage ./lxml.nix { }; + dockerflow = self.callPackage ./dockerflow.nix { }; + python-memcached = self.callPackage ./python-memcached.nix { }; + flufl-lock = self.callPackage ./flufl-lock.nix { }; + signing-clients = self.callPackage ./signing-clients.nix { inherit asn1crypto six; }; + mozilla-logger = self.callPackage ./mozilla-logger.nix { }; + pyOpenSSL = self.callPackage ./pyOpenSSL.nix { inherit six cryptography; }; + + isodate = self.callPackage ./isodate.nix { }; + rdflib = self.callPackage ./rdflib.nix { inherit html5lib isodate; }; + + contextlib2 = self.callPackage ./contextlib2.nix { }; + raven = self.callPackage ./raven.nix { inherit contextlib2; }; + + jingo = self.callPackage ./jingo.nix { inherit jinja2; }; + jingo-minify = self.callPackage ./jingo-minify.nix { inherit jingo; }; + + babel = self.callPackage ./babel.nix { inherit pytz; }; + puente = self.callPackage ./puente.nix { inherit django jinja2 babel; }; + + statsd = self.callPackage ./statsd.nix { }; + django-statsd-mozilla = self.callPackage ./django-statsd-mozilla.nix { inherit statsd; }; + + elasticsearch = self.callPackage ./elasticsearch.nix { inherit urllib3; }; + mysqlclient = self.callPackage ./mysqlclient.nix { inherit mysql; }; + bleach = self.callPackage ./bleach.nix { inherit html5lib; }; + + olefile = self.callPackage ./olefile.nix { }; + pillow = self.callPackage ./pillow.nix { inherit olefile; }; + easy-thumbnails = self.callPackage ./easy-thumbnails.nix { inherit pillow django; }; + + simplejson = self.callPackage ./simplejson.nix { }; + pbr = self.callPackage ./pbr.nix { }; + funcsigs = self.callPackage ./funcsigs.nix { }; + mock = self.callPackage ./mock.nix { inherit pbr funcsigs six; }; + spidermonkey = self.callPackage ./spidermonkey.nix { }; + argparse = self.callPackage ./argparse.nix { }; + cssutils = self.callPackage ./cssutils.nix { }; + natsort = self.callPackage ./natsort.nix { }; + py = self.callPackage ./py.nix { }; + pytest = self.callPackage ./pytest.nix { inherit py; }; + fastchardet = self.callPackage ./fastchardet.nix { }; + defusedxml = self.callPackage ./defusedxml.nix { }; + amo-validator = self.callPackage ./amo-validator.nix { inherit simplejson mock spidermonkey argparse cssutils requests natsort + rdflib pytest fastchardet defusedxml; }; + + pyJWT = self.callPackage ./pyJWT.nix { }; + django-rest-framework-jwt = self.callPackage ./django-rest-framework-jwt.nix { inherit pyJWT; }; + + amqp = self.callPackage ./amqp.nix { }; + anyjson = self.callPackage ./anyjson.nix { }; + kombu = self.callPackage ./kombu.nix { inherit amqp anyjson; }; + billiard = self.callPackage ./billiard.nix { }; + celery = self.callPackage ./celery.nix { inherit kombu pytz billiard; }; + + service2 = pkgs.callPackage ./runService2.nix { inherit mysql django lxml django-environ django-session-csrf + django-mozilla-product-details dockerflow django-csp django-aesfield django-extensions raven django-rest-framework django-waffle + jingo-minify django-jinja puente django-statsd-mozilla django-cache-machine python-memcached elasticsearch django-multidb-router + mysqlclient bleach easy-thumbnails amo-validator flufl-lock signing-clients mozilla-logger pyOpenSSL django-rest-framework-jwt + celery nobot; }; + + #some-package = pkgs.callPackage ./some-package.nix { inherit pythonPackages; }; }); in { diff --git a/pbr.nix b/pbr.nix new file mode 100644 index 0000000..797b507 --- /dev/null +++ b/pbr.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "pbr"; + version = "3.1.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-BfYccarvwC2ON8Cj7rmBX/Um6iizt2Mkdp5hWNf5W+E="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/pillow.nix b/pillow.nix new file mode 100644 index 0000000..ed3c80f --- /dev/null +++ b/pillow.nix @@ -0,0 +1,15 @@ +{stdenv, python27Packages, pkg-config, zlib, libjpeg, olefile}: python27Packages.buildPythonPackage rec { + pname = "Pillow"; + version = "4.2.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-xyT2WHDlRTFvnoLkxtYIq1qp3YLVGF5bLnIRk3h0AHM="; + }; + + nativeBuildInputs = [pkg-config]; + buildInputs = [zlib libjpeg]; + propagatedBuildInputs = [python27Packages.setuptools olefile]; +} diff --git a/puente.nix b/puente.nix new file mode 100644 index 0000000..1287440 --- /dev/null +++ b/puente.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, django, jinja2, babel}: python27Packages.buildPythonPackage rec { + pname = "puente"; + version = "0.5.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-SheVj31qg8uf+SWTxA80kRq6+uxq2VmRa3VKqjhp8R8="; + }; + + propagatedBuildInputs = [python27Packages.setuptools django jinja2 babel]; +} diff --git a/py.nix b/py.nix new file mode 100644 index 0000000..09094a7 --- /dev/null +++ b/py.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "py"; + version = "1.4.34"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-Dy1YXSIFDpDH0pO2RRyD2wl993hxl02Q79WjDcEvzeM="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/pyJWT.nix b/pyJWT.nix new file mode 100644 index 0000000..f05880d --- /dev/null +++ b/pyJWT.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "PyJWT"; + version = "1.5.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-EXnwv/hkY7UwjuX3r/HDUOHzgTnWKnI+FvssVX0ceV8="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/pyOpenSSL.nix b/pyOpenSSL.nix new file mode 100644 index 0000000..0244474 --- /dev/null +++ b/pyOpenSSL.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, six, cryptography}: python27Packages.buildPythonPackage rec { + pname = "pyOpenSSL"; + version = "17.2.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-XWF842sHxR8zCqY7g79/JcQKDpWViHbVTRmC+MkbSDQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools six cryptography]; +} diff --git a/pycparser.nix b/pycparser.nix new file mode 100644 index 0000000..d43aa19 --- /dev/null +++ b/pycparser.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "pycparser"; + version = "2.18"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-majKA+KYUdlmFq0EBLSq19nuFvJcn5cIoR+vKBD3siY="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/pytest.nix b/pytest.nix new file mode 100644 index 0000000..369f74b --- /dev/null +++ b/pytest.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, py}: python27Packages.buildPythonPackage rec { + pname = "pytest"; + version = "3.2.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-TCFZ0r4rThP6KT56cr3y8GhIoBcVDVxtNREs5Rz9dM4="; + }; + + propagatedBuildInputs = [python27Packages.setuptools python27Packages.setuptools-scm py]; +} diff --git a/python-memcached.nix b/python-memcached.nix new file mode 100644 index 0000000..d2bdcce --- /dev/null +++ b/python-memcached.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "python-memcached"; + version = "1.53"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-vPcTcdmXu0ajFop7Y6rma1bMyswCWvkxDbQxVoHviGg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/pytz.nix b/pytz.nix new file mode 100644 index 0000000..fb6a5e5 --- /dev/null +++ b/pytz.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "pytz"; + version = "2017.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "zip"; + hash = "sha256-9cBW6PYtRbqCFeXLj1DfzLGYtLn76oUAZ080Q+RolYk="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/raven.nix b/raven.nix new file mode 100644 index 0000000..7088601 --- /dev/null +++ b/raven.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, contextlib2}: python27Packages.buildPythonPackage rec { + pname = "raven"; + version = "6.1.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-Asq/+xc7mdhgqV1JCOixhkqtG4RSFG4T/X4hKqV2qIQ="; + }; + + propagatedBuildInputs = [python27Packages.setuptools contextlib2]; +} diff --git a/rdflib.nix b/rdflib.nix new file mode 100644 index 0000000..0ae27b4 --- /dev/null +++ b/rdflib.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, html5lib, isodate}: python27Packages.buildPythonPackage rec { + pname = "rdflib"; + version = "3.4.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-eNXxGnABZh12N/nmFVSl+JceGX8/bRe6XkA5sGaBFs8="; + }; + + propagatedBuildInputs = [python27Packages.setuptools html5lib isodate]; +} diff --git a/requests.nix b/requests.nix new file mode 100644 index 0000000..b306674 --- /dev/null +++ b/requests.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, chardet, urllib3, idna, certifi}: python27Packages.buildPythonPackage rec { + pname = "requests"; + version = "2.18.4"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-nEQ+cyS6W4UHDEqBit4ov6vt8W6hAgbaETLtqm3aI34="; + }; + + propagatedBuildInputs = [python27Packages.setuptools chardet urllib3 idna certifi]; +} diff --git a/requests_2_18_1.nix b/requests_2_18_1.nix new file mode 100644 index 0000000..83502e1 --- /dev/null +++ b/requests_2_18_1.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, chardet, urllib3_1_21, idna_2_5, certifi}: python27Packages.buildPythonPackage rec { + pname = "requests"; + version = "2.18.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-xvO99KQyOse0XQHgSm9sIOMqBSzQTegeBRA6vASa2bk="; + }; + + propagatedBuildInputs = [python27Packages.setuptools chardet urllib3_1_21 idna_2_5 certifi]; +} diff --git a/runService2.nix b/runService2.nix index 753cfcc..e078ddb 100644 --- a/runService2.nix +++ b/runService2.nix @@ -1,11 +1,18 @@ -{stdenv, writeShellApplication, git, python27}: writeShellApplication rec { - name = "service1"; +{stdenv, writeShellApplication, git, gnumake, mysql, python27, django, lxml, django-environ, django-session-csrf, +django-mozilla-product-details, dockerflow, django-csp, django-aesfield, django-extensions, raven, django-rest-framework, +django-waffle, jingo-minify, django-jinja, puente, django-statsd-mozilla, django-cache-machine, python-memcached, elasticsearch, +django-multidb-router, mysqlclient, bleach, easy-thumbnails, amo-validator, flufl-lock, signing-clients, mozilla-logger, +pyOpenSSL, django-rest-framework-jwt, celery, nobot}: writeShellApplication rec { + name = "service2"; #propagatedBuildInputs = [python26Packages.setuptools]; #nativeBuildInputs = [ jinja2 ]; #buildInputs = [ jinja2 ]; - runtimeInputs = [git (python27.withPackages(ps: []))]; + runtimeInputs = [git gnumake mysql (python27.withPackages(ps: [django lxml django-environ django-session-csrf django-mozilla-product-details + dockerflow django-csp django-aesfield django-extensions raven django-rest-framework django-waffle jingo-minify django-jinja + puente django-statsd-mozilla django-cache-machine python-memcached elasticsearch django-multidb-router mysqlclient bleach + easy-thumbnails amo-validator flufl-lock signing-clients mozilla-logger pyOpenSSL django-rest-framework-jwt celery nobot]))]; #env = { # NIX_CFLAGS_COMPILE="-Wno-incompatible-pointer-types"; @@ -19,12 +26,35 @@ git clone https://github.com/mozilla/addons-server.git --progress cd addons-server git switch 8b4423547f932b2d9fa2b5a9c81d399bdc29bd6e --detach --progress + #git revert e971a1c0543c66fd513e9c1c06f7786eb2f92b31 cd ../.. fi cd amo + dbDir="$(pwd)/db" cd addons-server + PYTHONPATH="$(pwd)/src" + export PYTHONPATH + trap 'kill $dbServer && sleep 6' EXIT + + if [ ! -d "$dbDir" ]; then + mkdir "$dbDir" + mysql_install_db --datadir="$dbDir" + mysqld --datadir="$dbDir" & + dbServer="$!" + sleep 3 + echo "CREATE DATABASE olympia CHARACTER SET utf8 COLLATE utf8_unicode_ci;" | mysql -u root + + make -f Makefile-docker initialize_db + + kill "$dbServer" + sleep 6 + fi + + mysqld --datadir="$dbDir" & + dbServer="$!" + sleep 3 python ./manage.py ''; diff --git a/signing-clients.nix b/signing-clients.nix new file mode 100644 index 0000000..f829c03 --- /dev/null +++ b/signing-clients.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages, asn1crypto, six}: python27Packages.buildPythonPackage rec { + pname = "signing_clients"; + version = "1.3.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-XMYcnKqWDOpb7CvI6uF8MZfocqkAi/UhRtTLsD2pPAg="; + }; + + propagatedBuildInputs = [python27Packages.setuptools asn1crypto six]; +} diff --git a/simplejson.nix b/simplejson.nix new file mode 100644 index 0000000..c0721b5 --- /dev/null +++ b/simplejson.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "simplejson"; + version = "3.11.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-AaItSd3ZoWixNvJsrIfZozVmDOB6pcYwuONgfW9DJec="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/six.nix b/six.nix new file mode 100644 index 0000000..23e1d57 --- /dev/null +++ b/six.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "six"; + version = "1.10.0"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-EF+NaGFvgkjiS/DpNy7wTTzBAQTxmA9U1Xss5zpa1Wo="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/spidermonkey.nix b/spidermonkey.nix new file mode 100644 index 0000000..18fad50 --- /dev/null +++ b/spidermonkey.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "spidermonkey"; + version = "55.0a1.post2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-3zERhGMLEsOrzKdRR47WD7R3uBcEIwV9D2WrDNFQncU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/statsd.nix b/statsd.nix new file mode 100644 index 0000000..362624f --- /dev/null +++ b/statsd.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "statsd"; + version = "2.1.2"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-RdsWgxKmgg/XhpfHtv0BlvOvkiyOvIhUDt0Nb6/tVU0="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/urllib3.nix b/urllib3.nix new file mode 100644 index 0000000..82ec7f8 --- /dev/null +++ b/urllib3.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "urllib3"; + version = "1.22"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-zETajhFFY3M0MX/uvXKL2GmjUoW5PLtMyiV32n5i208="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +} diff --git a/urllib3_1_21.nix b/urllib3_1_21.nix new file mode 100644 index 0000000..b7b857d --- /dev/null +++ b/urllib3_1_21.nix @@ -0,0 +1,13 @@ +{stdenv, python27Packages}: python27Packages.buildPythonPackage rec { + pname = "urllib3"; + version = "1.21.1"; + format = "setuptools"; + + src = python27Packages.fetchPypi { + inherit pname version; + extension = "tar.gz"; + hash = "sha256-sUSGl4UYygkBp2upc9eCEEdAnX9ybyIVayToP9cTgqU="; + }; + + propagatedBuildInputs = [python27Packages.setuptools]; +}