Skip to content

Latest commit

 

History

History
100 lines (78 loc) · 5.09 KB

README.md

File metadata and controls

100 lines (78 loc) · 5.09 KB
icon description
wrench
How to write an .SBUILD

Instructions

Prerequisite

{% hint style="info" %}

soar add 'bash/bash#base' \
'b3sum#bin' \
'curl#bin' \
'findutils/find#base' \
'grep/grep#base' \
'jq#bin' \
'sed#bin' \
'shellcheck#bin' \
'findutils/xargs#base' \
'yj#bin' \
'yq#bin' --yes

Write

{% code overflow="wrap" %}

!#Assuming You have READ & VERIFIED what the script contains
source <(curl -qfsSL "https://raw.githubusercontent.com/pkgforge/metadata/main/soarpkgs/scripts/repology_fetcher.sh")
#The function itself is `repology_fetcher` but is aliased to `repology-fetcher` for convenience
#If you don't want to source it, just download and save it somewhere in $PATH

!#Run it with the app/pkg_name
repology-fetcher "pkg_name"
#Example: repology-fetcher "librewolf"

{% endcode %}

{% code overflow="wrap" %}

!#Add it using Soar
soar add "sbuild-linter" "shellcheck"
#Or Download manually & Add to Path: https://github.com/pkgforge/sbuilder/releases

!#Run it with /path/to/your/SBUILD
sbuild-linter "./example.SBUILD"
#If it's not successful, fix your errors

!#To get pkgver
sbuild-linter "./example.SBUILD" --pkgver

{% endcode %}

  • If your SBUILD gets validated successfully, Congrats! You can now create a Pull Request or an Issue, Remember to Link/Copy&Paste the .validated version of your SBUILD

Build

{% hint style="warning" %} It is recommended you setup a sandbox or containerized environment before running arbitrary SBUILDs that have NOT been approved by a maintainer into pkgforge/soarpkgs {% endhint %}

!#Add it using Soar
soar add "sbuild" "shellcheck"
#Or Download manually & Add to Path: https://github.com/pkgforge/sbuilder/releases

!#Run it with /path/to/your/SBUILD
sbuild "./example.SBUILD" --log-level "verbose" --keep --outdir "./SBUILD-TEST"
#If it's not successful, fix your errors

Footnotes

  1. Only needed if you intend to use the Automation Scripts.
    Otherwise, you may skip this & just do everything manually