aboutsummaryrefslogtreecommitdiff
path: root/nix/mozlz4.nix
diff options
context:
space:
mode:
authortilpner2020-03-05 16:45:36 +0100
committertilpner2020-03-05 16:45:36 +0100
commitedd25555261c17f74580245b8305cf7edefa4267 (patch)
tree796138422abba300105ac8634fa3fe68bd30252a /nix/mozlz4.nix
downloadfirefox-profiles-edd25555261c17f74580245b8305cf7edefa4267.tar.gz
firefox-profiles-edd25555261c17f74580245b8305cf7edefa4267.tar.xz
firefox-profiles-edd25555261c17f74580245b8305cf7edefa4267.zip
Initial commit
Diffstat (limited to 'nix/mozlz4.nix')
-rw-r--r--nix/mozlz4.nix24
1 files changed, 24 insertions, 0 deletions
diff --git a/nix/mozlz4.nix b/nix/mozlz4.nix
new file mode 100644
index 0000000..1fa0497
--- /dev/null
+++ b/nix/mozlz4.nix
@@ -0,0 +1,24 @@
+{ pkgs, lib }:
+
+let
+ inherit (pkgs.writers) writePython3;
+ inherit (pkgs.python3Packages) lz4;
+in rec {
+ compress = writePython3 "compress.py" { libraries = [ lz4 ]; } ''
+ import sys
+ import lz4.block
+
+ data = lz4.block.compress(sys.stdin.buffer.read())
+ data = b'mozLz40\0' + data
+
+ sys.stdout.buffer.write(data)
+ '';
+
+ decompress = writePython3 "decompress.py" { libraries = [ lz4 ]; } ''
+ import sys
+ import lz4.block
+
+ sys.stdin.buffer.read(8)
+ sys.stdout.buffer.write(lz4.block.decompress(sys.stdin.buffer.read()))
+ '';
+}