{ "info": { "author": "Neil F Jones", "author_email": "", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Topic :: Software Development :: Build Tools" ], "description": "# pipoe\n\nThe objective of this project is to make creating OpenEmbedded python recipes just a bit easier. `pipoe` will take either a single package name or a requirements file and recursively generate bitbake recipes for every pypi package listed. It is not guaranteed that it will work for every package. Additionally, many recipes will still require additional modification after generation (patches, overrides, appends, etc.). In those cases it is recommended that the user add these modifications in a bbappend file.\n\n## Install\n```\n> pip3 install pipoe\n```\n\n## Licenses\n\nLicensing within OE is typically pretty strict. `pipoe` contains a license map which will attempt to map a packages license to one that will be accepted by the OE framework. If a license string is found which cannot be mapped, the user will be prompted to enter a valid license name. This mapping will be saved and the updated map will be saved to `./licenses.py` if the `--licenses` flag is provided. It is recommended that this file be PR'ed to this repository when generally useful changes are made.\n\n## Extras\n`pipoe` supports generating \"extra\" recipes based on the extra feature declarations in the packages `requires_dist` field (i.e. urllib3\\[secure\\]). These recipes are generated as packagegroups which rdepend on the base package.\n\n\n## Versions\nBy default `pipoe` will generate a recipe for the newest version of a package. Supplying the `--version` argument will override this behavior. Additionally, `pipoe` will automatically parse versions from requirements files.\n\n## Example\n\n```\n> pipoe --help\nusage: pipoe [-h] [--package PACKAGE] [--version VERSION]\n [--requirements REQUIREMENTS] [--extras] [--outdir OUTDIR]\n [--python {python,python3}] [--licenses]\n [--default-license DEFAULT_LICENSE]\n\noptional arguments:\n -h, --help show this help message and exit\n --package PACKAGE, -p PACKAGE\n The package to process.\n --version VERSION, -v VERSION\n The package version.\n --requirements REQUIREMENTS, -r REQUIREMENTS\n The pypi requirements file.\n --extras, -e Generate recipes for extras.\n --outdir OUTDIR, -o OUTDIR\n The recipe directory.\n --python {python,python3}, -y {python,python3}\n The python version to use.\n --licenses, -l Output an updated license map upon completion.\n --default-license DEFAULT_LICENSE, -d DEFAULT_LICENSE\n The default license to use when the package license\n cannot be mapped.\n> pipoe -p requests\nGathering info:\n requests\n | chardet\n | idna\n | urllib3\n | certifi\nGenerating recipes:\n python-requests_2.21.0.bb\n python-chardet_3.0.4.bb\n python-idna_2.8.bb\n python-urllib3_1.24.1.bb\n python-certifi_2018.11.29.bb\n\nLicense mappings are available in: ./licenses.py\nPREFERRED_VERSIONS are available in: ./python-versions.inc\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/NFJones/pipoe", "keywords": "yocto bitbake openembedded", "license": "", "maintainer": "", "maintainer_email": "", "name": "pipoe", "package_url": "https://pypi.org/project/pipoe/", "platform": "", "project_url": "https://pypi.org/project/pipoe/", "project_urls": { "Homepage": "https://github.com/NFJones/pipoe" }, "release_url": "https://pypi.org/project/pipoe/2019.11/", "requires_dist": [ "Parsley (==1.3)", "pep508-parser (==2019.3)", "pkginfo (==1.5.0.1)" ], "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "summary": "Generate python bitbake recipes from pypi metadata.", "version": "2019.11" }, "last_serial": 5763296, "releases": { "2019.10": [ { "comment_text": "", "digests": { "md5": "8f12eb025f9e6d08c21676f7815a6f9f", "sha256": "0a4eb186552edbab350011369273e09dc6d2f4a5efcb46bd372cd8e6e61b6406" }, "downloads": -1, "filename": "pipoe-2019.10-py3-none-any.whl", "has_sig": false, "md5_digest": "8f12eb025f9e6d08c21676f7815a6f9f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 9267, "upload_time": "2019-03-11T04:37:23", "url": "https://files.pythonhosted.org/packages/bd/b7/87fbe0e077c119196b1eaf3a82eb4eedbcef01a273e4cd8ae2e594745dc3/pipoe-2019.10-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6a4422c47570d5e76e000991156b34c7", "sha256": "af31c8441c1046ea244254f15644ccf364c8fbe1bc639e23d26936cc5f5d5cdd" }, "downloads": -1, "filename": "pipoe-2019.10.tar.gz", "has_sig": false, "md5_digest": "6a4422c47570d5e76e000991156b34c7", "packagetype": "sdist", "python_version": "source", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 7897, "upload_time": "2019-03-11T04:37:25", "url": "https://files.pythonhosted.org/packages/2f/d7/ad32015ec2bba338017674c2abc6a46a7b042a2d1c895ddc9321c3ea0078/pipoe-2019.10.tar.gz" } ], "2019.11": [ { "comment_text": "", "digests": { "md5": "9eb492e0069668675ee26ab7e25c61a8", "sha256": "588e08c55cfa2ddc975fb054c371d751c7ff9c008de806852ce01efa72c5cca4" }, "downloads": -1, "filename": "pipoe-2019.11-py3-none-any.whl", "has_sig": false, "md5_digest": "9eb492e0069668675ee26ab7e25c61a8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 9784, "upload_time": "2019-08-31T04:45:39", "url": "https://files.pythonhosted.org/packages/27/79/7b7ebeb35791ee65139a0828adeeb31ba039edda96d9725cff9915127671/pipoe-2019.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7ff79524b1e021ba8d8f8321588721ee", "sha256": "7c91c8440ed8390cbe34c6878deeefd90730d186b0015a89b6772aa3df5b2831" }, "downloads": -1, "filename": "pipoe-2019.11.tar.gz", "has_sig": false, "md5_digest": "7ff79524b1e021ba8d8f8321588721ee", "packagetype": "sdist", "python_version": "source", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 8865, "upload_time": "2019-08-31T04:45:41", "url": "https://files.pythonhosted.org/packages/a0/6a/641c70a8eff4b1959a5b1eb27b5e5e0c58af33226e9d5869deb0a2eef5e0/pipoe-2019.11.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9eb492e0069668675ee26ab7e25c61a8", "sha256": "588e08c55cfa2ddc975fb054c371d751c7ff9c008de806852ce01efa72c5cca4" }, "downloads": -1, "filename": "pipoe-2019.11-py3-none-any.whl", "has_sig": false, "md5_digest": "9eb492e0069668675ee26ab7e25c61a8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 9784, "upload_time": "2019-08-31T04:45:39", "url": "https://files.pythonhosted.org/packages/27/79/7b7ebeb35791ee65139a0828adeeb31ba039edda96d9725cff9915127671/pipoe-2019.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7ff79524b1e021ba8d8f8321588721ee", "sha256": "7c91c8440ed8390cbe34c6878deeefd90730d186b0015a89b6772aa3df5b2831" }, "downloads": -1, "filename": "pipoe-2019.11.tar.gz", "has_sig": false, "md5_digest": "7ff79524b1e021ba8d8f8321588721ee", "packagetype": "sdist", "python_version": "source", "requires_python": "!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4", "size": 8865, "upload_time": "2019-08-31T04:45:41", "url": "https://files.pythonhosted.org/packages/a0/6a/641c70a8eff4b1959a5b1eb27b5e5e0c58af33226e9d5869deb0a2eef5e0/pipoe-2019.11.tar.gz" } ] }