erpnext-nix/python/frappe.nix
2024-09-19 13:30:30 +02:00

210 lines
2.9 KiB
Nix

{ lib
, buildPythonPackage
, pythonRelaxDepsHook
, fetchFromGitHub
, flit-core
# Core dependencies
, babel
, click
, filelock
, filetype
, gitpython
, jinja2
, pillow
, pyjwt
, pymysql
, pypdf
, pypika
, pyqrcode
, pyyaml
, restrictedpython
, weasyprint
, werkzeug
, whoosh
, beautifulsoup4
, bleach-allowlist
, bleach
, cairocffi
, chardet
, croniter
, cryptography
, email-reply-parser
, git-url-parse
, gunicorn
, html5lib
, ipython
, ldap3
, markdown2
, markupsafe
, maxminddb-geolite2
, num2words
, oauthlib
, openpyxl
, passlib
, pdfkit
, phonenumbers
, premailer
, psutil
, psycopg2-binary
, pydantic
, pyopenssl
, pyotp
, python-dateutil
, pytz
, rauth
, redis
, hiredis
, requests-oauthlib
, requests
, rq
, rsa
, semantic-version
, sentry-sdk
, sqlparse
, tenacity
, terminaltables
, traceback-with-variables
, xlrd
, zxcvbn
, markdownify
, tomli
, sql-metadata
# Integration dependencies
, boto3
, dropbox
, google-api-python-client
, google-auth-oauthlib
, google-auth
, posthog
}:
let
pinData = import ../srcs/pin.nix;
inherit (pinData) frappeVersion;
inherit (pinData.hashes) frappeSrcHash;
in
buildPythonPackage rec {
pname = "frappe";
version = frappeVersion;
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${frappeVersion}";
sha256 = frappeSrcHash;
};
format = "pyproject";
nativeBuildInputs = [ pythonRelaxDepsHook flit-core ];
pythonRelaxDeps = [
"babel"
"pypdf"
"weasyprint"
"pydyf"
"bleach"
"cairocffi"
"chardet"
"cssutils"
"gunicorn"
"ipython"
"phonenumbers"
"pyopenssl"
"pydantic"
"pyotp"
"python-dateutil"
"pytz"
"rauth"
"redis"
"hiredis"
"requests"
"rq"
"sentry-sdk"
"markdownify"
"boto3"
"dropbox"
"google-api-python-client"
"google-auth-oauthlib"
"google-auth"
"posthog"
];
propagatedBuildInputs = [
babel
click
filelock
filetype
gitpython
jinja2
pillow
pyjwt
pymysql
pypdf
pypika
pyqrcode
pyyaml
restrictedpython
weasyprint
werkzeug
whoosh
beautifulsoup4
bleach-allowlist
bleach
cairocffi
chardet
croniter
cryptography
email-reply-parser
git-url-parse
gunicorn
html5lib
ipython
ldap3
markdown2
markupsafe
maxminddb-geolite2
num2words
oauthlib
openpyxl
passlib
pdfkit
phonenumbers
premailer
psutil
psycopg2-binary
pydantic
pyopenssl
pyotp
python-dateutil
pytz
rauth
redis
hiredis
requests-oauthlib
requests
rq
rsa
semantic-version
sentry-sdk
sqlparse
tenacity
terminaltables
traceback-with-variables
xlrd
zxcvbn
markdownify
tomli
sql-metadata
# integration dependencies
boto3
dropbox
google-api-python-client
google-auth-oauthlib
google-auth
posthog
];
}