Age | Commit message (Collapse) | Author |
|
* utils/fakeroot.sh (FAKED_MODE): Set to unknown-is-root.
|
|
Add an option '--chroot-chdir' to settrans and make it chdir to this
directory before executing the target program. Also, look up the
executable in PATH.
With these changes we no longer need to use the shell inside the
chroot in the convenience scripts, and hence do not require it to be
installed inside the chroot.
* utils/fakeroot.sh: Simplify using the new option.
* utils/remap.sh: Likewise.
* utils/settrans.c (OPT_CHROOT_CHDIR): New constant.
(options): New option 'chroot-chdir'.
(main): Handle new option. Search for target executable in PATH.
* utils/fakeauth.c (main): Likewise.
|
|
Fix case when $PWD contains spaces.
Pass directly arguments to command, to directly avoid escaping issues.
Based on suggestion by Ivan Shmakov <oneingray@gmail.com>
* utils/fakeroot.sh (TARGET): Do not define.
(sh): Rather pass PWD and commandline as parameters.
* utils/remap.sh: Likewise.
|
|
fakeroot.sh uses /bin/sh to first change the working directory and
then execute the given program in the fakeroot context. But the
arguments given on the command line were not properly escaped:
% '/bin/sh' '-c' 'echo $0'
/bin/sh
% fakeroot-tcp '/bin/sh' '-c' 'echo $0'
/bin/sh
% fakeroot-hurd '/bin/sh' '-c' 'echo $0'
<empty line>
% fakeroot-hurd-fixed '/bin/sh' '-c' 'echo $0'
/bin/sh
* utils/fakeroot.sh: Escape arguments handed to /bin/sh so that they
are not evaluated prematurely.
|
|
* fakeroot.sh: Dont use "exec" command, since the original script
does not and some users use sh syntax here and not just commands.
|
|
* fakeroot.sh: Inside the chroot'd fakeauth environment,
run a shell that chdir's to what was our original current
directory (by name) before exec'ing the user's command.
|
|
* fakeroot.sh: New file.
* Makefile (targets, special-targets, SRCS): Add it.
|