Skip to content

Repology metadata #5691

Repology metadata

Repology metadata #5691

name: Repology metadata
on:
schedule:
- cron: '0 */6 * * *'
workflow_dispatch:
jobs:
main:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Clone termux-packages
run: |
mkdir -p /tmp/repos
git clone https://github.com/termux/termux-packages.git /tmp/repos/termux-packages
- name: Generate packages.json
run: |
export TERMUX_SCRIPTDIR=/tmp/repos/termux-packages
pushd /tmp/repos/termux-packages
# Speed up git log by significant amount
# See: https://stackoverflow.com/questions/35186829/how-to-improve-git-log-performance
git config core.commitGraph true
git config gc.writeCommitGraph true
git repack -Ad --max-pack-size=1g
git commit-graph write --changed-paths --reachable
popd
bash ./generate-repology-metadata.sh /tmp/repos/termux-packages > ./packages.json
if ! jq . ./packages.json > /dev/null; then
echo "Error: invalid packages.json" > /dev/stderr
exit 1
fi
if [ $(git diff ./packages.json | wc -l) -gt 0 ]; then
git config --global user.name "Termux Github Actions"
git config --global user.email "[email protected]"
git add ./packages.json
git commit -m "Generate new metadata for Repology"
git push
fi