https://github.com/bobbbay/salo
Declarative, reproducible, statically typed build and deployment for Operating Systems.
https://github.com/bobbbay/salo
build-system reproducible-builds typed
Last synced: 6 months ago
JSON representation
Declarative, reproducible, statically typed build and deployment for Operating Systems.
- Host: GitHub
- URL: https://github.com/bobbbay/salo
- Owner: bobbbay
- License: mit
- Created: 2020-09-24T19:44:54.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2022-06-17T02:58:05.000Z (over 3 years ago)
- Last Synced: 2025-03-30T18:04:50.727Z (7 months ago)
- Topics: build-system, reproducible-builds, typed
- Language: Rust
- Homepage: https://bobbbay.github.io/salo/
- Size: 1.69 MB
- Stars: 37
- Watchers: 3
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[](https://github.com/semc-labs/salo)
Salo
Documentation
| Roadmap
| Community
| ContributingA declarative, reproducible, statically-typed build/deployment toolset
**Salo** is a declarative, reproducible, statically-typed configuration language for building and deploying operating system images. This leads to composable, scalable, and functional operating systems in-situ. For more information about features, read [our documentation](https://semc-labs.github.io/salo).
## Features
* Expressive type system (dependent, first-class functions and types)
* Efficient deployment (leveraging diffs to only deploy what you need)
* On-the-fly changes (configuring systems as quickly as possible)
* Powerful history management (view configuration history, and rollback to previous deployments)
* Staged changes (see exactly what your configuration does, before it's deployed)
## Getting startedTo get started with Salo, run (with Cargo):
```shell
cargo t
```## Documentation
Now that you're ready with Salo, you can learn more about how to develop operating system configuration in [the documentation](https://semc-labs.github.io/salo/).
## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Furthermore, please make sure to update tests as appropriate.