Easily create text documentation of installed applications, dotfiles, and more.
Project description
shallow-backup
shallow-backup
is designed to make it incredibly simple for developers to document their Mac configurations.
shallow-backup
makes copies of your dotfiles
and fonts
, and documents your package manager install lists in .txt
format.
Example Use Case
Instead of backing up your brew
/ npm
/ pip
/ whatever package manager
library in a system image, which may occupy GBs of space, use shallow-backup
to create lists of the packages installed, which takes up minimal space and can be easily distributed, saved, or transported.
Usage
Usage: shallow-backup.py [OPTIONS]
Easily create text documentation of installed applications, dotfiles, and
more.
Options:
-complete Backup everything.
-dotfiles Create backup of dotfiles.
-fonts Create backup of installed fonts.
-installs Create backup of installs.
-old_path Decline setting new backup directory path.
--new_path TEXT Input a new backup directory path.
-delete_config Remove config file.
-v Display version and author information and exit.
-help, -h Show this message and exit.
Example Commands
$ shallow-backup
-- Launch interactive backup process.$ shallow-backup -old_path -complete
-- Complete backup to path stored in.shallow-backup
.$ shallow-backup -new_path backup_dir_to_be_created -fonts
-- Back up fonts inbackup_dir_to_be_created
directory.
Output Structure
backup_directory
├── dotfiles
│ ├── bashrc.txt
│ ├── pypirc.txt
│ ├── ssh
│ │ └── known_hosts
│ ├── vim
│ └── zshrc.txt
├── fonts
│ ├── AllerDisplay.ttf
│ ├── Aller_Bd.ttf
│ ├── Aller_BdIt.ttf
│ ├── Aller_It.ttf
│ .........
│ ├── Ubuntu\ Mono\ derivative\ Powerline\ Bold\ Italic.ttf
│ ├── Ubuntu\ Mono\ derivative\ Powerline\ Bold.ttf
│ ├── Ubuntu\ Mono\ derivative\ Powerline\ Italic.ttf
│ ├── Ubuntu\ Mono\ derivative\ Powerline.ttf
│ └── installed_fonts.txt
└── installs
├── applications_list.txt
├── brew_cask_list.txt
├── brew_list.txt
├── gem_list.txt
├── npm_list.txt
└── pip_list.txt
5 directories, 214 files
Reinstalling is easy!
Just run $ package_manager install package_manager_list.txt
.
For example, $ brew install brew_list.txt
would reinstall all brew packages listed in brew_list.txt
.
What can I back up?
Dotfiles
Copies the following files into a nested dotfiles
directory.
.pypirc
.ssh
.vim
.zshrc
Package Manager Install Lists
Creates install lists for the following package managers in a nested installs
directory.
brew
brew cask
npm
gem
pip
- System
Applications
directory
Fonts
Copy all fonts from ~/Library/Fonts
into a nested fonts
directory.
Installation Options
-
Install with
pip
$ pip install shallow-backup
$ shallow-backup
-
Download the
shallow-backup
binary from Releases tab.
How to Contribute
- Clone repo and create a new branch:
$ git checkout https://github.com/alichtman/shallow-backup -b name_for_new_branch
. - Make changes and test
- Submit Pull Request with comprehensive description of changes
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for shallow_backup-0.4-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a61abfa6e3d2863167ab71f98c8cbafcf237c97f5eb0d0176ac608a5c09e776 |
|
MD5 | e68edf6050c27179667ba7258dc40197 |
|
BLAKE2b-256 | 5d8e9ca241e4d39db2be46a6bb71d17d7a7259ced53d8902bd26d39133f765ec |