{"id":30725219,"url":"https://github.com/mroik/orange-whale","last_synced_at":"2026-04-23T04:01:26.670Z","repository":{"id":300919916,"uuid":"1007528621","full_name":"Mroik/orange-whale","owner":"Mroik","description":"A backup software that uses telegram as its storage","archived":false,"fork":false,"pushed_at":"2026-03-01T15:16:34.000Z","size":110,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-03-01T18:29:21.931Z","etag":null,"topics":["backup","telegram"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/Mroik.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-24T06:24:29.000Z","updated_at":"2026-03-01T15:16:38.000Z","dependencies_parsed_at":"2025-12-20T00:05:36.920Z","dependency_job_id":null,"html_url":"https://github.com/Mroik/orange-whale","commit_stats":null,"previous_names":["mroik/orange-whale"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Mroik/orange-whale","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mroik%2Forange-whale","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mroik%2Forange-whale/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mroik%2Forange-whale/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mroik%2Forange-whale/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mroik","download_url":"https://codeload.github.com/Mroik/orange-whale/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mroik%2Forange-whale/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32165201,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-23T02:19:40.750Z","status":"ssl_error","status_checked_at":"2026-04-23T02:17:55.737Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["backup","telegram"],"created_at":"2025-09-03T12:11:11.349Z","updated_at":"2026-04-23T04:01:26.400Z","avatar_url":"https://github.com/Mroik.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Orange Whale\nOrange whale is a backup software that uses telegram as free storge. A docker image is available, just mount\nthe folders you want to backup and pass the folder names to `LOCATIONS` to tell Orange Whale what to upload.\n\nIt requires you to also mount `/app/pub.txt`, a file containing your public PGP key. Yes it is required, and yes\nit is useful. DO NOT upload your personal data on external services without encrypting them.\nNow the following envvar:\n- `TELOXIDE_TOKEN`: is the token of the telegram bot you'll be using\n- `CHAT_ID`: the group/channel your bot will upload to\n- `LOCATIONS`: the folders to upload\n- `INTERVAL`: an integer indicating how often to backup specified in hours\n- `RUST_LOG`: logging verbosity. If you're using docker I advise you to set it to `info`\n\n## Backups\nOnce the bot starts uploading you'll realize that the data is split in multiple parts. That's because bots on\ntelegram have an upload limit of 50MB on files. Just download all the parts and `cat` them together. After that\nyou can decrypt using your PGP key and unpack using tar.\n```sh\ncat part_* | gpg -d | tar x\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmroik%2Forange-whale","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmroik%2Forange-whale","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmroik%2Forange-whale/lists"}