diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 99cb66f..8d76b5d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -40,22 +40,14 @@ jobs: run: | mkdir -p repo cp /tmp/pkgout/*.pkg.tar.zst repo/ + + - name: Generate repo database + run: | cd repo repo-add antergos-pkgs.db.tar.gz *.pkg.tar.zst - - name: Generate package list - run: | - python -c " - import json, os, glob - pkgs = [] - for f in glob.glob('/tmp/pkgout/*.pkg.tar.zst'): - name = os.path.basename(f) - size = os.path.getsize(f) - pkgs.append({'name': name, 'size': size}) - with open('repo/pkglist.json', 'w') as fp: - json.dump(pkgs, fp, indent=2) - fp.write('\n') - " + - name: Generate index and package list + run: python generate-index.py - name: Deploy to Pages uses: peaceiris/actions-gh-pages@v3 diff --git a/generate-index.py b/generate-index.py new file mode 100644 index 0000000..bcff558 --- /dev/null +++ b/generate-index.py @@ -0,0 +1,66 @@ +#!/usr/bin/env python3 +import json, os + +pkgs = [] +for f in os.listdir('repo'): + if f.endswith('.pkg.tar.zst') and '-debug-' not in f: + size = os.path.getsize(os.path.join('repo', f)) + pkgs.append({'name': f, 'size': size}) + +pkgs.sort(key=lambda p: p['name']) + +rows = '' +for p in pkgs: + size_mb = p['size'] / 1024 / 1024 + rows += f''' + {p['name']} + {size_mb:.1f} MB + +''' + +html = f''' + + + + + antergos-pkgs + + + +

antergos-pkgs

+

AUR package repository for Antergos NeXT

+ +
+ Add to /etc/pacman.conf +
[antergos-pkgs]
+SigLevel = Optional TrustAll
+Server = https://Antergos-NeXT.github.io/antergos-pkgs
+
+ + + +{rows}
PackageSize
+ + + +''' + +with open('repo/index.html', 'w') as fp: + fp.write(html) + +with open('repo/pkglist.json', 'w') as fp: + json.dump([{'name': p['name'], 'size': p['size']} for p in pkgs], fp, indent=2) + fp.write('\n')