Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gomnibus-software

A library of reusable software definitions for gomnibus — the Go-based Omnibus build system. Each YAML file describes how to fetch, build, and install an upstream software component into a gomnibus install root.

CI Go version License

Usage

Add this library as a git submodule:

git submodule add https://github.com/syntaxroot-cc/gomnibus-software lib/gomnibus-software

Then point gomnibus.yaml at it. List your project's own definitions first — the registry uses first-found, so project-local definitions shadow the library:

# gomnibus.yaml
software_dirs:
  - config/software                               # project-local (takes precedence)
  - lib/gomnibus-software/config/software         # shared library

After cloning a project that uses this library:

git submodule update --init

Declare the software in your project:

# config/projects/myapp.yaml
dependencies:
  - zlib
  - openssl
  - myapp-software

Available software

Name Default version License
bzip2 1.0.8 BSD-2-Clause
cacerts 2022-10-11 MPL-2.0
curl 8.14.1 MIT
libffi 3.4.6 MIT
libyaml 0.2.5 MIT
ncurses 6.4 MIT
openssl 3.3.1 OpenSSL
zlib 1.3.1 Zlib

Contributing

See CONTRIBUTING.md. Enable the pre-commit gofmt hook after cloning:

git config core.hooksPath .githooks

To add a new definition, create config/software/<name>.yaml following the gomnibus software YAML schema. The CI suite validates that all definitions parse correctly, all URL sources have checksums, and all declared dependencies exist in the library.

About

Reusable software definitions for gomnibus (Go Omnibus build system)

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages