diff options
Diffstat (limited to 'gnu/packages/virtualization.scm')
-rw-r--r-- | gnu/packages/virtualization.scm | 107 |
1 files changed, 53 insertions, 54 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index c4d4fefa66..a16a12c7aa 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -132,6 +132,7 @@ #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix gexp) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) @@ -152,7 +153,7 @@ (define-public qemu (package (name "qemu") - (version "6.1.0") + (version "6.2.0") (source (origin (method url-fetch) @@ -160,9 +161,8 @@ version ".tar.xz")) (sha256 (base32 - "15iw7982g6vc4jy1l9kk1z9sl5bm1bdbwr74y7nvwjs1nffhig7f")) - (patches (search-patches "qemu-CVE-2021-20203.patch" - "qemu-build-info-manual.patch" + "0iavlsy9hin8k38230j8lfmyipx3965zljls1dp34mmc8n75vqb8")) + (patches (search-patches "qemu-build-info-manual.patch" "qemu-fix-agent-paths.patch")) (modules '((guix build utils))) (snippet @@ -1066,7 +1066,7 @@ all common programming languages. Vala bindings are also provided.") (define-public lxc (package (name "lxc") - (version "4.0.10") + (version "4.0.11") (source (origin (method url-fetch) (uri (string-append @@ -1074,31 +1074,30 @@ all common programming languages. Vala bindings are also provided.") version ".tar.gz")) (sha256 (base32 - "1sgsic9dzj3wv2k5bx2vhcgappivhp1glkqfc2yrgr6jas052351")))) + "0b7hv4n8b3lndhr0jf9j1gkbzxm8897a1myjsfgwzad9gkhq395g")))) (build-system gnu-build-system) (native-inputs (list pkg-config docbook2x)) (inputs (list gnutls libcap libseccomp libselinux)) (arguments - `(#:configure-flags - (list (string-append "--docdir=" (assoc-ref %outputs "out") - "/share/doc/" ,name "-" ,version) - "--sysconfdir=/etc" - "--localstatedir=/var") - #:phases - (modify-phases %standard-phases - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bashcompdir (string-append out "/etc/bash_completion.d"))) - (invoke "make" "install" - (string-append "bashcompdir=" bashcompdir) - ;; Don't install files into /var and /etc. - "LXCPATH=/tmp/var/lib/lxc" - "localstatedir=/tmp/var" - "sysconfdir=/tmp/etc" - "sysconfigdir=/tmp/etc/default"))))))) + (list #:configure-flags + #~(list (string-append "--docdir=" #$output "/share/doc/" + #$name "-" #$version) + "--sysconfdir=/etc" + "--localstatedir=/var") + #:phases + #~(modify-phases %standard-phases + (replace 'install + (lambda _ + (invoke "make" "install" + (string-append "bashcompdir=" #$output + "/etc/bash_completion.d") + ;; Don't install files into /var and /etc. + "LXCPATH=/tmp/var/lib/lxc" + "localstatedir=/tmp/var" + "sysconfdir=/tmp/etc" + "sysconfigdir=/tmp/etc/default")))))) (synopsis "Linux container tools") (home-page "https://linuxcontainers.org/") (description @@ -1110,7 +1109,7 @@ manage system or application containers.") (define-public lxcfs (package (name "lxcfs") - (version "4.0.9") + (version "4.0.11") (home-page "https://github.com/lxc/lxcfs") (source (origin (method git-fetch) @@ -1119,7 +1118,7 @@ manage system or application containers.") (file-name (git-file-name name version)) (sha256 (base32 - "0zx58lair8hwi4bxm5h7i8n1j5fcdgw5cr6f4wk9qhks0sr5dip5")))) + "02cgzh97cgxh9iyf7gkn5ikdc0sfzqfjj6al0hikdf9rbwcscqwd")))) (arguments '(#:configure-flags '("--localstatedir=/var"))) (native-inputs @@ -1136,7 +1135,7 @@ It started as a side project of LXC but can be used by any run-time.") (define-public lxd (package (name "lxd") - (version "4.17") + (version "4.22") (source (origin (method url-fetch) (uri (string-append @@ -1144,7 +1143,7 @@ It started as a side project of LXC but can be used by any run-time.") "lxd-" version "/lxd-" version ".tar.gz")) (sha256 (base32 - "1kzmgyg5kw3zw9qa6jabld6rmb53b6yy69h7y9znsdlf74jllljl")))) + "119345936fcm1vv06k82k9hvj5yjf9jdrwqm9ccphhl5mswf8xq9")))) (build-system go-build-system) (arguments `(#:import-path "github.com/lxc/lxd" @@ -1158,22 +1157,17 @@ It started as a side project of LXC but can be used by any run-time.") (add-after 'unpack 'unpack-dist (lambda* (#:key import-path #:allow-other-keys) (with-directory-excursion (string-append "src/" import-path) - ;; remove the link back to the top level - (delete-file (string-append "_dist/src/" import-path)) - ;; move all the deps into the src directory - (copy-recursively "_dist/src" "../../..")) - #t)) + ;; Move all the dependencies into the src directory. + (copy-recursively "_dist/src" "../../..")))) (replace 'build (lambda* (#:key import-path #:allow-other-keys) (with-directory-excursion (string-append "src/" import-path) - (invoke "make" "build" "CC=gcc" "TAG_SQLITE3=libsqlite3") - #t))) + (invoke "make" "build" "CC=gcc" "TAG_SQLITE3=libsqlite3")))) (replace 'check (lambda* (#:key tests? import-path #:allow-other-keys) (when tests? (with-directory-excursion (string-append "src/" import-path) - (invoke "make" "check" "CC=gcc" "TAG_SQLITE3=libsqlite3"))) - #t)) + (invoke "make" "check" "CC=gcc" "TAG_SQLITE3=libsqlite3"))))) (replace 'install (lambda* (#:key inputs outputs import-path #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1184,7 +1178,7 @@ It started as a side project of LXC but can be used by any run-time.") (completions-dir (string-append out "/share/bash-completion/completions"))) (with-directory-excursion (string-append "src/" import-path) - ;; wrap lxd with runtime dependencies + ;; Wrap lxd with run-time dependencies. (wrap-program (string-append bin-dir "lxd") `("PATH" ":" prefix ,(fold (lambda (input paths) @@ -1197,20 +1191,19 @@ It started as a side project of LXC but can be used by any run-time.") '("bash" "acl" "rsync" "tar" "xz" "btrfs-progs" "gzip" "dnsmasq" "squashfs-tools" "iproute2" "criu" "iptables")))) - ;; remove unwanted binaries + ;; Remove unwanted binaries. (for-each (lambda (prog) (delete-file (string-append bin-dir prog))) '("deps" "macaroon-identity" "generate")) - ;; install documentation + ;; Install documentation. (for-each (lambda (file) (install-file file doc-dir)) (find-files "doc")) - ;; install bash completion + ;; Install bash completion. (rename-file "scripts/bash/lxd-client" "scripts/bash/lxd") - (install-file "scripts/bash/lxd" completions-dir))) - #t))))) + (install-file "scripts/bash/lxd" completions-dir)))))))) (native-inputs - (list ;; test dependencies: + (list ;; Test dependencies: ;; ("go-github-com-rogpeppe-godeps" ,go-github-com-rogpeppe-godeps) ;; ("go-github-com-tsenart-deadcode" ,go-github-com-tsenart-deadcode) ;; ("go-golang-org-x-lint" ,go-golang-org-x-lint) @@ -1222,7 +1215,7 @@ It started as a side project of LXC but can be used by any run-time.") ("libraft" ,libraft) ("libcap" ,libcap) ("lxc" ,lxc) - ;; runtime dependencies: + ;; Run-time dependencies. ("bash" ,bash-minimal) ("rsync" ,rsync) ("tar" ,tar) @@ -1925,7 +1918,7 @@ virtual machines.") (define-public bubblewrap (package (name "bubblewrap") - (version "0.4.1") + (version "0.5.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/containers/bubblewrap/" @@ -1933,7 +1926,8 @@ virtual machines.") version ".tar.xz")) (sha256 (base32 - "00ycgi6q2yngh06bnz50wkvar6r2jnjf3j158grhi9k13jdrpimr")))) + "0608l2sjwhnb1c0mslah1h6yjvqr17wk60by6i710qwxg4rszz8n")) + (patches (search-patches "bubblewrap-fix-locale-in-tests.patch")))) (build-system gnu-build-system) (arguments `(#:phases @@ -1949,7 +1943,9 @@ virtual machines.") (substitute* "tests/test-run.sh" (("/var/tmp") tmp-dir) ;; Tests create a temporary python script, so fix its shebang. - (("/usr/bin/env python") (which "python")) + (("/usr/bin/env python3") (which "python3")) + ;; Tests call /usr/bin/env, so fix its path. + (("/usr/bin/env") (which "env")) ;; Some tests try to access /usr, but that doesn't exist. ;; Give them /gnu instead. (("/usr") "/gnu") @@ -1958,18 +1954,21 @@ virtual machines.") (("--ro-bind /lib /lib") "--ro-bind /gnu /lib") ((" */bin/bash") (which "bash")) (("/bin/sh") (which "sh")) - (("findmnt") (which "findmnt")))) + (("findmnt") (which "findmnt"))) + (substitute* "tests/libtest.sh" + (("/var/tmp") tmp-dir) + (("/usr") "/gnu") + (("--ro-bind /bin /bin") "--ro-bind /gnu /bin") + (("--ro-bind /sbin /sbin") "--ro-bind /gnu /sbin") + (("--ro-bind /lib /lib") "--ro-bind /gnu /lib"))) #t)) ;; Remove the directory we gave to tests to have a clean package. (add-after 'check 'remove-tmp-dir (lambda* (#:key outputs #:allow-other-keys) (delete-file-recursively (string-append (assoc-ref outputs "out") "/tmp")) #t))))) - (inputs - (list libcap)) - (native-inputs - `(("python" ,python-wrapper) - ("util-linux" ,util-linux))) + (inputs (list libcap)) + (native-inputs (list python-wrapper util-linux)) (home-page "https://github.com/containers/bubblewrap") (synopsis "Unprivileged sandboxing tool") (description "Bubblewrap is aimed at running applications in a sandbox, |