README: Update Features section, plus minor improvements

...it's been a while.

Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
Stefano Brivio 2023-03-08 23:43:10 +01:00
parent 294d6dc4c6
commit 7c7625ddff

View file

@ -274,8 +274,10 @@ speeding up local connections, and usually requiring NAT. _pasta_:
* ✅ starting from 4.18 kernel version * ✅ starting from 4.18 kernel version
* ✅ starting from 3.13 kernel version * ✅ starting from 3.13 kernel version
* ✅ run-time selection of AVX2 build * ✅ run-time selection of AVX2 build
* ⌚ [_musl_](https://bugs.passt.top/show_bug.cgi?id=4) and * C libraries:
[_uClibc-ng_](https://bugs.passt.top/show_bug.cgi?id=5) * ✅ glibc
* ✅ [_musl_](https://bugs.passt.top/show_bug.cgi?id=4)
* ⌚ [_uClibc-ng_](https://bugs.passt.top/show_bug.cgi?id=5)
* ⌚ [FreeBSD](https://bugs.passt.top/show_bug.cgi?id=6), * ⌚ [FreeBSD](https://bugs.passt.top/show_bug.cgi?id=6),
[Darwin](https://bugs.passt.top/show_bug.cgi?id=6) [Darwin](https://bugs.passt.top/show_bug.cgi?id=6)
* ⌚ [NetBSD](https://bugs.passt.top/show_bug.cgi?id=7), * ⌚ [NetBSD](https://bugs.passt.top/show_bug.cgi?id=7),
@ -306,8 +308,8 @@ speeding up local connections, and usually requiring NAT. _pasta_:
* ✅ optional NAT, not required * ✅ optional NAT, not required
* ✅ all protocols * ✅ all protocols
* ✅ _pasta_: auto-detection of bound ports * ✅ _pasta_: auto-detection of bound ports
* 🛠 run-time configuration of port ranges without autodetection * run-time configuration of port ranges without autodetection
* 🛠 configuration of port ranges for autodetection * configuration of port ranges for autodetection
* 💡 [add](https://lists.passt.top/) [your](https://bugs.passt.top/) * 💡 [add](https://lists.passt.top/) [your](https://bugs.passt.top/)
[ideas](https://chat.passt.top) [ideas](https://chat.passt.top)
@ -327,33 +329,37 @@ speeding up local connections, and usually requiring NAT. _pasta_:
* ⌚ eBPF support (might not improve performance over vhost-user) * ⌚ eBPF support (might not improve performance over vhost-user)
### Interfaces ### Interfaces
* ✅ qemu, libvirt support with [`qrap` wrapper](/passt/tree/qrap.c) * ✅ native [qemu](https://bugs.passt.top/show_bug.cgi?id=11) support (_passt_)
* ✅ out-of-tree patches for [qemu](/passt/tree/contrib/qemu) and * ✅ native [libvirt](https://bugs.passt.top/show_bug.cgi?id=12) support
[libvirt](/passt/tree/contrib/libvirt) available (_passt_)
* ✅ Podman [integration](https://github.com/containers/podman/pull/16141) * ✅ Podman [integration](https://github.com/containers/podman/pull/16141)
(_pasta_)
* ✅ bug-to-bug compatible * ✅ bug-to-bug compatible
[_slirp4netns_ replacement](/passt/tree/slirp4netns.sh) [_slirp4netns_ replacement](/passt/tree/slirp4netns.sh)
* ✅ out-of-tree patch for * ✅ out-of-tree patch for
[Kata Containers](/passt/tree/contrib/kata-containers) available [Kata Containers](/passt/tree/contrib/kata-containers) available
* 🛠 native [qemu](https://bugs.passt.top/show_bug.cgi?id=11),
[libvirt](https://bugs.passt.top/show_bug.cgi?id=12) support
* ⌚ drop-in replacement for VPNKit (rootless Docker) * ⌚ drop-in replacement for VPNKit (rootless Docker)
### Availability ### Availability
* ✅ official [packages](https://gitlab.com/redhat/centos-stream/rpms/passt) for
CentOS Stream
* ✅ official [packages](https://tracker.debian.org/pkg/passt) for Debian * ✅ official [packages](https://tracker.debian.org/pkg/passt) for Debian
* ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora * ✅ official [packages](https://src.fedoraproject.org/rpms/passt) for Fedora
* ✅ official [packages](https://packages.ubuntu.com/lunar/passt) for Ubuntu
* ✅ unofficial [packages](https://aur.archlinux.org/packages/passt-git) for
Arch Linux
* ✅ unofficial * ✅ unofficial
[packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for CentOS [packages](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) for EPEL,
Stream, EPEL, Mageia Mageia
* 🛠 official
[packages](https://build.opensuse.org/package/show/Virtualization:containers/passt)
for openSUSE
* ✅ unofficial [packages](https://passt.top/builds/latest/x86_64/) from x86_64 * ✅ unofficial [packages](https://passt.top/builds/latest/x86_64/) from x86_64
static builds for other RPM-based distributions static builds for other RPM-based distributions
* ✅ unofficial [packages](https://passt.top/builds/latest/x86_64/) from x86_64 * ✅ unofficial [packages](https://passt.top/builds/latest/x86_64/) from x86_64
static builds for Debian-based distributions static builds for other Debian-based distributions
* ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le, * ✅ testing on non-x86_64 architectures (aarch64, armv7l, i386, ppc64, ppc64le,
s390x) s390x)
* 🛠 official
[openSUSE packages](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt)
* ⌚ official packages for Arch Linux
### Services ### Services
* ✅ built-in [ARP proxy](/passt/tree/arp.c) * ✅ built-in [ARP proxy](/passt/tree/arp.c)
@ -534,16 +540,7 @@ See also the [test logs](/builds/latest/test/).
cd passt cd passt
make make
* alternatively, install one of the available packages: * alternatively, install one of the [available packages](#availability)
* [Debian](https://tracker.debian.org/pkg/passt) (official)
* [Fedora](https://src.fedoraproject.org/rpms/passt) (official)
* [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
* [Debian-based](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
* [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
Static binaries and packages are simply built with: Static binaries and packages are simply built with:
@ -558,17 +555,9 @@ See also the [test logs](/builds/latest/test/).
doc/demo.sh doc/demo.sh
* alternatively, you can use libvirt, with * alternatively, you can use
[this patch](/passt/tree/libvirt/0001-conf-Introduce-support-for-UNIX-domain-socket-as-qem.patch), [libvirt](https://libvirt.org/formatdomain.html#userspace-slirp-or-passt-connection)
to start qemu (with [these patches](/passt/tree/contrib/qemu)), and this kind to start QEMU
of network interface configuration:
<interface type='client'>
<mac address='52:54:00:02:6b:60'/>
<source path='/tmp/passt.socket'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
* and that's it, you should now have TCP connections, UDP, and ICMP/ICMPv6 * and that's it, you should now have TCP connections, UDP, and ICMP/ICMPv6
echo working from/to the guest for IPv4 and IPv6 echo working from/to the guest for IPv4 and IPv6
@ -584,16 +573,7 @@ See also the [test logs](/builds/latest/test/).
cd passt cd passt
make make
* alternatively, install one of the available packages: * alternatively, install one of the [available packages](#availability)
* [Debian](https://tracker.debian.org/pkg/passt) (official)
* [Fedora](https://src.fedoraproject.org/rpms/passt) (official)
* [CentOS Stream](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [EPEL](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [Mageia](https://copr.fedorainfracloud.org/coprs/sbrivio/passt/) (unofficial)
* [openSUSE](https://build.opensuse.org/package/show/home:dfaggioli:devel/passt) (unofficial)
* [Debian-based](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
* [Other RPM-based distributions](/builds/latest/x86_64/) (unofficial, from static x86_64 builds)
Static binaries and packages are simply built with: Static binaries and packages are simply built with:
@ -655,7 +635,8 @@ See also the [test logs](/builds/latest/test/).
* ...or [file a bug](https://bugs.passt.top/enter_bug.cgi) * ...or [file a bug](https://bugs.passt.top/enter_bug.cgi)
### [Chat](/passt/chat) ### [Chat](/passt/chat)
* Somebody might be available on [IRC](https://irc.passt.top) * Somebody might be available on [IRC](https://irc.passt.top) on `#passt` at
[Libera.Chat](https://libera.chat/)
### Weekly development [meeting](https://pad.passt.top/p/weekly) ### Weekly development [meeting](https://pad.passt.top/p/weekly)
* Open to everybody! Feel free to join and propose a different time directly on * Open to everybody! Feel free to join and propose a different time directly on