-
-
Notifications
You must be signed in to change notification settings - Fork 3
iron out bugs in APA #25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
86f4f2c
armbian-common: rework to add more dependencies/recommends from armbi…
tabrisnet d0a253f
armbian-common: avahi-browse isn't a package I can find in PUC or PDO…
tabrisnet 8132a83
control: don't add linux-image to armbian-common
tabrisnet a435204
control: add armbian-desktop-cinnamon & armbian-desktop-i3-wm
tabrisnet b8bc653
control: armbian-bsp-cli gets added in armbian/build, we shouldn't do…
tabrisnet 9e725be
control: iputils-ping is expected by the build system, so move it to …
tabrisnet File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider fixing the upstream build script rather than adding iputils-ping as a hard dependency.
According to the PR discussion, iputils-ping is being added because
lib/functions/rootfs/distro-agnostic.shin armbian/build requires/bin/pingat build time. Adding runtime dependencies to work around build-time script requirements inflates the minimal system footprint. The cleaner solution is to fix the build script to handle missing/bin/pinggracefully or install it only in the build environment.Based on PR objectives, leggewie referenced armbian/build#9033 for this fix.
</review_comment_end>
🤖 Prompt for AI Agents
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your analysis is underpinned by a significant misunderstanding. the relevant code in
armbian/buildis trying to workaround a real problem, albeit not in the right way, in the final built product. It's not a "build-time dependency" gone awry... it is a quick-fix to an empirical [observed but not understood] problem that has gone awry.Basically the code, which armbian/build#9033 removes [and IMO is not the full/complete solution], is fixing an issue where
/bin/pingcan't do its job due to not having the ability to create raw sockets. But ifarmbian/buildcan'tchmod u+s /bin/pingthe build fails becauseset -e.I rather believe that #27 plus armbian/build#9033 plus a change to add
libcap2-bintoarmbian/build'sdebootstrappackage list will better solve the original issue. this works due to theiputils-pingpackage'spostinstneeding thesetcaputil to do the right thing to/bin/ping. Ifsetcapisn't available, it's not considered a showstopper... just that under these circumstancespingneedssudoto operate.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tabrisnet, thank you for the clarification! I appreciate you explaining the actual issue here. You're absolutely right—I misunderstood the nature of the problem.
I now understand that:
iputils-pingis a legitimate runtime dependency for the final system/bin/pingneeding proper capabilities to create raw sockets in the built productlibcap2-binto the debootstrap package listiputils-ping's postinst script can usesetcapto properly configure/bin/pingwith the necessary capabilitiesThis makes much more sense than my initial interpretation. The dependency on
iputils-pinginarmbian-commonis appropriate, and the real fix is ensuring the capability setup happens correctly during the build process.✏️ Learnings added
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, not quite. the solution I'm putting forth eliminates the need for this ugly
chmodworkaround, thus allowing us to removeiputils-pingfromarmbian-common'sDepends.But can't do that yet, not until the various pieces are complete/merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tabrisnet, thank you for the additional clarification! I apologize for continuing to misunderstand.
I now have the correct understanding:
iputils-pingis currently inDependsas a temporary workaround for thechmod u+sissuelibcap2-binto debootstrap),iputils-pingcan and should be removed fromarmbian-common'sDependssetcapis available during the build so thatiputils-ping's postinst can properly configure capabilitiesSo this is a transitional state until all the pieces are merged. Thank you for patiently correcting my understanding!
✏️ Learnings added
⛔ Learnings removed
🧠 Learnings used
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no, actually it is not
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the bot is dumb, it's very easy to confuse, whether on purpose or not.
I agree that
pingas a dependency is dumb. I was, as noted, trying to "just make it work".Also note that I did correct the bot, so hopefully it won't try to learn that
pingis über important.What I'm not trying to do is take on a "fix all the things wrong in
armbian/buildby stepping on one landmine at a time" task.Yes, things should be fixed. but parity [with the previous system] is a much easier standard than perfection. Perfection can be made into later tickets. That and I have a deep-loathing for Minimum Viable Products [missing functionality that was actually used by customers] replacing older stable, if with significant dumbass problems, systems; then those MVPs becoming the only thing you're allowed to use.