jnv: 0.4.2 -> 0.5.0 (#371655)
[NixPkgs.git] / pkgs / applications / editors / emacs / elisp-packages / fetchelpa.nix
blob1f76abd232e57ff254de6b964ce80c98759e3c73
1 # Elpa only serves the latest version of a given package uncompressed.
2 # Once that release is no longer the latest & greatest it gets archived and compressed
3 # meaning that both the URL and the hash changes.
5 # To work around this issue we fall back to the URL with the .lz suffix and if that's the
6 # one we downloaded we uncompress the file to ensure the hash matches regardless of compression.
8 { fetchurl, lzip }:
10 { url, ... }@args:
11 fetchurl (
12   (removeAttrs args [ "url" ])
13   // {
14     urls = [
15       url
16       (url + ".lz")
17     ];
18     postFetch = ''
19       if [[ $url == *.lz ]]; then
20         ${lzip}/bin/lzip -c -d $out > uncompressed
21         mv uncompressed $out
22       fi
23     '';
24   }