https://github.com/pkgforge/sbuilder-go
Golang utilities for Linting and Building SBUILD Recipes [Maintainer=@xplshn]
https://github.com/pkgforge/sbuilder-go
Last synced: 4 months ago
JSON representation
Golang utilities for Linting and Building SBUILD Recipes [Maintainer=@xplshn]
- Host: GitHub
- URL: https://github.com/pkgforge/sbuilder-go
- Owner: pkgforge
- License: bsd-3-clause
- Created: 2024-11-22T09:24:01.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-07-23T23:09:48.000Z (7 months ago)
- Last Synced: 2025-08-13T20:55:18.282Z (6 months ago)
- Language: Go
- Homepage:
- Size: 58.6 KB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
### SBUILDTOOLS written in Go. (for your ease and convenience)
- Currently implemented:
- linter
#### About(linter)
The `sbuild-linter` is a tool that validates your recipes, it checks for all kinds of wrongdoings and makes sure that your file is valid, according to the [SBUILD spec](https://github.com/pkgforge/soarpkgs/blob/main/SBUILD_SPEC.md)
The linter will produce: `{{ yourRecipe }}.validated` and a `{{ yourRecipe }}.pkgver`, these should be used by an implementation of the `sbuild-builder`.
TODO(linter):
- Switch to using "github.com/goccy/go-yaml"
- Convert into library
- Preserve input file's whitespace
- Use AnnotateSource to print errors and warnings that show the user specifically what line is wrong
- Write unit tests (and make a GH action that runs on every commit against those tests) [badge?]
- Flags to disable creation of .validated
- Print time it took to validate each file
- Parallel mode?
TODO(builder):
- Implement using the `sbuild-linter` as library
RFC:
- Add support for templating in the `linter` and `builder` (go tags?)