1
0
Fork
You've already forked bumerge
0
Merge Butane configurations
  • Python 100%
pre-commit-ci[bot] f4283ddbc5
[pre-commit.ci] pre-commit autoupdate ( #45 )
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2025年06月02日 21:27:22 +02:00
.github Don't allow prereleases in test 2024年12月03日 19:55:32 +01:00
LICENSES Relicense to BSD-3-Clause 2023年05月02日 10:44:30 +02:00
tests Relicense to BSD-3-Clause 2023年05月02日 10:44:30 +02:00
.gitignore Relicense to BSD-3-Clause 2023年05月02日 10:44:30 +02:00
.pre-commit-config.yaml [pre-commit.ci] pre-commit autoupdate ( #45 ) 2025年06月02日 21:27:22 +02:00
bumerge.py Release 0.2.1 2024年09月10日 12:34:54 +02:00
CHANGELOG.md Release 0.2.1 2024年09月10日 12:34:54 +02:00
LICENSE Relicense to BSD-3-Clause 2023年05月02日 10:44:30 +02:00
pyproject.toml Handroll coverage 2024年12月03日 19:55:32 +01:00
README.md Add Homebrew install to README 2024年04月07日 23:39:42 +02:00

bumerge

Merge Butane configurations

This is a simple Python script that will merge Butane configurations from multiple files into one. Makes your job easier when you manage servers.

  • merges multiple .bu files into one
  • inlines external files into the configs
  • checks source configs for errors

bumerge currently supports Fedora CoreOS Specification v1.5.0. Support for other distributions is planned, but not prioritized.

Install

pipx install bumerge

Alternatively, with Homebrew:

brew install kytta/python/bumerge

Use

Just pass the list of the files to the app

bumerge root.bu modules/time.bu modules/user.bu

Important: bumerge will perform a deep merge. If there are key conflicts, the latter file takes precedence.

Command-line arguments

usage: bumerge [-h] [--version] [--output FILE] [--variant {fcos}]
 [--spec-version {1.5.0}]
 FILE [FILE ...]
positional arguments:
 FILE config files to merge
options:
 -h, --help show this help message and exit
 --version, -V show program's version number and exit
 --output FILE, -o FILE output file. Outputs to stdout by default
 --variant {fcos} Butane specification variant
 --spec-version {1.5.0} Butane specification version

Licence

© 2023 Nikita Karamov
Licensed under the BSD 3-Clause "New" or "Revised" License.

This README can also be licensed under the Creative Commons Attribution 4.0 International


This project is hosted on GitHub: https://github.com/kytta/bumerge.git