diff options
Diffstat (limited to 'pkgs/tools/system')
-rw-r--r-- | pkgs/tools/system/gotop/default.nix | 18 | ||||
-rw-r--r-- | pkgs/tools/system/minijail/default.nix | 47 | ||||
-rw-r--r-- | pkgs/tools/system/minijail/tools.nix | 13 |
3 files changed, 53 insertions, 25 deletions
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix index daf9ce58c911..44ef60c70f38 100644 --- a/pkgs/tools/system/gotop/default.nix +++ b/pkgs/tools/system/gotop/default.nix @@ -1,21 +1,21 @@ -{ stdenv, buildGoPackage, fetchFromGitHub }: +{ stdenv, buildGoModule, fetchFromGitHub }: -buildGoPackage rec { +buildGoModule rec { pname = "gotop"; - version = "3.0.0"; - - goPackagePath = "github.com/cjbassi/gotop"; + version = "3.5.0"; src = fetchFromGitHub { - owner = "cjbassi"; + owner = "xxxserxxx"; repo = pname; - rev = version; - sha256 = "1kndj5qjaqgizjakh642fay2i0i1jmfjlk1p01gnjbh2b0yzvj1r"; + rev = "v${version}"; + sha256 = "01a2y2604dh2zfy5f2fxr306id0fbq0df91fpz2m8w7rpaszd6xr"; }; + modSha256 = "1gbpxq2vyshln97gij5y9qsjyf3mkwfqwwhikc0cck3mnwiv87dd"; + meta = with stdenv.lib; { description = "A terminal based graphical activity monitor inspired by gtop and vtop"; - homepage = https://github.com/cjbassi/gotop; + homepage = "https://github.com/xxxserxxx/gotop"; license = licenses.agpl3; maintainers = [ maintainers.magnetophon ]; platforms = platforms.unix; diff --git a/pkgs/tools/system/minijail/default.nix b/pkgs/tools/system/minijail/default.nix index 2b4d1deb9f9b..2f5adc3f4c95 100644 --- a/pkgs/tools/system/minijail/default.nix +++ b/pkgs/tools/system/minijail/default.nix @@ -1,45 +1,60 @@ -{ stdenv, fetchFromGitiles, libcap }: +{ stdenv, lib, fetchFromGitiles, glibc, libcap, qemu }: + +let + dumpConstants = + if stdenv.buildPlatform == stdenv.hostPlatform then "./dump_constants" + else if stdenv.hostPlatform.isAarch32 then "qemu-arm dump_constants" + else if stdenv.hostPlatform.isAarch64 then "qemu-aarch64 dump_constants" + else if stdenv.hostPlatform.isx86_64 then "qemu-x86_64 dump_constants" + else throw "Unsupported host platform"; +in stdenv.mkDerivation rec { pname = "minijail"; - version = "android-10.0.0_r9"; + version = "14"; src = fetchFromGitiles { url = "https://android.googlesource.com/platform/external/minijail"; - rev = version; - sha256 = "0gcfsyim1krrddcklydqfxl8mamaxgail2xl5qp9yclq60km8f22"; + rev = "linux-v${version}"; + sha256 = "00dq854n4zg3ca2b46f90k15n32zn2sgabi76mnq2w985k9v977n"; }; + nativeBuildInputs = + lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) qemu; buildInputs = [ libcap ]; makeFlags = [ "LIBDIR=$(out)/lib" ]; - - preConfigure = '' - substituteInPlace common.mk --replace /bin/echo echo - sed -i '/#include <asm\/siginfo.h>/ d' signal_handler.c - ''; + dumpConstantsFlags = lib.optional (stdenv.hostPlatform.libc == "glibc") + "LDFLAGS=-L${glibc.static}/lib"; postPatch = '' + substituteInPlace common.mk --replace /bin/echo echo patchShebangs platform2_preinstall.sh ''; postBuild = '' - ./platform2_preinstall.sh ${version} $out/include/chromeos + make $makeFlags $buildFlags $dumpConstantsFlags dump_constants + ${dumpConstants} > constants.json ''; installPhase = '' - mkdir -p $out/lib/pkgconfig $out/include/chromeos $out/bin + ./platform2_preinstall.sh ${version} $out/include/chromeos + + mkdir -p $out/lib/pkgconfig $out/include/chromeos $out/bin \ + $out/share/minijail + cp -v *.so $out/lib cp -v *.pc $out/lib/pkgconfig cp -v libminijail.h scoped_minijail.h $out/include/chromeos cp -v minijail0 $out/bin + cp -v constants.json $out/share/minijail ''; - meta = { - homepage = https://android.googlesource.com/platform/external/minijail/; + meta = with lib; { + homepage = "https://android.googlesource.com/platform/external/minijail/"; description = "Sandboxing library and application using Linux namespaces and capabilities"; - license = stdenv.lib.licenses.bsd3; - maintainers = with stdenv.lib.maintainers; [pcarrier]; - platforms = stdenv.lib.platforms.linux; + license = licenses.bsd3; + maintainers = with maintainers; [ pcarrier qyliss ]; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/system/minijail/tools.nix b/pkgs/tools/system/minijail/tools.nix new file mode 100644 index 000000000000..875ea0dbff95 --- /dev/null +++ b/pkgs/tools/system/minijail/tools.nix @@ -0,0 +1,13 @@ +{ buildPythonApplication, lib, minijail }: + +buildPythonApplication { + pname = "minijail-tools"; + inherit (minijail) version src; + + meta = with lib; { + homepage = "https://android.googlesource.com/platform/external/minijail/+/refs/heads/master/tools/"; + description = "A set of tools for minijail"; + license = licenses.asl20; + inherit (minijail.meta) maintainers platforms; + }; +} |