Subject: [PATCH v2 0/8] Allow origin inside inputs with "new style".

From: Simon Tournier <[email-masked]>
Date: Tue, 10 Sep 2024 03:27:08 +0200

Hi,

Following Ludo's advice [1], here the v2.

Packages use ’package-name’ as internal labels so the first patch of the serie
adds ’origin-actual-file-name’ as internal labels for the origins.  Then, the
’origin’ is found back via ’this-package-input’ as for the packages.

For instance, without the patch, we have somewhere in the phase:

        #$(origin
            (method url-fetch)
            (uri (string-append
                  "mirror://kernel.org/software/scm/git/"
                  "git-manpages-" (package-version this-package) ".tar.xz"))
            (sha256
             (base32
              "1lvvhzypllbyd8j6m0p9qgd3gqg10gch9s7lqif8vr9n80fqn4fw"))))))))))))

then with the patch, this origin is moved to the ’native-inputs’ field and the
snippet above is replaced by:

        #$(this-package-native-input
           (string-append
            "git-manpages-" (package-version this-package) ".tar.xz")))))))))))

Please note the two special cases: tzdata and texlive-hyphen-complete.  They
are considered in order to avoid a world rebuild.  The final adjusment can be
addressed with some “build train” (or “merge train”) as discussed elsewhere.

The other patches of the series provide more examples of the usage.

WDYT?

Cheers,
simon

1: [bug#73073] [PATCH 0/6] Allow origin with label as inputs.
Ludovic Courtès <[email-masked]>
Fri, 06 Sep 2024 23:45:04 +0200
id:[email-masked]
https://issues.guix.gnu.org/73073
https://issues.guix.gnu.org/msgid/[email-masked]
https://yhetil.org/guix/[email-masked]

Simon Tournier (8):
  guix: packages: Allow origin inside inputs with "new style".
  gnu: gnome-recipes: Move libgd origin from phases to native-inputs.
  gnu: dmd-bootstrap: Move phobos origin from phases to native-inputs.
  gnu: smithforth: Move system.fs origin from phases to native-inputs.
  gnu: farstream: Move common origin from phases to native-inputs.
  gnu: gnulib: Move phobos origin from phases to native-inputs.
  gnu: git: Move git-manpages origin from phases to native-inputs.
  gnu: cgit: Remove input labels.

 gnu/packages/build-tools.scm     | 18 ++++----
 gnu/packages/dlang.scm           | 21 ++++-----
 gnu/packages/forth.scm           | 20 +++++----
 gnu/packages/freedesktop.scm     | 24 +++++-----
 gnu/packages/gnome.scm           | 19 ++++----
 gnu/packages/version-control.scm | 75 +++++++++++++++++---------------
 guix/packages.scm                | 10 +++++
 7 files changed, 106 insertions(+), 81 deletions(-)

base-commit: 85a603f58b9b6fef86984a3b2cfc27bd13314ba1
-- 
2.45.2