summaryrefslogtreecommitdiffstats
path: root/pkgs/tools/compression/brotli
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2016-01-20 22:28:50 +0100
committerVladimír Čunát <vcunat@gmail.com>2016-01-20 22:50:26 +0100
commit313faf07ba17e275c0b534e54b3c2ebd267b85da (patch)
treeb334c1879e04555b9e5bd972033458813e545014 /pkgs/tools/compression/brotli
parent34fe26d7c2eb00cf9c6c1ce59aa2e6f0fdbaee0b (diff)
brotli: init at 0.3.0
Diffstat (limited to 'pkgs/tools/compression/brotli')
-rw-r--r--pkgs/tools/compression/brotli/default.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/pkgs/tools/compression/brotli/default.nix b/pkgs/tools/compression/brotli/default.nix
new file mode 100644
index 000000000000..eac4af0ec5f0
--- /dev/null
+++ b/pkgs/tools/compression/brotli/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub }:
+
+# ?TODO: there's also python lib in there
+
+stdenv.mkDerivation rec {
+ name = "brotli-${version}";
+ version = "0.3.0";
+
+ src = fetchFromGitHub {
+ owner = "google";
+ repo = "brotli";
+ rev = "v" + version;
+ sha256 = "1ijwr8fbrajp4gh8x6lrrpf8gymm0i6w06s97rv294q5dcszn299";
+ };
+
+ preConfigure = "cd tools";
+
+ # Debian installs "brotli" instead of "bro" but let's keep upstream choice for now.
+ installPhase = ''
+ mkdir -p "$out/bin"
+ mv ./bro "$out/bin/"
+ '';
+
+ meta = with stdenv.lib; {
+ inherit (src.meta) homepage;
+
+ description = "A generic-purpose lossless compression algorithm and tool";
+
+ longDescription =
+ '' Brotli is a generic-purpose lossless compression algorithm that
+ compresses data using a combination of a modern variant of the LZ77
+ algorithm, Huffman coding and 2nd order context modeling, with a
+ compression ratio comparable to the best currently available
+ general-purpose compression methods. It is similar in speed with
+ deflate but offers more dense compression.
+
+ The specification of the Brotli Compressed Data Format is defined
+ in the following internet draft:
+ http://www.ietf.org/id/draft-alakuijala-brotli
+ '';
+
+ license = licenses.mit;
+ maintainers = [ maintainers.vcunat ];
+ platforms = platforms.all;
+ };
+}
+