{"id":17216288,"url":"https://github.com/exhuma/mypi","last_synced_at":"2025-04-13T23:21:47.436Z","repository":{"id":1784308,"uuid":"2708115","full_name":"exhuma/mypi","owner":"exhuma","description":"Private python package repository (private cheeseshop)","archived":false,"fork":false,"pushed_at":"2013-12-24T07:15:38.000Z","size":265,"stargazers_count":26,"open_issues_count":0,"forks_count":4,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-12-24T02:35:09.569Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/exhuma.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-11-04T09:18:42.000Z","updated_at":"2019-08-13T14:52:17.000Z","dependencies_parsed_at":"2022-09-16T19:22:50.667Z","dependency_job_id":null,"html_url":"https://github.com/exhuma/mypi","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exhuma%2Fmypi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exhuma%2Fmypi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exhuma%2Fmypi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/exhuma%2Fmypi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/exhuma","download_url":"https://codeload.github.com/exhuma/mypi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232154296,"owners_count":18480245,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T03:27:25.273Z","updated_at":"2025-01-02T04:56:02.121Z","avatar_url":"https://github.com/exhuma.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Private Python Package Index\n============================\n\nThis application provides a private package index. Sometimes you want to be\nable to ``easy_install``/``pip install`` your packages without putting them on\n``pypi``. The reasons for this can vary. Maybe you package is not \"ripe\"\nenough to release it into the wild, or, you may be working on\nproprietary/closed code.\n\nIf you need this, you are required to do two things:\n\n#. You need to make the packages available somewhere, where\n   ``setuptools``/``distribute`` can find them.\n#. You need to dpecify this location in your ``setup.py`` script using\n   ``dependency_links``\n\nAdding the ``dependency_links`` information is easy. But \"publishing\" your\npackages can be more cumbersome. You have to manually upload the packages to a\nreachable location, and make the packages discoverable via HTTP (using\n``httpd`` for example).\n\nThis is how I got started. I used ``scp`` to upload the packages, and put them\ninto a folder which was published by ``httpd``.\n\nYou could automate this step using a third-party tool like ``fabric``. This\nwas my next choice. And it works well.\n\nBut ``python`` is perfectly able to solve all this using ``setup.py`` with a\ncustom ``~/.pypirc``. Once set up, the only thing you need to do is to run::\n\n    python setup.py register -r local\n    python setup.py sdist upload -r local\n\nExample ``~/.pypirc``::\n\n    [local]\n    repository: http://my.installed.mypi.instance\n    username: user\n    password: passwd\n\n.. note:: Currently, authentication is not yet implemented. So\n          username/password will be ignored.\n\nUploading your packages like this just \"feels right\". Additionally, it\nencourages you to keep your metadata inside ``setup.py`` up-to-date.\n\nUsage\n-----\n\nOnce this application is installed, it will be possible to list your published\npackages using the URL you configured during installation.\n\nAlso, if you added a section in you pypirc, you can easily upload packages\nusing::\n\n    python setup.py register -r local\n    python setup.py sdist upload -r local\n\nIn this case, ``local`` is the repository name configured in your ``.pypirc``.\n\nInstallation (mod_wsgi)\n-----------------------\n\nsee INSTALL.rst\n\nDevelopment\n-----------\n\nThe database is versioned using ``sqlalchemy-migrate``. Be sure to read up on\nthis before you make changes to the schema.\n\n.. important:: It turned out that certain schema modifications are not working\n               well with SQLite. For this reason, sqlalchemt-migrate is\n               currently not being used to it's fullest extent. It's primarily\n               used to create the database. New installations should\n               re-create the database from scratch. I know that this is far\n               from perfect. But so far I only tested with SQLite. If new\n               migrations are added which require a DB recycle, I will note\n               this in the installation docs!\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexhuma%2Fmypi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fexhuma%2Fmypi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fexhuma%2Fmypi/lists"}