@@ -13259,6 +13259,38 @@ (define-public go-src-elv-sh
Windows.")
(license license:bsd-2)))
+(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 ;; From what I understand, and I may very well be wrong,
+ ;; the tests require root access. At least they fail with "operation not permitted".
+ #:import-path "github.com/vishvananda/netlink"))
+ (propagated-inputs `(("go-golang-org-x-sys" ,go-golang-org-x-sys)
+ ("go-github-com-vishvananda-netns" ,go-github-com-vishvananda-netns)))
+ (home-page "https://github.com/vishvananda/netlink")
+ (synopsis "netlink - 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)))
+
(define-public go-github-com-vishvananda-netns
(package
(name "go-github-com-vishvananda-netns")