[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#69131] [PATCH 1/2] gnu: Add passt.
From: |
Tomas Volf |
Subject: |
[bug#69131] [PATCH 1/2] gnu: Add passt. |
Date: |
Wed, 14 Feb 2024 20:17:34 +0100 |
* gnu/packages/containers.scm (passt): New variable.
Change-Id: I2ebdd9d4255a89a86fb196568215b74bb61cb3a6
---
gnu/packages/containers.scm | 41 +++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index a3aa9ac1db..5cd81e85a6 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2023 Zongyuan Li <zongyuan.li@c0x0o.me>
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -259,6 +260,46 @@ (define-public slirp4netns
network namespaces.")
(license license:gpl2+)))
+(define-public passt
+ (package
+ (name "passt")
+ (version "2023_12_30.f091893")
+ (source (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://passt.top/passt/snapshot/passt-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nyd4h93qlxn1r01ffijpsd7r7ny62phki5j58in8gz021jj4f3d"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target))
+ "RLIMIT_STACK_VAL=1024" ; ¯\_ (ツ)_/¯
+ (string-append "VERSION=" #$version)
+ (string-append "prefix=" #$output))
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "https://passt.top")
+ (synopsis "Plug A Simple Socket Transport")
+ (description "passt implements a thin layer between guest and host, that
+only implements what's strictly needed to pretend processes are running
+locally. The TCP adaptation doesn't keep per-connection packet buffers, and
+reflects observed sending windows and acknowledgements between the two sides.
+This TCP adaptation is needed as passt runs without the CAP_NET_RAW
+capability: it can't create raw IP sockets on the pod, and therefore needs to
+map packets at Layer-2 to Layer-4 sockets offered by the host kernel.
+
+Also provides pasta, which similarly to slirp4netns, provides networking to
+containers by creating a tap interface available to processes in the
+namespace, and mapping network traffic outside the namespace using native
+Layer-4 sockets.")
+ (license (list license:gpl2+ license:bsd-3))))
+
(define-public cni-plugins
(package
(name "cni-plugins")
base-commit: e9a6c7094822bc859d0694eeaf8f434317219367
--
2.41.0
- [bug#69131] [PATCH 1/2] gnu: Add passt.,
Tomas Volf <=