Fix #108: Fix file ownership on Haiku after rsync#134
Merged
jacob-carlborg merged 2 commits intoApr 8, 2026
Merged
Conversation
Contributor
|
I would prefer an end-to-end test as well, to make sure it's working properly. A new job in the GitHub action workflow, something like: action/.github/workflows/ci.yml Line 306 in e3d398c |
|
As mentioned in #108 (comment), another option might be to tweak the rsync parameters, but I have not looked at that at all. |
db3b320
into
cross-platform-actions:master
94 checks passed
Contributor
|
Thanks. |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
rsync -auzpreserves numeric UIDs. On the Linux runner files are owned by uid 1001, inside the Haiku VM the user is uid 0.Git 2.35.2+ won't run in a directory owned by a different user.
The mismatch was always there, just never triggered.
setuptools78.1.1 callssetuptools_scmearlier inpip install -e .than older versions did, so git gets invoked during install and hits the check for the first time.Fix adds a
synchronizePathsoverride in the Haiku VM to runchownafter rsync as same pattern as the existingsetupWorkDirectoryoverride in the same file, no other OS touched.Adds a CI job
test-haiku-file-ownershipthat boots Haiku and assertsfind . -nouserreturns nothing verifying no files in the work directory are owned by an unresolvable uid after rsync.@manxorist identified the issue and proposed the chown approach in #108, this is just the implementation.
borgbackup/borg#9563 worked around it with
git config --global --add safe.directoryon their end, which is how we ran into this.Closes #108