2021-03-03 17:05:04 +03:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, fetchFromGitHub
|
2021-08-01 12:28:58 +03:00
|
|
|
, fetchpatch
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
, help2man
|
2021-01-10 13:22:35 +03:00
|
|
|
, lz4
|
2021-03-03 14:51:59 +03:00
|
|
|
, lzo
|
2021-08-01 12:31:07 +03:00
|
|
|
, nixosTests
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
, which
|
|
|
|
, xz
|
|
|
|
, zlib
|
|
|
|
, zstd
|
2016-09-13 02:08:09 +03:00
|
|
|
}:
|
|
|
|
|
2021-03-03 17:05:04 +03:00
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 15:41:18 +03:00
|
|
|
pname = "squashfs";
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
version = "4.5.1";
|
2009-04-23 17:31:10 +04:00
|
|
|
|
2016-09-13 00:11:37 +03:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "plougher";
|
|
|
|
repo = "squashfs-tools";
|
2021-03-03 17:05:04 +03:00
|
|
|
rev = version;
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
sha256 = "sha256-Y3ZPjeE9HN1F+NtGe6EchYziWrTPVQ4SuKaCvNbXMKI=";
|
2006-09-08 19:19:43 +04:00
|
|
|
};
|
2013-04-12 17:25:53 +04:00
|
|
|
|
2018-05-08 14:19:14 +03:00
|
|
|
patches = [
|
2018-11-17 18:44:19 +03:00
|
|
|
# This patch adds an option to pad filesystems (increasing size) in
|
|
|
|
# exchange for better chunking / binary diff calculation.
|
2019-09-07 19:58:31 +03:00
|
|
|
./4k-align.patch
|
2021-01-15 12:19:50 +03:00
|
|
|
] ++ lib.optional stdenv.isDarwin ./darwin.patch;
|
2018-05-08 14:19:14 +03:00
|
|
|
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
buildInputs = [ zlib xz zstd lz4 lzo which help2man ];
|
2009-04-23 17:31:10 +04:00
|
|
|
|
2021-03-03 17:05:04 +03:00
|
|
|
preBuild = ''
|
|
|
|
cd squashfs-tools
|
|
|
|
'' ;
|
2013-04-12 17:25:53 +04:00
|
|
|
|
squashfsTools: 4.5 -> 4.5.1
The patch that was previously fetched from GitHub is now part of the
4.5.1 release, and is no longer needed. Furthermore, 4.5.1 introduces
some new scripts to build manpages, and some new build inputs are
required to make that work.
This also rebases the Darwin patch. I don't have a Mac so I can't test
this personally. There was one conflict:
diff --cc squashfs-tools/read_xattrs.c
index 2067f80,b28c3a0..0000000
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@@ -36,9 -38,7 +38,7 @@@
#include "xattr.h"
#include "error.h"
- #include <stdlib.h>
-
-extern int read_fs_bytes(int, long long, int, void *);
+extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
static struct hash_entry {
Resolved by updating the signature from int to long long.
2022-03-19 14:05:49 +03:00
|
|
|
installFlags = [
|
|
|
|
"INSTALL_DIR=${placeholder "out"}/bin"
|
|
|
|
"INSTALL_MANPAGES_DIR=${placeholder "out"}/share/man/man1"
|
|
|
|
];
|
2013-04-12 17:25:53 +04:00
|
|
|
|
2021-03-03 17:05:04 +03:00
|
|
|
makeFlags = [
|
|
|
|
"XZ_SUPPORT=1"
|
|
|
|
"ZSTD_SUPPORT=1"
|
|
|
|
"LZ4_SUPPORT=1"
|
|
|
|
"LZO_SUPPORT=1"
|
|
|
|
];
|
2013-04-12 17:25:53 +04:00
|
|
|
|
2021-08-01 12:31:07 +03:00
|
|
|
passthru.tests = {
|
|
|
|
nixos-iso-boots-and-verifies = nixosTests.boot.biosCdrom;
|
|
|
|
};
|
|
|
|
|
2021-03-03 17:05:04 +03:00
|
|
|
meta = with lib; {
|
|
|
|
homepage = "https://github.com/plougher/squashfs-tools";
|
2009-06-05 17:52:24 +04:00
|
|
|
description = "Tool for creating and unpacking squashfs filesystems";
|
2021-03-03 17:05:04 +03:00
|
|
|
platforms = platforms.unix;
|
|
|
|
license = licenses.gpl2Plus;
|
|
|
|
maintainers = with maintainers; [ ruuda ];
|
2009-06-05 17:52:24 +04:00
|
|
|
};
|
2006-09-08 19:19:43 +04:00
|
|
|
}
|