guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Data Services: use cases


From: zimoun
Subject: Data Services: use cases
Date: Mon, 12 Oct 2020 15:26:43 +0200

Hi Chris,

Since blog post about Data Services seems floating around, I describe
what I find useful as an end-user of the service.  And if you have not
showed me IRL at FOSDEM (and you showed me several times ;-)), then I
would not be using the service so often.


To me, the entry point is always:

  <https://data.guix.gnu.org/repository/1/branch/master/package/PACKAGE>

and to be exact <https://data.guix.gnu.org/…/PACKAGE/output-history>.

Even, I have this Emacs trivial helper function:

--8<---------------cut here---------------start------------->8---
(defun my/guix-data (package)
  "Add URL of PACKAGE to `kill-ring'.

Yankable result:
`https://data.guix.gnu.org/repository/1/branch/master/package/PACKAGE/output-history'.

With `universal-argument', load URL using `browse-url'."
  (interactive "sPackage: ")
  (let ((url
         (format
          
"https://data.guix.gnu.org/repository/1/branch/master/package/%s/output-history";
 package)))
    (kill-new url)
    (when current-prefix-arg
      (browse-url url))
    (message (format "%s killed." url))))
--8<---------------cut here---------------end--------------->8---

(This dumb function could be improved using “guix-emacs” with package
completion etc.  But the time to implement such thing is not worth for
me because I generally exactly know which package I look up. :-))


Let’s take the recent example of the package ’python-umap-learn’ [1].
>From the webpage, it is quick and easy to see which version build or
fail.  Then, once I know that:

       Version  Output  Builds  From    To

“From” means the date of the first commit corresponding to Version ––
specifically at the derivation.  And “To” resp. the last commit.

Then I can click to say the “To” date of the last “Succeeded” build and
it leads to the webpage:

 <https://data.guix.gnu.org/revision/cac674d99dc4a332e6210c57ec7f1b8164f66642>

which provides the commit hash.  Now, it is easy to use the
time-machine:

   guix time-machine –commit=cac674d99dc4a332e6210c57ec7f1b8164f66642 \
        – install python-umap-learn


Time to time, I click to “Failed Dependency” but I do not know how this
information is accurate.


Well, I could describe other use cases, but I think this one is really
useful for the end-user:

 - list all the versions available (since Dec. 2019 I guess)
 - know which build and which not
 - easily find the commit for “guix time-machine”


Cheers,
simon

1: <https://lists.gnu.org/archive/html/help-guix/2020-09/msg00140.html>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]