Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/justintime50/alchemist
Update, backup, and administer your Homebrew or Chocolatey instance.
https://github.com/justintime50/alchemist
alchemist automate backup brew chocolatey homebrew instance packages update upgrade
Last synced: 13 days ago
JSON representation
Update, backup, and administer your Homebrew or Chocolatey instance.
- Host: GitHub
- URL: https://github.com/justintime50/alchemist
- Owner: Justintime50
- License: mit
- Created: 2019-12-27T16:38:32.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-08-23T18:26:15.000Z (3 months ago)
- Last Synced: 2024-10-25T06:48:49.538Z (21 days ago)
- Topics: alchemist, automate, backup, brew, chocolatey, homebrew, instance, packages, update, upgrade
- Language: Go
- Homepage:
- Size: 1.45 MB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Alchemist
Update, backup, and administer your Homebrew or Chocolatey instance.
[![Build Status](https://github.com/Justintime50/alchemist/workflows/build/badge.svg)](https://github.com/Justintime50/alchemist/actions)
[![Coverage Status](https://coveralls.io/repos/github/Justintime50/alchemist/badge.svg?branch=main)](https://coveralls.io/github/Justintime50/alchemist?branch=main)
[![Release](https://img.shields.io/github/v/release/Justintime50/alchemist)](https://github.com/Justintime50/alchemist/releases)
[![Licence](https://img.shields.io/github/license/justintime50/alchemist)](LICENSE)> Bubble bubble, toil and brew...
## Alchemist Backup
Alchemist can backup your entire Homebrew (macOS and Linux) or Chocolatey (Windows) instance. It does this by retrieving the list of installed packages and creating a script that can be run to restore your entire Homebrew or Chocolatey instance.
```bash
alchemist --backup
```If you run into troubles backing up your Homebrew instance, it's recommended to try running Alcehmist with the `--update` flag first.
## Alchemist Update
### macOS and Linux
Alchemist automates the entire Homebrew update process including:
1. Updating available taps and formula references
1. Upgrading packages
1. Upgrading casks
1. Cleaning up old/stale taps and formula
1. Checking for problems with your Homebrew instance### Windows
Alchemist will update all of your Chocolatey packages:
```bash
alchemist --update
```## Install
### macOS and Linux
```bash
# Setup the tap
brew tap justintime50/formulas# Install the tool
brew install alchemist
```### Windows
Download the Windows binary from the [releases page](https://github.com/Justintime50/alchemist/releases).
## Usage
### Logs
Alchemist saves logs to `~/alchemist/update/alchemist-update.log`. Logs by default are kept on the system for `90 days` and are automatically rotated for you once their size exceeds 1mb or the logs become older than 90 days.
### Restore Scripts
Scripts generated from the backup functionality of Alchemist live at `~/alchemist/backup`. Simply run `brew bundle --file path/to/Brewfile` or `path/to/restore-choco-packages.bat` to restore your packages.
```text
Usage:
alchemist --updateOptions:
--backup
Backup your Homebrew instance.
--update
Update your Homebrew instance.
--force
Forces actions such as backing up even when there are errors. (Brew only)
--greedy
Force updates to casks that have auto-update capabilities in their respective UIs.
```## Development
```shell
# Get a comprehensive list of development tools
just --list
```