nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 autoreconfHook,
6 pkg-config,
7 libuuid,
8 e2fsprogs,
9 nilfs-utils,
10 ntfs3g,
11 openssl,
12}:
13
14stdenv.mkDerivation (finalAttrs: {
15 pname = "partclone";
16 version = "0.3.38";
17
18 src = fetchFromGitHub {
19 owner = "Thomas-Tsai";
20 repo = "partclone";
21 rev = finalAttrs.version;
22 sha256 = "sha256-lWnGi8giz7vzdBnuth55h0VMuNyCQaCclRqPJdm0I14=";
23 };
24
25 nativeBuildInputs = [
26 autoreconfHook
27 pkg-config
28 ];
29 buildInputs = [
30 e2fsprogs
31 libuuid
32 stdenv.cc.libc
33 nilfs-utils
34 ntfs3g
35 openssl
36 (lib.getOutput "static" stdenv.cc.libc)
37 ];
38
39 configureFlags = [
40 "--enable-xfs"
41 "--enable-extfs"
42 "--enable-hfsp"
43 "--enable-fat"
44 "--enable-exfat"
45 "--enable-ntfs"
46 "--enable-btrfs"
47 "--enable-minix"
48 "--enable-f2fs"
49 "--enable-nilfs2"
50 ];
51
52 enableParallelBuilding = true;
53
54 meta = {
55 description = "Utilities to save and restore used blocks on a partition";
56 longDescription = ''
57 Partclone provides utilities to save and restore used blocks on a
58 partition and is designed for higher compatibility of the file system by
59 using existing libraries, e.g. e2fslibs is used to read and write the
60 ext2 partition.
61 '';
62 homepage = "https://partclone.org";
63 license = lib.licenses.gpl2Plus;
64 maintainers = with lib.maintainers; [ marcweber ];
65 platforms = lib.platforms.linux;
66 };
67})