@@ -9986,3 +9986,34 @@ (define-public go-github-com-vishvananda-netns
the handle. Changing namespaces requires elevated privileges, so in most cases
this code needs to be run as root.")
(license license:asl2.0)))
+
+(define-public go-github-com-vishvananda-netlink
+ (package
+ (name "go-github-com-vishvananda-netlink")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vishvananda/netlink")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vhl30p1gx636a088ls4h6a0l8jjyfvz79fr5w0qzdrg4qg9h08h"))))
+ (build-system go-build-system)
+ (arguments '(#:tests? #f
+ #:import-path "github.com/vishvananda/netlink"))
+ (native-inputs
+ (list go-golang-org-x-sys
+ go-github-com-vishvananda-netns))
+ (home-page "https://github.com/vishvananda/netlink")
+ (synopsis "Netlink library for Go")
+ (description
+ "Package netlink provides a simple library for netlink. Netlink is the interface
+a user-space program in linux uses to communicate with the kernel. It can be
+used to add and remove interfaces, set up ip addresses and routes, and confiugre
+ipsec. Netlink communication requires elevated privileges, so in most cases
+this code needs to be run as root. The low level primitives for netlink are
+contained in the nl subpackage. This package attempts to provide a high-level
+interface that is loosly modeled on the iproute2 cli.")
+ (license license:asl2.0)))