passt: init at 0.2023_11_10.5ec3634

Add passt, a userspace network stack that can be use to provide unprivileged
network access for virtual machines (using 'passt') or containers (using
'pasta'). See https://passt.top/passt/about/
This commit is contained in:
8aed 2023-07-26 23:51:46 +00:00 committed by 8aed
parent 89a429c6eb
commit 4856241528
2 changed files with 47 additions and 0 deletions

View file

@ -189,6 +189,12 @@
githubId = 12578560;
name = "Quinn Bohner";
};
_8aed = {
email = "8aed@riseup.net";
github = "8aed";
githubId = 140662578;
name = "Huit Aed";
};
_8-bit-fox = {
email = "sebastian@markwaerter.de";
github = "8-bit-fox";

View file

@ -0,0 +1,41 @@
{ stdenv, lib, fetchgit }:
stdenv.mkDerivation {
pname = "passt";
version = "0.2023_11_10.5ec3634";
src = fetchgit {
url = "git://passt.top/passt";
rev = "5ec3634b07215337c2e69d88f9b1d74711897d7d";
hash = "sha256-76CD9PYD/NcBkmRYFSZaYl381QJjuWo0VsNdh31d6/M=";
};
nativeBuildInputs = [ ];
buildInputs = [];
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share/man/man1
cp passt pasta qrap $out/bin/
cp passt.1 pasta.1 qrap.1 $out/share/man/man1/
'' + (lib.optionalString stdenv.hostPlatform.avx2Support ''
cp passt.avx2 pasta.avx2 $out/bin/
runHook postInstall
'');
meta = with lib; {
homepage = "https://passt.top/passt/about/";
description = "Translation layer between a Layer-2 network interface and native Layer-4 sockets";
longDescription = ''
passt implements a translation layer between a Layer-2 network interface
and native Layer-4 sockets (TCP, UDP, ICMP/ICMPv6 echo) on a host.
It doesn't require any capabilities or privileges, and it can be used as
a simple replacement for Slirp.
pasta (same binary as passt, different command) offers equivalent
functionality, for network namespaces: traffic is forwarded using a tap
interface inside the namespace, without the need to create further
interfaces on the host, hence not requiring any capabilities or
privileges.
'';
license = lib.licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ _8aed ];
};
}