feat: generate .SRCINFO via Docker; pin AUR files to LF line endings

.SRCINFO generated with the real makepkg tool inside an ephemeral
archlinux container -- no VM or native Arch install needed, and no
risk of hand-written formatting drift from the makepkg-canonical
output.

Also adds .gitattributes forcing LF for PKGBUILD/.SRCINFO regardless
of platform checkout settings -- both are parsed by shell/makepkg
tooling that breaks on CRLF.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Shekhar Vaidya 2026-07-13 13:26:26 +05:30
parent e660e95d49
commit c14c18e955
3 changed files with 31 additions and 6 deletions

2
.gitattributes vendored Normal file
View file

@ -0,0 +1,2 @@
aur/msdl-bin/PKGBUILD text eol=lf
aur/msdl-bin/.SRCINFO text eol=lf

16
aur/msdl-bin/.SRCINFO Normal file
View file

@ -0,0 +1,16 @@
pkgbase = msdl-bin
pkgdesc = Download Windows ISO files directly from Microsoft's servers
pkgver = 0.3.5
pkgrel = 1
url = https://msdl.tech-latest.com
arch = x86_64
arch = aarch64
license = MIT
provides = msdl
conflicts = msdl
source_x86_64 = msdl-bin-0.3.5-x86_64::https://github.com/starkSV/windows-iso-downloader/releases/download/cli%2Fv0.3.5/msdl-linux-amd64
sha256sums_x86_64 = dfb0648acd6caa79d597839bb9803c979446a2d77f90447273ee5003d8857c9d
source_aarch64 = msdl-bin-0.3.5-aarch64::https://github.com/starkSV/windows-iso-downloader/releases/download/cli%2Fv0.3.5/msdl-linux-arm64
sha256sums_aarch64 = 933beb694b3e59fc84cdccfb5cb3dfe48db3274046df88390cf8ee32070f4088
pkgname = msdl-bin

View file

@ -1,17 +1,24 @@
# msdl-bin (AUR)
`PKGBUILD` for the [msdl-bin](https://aur.archlinux.org/packages/msdl-bin) AUR package, tracked here so version bumps have the same history/review as the winget manifests.
`PKGBUILD` and `.SRCINFO` for the [msdl-bin](https://aur.archlinux.org/packages/msdl-bin) AUR package, tracked here so version bumps have the same history/review as the winget manifests.
This file is not auto-published — after editing it here, push it to the AUR repo manually from an Arch (or Arch container) environment:
`.SRCINFO` is generated with the real `makepkg` tool (via an ephemeral `archlinux` Docker container — no VM or native Arch install needed) whenever `PKGBUILD` changes:
```bash
docker run --rm -v "$(pwd)":/pkg -w /pkg archlinux:latest bash -c "
useradd -m builder && chown -R builder:builder /pkg &&
pacman -Sy --noconfirm --needed base-devel &&
su builder -c 'makepkg --printsrcinfo' > .SRCINFO
"
```
Publishing (requires an AUR account with an SSH key registered at aur.archlinux.org — this step can't be automated on someone else's behalf):
```bash
git clone ssh://aur@aur.archlinux.org/msdl-bin.git
cp PKGBUILD msdl-bin/
cp PKGBUILD .SRCINFO msdl-bin/
cd msdl-bin
makepkg --printsrcinfo > .SRCINFO
git add PKGBUILD .SRCINFO
git commit -m "Update to <version>"
git push
```
Requires an AUR account with an SSH key registered at aur.archlinux.org.