Change dpkg-buildpackage to sbuild for packages acr-webmcp analoginput pipewire-configs hifiberryos#613
Change dpkg-buildpackage to sbuild for packages acr-webmcp analoginput pipewire-configs hifiberryos#613LarsGrootkarzijn wants to merge 9 commits intohifiberry:hbosngfrom
Conversation
hifiberry
left a comment
There was a problem hiding this comment.
Thanks for the work on migrating to sbuild! A few issues I spotted:
1. pw-api: Repo URL points to fork
packages/pw-api/build.sh changes the repo URL from https://github.com/hifiberry/pipewire-api.git to https://github.com/LarsGrootkarzijn/pipewire-api. This should stay pointing to the hifiberry org repo.
2. dspprofiles: $PACKAGE undefined
In packages/dspprofiles/build.sh, BUILD_DIR="/tmp/${PACKAGE}-build" is used but PACKAGE is never defined, so this will resolve to /tmp/-build.
3. riaa: Missing braces in variable expansion
In packages/riaa/build.sh, the mv commands use $DEB_PACKAGE_*.deb which bash interprets as ${DEB_PACKAGE_}*.deb (looking for a variable named DEB_PACKAGE_). Should be ${DEB_PACKAGE}_*.deb. This bug existed before the PR but should be fixed while you're in there.
4. nowplaying-sdl: $DEST_DIR undefined
The new Step 3 in packages/nowplaying-sdl/build.sh copies artifacts to $DEST_DIR, but this variable is never defined in the script.
5. dspprofiles: sbuild not actually called
The script sets DIST_ARG/CHROOT_ARG but never calls sbuild — it still delegates to the cloned repo's build. Are these env vars meant to be picked up downstream?
6. Missing trailing newlines
Several files lost their trailing newline at EOF (minor, but tools like diff and some editors will flag it).
|
hifiberry
left a comment
There was a problem hiding this comment.
Looks good, thanks for addressing the feedback!
Hello,
Since we have now created a script for cross compiling I think it is a good idea to move away from dpkg-buildpackage. If dpkg-buildpackage is kept we would have to create two wrappers giving bad maintainability.
Additionally, sbuild has it's improvements over dpkg-buildpackage. It gives more reliable builds and better replicability since it is containered. Next to these ~10 packages, there are more which still need sbuild integration. Which is why I created a list.
Autorec is left, but to my understanding this is not yet integrated into hifiberryos. Additionally, speakereq I cannot tell since this is a private repo. Raat is also private but has the hook for cross-compile in the build.sh.
Will speakereq become public some day? Raat i assume is not going to be public because of licensing? Lastly, I believe the licman folder can be remvoed, but not sure.
some currently fail lintian, due to copyright file missing, or malformed changelog but that should not impact functionality