zimoun <zimon.toutoune@gmail.com> writes:
Toggle quote (5 lines)
> First, note that annotations do not have Git repo; at least not always,
> e.g.,
>
> <https://bioconductor.org/packages/release/data/annotation/html/GenomeInfoDbData.html>
That’s fine. We just ignore annotation and experiment packages, and use
git only for regular packages.
Toggle quote (18 lines)
> Second, if we go for something like:
>
> (define* (bioconductor-git-reference name #:optional
> (release %bioconductor-version))
> "Return a <git-reference> for the R package archive on Bioconductor for the
> RELEASE corresponding to NAME."
> (git-reference
> (url (string-append %bioconductor-git-url name))
> (commit (string-append "RELEASE_" (string-replace-substring
> %bioconductor-version "." "_")))))
>
>
> then, it raises the question: import/cran.scm or build-system/r.scm ?
> i.e., do we put a module dependency against (guix git-download) for the
> r-build-system or not?
>
> TeXLive already has a dependency to svn-download, so why not.
Yes, I don’t think that’s a problem.
We probably should *not* use RELEASE_3_14 (or whatever) as the commit,
though, because that is a moving target. We need to resolve to the
actual commit and use its hash.
I wonder how the updater would need to be changed. It would need to
know about the release branch and look for new commits in that branch
only.
Toggle quote (4 lines)
> Well, I am also in favor to break the API and move %bioconductor-version
> and %bioconductor-url to (guix build-system r). WDYT? It would
> simplify some things (#36805 and #39885), I guess.
We tried this before and we couldn’t do this because of a circular
reference.
Toggle quote (7 lines)
> Back to CHETAH, note that
>
> guix import cran -a git htpps://git.bioconductor.org/CHETAH
>
> works but it points to master instead of RELEASE_3_14. Well, I am not
> very familiar with the Bioconductor workflow for their release.
That’s because the importer doesn’t let us specify a different branch.
We should add that, but it’s strictly separate from the migration we’re
about to embark on.
Toggle quote (51 lines)
> Last, using this in gnu/packages/bioconductor.scm,
>
> (define-public r-chetah
> (package
> (name "r-chetah")
> (version "1.11.2")
> (source
> (origin
> (method git-fetch)
> (uri (bioconductor-git-reference "CHETAH"))
> (file-name (git-file-name name version))
> (sha256
> (base32 "021v5831zqdy4pirfsb35kbnz8kmz4lxqc4cwi55qgd6r081xlgh"))))
> (properties `((upstream-name . "CHETAH")))
> (build-system r-build-system)
> (propagated-inputs
> (list r-biodist
> r-corrplot
> r-cowplot
> r-dendextend
> r-ggplot2
> r-gplots
> r-pheatmap
> r-plotly
> r-reshape2
> r-s4vectors
> r-shiny
> r-singlecellexperiment
> r-summarizedexperiment))
> (native-inputs (list r-knitr))
> (home-page "https://git.bioconductor.org/packages/CHETAH")
> (synopsis "Fast and accurate scRNA-seq cell type identification")
> (description
> "CHETAH (CHaracterization of cEll Types Aided by Hierarchical classification) is
> an accurate, selective and fast scRNA-seq classifier. Classification is guided
> by a reference dataset, preferentially also a scRNA-seq dataset. By
> hierarchical clustering of the reference data, CHETAH creates a classification
> tree that enables a step-wise, top-to-bottom classification. Using a novel
> stopping rule, CHETAH classifies the input cells to the cell types of the
> references and to \"intermediate types\": more general classifications that ended
> in an intermediate node of the tree.")
> (license #f)))
>
> it just builds with,
>
> ./pre-inst-env guix build r-chetah
>
>
>
> WDYT?