d9f5e94bae
New features ------------ * Processes under PRoot now appear with their real names, that is, they are not renamed ld-linux.so or prooted-... anymore. * Own ELF loader. Fixes ----- * Most bugs related to shebang support -- ie. #! at the beginning of a program -- were fixed. * It is now possible to use GDB against multi-threaded programs under PRoot x86_64 and x86. * It is possible to execute x86_64 programs from x86 programs again. * It is possible to use x86 ptrace-based programs (strace, gdb, ...) under PRoot x86_64 again. * The loader is now built with the build-id linker option explicitly disabled. This special section might interfere with loaded programs. * The loader can now load relocatable objects that have a predefined base address.
45 lines
1012 B
Nix
45 lines
1012 B
Nix
{ stdenv, fetchFromGitHub, talloc, docutils
|
|
, enableStatic ? false }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "proot-${version}";
|
|
version = "5.1.0";
|
|
|
|
src = fetchFromGitHub {
|
|
sha256 = "0azsqis99gxldmbcg43girch85ysg4hwzf0h1b44bmapnsm89fbz";
|
|
rev = "v${version}";
|
|
repo = "proot";
|
|
owner = "cedric-vincent";
|
|
};
|
|
|
|
buildInputs = [ talloc ];
|
|
nativeBuildInputs = [ docutils ];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
preBuild = stdenv.lib.optionalString enableStatic ''
|
|
export LDFLAGS="-static -L${talloc}/lib"
|
|
'';
|
|
|
|
makeFlags = [ "-C src" ];
|
|
|
|
postBuild = ''
|
|
make -C doc proot/man.1
|
|
'';
|
|
|
|
installFlags = [ "PREFIX=$(out)" ];
|
|
|
|
postInstall = ''
|
|
install -Dm644 doc/proot/man.1 $out/share/man/man1/proot.1
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = http://proot.me;
|
|
description = "User-space implementation of chroot, mount --bind and binfmt_misc";
|
|
platforms = platforms.linux;
|
|
license = licenses.gpl2;
|
|
maintainers = with maintainers; [ ianwookim nckx ];
|
|
};
|
|
}
|
|
|