about summary refs log tree commit diff

guix-bioinformatics-past

Archive of past Guix package definitions that have been superseded by packages in Guix upstream or the guix-bioinformatics channel.

Usage

Packages are in the (past ...) module namespace. Load with three channels:

guix build -L guix-bioinformatics-past/modules \
           -L guix-bioinformatics \
           -L guix-past/modules \
           -e '(@ (past bioinformatics) clustalw)'

Or list all available packages:

guix package -L guix-bioinformatics-past/modules \
             -L guix-bioinformatics \
             -L guix-past/modules -A

Status

448 total package definitions across 64 module files.

398 packages resolve (dry-run passes, 88.8%). 50 packages fail to evaluate (see below).

Of the 398 that resolve, some may still fail at build time due to: - C/C++ compiler incompatibilities with modern GCC - OpenSSL API changes (DSA functions removed) - Missing Python 2 wheel support

Evaluation failures (50)

These packages cannot be evaluated:

Category Count Packages
Needs past-crates channel 14 rust-assert-cmd-0.12, rust-bgzip-0.2, rust-cuckoofilter-0.5, rust-kstring-1, rust-line-drawing-0.8, rust-lodepng-3, rust-pyo3-0.14, rust-pyo3-build-config-0.14, rust-pyo3-macros-0.14, rust-pyo3-macros-backend-0.14, rust-quick-csv-0.1, rust-toml-edit-0.12, rust-trycmd-0.12, rust-vcf-0.6
Commented out (deps removed) 5 agc-for-pgr-tk, pgr-tk, pplacer, graph-genotyper, pggb-with-hwcaps
Broken module (twint) 4 python-twint, python-fake-useragent, python-googletransx, python-statistics
Java module eval 5 ant-compress, commons-compress, jcommander, junit, maven-remote-resources-plugin
Removed (hardcoded paths) 2 jumpshiny, jumpsem-web
Quality-control eval 3 cl-qc-uploads, ecl-qc-uploads, sbcl-qc-uploads
Unbound variables 8 busco (augustus), edash (python-misaka), genenetwork1 (python-2.4), mouse-longevity-app (rshiny service), python-pyshex (python-cfgraph), quast (glibc-dynamic-linker), sepp (pplacer), ucsc-genome-browser (freetype)
Other 9 arrayfire, clFFT, build-with-ocaml4.07, hyphy, python-pytest-5, python24-parallel, tensowflow-native-instead-of-tensorflow, the-littlest-jupyterhub, yaj

These packages were removed in commit e431110ac6eee100b05b9683c870b28ae8893e9f

Commented-out packages

Some packages were commented out because they reference unavailable channels or modules:

  • pgr-tk, agc-for-pgr-tk -- need past-crates channel
  • pplacer, graph-genotyper -- need past/ocaml module
  • pggb-with-hwcaps -- hwcaps infrastructure removed
  • jumpshiny, jumpsem-web -- used local-file with hardcoded paths

Disabled module files

  • julia.scm -- reader macro issues (#~ gexp syntax)
  • rshiny.scm -- service definitions (not packages)

Modules

Module Packages Description
bioinformatics 57 Core bioinformatics tools
ruby 200 Ruby gems for Discourse and related
python 46 Python 2/3 packages
python24 8 Python 2.4 packages for GeneNetwork1
genenetwork1 3 GeneNetwork1 dependencies
r-shiny 11 R Shiny packages and dependencies
edash 12 eDash web application packages
java 11 Java packages
lisp 5 Common Lisp packages
kubernetes 6 Kubernetes and crictl
crates-io 14 Rust crate sources
node 4 Node.js packages
other 71 Various (cwl, globus, maths, etc.)

Cleanup performed

Duplicate removal

71 packages were removed that now exist in Guix upstream or guix-bioinformatics:

  • 57 in Guix upstream (augustus, sambamba, ruby gems, python packages, etc.)
  • 14 in guix-bioinformatics (vg, pggb, odgi, seqwish, vcflib, etc.)

Module namespace migration

All modules renamed from (gn packages ...) / (gn past ...) to (past ...) to match the file path past/*.scm.

Cross-references between modules updated. Self-references (where a past module referenced the same-named module in guix-bioinformatics) restored to (gn packages ...).

Build fixes applied

  • Added missing #:use-module imports across ~20 files
  • Added libxcrypt input for packages needing crypt.h
  • Added (delete 'sanity-check) for packages failing find-files
  • Added #:tests? #f for 29 ruby packages with test failures
  • Fixed paren balance issues in ruby.scm, twint.scm, r-shiny.scm
  • Commented out packages with hardcoded local-file paths
  • Moved forward-referenced definitions in python.scm

FIXME annotations

Every package that fails at build time has a ;; FIXME: comment explaining the failure reason. Categories include:

  • test failure -- tests fail, disabled with #:tests? #f
  • build failure -- compilation error (C++ compat, missing headers)
  • build failure - OpenSSL DSA API incompatibility
  • build failure - requires C++17
  • patch not found -- referenced patch files missing
  • needs past-crates channel -- depends on unavailable channel
  • unbound variable X -- missing import or removed package
  • sanity-check failure -- find-files on missing directories
  • needs python wheel (bdist_wheel)
  • needs libxcrypt for crypt.h

Dependencies

This channel requires:

  • GNU Guix (upstream)
  • guix-bioinformatics -- (gn packages ...) modules
  • guix-past -- (past packages ...) for Python 2.4/2.7 support