> On Jan 17, 2017, at 09:53, Scott Hannahs <shann...@users.sourceforge.net> 
> wrote:
> 
> 
>> On Jan 17, 2017, at 10:32 AM, Alexander Hansen <alexanderk.han...@gmail.com> 
>> wrote:
>> 
>>> 
>>> On Jan 16, 2017, at 11:37, Scott Hannahs <shann...@users.sourceforge.net> 
>>> wrote:
>>> 
>>> I have a question and maybe an issue for the fink cognoscenti.
>>> 
>>> I maintain a package (duplicity) for doing encrypted backups that has an 
>>> extensive testing phase. That testing phase is failing under fink.  However 
>>> during that testing, the routines unpack a tar.gz file to create a 
>>> directory structure for backing up and restoring.
>>> 
>>> In looking at the files, they seem to have the user/group ownership of the 
>>> tar file and not fink-bld.  I find several other files such as byte 
>>> compiled python files to have ownership as root and not as fink-bld.  There 
>>> are a couple of test scripts that end up as fink-bld as the owner but wheel 
>>> as the group.
>>> 
>>> If the testing phase were executed as root, then it would unpack the tar 
>>> file as the original owner and not use fink-bld as the owner.  If the 
>>> following command is done:
>>> sudo -u fink-bld tar xzf testfiles.tar.gz
>>> 
>>> Then it will unpack the files as the correct owner/group for testing.  But 
>>> of course the distributed test script does not hardwire in a fink-bld user 
>>> for testing.
>>> 
>>> Is this a fink issue?   I was just trying to get my updated package to pass 
>>> the testing phase.
>>> 
>>> -Scott
>>> 
>> 
>> Do the tests work if you use “fink -m --no-build-as-nobody build” ?  If so, 
>> then you might use BuildAsNobody: false in the .info file so that fink 
>> builds as root instead of fink-bld.  The tradeoff is that the build isn’t 
>> quite as safe.
>> 
>> If the build works without the test phase, another option might be just to 
>> have a note that testing needs to be done as root, since end-users generally 
>> aren’t expected to run tests.  However, this would probably mean that 
>> auto-build scripts for the binary distribution won’t work, whereas they 
>> would when building as root.
>> 
>> Ideally, of course, there would be a way to force the test scripts to work 
>> as fink-bld, but this might not be possible.
>> 
>> -- 
>> Alexander Hansen, Ph.D.
>> Fink User Liaison
> 
> Alexander,
> 
> I am testing the —no-build-as-nobody option.  But I am still sort of curious 
> how the tests could run as root and not fink-bld.  To have the tar unpacking 
> of the test directories use the stored user/group info would have to have the 
> tar run as root.  Otherwise it would change all ownership to fink-bld which I 
> believe would be fine.
> 
> It seems that unpacking the original tar file leaves some files with the 
> group “wheel” and not fink-bld.  This would seem to be a problem with the 
> original source unpacking.
> 

It might be worth verifying whether just “tar” is being used, which would be 
Fink’s GNU tar, or “/usr/bin/tar”, which is Apple’s BSD tar.  

> I get errors in both forms.
> build as root:
> Ran 418 tests in 247.699s
> 
> FAILED (failures=24, errors=100, skipped=5)
> Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=24>
> error: Test failed: <unittest.runner.TextTestResult run=418 errors=100 
> failures=24>
> phase test: warning
> 
> Build as fink-bld:
> Ran 418 tests in 179.702s
> 
> FAILED (failures=23, errors=100, skipped=5)
> Test failed: <unittest.runner.TextTestResult run=418 errors=100 failures=23>
> error: Test failed: <unittest.runner.TextTestResult run=418 errors=100 
> failures=23>
> phase test: warning
> 
> 
> Not sure why building as fink-bld runs so much faster?  There is 1 failure 
> difference.

It’s probably quicker to test as fink-bld because the tests fail promptly, 
possibly for different reasons than when building as root.

fink-bld is set up as an unprivileged user with no home directory or shell. 

$ id -P fink-bld
fink-bld:*:600:600::0:0:Fink Build System:/var/empty:/usr/bin/false

The problematic tests may expect one of those.

-- 
Alexander Hansen, Ph.D.
Fink User Liaison


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
List archive:
https://sourceforge.net/p/fink/mailman/fink-devel
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to