{"id":48593162,"url":"https://github.com/needs-coffee/winbackup","last_synced_at":"2026-04-08T20:53:25.843Z","repository":{"id":37008775,"uuid":"472080165","full_name":"needs-coffee/winbackup","owner":"needs-coffee","description":"Backup user files on windows to 7z archives","archived":false,"fork":false,"pushed_at":"2022-10-27T14:08:16.000Z","size":2108,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-08T20:53:21.851Z","etag":null,"topics":["7zip","backup","backup-script","backup-tool","hyper-v","plex","virtualbox","windows"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/needs-coffee.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-03-20T19:21:39.000Z","updated_at":"2022-05-03T21:48:19.000Z","dependencies_parsed_at":"2022-06-29T07:33:37.791Z","dependency_job_id":null,"html_url":"https://github.com/needs-coffee/winbackup","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/needs-coffee/winbackup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/needs-coffee%2Fwinbackup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/needs-coffee%2Fwinbackup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/needs-coffee%2Fwinbackup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/needs-coffee%2Fwinbackup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/needs-coffee","download_url":"https://codeload.github.com/needs-coffee/winbackup/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/needs-coffee%2Fwinbackup/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31573788,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"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":["7zip","backup","backup-script","backup-tool","hyper-v","plex","virtualbox","windows"],"created_at":"2026-04-08T20:53:24.122Z","updated_at":"2026-04-08T20:53:25.823Z","avatar_url":"https://github.com/needs-coffee.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Winbackup\r\n\r\n![PyPI](https://img.shields.io/pypi/v/winbackup) ![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/needs-coffee/winbackup?include_prereleases) ![GitHub](https://img.shields.io/github/license/needs-coffee/winbackup) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/winbackup) [![Downloads](https://pepy.tech/badge/winbackup)](https://pepy.tech/project/winbackup) ![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/needs-coffee/winbackup/TestRunner/main?label=build%20%28main%29) ![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/needs-coffee/winbackup/TestRunner/dev?label=build%20%28dev%29)\r\n\r\nA python package to back up user files on Windows to 7z archives. Useful for offsite or cloud backups and backups can be optionally encrypted with AES256. Archives can be Optionally split archives into smaller archives for easier management. As well as user files can backup Plex Media Server, Hyper-V Virtual Machines and VirtualBox Virtual Machines.\r\n\r\n- embeds 7z to perform compression\r\n- saves lists of installed programs and drivers\r\n- optional AES256 encryption\r\n- Archives produced are full backups - no incremental backups at present\r\n- Archives saved in the format - host_user_yyyy-mm-dd_folder.7z\r\n- Tested on Windows 10, Python 3.7+ (not compatible with macOS or Linux)\r\n\r\nInstallation\r\n------------\r\nInstallation is from a package on GitHub Releases or from [pip](https://pypi.org/project/winbackup/) with ``pip install winbackup``\r\n\r\nUsage\r\n-----\r\nInteractive CLI:\r\n```shell\r\nwinbackup D:/backup_path\r\n```\r\n\r\nRun from configuration file:\r\n```shell\r\nwinbackup -c ./winbackup_config.yaml\r\n```\r\n\r\nCreate configuration file\r\n-----\r\nCan also be run using a configuration file. To generate a blank configuration file use ```winbackup -C```\r\nor ```winbackup --create-configfile```. This config file must be modified before use with valid paths or will raise an exception whe run.\r\n\r\nTo generate a configuration file interactively run ```winbackup -i``` or ```winbackup --interactive-config```. This file can be run without modification for later use.\r\n\r\nFull CLI options\r\n----------------\r\n\r\nAvailable CLI options.\r\n\r\nFlag | Option                | Desc                                                              |\r\n-----|-----------------------|-------------------------------------------------------------------|\r\n`-a` | `--all`               | Run backup with all possible backup targets selected              |\r\n`-c` | `--configfile`        | Run backup from a supplied yaml config file                       |\r\n`-C` | `--create-configfile` | Create a default configuration file template. Will need modified before being run.\r\n`-h` | `--help`              | Displays help information\r\n`-i` | `--interactive-config`| Generate a configuration file interactively, can be run directly after generation \r\n`-q` | `--quiet`             | Minimal terminal output                                           |\r\n`-v` | `--verbose`           | Sets logging to debug. Only affects log file not stdout.          |\r\n`-V` | `--version`           | Print version info.                                               |\r\n`-y` | `--autoconfirm`       | Autoconfirm prompts                                               |\r\nTests\r\n-----\r\nTo run unitests\r\n```shell\r\npython -m unittest discover tests -v\r\npython -m pytest tests -v \r\n```\r\n\r\nBuild Packages\r\n-----\r\n```shell\r\npython -m build\r\n```\r\n\r\nAbout\r\n-----\r\nCreation date: 2021  \r\nModified date: 03-05-2022  \r\nDependencies: colorama, tqdm, Send2trash, humanize, PyYAML\r\n\r\n\r\nLicence\r\n-------\r\nThis code is licensed under the GNU GPLv3 Licence.\r\nIncluded dependencies and code are covered by their own licence - check project pages for details.\r\n\r\n- For finding windows paths there is a section of code in configsaver from https://gist.github.com/mkropat/7550097 covered under the MIT Licence copyright [mkropat](https://gist.github.com/mkropat/7550097)\r\n- [7z](https://www.7-zip.org/) - covered by the L-GPL licence available [here](https://www.7-zip.org/license.txt)\r\n- [winfetch](https://github.com/kiedtl/winfetch) - under MIT Licence \r\n\r\n\r\n```\r\nCopyright (C) 2021-2022 Joe Campbell  \r\n GNU GENERAL PUBLIC LICENSE (GPLv3)  \r\n\r\nThis program is free software: you can redistribute it and / or modify\r\nit under the terms of the GNU General Public License as published by\r\nthe Free Software Foundation, either version 3 of the License, or\r\n(at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful,\r\nbut WITHOUT ANY WARRANTY\r\nwithout even the implied warranty of\r\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r\nGNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License\r\nalong with this program.  If not, see \u003c https: // www.gnu.org/licenses/\u003e.\r\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneeds-coffee%2Fwinbackup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneeds-coffee%2Fwinbackup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneeds-coffee%2Fwinbackup/lists"}