{"id":19090132,"url":"https://github.com/destrangis/lbox","last_synced_at":"2025-06-19T22:08:09.839Z","repository":{"id":236333816,"uuid":"792391185","full_name":"destrangis/lbox","owner":"destrangis","description":"Serve files via HTTP for a limited time","archived":false,"fork":false,"pushed_at":"2024-07-17T16:01:17.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-04T21:13:03.017Z","etag":null,"topics":["file-sharing","python3","temporary","web-application","wsgi-application"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/destrangis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-26T15:15:54.000Z","updated_at":"2024-07-17T16:01:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"12fa3d1c-b5e4-4d89-b96b-bd2d5c8da5f8","html_url":"https://github.com/destrangis/lbox","commit_stats":null,"previous_names":["destrangis/lbox"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/destrangis/lbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/destrangis%2Flbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/destrangis%2Flbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/destrangis%2Flbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/destrangis%2Flbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/destrangis","download_url":"https://codeload.github.com/destrangis/lbox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/destrangis%2Flbox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260838597,"owners_count":23070606,"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":["file-sharing","python3","temporary","web-application","wsgi-application"],"created_at":"2024-11-09T03:02:05.054Z","updated_at":"2025-06-19T22:08:04.766Z","avatar_url":"https://github.com/destrangis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Lbox - a litterbox clone-ish\n\nThis is a self-hosted server that makes you make available files for a limited amount of time.\n\n### Installation\n\nThe best way to install this is via `pipx` which will create a virtual environment and manage the dependencies for you:\n\n    pipx install lbox\n\nThat will work when the project is available from [Pypi](https://pypi.org), meanwhile from the .tar.gz file as created by the build command `sdist`:\n\n    pipx install lbox-X.Y.tar.gz\n\nWhere, of course, X.Y is the version number.\n\n### Building from repo\n\nYou should be working on a virtual environment. On your virtual environment install the `build`package:\n\n    python3 -m pip install build\n\nthen simply run build, which will create the source distribution (i.e. the .tar.gz file) and the wheel package:\n\n    python3 -m build\n\n### Using Lbox\n\nLbox uses a configuration file that contains sections with a name of the form `\u003cnumber\u003e` followed by either `hours`, `minutes`, `days` or `seconds`, e.g:\n\n    [1 hour]\n    dir = /var/www/lbox/1hourfiles\n    [3 days]\n    dir = /var/www/lbox/3dayfiles\n\nIn the example above, any file placed on the directory `/var/www/lbox/1hourfiles` will be deleted when its modification time is more than one hour ago. Similarly for files placed on `/var/www/lbox/3dayfiles`, which will be deleted after three days.\n\nOn each section there may be more directory variables listed, the name of the variable is unimportant. Also a variable can have multiple directories, e.g.:\n\n    [1d]\n    dir1 = /home/fred/temp\n    manydirs =\n       /var/www/lbox/1dayfiles\n       /tmp/scratch\n\nIn this example, the files placed on any of those directories will be deleted when their modification time is one day old. Note that you only need to specify `d`, `m`, `h` and `s` for days, minutes, hours and seconds, respectively. Only the initial matters. Also note that whitespace between the number and the units is optional.\n\n#### The lbox server\n\nThe `lbox`command is the web server that _publishes_  the files. It will just provide a list of the files along with its size and the time to expiration. Every file can be downloaded from the url ending in `/file/\u003cfilename\u003e`, with no additional directory path. No, the server doesn't allow uploading new files, but what's the need for it? Being self hosted, you can always `scp`into the right directories to share.\n\nThe lbox server runs by default on port 8080 and needs the same configuration file as the `expirator` utility.\n\nTo run `lbox`use the command:\n\n    lbox --config=lbox.conf\n\nIt is recommended that a `systemd`is created to run `lbox` continuously. It is also recommended that `lbox`be run on http behind a reverse proxy that handles the SSL certificate and manages security etc.\n\n### License\nThis project is released under the MIT license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdestrangis%2Flbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdestrangis%2Flbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdestrangis%2Flbox/lists"}