Closed jtojnar closed 4 years ago
as for luarocks-nix
it's a fork of luarocks, the name doesn't matter much as it's supposed to be used only in nixpkgs. Not sure what to do to solve the issue but let me know.
That one is marked as a flavor, not incorrect or ignored, so we probably do not mind.
On the NixOS office hours https://www.youtube.com/watch?v=siR3pvmxFlU , I noticed that @worldofpeace wants to move "unstable" from version
to pname
in derivations. I feel like the "unstable" is really part of the version, not the package name, so maybe this should be solved at the level of the website JSON generator and not at the derivation level.
I think I looked at the wrong issue @ryantm. See https://github.com/NixOS/nixpkgs/issues/68518
Great summary @volth.
This makes me believe that we should have a different mechanism to capture that the source is not part of an official release, maybe something to the effect of:
pname = "foo";
version = "2019-10-07";
unstable = true;
and in the construction of name in mkDerivation:
name = attrs.name or "${attrs.pname}${lib.optionalString unstable "-unstable"}-${attrs.version}";
Instead of unstable
maybe unofficialRelease
?
that seems like a more meaningful name than unstable
would you also advocate for
name = attrs.name or "${attrs.pname}${lib.optionalString unofficialRelease "-unofficial"}-${attrs.version}";
as well? seems like it would be more aligned, even though a larger break from the pre-existing unstable
paradigm
unofficialRelease
sounds good, we might also want to add variant
https://github.com/repology/repology-updater/issues/854#issuecomment-530515318
I like variant
.
would it be useful to have this field report "outdated" as well ? For instance we have many love packages:
love_0_7 = callPackage ../development/interpreters/love/0.7.nix { lua=lua5_1; };
love_0_8 = callPackage ../development/interpreters/love/0.8.nix { lua=lua5_1; };
love_0_9 = callPackage ../development/interpreters/love/0.9.nix { };
0_7 and 0_8 could be marked "outdated" (by 0_9).
I don't think it is but I prefer to mention it now.
I do not think it makes sense to report outdated status in the name
field. First, we would have to change the name of every love
package when a new one is added. And second, it should be possible to determine the status by checking the set of tuples pname * version
.
It might be a useful meta
attribute though, like a weaker broken
that tools could warn about.
Probably best to create a new issue with refreshed data.
The following https://github.com/repology/repology-rules refer specifically to incorrect packages in Nixpkgs. We should evaluate why we have incorrect information in each of the cases and then carry out a collection.
100.prefix-suffix.yaml
58:- { ruleset: nix, namepat: "(.*)-unstable", setname: $1, weak_devel: true }
– this is expected, can be changed tostrong_devel
once Repology switches topname
attribute (https://github.com/repology/repology/issues/854)versionpat: "unstable-(.*)"
once Repology switches topname
attribute750.exceptions.yaml
68:- { setname: "python:pycryptodome", name: "python:pycrypto", verpat: "3.*", ruleset: nix } # different package XXX: problem
899.version-fixes.global.yaml
37:- { ver: "1003.1-2008", ruleset: nix, ignore: true } # WTF is that? versions like "1003.1-2008"
split unix utilities (https://github.com/repology/repology-rules/commit/326e26ad882109d3477684cfb5196c90e139a3db) not sure what to do about them47:- { verpat: "(git|hg)-(20[0-9]{2}-[0-9]{2}-[0-9]{2})", ruleset: nix, setver: $2, snapshot: true } # see repology#854
48:- { verpat: ".*-wrapper", ruleset: nix, ignore: true }
50:- { verpat: ".*-[0-9]+", namepat: "lua.*", ruleset: nix, untrusted: true } # uses luarocks versions which add extra component
900.version-fixes/v.yaml
4:- { name: v4l2loopback, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
5:- { name: v86d, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
18:- { name: vcsh, ver: "1.20170226", incorrect: true } # nix fake
20:- { name: vcsh, ruleset: nix, untrusted: true }
32:- { name: virtualbox-guestadditions, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
33:- { name: virtualbox-modules, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
40:- { name: vivaldi, verpat: ".*-.*", ruleset: nix, debianism: true }
900.version-fixes/p.yaml
26:- { name: patchage, ver: "1.0.1", ruleset: nix, incorrect: true }
27:- { name: patchage, ruleset: nix, untrusted: true } # accused of fake 1.0.1
28:- { name: patchelf, verpat: ".*pre.*", snapshot: true } # nix
166:- { name: protonmail-bridge, verpat: ".*-.*", ruleset: nix, debianism: true }
170:- { name: psftools, ver: "1.1.10", ruleset: homebrew, incorrect: true } # 1.0.10 actually; any incorrcet URL like https://www.seasip.info/Unix/PSF/psftools-X.Y.Z.tar.gz downloads as the latest version
900.version-fixes/g.yaml
182:- { name: gnuradio, ver: "3.7.11.1", ruleset: nix, incorrect: true }
183:- { name: gnuradio, ruleset: nix, untrusted: true }
900.version-fixes/a.yaml
12:- { name: abseil-cpp, verpat: ".*[0-9a-f]{40}", incorrect: true } # nix
25:- { name: acpi-call, verpat: "[45]\\..*", ruleset: nix, incorrect: true } # uses kernel versions instead of software's
68:- { name: amarok, verpat: ".*20[0-9]{6}.*", snapshot: true } # nix garbage
76:- { name: amtterm, verpat: ".*-.*", ruleset: nix, snapshot: true }
82:- { name: amzn-drivers, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
900.version-fixes/lib.yaml
28:- { name: libcangjie, verpat: ".*[0-9a-f]{40}", incorrect: true } # nix crap
182:- { name: libtelnet, verpat: ".*\\+[0-9a-f]{7}", incorrect: true } # nix fake
188:- { name: libtorrent, verpat: "20[0-9]{2}.*", snapshot: true } # nix, vcpkg garbage
900.version-fixes/c.yaml
30:- { name: cargo, verpat: "1\\..*", ruleset: nix, incorrect: true } # rust version used?
81:- { name: chez-scheme, ver: "9.5.1", ruleset: nix, incorrect: true }
109:- { name: clojure, verpat: "[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]{3,}", incorrect: true } # homebrew and nix garbage
132:- { name: commandergenius, verpat: ".*[0-9]{4}.*", ignore: true } # nixpkgs weirdness
900.version-fixes/x.yaml
84:- { name: xtreemfs, verlonger: 3, ruleset: nix, incorrect: true }
– claims git snapshot is fictious version number → change tounstable-yyyy-mm-dd
92:- { name: xzoom, verlonger: 2, debianism: true } # nix
900.version-fixes/l.yaml
33:- { name: linenoise, verlonger: 2, ruleset: nix, incorrect: true }
83:- { name: "lua:penlight", verpat: "5.*", incorrect: true } # nix garbage - uses lua version
900.version-fixes/n.yaml
12:- { name: ndiswrapper, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
54:- { name: noip, verpat: "[0-9]+\\.[0-9]+\\.[0-9]+-.*", incorrect: true} # nix fake
84:- { name: nvidia, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
85:- { name: nvidiabl, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
900.version-fixes/s.yaml
17:- { name: sbcl, verpat: ".*20[0-9]{6}.*", ignore: true } # nixpkgs garbage
18:- { name: sblim-sfcc, ver: "2.2.9", ruleset: nix, incorrect: true } # prerelease
19:- { name: sblim-sfcc, ruleset: nix, untrusted: true }
126:- { name: solvespace, verpat: ".*[0-9]{8}.*", ignore: true } # nix garbage
168:- { name: spl, ruleset: nix, untrusted: true } # nix appends kernel version
250:- { name: systemtap, verpat: ".*-.*", ruleset: nix, incorrect: true } # total garbage not even including the official version
900.version-fixes/k.yaml
56:- { name: kdiff3, verpat: "1\\.7\\.0-[0-8a-f]{7}.*", ignore: true } # nix snapshot
57:- { name: kdiff3, verpat: ".*201[789].*", ignore: true } # nix snapshot
68:- { name: kget, verpat: "20[0-9]{6}", ignore: true } # nix snapshot
900.version-fixes/h.yaml
21:- { name: hitori, ver: "3.24.1", ruleset: nix, incorrect: true }
22:- { name: hitori, ruleset: nix, untrusted: true }
900.version-fixes/e.yaml
14:- { name: ecdsautils, ver: "0.4.0", ruleset: nix, incorrect: true }
15:- { name: ecdsautils, ruleset: nix, untrusted: true }
110:- { name: exuberant-ctags, verpat: "[0-9]{3}", incorrect: true } # nix: revision
900.version-fixes/python.yaml
60:- { name: "python:pystache", verpat: "[0-9]+(\\.[0-9]+){2}-[0-9.]+", incorrect: true } # nix garbage
900.version-fixes/j.yaml
5:- { name: jade, verpat: "1\\.2\\.1-[0-9]{2}.*", ignore: true } # nix, adds debian patchlevel
900.version-fixes/m.yaml
117:- { name: morituri, verpat: ".*20[0-9]{6}", ignore: true } # nix snapshot
900.version-fixes/d.yaml
88:- { name: dpdk, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
900.version-fixes/o.yaml
6:- { name: "ocaml:calendar", ver: "2.5", ruleset: nix, incorrect: true }
7:- { name: "ocaml:calendar", ruleset: nix, untrusted: true } # accused of fake 2.5 (it's really 2.03.2)
8:- { name: "ocaml:libvirt", verpat: ".*unstable", incorrect: true } # nix garbage
40:- { name: openafs, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
900.version-fixes/f.yaml
3:- { name: f3, verpat: ".*unstable", ignore: true } # nix garbage
900.version-fixes/y.yaml
15:- { name: yosys, verpat: "20[0-9]{2}.*", snapshot: true } # nix
900.version-fixes/u.yaml
28:- { name: unnethack, ver: "5.3.1", ruleset: nix, incorrect: true }
upstream confusion, fixed in master since June 2019 (048e0b6331cd)29:- { name: unnethack, ruleset: nix, untrusted: true }
41:- { name: urlview, verpat: "(0\\.9)-[0-9]+", setver: $1 } # debian suffix copied by homebrew, macports and nix
900.version-fixes/t.yaml
3:- { name: tabbed, verpat: "20[0-9]{6}", ignore: true } # nix snapshot
26:- { name: tcpflow, ver: "1.4.6", ruleset: nix, incorrect: true }
104:- { name: tp-smapi, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
900.version-fixes/w.yaml
17:- { name: wego, verpat: "20[0-9]{2}.*", ignore: true } # nix
900.version-fixes/i.yaml
72:- { name: iverilog, verpat: ".*20[0-9]{2}\\.?[0-9]{2}\\.?[0-9]{2}.*", ignore: true } # nixpkgs garbage
800.renames-and-merges/p.yaml
80:- { setname: phoenix-emu, name: phoenix-emu-project }
800.renames-and-merges/g.yaml
164:- { setname: glucose, name: glucose-syrup, addflavor: true } # (nix parallel vs. sequential version)
297:- { setname: gphotofs, name: gphoto2fs } # nix, problem
850.split-ambiguities/v.yaml
10:- { name: vapor, ruleset: nix, setname: love-vapor }
850.split-ambiguities/a.yaml
79:- { name: ape, ruleset: nix, setname: ape-attempto-controlled-english }
850.split-ambiguities/l.yaml
6:- { name: ldm, ruleset: nix, setname: ldm-mounter }
800.renames-and-merges/ocaml.yaml
47: ruleset: nix
850.split-ambiguities/h.yaml
36:- { name: hydra, wwwpart: ory.am, setname: hydra-openid } # XXX: must be before hydra-nix rule
37:- { name: hydra, wwwpart: nixos, setname: hydra-nix }
38:- { name: hydra, ruleset: nix, setname: hydra-nix }
850.split-ambiguities/e.yaml
35:- { name: elm, ruleset: nix, setname: elm-lang }
38:- { name: emma, setname: emma-coverage, ruleset: [sisyphus, fedora, gentoo, mageia, rosa, nix] }
800.renames-and-merges/c.yaml
109:- { setname: clang, name: clang-wrapper, ruleset: nix } # see report
900.version-fixes/b.yaml
20:- { name: batman-adv, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
24:- { name: bbswitch, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
111:- { name: bzip2, ver: "1.0.6.0.1", incorrect: true } # nix fake; real version is 1.0.6
112:- { name: bzip2, ruleset: nix, untrusted: true } # accused of fake 1.0.6.0.1
900.version-fixes/z.yaml
15:- { name: zfs, verpat: ".*-.*", ruleset: nix, incorrect: true } # kernel version appended
800.renames-and-merges/l.yaml
112:- { setname: luarocks, name: luarocks-nix, addflavor: true }
– fork of luarocks supposed to be used only in nixpkgs (https://github.com/NixOS/nixpkgs/issues/68531#issuecomment-530683553)900.version-fixes/r.yaml
66:- { name: rtorrent, verpat: "20[0-9]{6}.*", ignore: true } # nix fake