On Wednesday, 14 August 2024 16:43:54 CDT Agathe Porte wrote:
Or maybe I could tar the upstream .git folder and store everything else
as plain files? But still a binary blob in source package. And
extracting the tar into a .git in the filesystem in /usr/share/ may
raise a lot of Lintian warnings?
Perhaps you could include the contents of the git repo in the source package,
then in d/rules run something like `cd usr/src/qmk_firmware && git init && cp
files . && git add -A && git commit`. That way, you just have regular files in
the source package, but you generate a synthetic Git repo in the build process.
Reproducibility might be difficult, given that git uses the current date and such for creating commits. Doesn't sound insurmountable though!
Note that the qmk tool does require a git repository to work, so I did
not consider shipping only the code.
Piper McCorkle wrote:
On Wednesday, 14 August 2024 16:43:54 CDT Agathe Porte wrote:
Or maybe I could tar the upstream .git folder and store everything else
as plain files? But still a binary blob in source package. And
extracting the tar into a .git in the filesystem in /usr/share/ may
raise a lot of Lintian warnings?
Perhaps you could include the contents of the git repo in the source package,
then in d/rules run something like `cd usr/src/qmk_firmware && git init && cp
files . && git add -A && git commit`. That way, you just have regular files in
the source package, but you generate a synthetic Git repo in the build process.
Reproducibility might be difficult, given that git uses the current date and
such for creating commits. Doesn't sound insurmountable though!
You can set GIT_AUTHOR_NAME and GIT_COMMITTER_DATE to use
SOURCE_DATE_EPOCH and export those vars (if there isn't a helper which does this already in the Debian build tooling).
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 715 |
| Nodes: | 16 (0 / 16) |
| Uptime: | 167:28:28 |
| Calls: | 12,096 |
| Calls today: | 4 |
| Files: | 15,003 |
| Messages: | 6,517,812 |