Ludovic Courtès writes: > Hello Guix! > > As I’m preparing my PackagingCon talk and wondering how language > package > managers could make our lives easier, I thought it’d be > interesting to > know how well our importers are doing. > > My understanding is that most of them require manual > intervention—i.e., > one has to tweak what ‘guix import’ produces, even if we ignore > synopsis/description/license, to set the right inputs, etc. If > we were > to estimate the fraction of imported packages for which manual > changes > are needed, what would it look like? > > importer fraction of imported packages needing changes […] > cran 5% (Ricardo? Simon? seems to almost always > work?) Like Lars and Simon wrote: the importers work *really* well for both CRAN and Bioconductor, so much so that I’m using them in the background here: https://git.elephly.net/gitweb.cgi?p=software/r-guix-install.git;a=blob;f=guix-install.R;h=2766aa1f2d248a8ed2a4eb4c3244b85574d326e2;hb=HEAD The biggest annoyance is the missing “license:” prefix when packaging things for gnu/packages/cran.scm or gnu/packages/bioconductor.scm. Descriptions need regular clean- up work (e.g. to complete sentences), even though we’re using some heuristics to fix the most common stylistic problems. It’s really not a big deal, though. The biggest missing feature is recursive import of dependencies hosted on Github or Mercurial (with “-r -a git” or “-r -a hg”). I.e. a package on Github that declares a dependency on another package that’s also only hosted on Github will fail to import that dependency. This is pretty rare, but it happens with experimental bioinfo software. > texlive (Ricardo? Thiago? Marius?) This one is not usable. I’d even add “at all”. I keep announcing that one day I’ll replace it with a new importer, but that new importer just isn’t ready yet. > What about licensing info: which ones provide accurate licensing > info? > My guess: > > gnu > pypi > cpan > cran The CRAN importer is as accurate as upstream allows. CRAN requires a free license, Bioconductor requires a license declaration (there have been very few cases where the license was not correct, but a number of cases where the license was non-free, such as the Artistic 1.0 license. Bioconductor sometimes is sneaky and the R code is free but a necessary library is not. > texlive Pretty terrible. The license declaration is generally too vague. Licenses are often declared without version number, and sometimes it’s just some generic “free” license. A new importer based on texlive.tlpdb would not improve this by much, because the upstream declarations are just spotty and unreliable. -- Ricardo PS: attached is a rough WIP patch of what I had been using to import new texlive stuff.