diff mbox series

[bug#42695] gnu: sway: Attempt to update to 1.5

Message ID 87ft92hc9c.fsf@gmail.com
State Accepted
Headers show
Series [bug#42695] gnu: sway: Attempt to update to 1.5 | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job

Commit Message

André A. Gomes Aug. 4, 2020, 11:38 a.m. UTC
Hi Oleg,

I am a complete beginner, and I was naive to think that doing this would
be a breeze.  Just to be clear, I never built anything in my life.

I'd be happy to follow some instructions to get used to the process and
learn lots of stuff in the process.  You can find what I tried to do in
the diff.

$ guix build -L ~/repos/guix/gnu/packages sway

meson.build:1:0: ERROR: Meson version is 0.53.2 but project requires
>=0.54.0

But I don't understand why, since I update meson as well.

Thanks.

Comments

Oleg Pykhalov Aug. 5, 2020, 3:49 p.m. UTC | #1
Hi,

First of all thank you for your work on sway and meson!

andremegafone@gmail.com (André Alexandre Gomes) writes:

> $ guix build -L ~/repos/guix/gnu/packages sway

As I know it's not enough.  Intead you could use:
--8<---------------cut here---------------start------------->8---
~/repos/guix/pre-inst-env guix build sway
--8<---------------cut here---------------end--------------->8---

Also, you could run a “make -j3” command before ‘./pre-inst-env’ to spot
some compilations errors after changing package recipes.

> meson.build:1:0: ERROR: Meson version is 0.53.2 but project requires
>>=0.54.0
>
> But I don't understand why, since I update meson as well.

Did you set GUIX_PACKAGE_PATH?  You could check with:
--8<---------------cut here---------------start------------->8---
./pre-inst-env env | grep GUIX_PACKAGE_PATH
--8<---------------cut here---------------end--------------->8---
which should show GUIX_PACKAGE_PATH= or show nothing.

[…]

> diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
> index 7213c1bd0b..ecb3551b96 100644
> --- a/gnu/packages/build-tools.scm
> +++ b/gnu/packages/build-tools.scm
> @@ -179,15 +179,16 @@ files and generates build instructions for the Ninja build system.")
>  (define-public meson
>    (package
>      (name "meson")
> -    (version "0.53.2")
> -    (source (origin
> -              (method url-fetch)
> -              (uri (string-append "https://github.com/mesonbuild/meson/"
> -                                  "releases/download/" version  "/meson-"
> -                                  version ".tar.gz"))
> -              (sha256
> -               (base32
> -                "07y2hh9dfn1m9g4bsy49nbn3vdmd0b2iwr8bxg19fhqq6c7q73ry"))))
> +    (version "0.55.0")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/mesonbuild/meson/")

It's OK to use ‘git-fetch’, and we switch to it in favour of ‘url-fetch’
because of GitHub could regenerate tarballs.  But I think thats probably
not a ‘meson’ case.

Release tarball could differ from Git repository.  Did you succeed to
build the ‘git-fetch’ way (via ‘pre-inst-env’)?

[…]

> -(define-public meson-for-build
> -  (package
> -    (inherit meson)
> -    (name "meson-for-build")
> -    (source (origin
> -              (inherit (package-source meson))
> -              (patches (search-patches "meson-for-build-rpath.patch"))))
> +;; (define-public meson-for-build
> +;;   (package
> +;;     (inherit meson)
> +;;     (name "meson-for-build")
> +;;     (source (origin
> +;;               (inherit (package-source meson))
> +;;               (patches (search-patches "meson-for-build-rpath.patch"))))
>  
> -    ;; People should probably install "meson", not "meson-for-build".
> -    (properties `((hidden? . #t)))))
> +;;     ;; People should probably install "meson", not "meson-for-build".
> +;;     (properties `((hidden? . #t)))))

Why do you comment ‘meson-for-build’?  First of all don't comment things
which should be removed, because of Git.  ;-) And it's used by:
--8<---------------cut here---------------start------------->8---
oleg@guixsd ~/src/guix-master$ grep -RF meson-for-build ~/src/guix-master | grep '.scm'
/home/oleg/src/guix-master/guix/build-system/meson.scm:    (module-ref module 'meson-for-build)))
--8<---------------cut here---------------end--------------->8---

>  (define-public premake4
>    (package
> diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
> index fb33bd7f6d..60e5a9d395 100644
> --- a/gnu/packages/gl.scm
> +++ b/gnu/packages/gl.scm
> @@ -233,26 +233,16 @@ also known as DXTn or DXTC) for Mesa.")
>  (define-public mesa
>    (package
>      (name "mesa")
> -    (version "20.0.7")
> -
> -    ;; Mesa 20.0.5 through 20.0.7 has problems with some graphic drivers, so
> -    ;; we need this newer version.
> -    ;; https://gitlab.freedesktop.org/mesa/mesa/-/issues/2882
> -    ;; https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4861
> -    (replacement mesa-20.0.8)
> -
> +    (version "20.1.4")
>      (source
>        (origin
> -        (method url-fetch)
> -        (uri (list (string-append "https://mesa.freedesktop.org/archive/"
> -                                  "mesa-" version ".tar.xz")
> -                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
> -                                  "mesa-" version ".tar.xz")
> -                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
> -                                  version "/mesa-" version ".tar.xz")))
> +        (method git-fetch)
> +        (uri (git-reference
> +              (url https://gitlab.freedesktop.org/mesa/mesa/)

That url should be a string:
--8<---------------cut here---------------start------------->8---
error: https://gitlab.freedesktop.org/mesa/mesa/: unbound variable
hint: Did you forget a `use-modules' form?
--8<---------------cut here---------------end--------------->8---

> +              (commit (string-append name "-" version))))

I think we should use hard-coded "mesa-" as in source urls.

[…]

> +;; (define mesa-20.0.8
> +;;   (package
> +;;     (inherit mesa)
> +;;     (version "20.0.8")
> +;;     (source (origin
> +;;               (inherit (package-source mesa))
> +;;               (uri (list (string-append "https://mesa.freedesktop.org/archive/"
> +;;                                         "mesa-" version ".tar.xz")
> +;;                          (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
> +;;                                         "mesa-" version ".tar.xz")))
> +;;               (sha256
> +;;                (base32
> +;;                 "0v0bfh3ay07s6msxmklvwfaif0q02kq2yhy65fdhys49vw8c1w3c"))))))

Same thing about commenting unused code.  Just remove it.

Everything else looks OK, but could you split this big patch by “patch
per package upgrade”?

Thanks,
Oleg.
diff mbox series

Patch

From d41090157cde9df6ca9d0f1d33b59cfa42c9a9dd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Alexandre=20Gomes?= <andremegafone@gmail.com>
Date: Tue, 4 Aug 2020 12:34:24 +0100
Subject: [PATCH] gnu: sway: Attempt to update to 1.5

---
 gnu/packages/build-tools.scm | 37 +++++++++++++--------------
 gnu/packages/gl.scm          | 48 ++++++++++++++----------------------
 gnu/packages/wm.scm          | 16 ++++++------
 3 files changed, 46 insertions(+), 55 deletions(-)

diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 7213c1bd0b..ecb3551b96 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -179,15 +179,16 @@  files and generates build instructions for the Ninja build system.")
 (define-public meson
   (package
     (name "meson")
-    (version "0.53.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://github.com/mesonbuild/meson/"
-                                  "releases/download/" version  "/meson-"
-                                  version ".tar.gz"))
-              (sha256
-               (base32
-                "07y2hh9dfn1m9g4bsy49nbn3vdmd0b2iwr8bxg19fhqq6c7q73ry"))))
+    (version "0.55.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/mesonbuild/meson/")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "172v6pp1safwm7d4li23lyajn6innqvmz77gsbwyrxqnbibbqpzf"))))
     (build-system python-build-system)
     (arguments
      `(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH
@@ -211,16 +212,16 @@  files}, are written in a custom domain-specific language (@dfn{DSL}) that
 resembles Python.")
     (license license:asl2.0)))
 
-(define-public meson-for-build
-  (package
-    (inherit meson)
-    (name "meson-for-build")
-    (source (origin
-              (inherit (package-source meson))
-              (patches (search-patches "meson-for-build-rpath.patch"))))
+;; (define-public meson-for-build
+;;   (package
+;;     (inherit meson)
+;;     (name "meson-for-build")
+;;     (source (origin
+;;               (inherit (package-source meson))
+;;               (patches (search-patches "meson-for-build-rpath.patch"))))
 
-    ;; People should probably install "meson", not "meson-for-build".
-    (properties `((hidden? . #t)))))
+;;     ;; People should probably install "meson", not "meson-for-build".
+;;     (properties `((hidden? . #t)))))
 
 (define-public premake4
   (package
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index fb33bd7f6d..60e5a9d395 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -233,26 +233,16 @@  also known as DXTn or DXTC) for Mesa.")
 (define-public mesa
   (package
     (name "mesa")
-    (version "20.0.7")
-
-    ;; Mesa 20.0.5 through 20.0.7 has problems with some graphic drivers, so
-    ;; we need this newer version.
-    ;; https://gitlab.freedesktop.org/mesa/mesa/-/issues/2882
-    ;; https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4861
-    (replacement mesa-20.0.8)
-
+    (version "20.1.4")
     (source
       (origin
-        (method url-fetch)
-        (uri (list (string-append "https://mesa.freedesktop.org/archive/"
-                                  "mesa-" version ".tar.xz")
-                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
-                                  "mesa-" version ".tar.xz")
-                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
-                                  version "/mesa-" version ".tar.xz")))
+        (method git-fetch)
+        (uri (git-reference
+              (url https://gitlab.freedesktop.org/mesa/mesa/)
+              (commit (string-append name "-" version))))
         (sha256
          (base32
-          "0y517qpdg6v6dsdgzb365p03m30511sbyh8pq0mcvhvjwy7javpy"))
+          "02z534lfcw4l6jyc84ld40i3y2ak7c4jc59vckbr24am6py2l61d"))
         (patches
          (search-patches "mesa-skip-disk-cache-test.patch"))))
     (build-system meson-build-system)
@@ -447,19 +437,19 @@  from software emulation to complete hardware acceleration for modern GPUs.")
     (license license:x11)))
 
 ;; Replacement package to fix <https://gitlab.freedesktop.org/mesa/mesa/-/issues/2863>.
-(define mesa-20.0.8
-  (package
-    (inherit mesa)
-    (version "20.0.8")
-    (source (origin
-              (inherit (package-source mesa))
-              (uri (list (string-append "https://mesa.freedesktop.org/archive/"
-                                        "mesa-" version ".tar.xz")
-                         (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
-                                        "mesa-" version ".tar.xz")))
-              (sha256
-               (base32
-                "0v0bfh3ay07s6msxmklvwfaif0q02kq2yhy65fdhys49vw8c1w3c"))))))
+;; (define mesa-20.0.8
+;;   (package
+;;     (inherit mesa)
+;;     (version "20.0.8")
+;;     (source (origin
+;;               (inherit (package-source mesa))
+;;               (uri (list (string-append "https://mesa.freedesktop.org/archive/"
+;;                                         "mesa-" version ".tar.xz")
+;;                          (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
+;;                                         "mesa-" version ".tar.xz")))
+;;               (sha256
+;;                (base32
+;;                 "0v0bfh3ay07s6msxmklvwfaif0q02kq2yhy65fdhys49vw8c1w3c"))))))
 
 (define-public mesa-opencl
   (package/inherit mesa
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index bc3c152627..f9bb30190e 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1312,7 +1312,7 @@  functionality to display information about the most commonly used services.")
 (define-public wlroots
   (package
     (name "wlroots")
-    (version "0.10.1")
+    (version "0.11.0")
     (source
      (origin
        (method git-fetch)
@@ -1321,7 +1321,7 @@  functionality to display information about the most commonly used services.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "0j2lh9vc92zhn44rjbia5aw3y1rpgfng1x1h17lcvj5m4i6vj0pc"))))
+        (base32 "08d5d52m8wy3imfc6mdxpx8swhh2k4s1gmfaykg02j59z84awc6p"))))
     (build-system meson-build-system)
     (arguments
      `(#:configure-flags '("-Dlogind-provider=elogind")
@@ -1357,7 +1357,7 @@  modules for building a Wayland compositor.")
 (define-public sway
   (package
     (name "sway")
-    (version "1.4")
+    (version "1.5")
     (source
      (origin
        (method git-fetch)
@@ -1366,7 +1366,7 @@  modules for building a Wayland compositor.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "11qf89y3q92g696a6f4d23qb44gqixg6qxq740vwv2jw59ms34ja"))))
+        (base32 "0r3b7h778l9i20z3him9i2qsaynpn9y78hzfgv3cqi8fyry2c4f9"))))
     (build-system meson-build-system)
     (arguments
      `(#:phases
@@ -1409,7 +1409,7 @@  modules for building a Wayland compositor.")
 (define-public swayidle
   (package
     (name "swayidle")
-    (version "1.5")
+    (version "1.6")
     (source
      (origin
        (method git-fetch)
@@ -1418,7 +1418,7 @@  modules for building a Wayland compositor.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "05qi96j58xqxjiighay1d39rfanxcpn6vlynj23mb5dymxvlaq9n"))))
+        (base32 "1s44crk2jsv8yba19593d9w77x0s5z980y6qdvqc8w7m9g68jkg5"))))
     (build-system meson-build-system)
     (arguments
      `(#:configure-flags '("-Dlogind-provider=elogind")))
@@ -1435,7 +1435,7 @@  modules for building a Wayland compositor.")
 (define-public swaylock
   (package
     (name "swaylock")
-    (version "1.4")
+    (version "1.5")
     (source
      (origin
        (method git-fetch)
@@ -1444,7 +1444,7 @@  modules for building a Wayland compositor.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1ii9ql1mxkk2z69dv6bg1x22nl3a46iww764wqjiv78x08xpk982"))))
+        (base32 "03n1zzn234jsq8l3b4c1y3v3d9vmwj4vb0cqqbjmxhmlrw684c09"))))
     (build-system meson-build-system)
     (inputs `(("cairo" ,cairo)
               ("gdk-pixbuf" ,gdk-pixbuf)
-- 
2.28.0