{ "info": { "author": "Nicolai S\u00f8borg", "author_email": "elf2deb@xn--sb-lka.org", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Build Tools", "Topic :: System :: Archiving :: Packaging", "Topic :: System :: Installation/Setup" ], "description": "# ELF*2*deb\n\"logo\"\n\nConvert any single (or multiple) executable file(s) to deb-package.\n\nI.e. this is a script to convert *AppImage|ELF|executable script* to `.deb`.\n\nThe script will place the binary file(s) in `/usr/bin/`.\n\n## Setup\n\nYou want to setup `DEBEMAIL` and `DEBFULLNAME` for the *deb* tools to work properly:\n\n```bash\n$ cat >>~/.bashrc < --package_name skaffold --package_version 0.28.0 --homepage \"https://skaffold.dev/\" ./skaffold\n\n# Fix description and use debuild:\n$ cd skaffold-0.28.0/\n$ vim debian/control # add description\n$ debuild -us -uc\n[... lots of debuild output ...]\n$ cd ../\n\n# Finally the .deb file is ready to be uploaded, or installed:\n$ sudo dpkg -i skaffold_0.28.0_amd64.deb\n```\n\n## Arguments\n\n```\nusage: elf2deb [-h] [--version]\n --package_name PACKAGE_NAME\n --package_version PACKAGE_VERSION\n [--homepage HOMEPAGE]\n [--dependencies DEPENDENCIES]\n [--license {MIT,LGPL-3.0,MPL-2.0,AGPL-3.0,unlicense,apache-2.0,GPL-3.0} | --license_file LICENSE_FILE]\n [--license_year LICENSE_YEAR]\n [--license_holder LICENSE_HOLDER]\n binary_files [binary_files ...]\n\npositional arguments:\n binary_files The binaries you want to package.\n\noptional arguments:\n -h, --help show this help message and exit\n --version show program's version number and exit\n\npackage info:\n --package_name PACKAGE_NAME\n The name of the deb package\n --package_version PACKAGE_VERSION\n The version of the package\n --homepage HOMEPAGE The webpage of the package\n --dependencies DEPENDENCIES\n Dependencies specified in the deb package\n\nlicense info:\n --license {MIT,LGPL-3.0,MPL-2.0,AGPL-3.0,unlicense,apache-2.0,GPL-3.0}\n Select a standard license.\n --license_file LICENSE_FILE\n ... or use a LICENSE text file.\n --license_year LICENSE_YEAR\n If using a standard license: year\n --license_holder LICENSE_HOLDER\n If using a standard license: owner\n```\n\n## Common warnings\n\nIf you are running Ubuntu, you might get `E: bad-distribution-in-changes-file unstable`.\nIn this case edit `debian/changelog` and change `unstable` to your distributions codename (find it by running `lsb_release -c`).\nThen run `debuild -us -uc` from source directory, to recompile the `.deb`.\n\nIf you are missing the `dch`-tool, then run: `sudo apt install --no-install-recommends devscripts libdistro-info-perl`.\n\nYou can safely ignore the following warnings from lintian:\n\n * `source-is-missing`\n\n * `binary-without-manpage`\n\n(you will probably get a longer list of errors and warnings, no worries)\n\n## Packaging for other/more formats\n\nIf you want to distribute your software in more formats -- or your source isn't a list of binaries -- then consider using a tool like \"[**E**ffing **p**ackage **m**anagement](https://github.com/jordansissel/fpm)\". FPM is a much more mature tool that allows for advanced packaging.\n\nThe advantages of ELF*2*deb is;\n\n * can be installed using `pip install elf2deb` or used a as a standalone executable `./elf2deb.pyz`\n\n * simple, small size (< 10 kB), and few dependencies: `>= python3.5` (+ `requests` if need to download a license file)\n\n## More examples (interactive!)\n\nIn version 1.2.0 a interactive menu was added to ELF*2*deb:\n\n```bash\n$ git clone https://github.com/NicolaiSoeborg/ELF2deb.git && cd ELF2deb/\n$ make # to make 'elf2deb.pyz' (or use pip to install globally, or carry/copy elf2deb.pyz around)\n$ ./elf2deb.pyz elf2deb.pyz # package 'elf2deb.pyz' using elf2deb (very meta!)\nPackage info:\nauthor_mail: git@xn--sb-lka.org\nauthor_name: Nicolai S\u00f8borg\nbinary_files: ['elf2deb.pyz']\ndependencies: \nhomepage: None\nlicense: None\nlicense_file: <_io.TextIOWrapper name='/.../ELF2deb/LICENSE' mode='r' encoding='UTF-8'>\nlicense_holder: None\nlicense_year: None\npackage_name: ELF2deb\npackage_version: 0.0.1\n==> Does this look correct? (y/n/q): n\n\nProperties:\n[1] author_mail\n[2] author_name\n[3] binary_files\n[4] dependencies\n[5] homepage\n[6] license\n[7] license_file\n[8] license_holder\n[9] license_year\n[10] package_name\n[11] package_version\n==> Which property to change? (1..11): 4\n==> Which value should dependencies be changed to? python3, python3-requests\n\nPackage info:\nauthor_mail: git@xn--sb-lka.org\nauthor_name: Nicolai S\u00f8borg\nbinary_files: ['elf2deb.pyz']\ndependencies: python3, python3-requests\nhomepage: None\nlicense: None\nlicense_file: <_io.TextIOWrapper name='/home/nsq/pakker/test/ELF2deb/LICENSE' mode='r' encoding='UTF-8'>\nlicense_holder: None\nlicense_year: None\npackage_name: ELF2deb\npackage_version: 0.0.1\n==> Does this look correct? (y/n/q): n\n[...]\n==> Which value should package_version be changed to? 1.2.0\n[...]\n==> Does this look correct? (y/n/q): y\nCopying templates... done!\nCopying files... done!\nRun:\n * cd elf2deb-1.2.0\n * vim debian/control # change description, dont add empty lines\n * debuild -us -uc # remove -us -uc if you want to sign the deb file\n\n$ cd elf2deb-1.2.0\n$ vim debian/control\n$ debuild -us -uc\n[...]\ndpkg-deb: building package 'elf2deb' in '../elf2deb_1.2.0_amd64.deb'.\n\n$ dpkg-deb --info ../elf2deb_1.2.0_amd64.deb\n new Debian package, version 2.0.\n size 5100 bytes: control archive=624 bytes.\n 383 bytes, 12 lines control\n 189 bytes, 3 lines md5sums\n Package: elf2deb\n Version: 1.2.0\n Architecture: amd64\n Maintainer: Nicolai S\u00f8borg \n Installed-Size: 20\n Depends: python3, python3-requests\n Section: misc\n Priority: optional\n Multi-Arch: foreign\n Description: tool to easily package any binary to a deb file\n ELF2deb makes it easy to package simple binaries to a deb file\n to help deploy files across debian environments.\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/NicolaiSoeborg/ELF2deb/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "ELF2deb", "package_url": "https://pypi.org/project/ELF2deb/", "platform": "", "project_url": "https://pypi.org/project/ELF2deb/", "project_urls": { "Homepage": "https://github.com/NicolaiSoeborg/ELF2deb/" }, "release_url": "https://pypi.org/project/ELF2deb/1.2.0/", "requires_dist": null, "requires_python": "", "summary": "Convert any single (or multiple) executable file(s) to .deb package", "version": "1.2.0" }, "last_serial": 5366661, "releases": { "1.1.0": [ { "comment_text": "", "digests": { "md5": "571fa2ec5038285e60c58207e1f7f999", "sha256": "8a466dc7d9fe6ee6d5b621db1ab7295f280c5caa7dde2add20f1af250462153e" }, "downloads": -1, "filename": "ELF2deb-1.1.0.tar.gz", "has_sig": false, "md5_digest": "571fa2ec5038285e60c58207e1f7f999", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6475, "upload_time": "2019-05-20T21:32:39", "url": "https://files.pythonhosted.org/packages/19/4f/34df6dd4c42dfbd31aebc6ad07c8ff60e26bb40b16b808a090a36f11e22d/ELF2deb-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "230b738fd354fea97bcb7aac079c5586", "sha256": "deec55800c49bda7819bebf40952421d76aa2ef92c3d0a34472fd202cfc8606e" }, "downloads": -1, "filename": "ELF2deb-1.2.0.tar.gz", "has_sig": false, "md5_digest": "230b738fd354fea97bcb7aac079c5586", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8208, "upload_time": "2019-06-06T11:08:21", "url": "https://files.pythonhosted.org/packages/94/fd/ee018dad63908b8288b76242b67ed7dd0f466fc397943f8d993938e6af96/ELF2deb-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "230b738fd354fea97bcb7aac079c5586", "sha256": "deec55800c49bda7819bebf40952421d76aa2ef92c3d0a34472fd202cfc8606e" }, "downloads": -1, "filename": "ELF2deb-1.2.0.tar.gz", "has_sig": false, "md5_digest": "230b738fd354fea97bcb7aac079c5586", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8208, "upload_time": "2019-06-06T11:08:21", "url": "https://files.pythonhosted.org/packages/94/fd/ee018dad63908b8288b76242b67ed7dd0f466fc397943f8d993938e6af96/ELF2deb-1.2.0.tar.gz" } ] }