Subject: bug#72976: [PATCH] gnu: lxc: Update to 6.0.1

From: Liliana Marie Prikler <[email-masked]>
Date: Sat, 07 Sep 2024 19:12:08 +0200

Am Samstag, dem 07.09.2024 um 18:57 +0200 schrieb Jakob Kirsch:
> * gnu/packages/virtualization.scm (lxc): Update to 6.0.1
Note: The ChangeLog is still incomplete, it's missing the change to
meson-build-system, etc, discussed below.  I'll indent the parts you
should add with spaces.

> Change-Id: I089d53611a996e44cb9a92986c2b8de9cb69634f
> ---
>  gnu/packages/virtualization.scm | 30 +++++++++++++-----------------
>  1 file changed, 13 insertions(+), 17 deletions(-)
> 
> diff --git a/gnu/packages/virtualization.scm
> b/gnu/packages/virtualization.scm
> index b076d49985..a5790482a2 100644
> --- a/gnu/packages/virtualization.scm
> +++ b/gnu/packages/virtualization.scm
> @@ -36,6 +36,7 @@
>  ;;; Copyright © 2024 Raven Hallsby <[email-masked]>
>  ;;; Copyright © 2024 jgart <[email-masked]>
>  ;;; Copyright © 2024 Ashish SHUKLA <[email-masked]>
> +;;; Copyright © 2024 Jakob Kirsch <[email-masked]>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -1350,7 +1351,7 @@ (define-public libosinfo
>  (define-public lxc
>    (package
>      (name "lxc")
> -    (version "4.0.12")
> +    (version "6.0.1")
>      (source (origin
>                (method url-fetch)
>                (uri (string-append
> @@ -1358,30 +1359,25 @@ (define-public lxc
>                      version ".tar.gz"))
>                (sha256
>                 (base32
> -               
> "1vyk2j5w9gfyh23w3ar09cycyws16mxh3clbb33yhqzwcs1jy96v"))))
> -    (build-system gnu-build-system)
> +               
> "1q3p3zzm338pmc97z6ly8cjginkyljxqbk1c37l2xa46vfy8zcyc"))))
> +    (build-system meson-build-system)
  [build-system]: Change to meson-build-system.

>      (native-inputs
>       (list pkg-config docbook2x))
>      (inputs
> -     (list gnutls libcap libseccomp libselinux))
> +     (list gnutls libcap libseccomp libselinux dbus))
  [inputs]: Add dbus.

>      (arguments
>       (list #:configure-flags
> -           #~(list (string-append "--docdir=" #$output "/share/doc/"
> +           #~(list (string-append "-Ddoc-path=" #$output
> "/share/doc/"
>                                    #$name "-" #$version)
> -                   "--sysconfdir=/etc"
> -                   "--localstatedir=/var")
> +                   "-Ddistrosysconfdir=/etc"
> +                   "-Dinit-script=sysvinit"
> +                   "-Dinstall-state-dirs=false"
> +                   "-Dinstall-init-files=false"
> +                   "-Dspecfile=false"
> +                   "-Db_lto=false")
  [arguments]: Replace "--docdir=..." with "-Ddoc-path=..."
  Replace "--sysconfdir=/etc" with "-Ddistrosysconfdir=/etc".
  Remove "--localstatedir=/var"
  Add [all the things that are added].
>             #: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"))))))
> +               (delete 'shrink-runpath))))
  <#:phases>: No longer replace 'install.
  Delete 'shrink-runpath.
The latter isn't something you should do willy-nilly btw.  Is there a
good reason to do so?  It should be commented in the code.
>      (synopsis "Linux container tools")
>      (home-page "https://linuxcontainers.org/")
>      (description

Cheers