https://github.com/maxam2017/installr
Intelligent package installation tool. macOS only (for now)
https://github.com/maxam2017/installr
Last synced: over 1 year ago
JSON representation
Intelligent package installation tool. macOS only (for now)
- Host: GitHub
- URL: https://github.com/maxam2017/installr
- Owner: maxam2017
- License: mit
- Created: 2024-02-14T17:42:42.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-15T12:34:07.000Z (over 2 years ago)
- Last Synced: 2025-02-15T20:41:38.158Z (over 1 year ago)
- Language: TypeScript
- Homepage: https://installr-docs.vercel.app/
- Size: 89.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
> installr
installr is a performant package installation tool designed to simplify the process of managing and installing packages while automatically resolving dependencies.
It currently supports on macOS ๐ only.
## What's included
- ๐ค **Automated Installation**: installr automatically installs specified packages and resolves their dependencies, ensuring that packages are installed in the correct order.
- โก๏ธ **Performant Installation**: installr is designed to be fast and efficient, installing packages in parallel to minimize installation time.
- ๐งพ **Simple Configuration**: Define your packages and their dependencies in a JSON or YAML configuration file.
## Installation
No dependencies required. Just download the latest binary from the [releases page](https://github.com/maxam2017/installr/releases).
After downloading the binary, make it executable by running the following command:
```bash
chmod +x installr
```
If you want to use installr from anywhere, move it to a directory in your PATH, such as `/usr/local/bin`:
```bash
mv installr /usr/local/bin
```
## Usage
Create a configuration file (config.json or config.yaml) with a list of packages and their dependencies. For example:
```json
{
"packages": [
{
"name": "packageA",
"installScript": ["npm install -g packageA"],
"dependencies": ["packageB", "packageC"]
},
{
"name": "packageB",
"installScript": ["npm install -g packageB"]
},
{
"name": "packageC",
"installScript": ["npm install -g packageC"],
}
]
}
```
Run installr with your configuration file:
```bash
installr config.json
```
installr will automatically install the specified packages and handle dependencies. (In this example, packageB and packageC will be installed before packageA.)
For more details about the configuration file, see the [schema.json file](assets/schema.json).
## Options
- **-h**, **--help**: Show help message.
## License
Distributed under the MIT License - see `LICENSE` file for detail.