summaryrefslogtreecommitdiff
path: root/pkgs/tools/filesystems
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2021-05-24 09:55:24 -0500
committerRobin Gloster <mail@glob.in>2021-05-24 09:55:24 -0500
commit4bc5fbef9d159e143fb7e2c3231932e6e76f667c (patch)
treee2198f5c552e0667d838b8ec764ddb3a4d8f6dec /pkgs/tools/filesystems
parentjq: fix build with structured-attrs on darwin (diff)
parentMerge pull request #123802 from superherointj/package-virtmanager-bugfix (diff)
downloadnixpkgs-origin/structured-attrs.tar.gz
Merge remote-tracking branch 'upstream/master' into structured-attrsorigin/structured-attrs
Diffstat (limited to 'pkgs/tools/filesystems')
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/bees/default.nix11
-rw-r--r--pkgs/tools/filesystems/blobfuse/default.nix29
-rw-r--r--pkgs/tools/filesystems/blobfuse/install-adls.patch14
-rw-r--r--pkgs/tools/filesystems/btrfs-progs/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix23
-rw-r--r--pkgs/tools/filesystems/dduper/default.nix50
-rw-r--r--pkgs/tools/filesystems/gcsfuse/default.nix4
-rw-r--r--pkgs/tools/filesystems/irods/common.nix2
-rw-r--r--pkgs/tools/filesystems/squashfs-tools-ng/default.nix10
-rw-r--r--pkgs/tools/filesystems/supertag/default.nix2
11 files changed, 129 insertions, 26 deletions
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 8ab82b672265..a28499f77328 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, attr, libuuid, libscrypt, libsodium, keyutils
-, liburcu, zlib, libaio, udev, zstd, lz4, valgrind, python3Packages
+, liburcu, zlib, libaio, udev, zstd, lz4, valgrind, python3Packages, nixosTests
, fuseSupport ? false, fuse3 ? null }:
assert fuseSupport -> fuse3 != null;
@@ -39,6 +39,10 @@ stdenv.mkDerivation {
installFlags = [ "PREFIX=${placeholder "out"}" ];
+ passthru.tests = {
+ smoke-test = nixosTests.bcachefs;
+ };
+
meta = with lib; {
description = "Tool for managing bcachefs filesystems";
homepage = "https://bcachefs.org/";
diff --git a/pkgs/tools/filesystems/bees/default.nix b/pkgs/tools/filesystems/bees/default.nix
index bbad83f01768..7ba27208fe88 100644
--- a/pkgs/tools/filesystems/bees/default.nix
+++ b/pkgs/tools/filesystems/bees/default.nix
@@ -1,4 +1,5 @@
-{ lib, stdenv, runCommand, fetchFromGitHub, bash, btrfs-progs, coreutils, python3Packages, util-linux }:
+{ lib, stdenv, runCommand, fetchFromGitHub, bash, btrfs-progs, coreutils
+, python3Packages, util-linux, nixosTests }:
let
@@ -55,7 +56,7 @@ let
in
-runCommand "bees-service" {
+(runCommand "bees-service" {
inherit bash bees coreutils;
utillinux = util-linux; # needs to be a valid shell variable name
btrfsProgs = btrfs-progs; # needs to be a valid shell variable name
@@ -64,4 +65,8 @@ runCommand "bees-service" {
substituteAll ${./bees-service-wrapper} "$out"/bin/bees-service-wrapper
chmod +x "$out"/bin/bees-service-wrapper
ln -s ${bees}/bin/beesd "$out"/bin/beesd
-''
+'').overrideAttrs (old: {
+ passthru.tests = {
+ smoke-test = nixosTests.bees;
+ };
+})
diff --git a/pkgs/tools/filesystems/blobfuse/default.nix b/pkgs/tools/filesystems/blobfuse/default.nix
index 6ae4c462b51d..b3ba3a45c50b 100644
--- a/pkgs/tools/filesystems/blobfuse/default.nix
+++ b/pkgs/tools/filesystems/blobfuse/default.nix
@@ -1,19 +1,32 @@
-{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, curl, gnutls, libgcrypt, libuuid, fuse }:
-
-stdenv.mkDerivation rec {
- pname = "blobfuse";
- version = "1.0.2";
+{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, curl, gnutls, libgcrypt, libuuid, fuse, boost }:
+let
+ version = "1.3.7";
src = fetchFromGitHub {
owner = "Azure";
repo = "azure-storage-fuse";
- rev = "v${version}";
- sha256 = "1qh04z1fsj1l6l12sz9yl2sy9hwlrnzac54hwrr7wvsgv90n9gbp";
+ rev = "blobfuse-${version}-Linux";
+ sha256 = "sha256-yihIuS4AG489U7eBi/p7H6S7Cg54kkQeNVCexxQZ60A=";
};
+ cpplite = stdenv.mkDerivation rec {
+ pname = "cpplite";
+ inherit version src;
+
+ sourceRoot = "source/cpplite";
+ patches = [ ./install-adls.patch ];
+
+ cmakeFlags = [ "-DBUILD_ADLS=ON" "-DUSE_OPENSSL=OFF" ];
+
+ buildInputs = [ curl libuuid gnutls ];
+ nativeBuildInputs = [ cmake pkg-config ];
+ };
+in stdenv.mkDerivation rec {
+ pname = "blobfuse";
+ inherit version src;
env.NIX_CFLAGS_COMPILE = "-Wno-error=catch-value";
- buildInputs = [ curl gnutls libgcrypt libuuid fuse ];
+ buildInputs = [ curl gnutls libgcrypt libuuid fuse boost cpplite ];
nativeBuildInputs = [ cmake pkg-config ];
meta = with lib; {
diff --git a/pkgs/tools/filesystems/blobfuse/install-adls.patch b/pkgs/tools/filesystems/blobfuse/install-adls.patch
new file mode 100644
index 000000000000..e48f4d592f68
--- /dev/null
+++ b/pkgs/tools/filesystems/blobfuse/install-adls.patch
@@ -0,0 +1,14 @@
+diff --git a/adls/CMakeLists.txt b/adls/CMakeLists.txt
+index 1fb7146..22e663a 100644
+--- a/adls/CMakeLists.txt
++++ b/adls/CMakeLists.txt
+@@ -50,3 +50,9 @@ if(BUILD_TESTS)
+ string(REGEX REPLACE "([^;]+)" "${CMAKE_CURRENT_SOURCE_DIR}/\\1" AZURE_STORAGE_ADLS_TEST_SOURCES "${AZURE_STORAGE_ADLS_TEST_SOURCES}")
+ set(AZURE_STORAGE_ADLS_TEST_SOURCES ${AZURE_STORAGE_ADLS_TEST_SOURCES} PARENT_SCOPE)
+ endif()
++
++install(TARGETS azure-storage-adls
++ ARCHIVE DESTINATION lib
++ LIBRARY DESTINATION lib
++ RUNTIME DESTINATION bin)
++
diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix
index 0e135d41a4be..9a05a0d67fec 100644
--- a/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "btrfs-progs";
- version = "5.11";
+ version = "5.11.1";
src = fetchurl {
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
- sha256 = "sha256-1BlhsKkhYMgPiUrZoYgoIoicLh0ITL8+CLjCFKXPATc=";
+ sha256 = "sha256-46rMxHVuxOVQLLKp+Ftn1SiWZE9MPA+IprxZjHC96/4=";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index 57d5845c9961..a7add68b2dac 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -1,5 +1,4 @@
{ lib, stdenv, runCommand, fetchurl
-, fetchpatch
, ensureNewerSourcesHook
, cmake, pkg-config
, which, git
@@ -14,6 +13,15 @@
, libnl, libcap_ng
, rdkafka
, nixosTests
+, cryptsetup
+, sqlite
+, lua
+, icu
+, bzip2
+, doxygen
+, graphviz
+, fmt
+, python3
# Optional Dependencies
, yasm ? null, fcgi ? null, expat ? null
@@ -123,10 +131,10 @@ let
]);
sitePackages = ceph-python-env.python.sitePackages;
- version = "15.2.10";
+ version = "16.2.1";
src = fetchurl {
url = "http://download.ceph.com/tarballs/ceph-${version}.tar.gz";
- sha256 = "1xfijynfb56gydpwh6h4q781xymwxih6nx26idnkcjqih48nsn01";
+ sha256 = "1qqvfhnc94vfrq1ddizf6habjlcp77abry4v18zlq6rnhwr99zrh";
};
in rec {
ceph = stdenv.mkDerivation {
@@ -142,12 +150,18 @@ in rec {
pkg-config which git python3Packages.wrapPython makeWrapper
python3Packages.python # for the toPythonPath function
(ensureNewerSourcesHook { year = "1980"; })
+ python3
+ fmt
+ # for building docs/man-pages presumably
+ doxygen
+ graphviz
];
buildInputs = cryptoLibsMap.${cryptoStr} ++ [
boost ceph-python-env libxml2 optYasm optLibatomic_ops optLibs3
malloc zlib openldap lttng-ust babeltrace gperf gtest cunit
snappy lz4 oathToolkit leveldb libnl libcap_ng rdkafka
+ cryptsetup sqlite lua icu bzip2
] ++ lib.optionals stdenv.isLinux [
linuxHeaders util-linux libuuid udev keyutils optLibaio optLibxfs optZfs
# ceph 14
@@ -172,7 +186,6 @@ in rec {
'';
cmakeFlags = [
- "-DWITH_PYTHON3=ON"
"-DWITH_SYSTEM_ROCKSDB=OFF" # breaks Bluestore
"-DCMAKE_INSTALL_DATADIR=${placeholder "lib"}/lib"
@@ -183,6 +196,8 @@ in rec {
"-DWITH_TESTS=OFF"
# TODO breaks with sandbox, tries to download stuff with npm
"-DWITH_MGR_DASHBOARD_FRONTEND=OFF"
+ # WITH_XFS has been set default ON from Ceph 16, keeping it optional in nixpkgs for now
+ ''-DWITH_XFS=${if optLibxfs != null then "ON" else "OFF"}''
];
postFixup = ''
diff --git a/pkgs/tools/filesystems/dduper/default.nix b/pkgs/tools/filesystems/dduper/default.nix
new file mode 100644
index 000000000000..5d91e8d0dcc6
--- /dev/null
+++ b/pkgs/tools/filesystems/dduper/default.nix
@@ -0,0 +1,50 @@
+{ lib, stdenv, fetchpatch, fetchFromGitHub, btrfs-progs, python3 }:
+
+let
+ btrfsProgsPatched = btrfs-progs.overrideAttrs (oldAttrs: {
+ patches = [
+ (fetchpatch {
+ name = "0001-Print-csum-for-a-given-file-on-stdout.patch";
+ url = "https://raw.githubusercontent.com/Lakshmipathi/dduper/8fab08e0f1901bf54411d25f1767b48c978074cb/patch/btrfs-progs-v5.9/0001-Print-csum-for-a-given-file-on-stdout.patch";
+ sha256 = "1li9lslrap70ibad8sij3bgpxn5lqs0j10l60bmy3c36y866q3g1";
+ })
+ ];
+ });
+ py3 = python3.withPackages (ps: with ps; [
+ prettytable
+ numpy
+ ]);
+in
+stdenv.mkDerivation rec {
+ pname = "dduper";
+ version = "0.04";
+
+ src = fetchFromGitHub {
+ owner = "lakshmipathi";
+ repo = "dduper";
+ rev = "v${version}";
+ sha256 = "09ncdawxkffldadqhfblqlkdl05q2qmywxyg6p61fv3dr2f2v5wm";
+ };
+
+ buildInputs = [
+ btrfsProgsPatched
+ py3
+ ];
+
+ patchPhase = ''
+ substituteInPlace ./dduper --replace "/usr/sbin/btrfs.static" "${btrfsProgsPatched}/bin/btrfs"
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin
+ install -m755 ./dduper $out/bin
+ '';
+
+ meta = with lib; {
+ description = "Fast block-level out-of-band BTRFS deduplication tool.";
+ homepage = "https://github.com/Lakshmipathi/dduper";
+ license = licenses.gpl2Plus;
+ maintainers = with maintainers; [ thesola10 ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/tools/filesystems/gcsfuse/default.nix b/pkgs/tools/filesystems/gcsfuse/default.nix
index b145d1802a1c..ee7f86760707 100644
--- a/pkgs/tools/filesystems/gcsfuse/default.nix
+++ b/pkgs/tools/filesystems/gcsfuse/default.nix
@@ -2,13 +2,13 @@
buildGoPackage rec {
pname = "gcsfuse";
- version = "0.34.1";
+ version = "0.35.0";
src = fetchFromGitHub {
owner = "googlecloudplatform";
repo = "gcsfuse";
rev = "v${version}";
- sha256 = "16ns04g4cvp6lfhkifgib5rxpbcxy8ghhavi3mv1cvxawpmdrxnq";
+ sha256 = "sha256-GJ21Cqd/W/PocmN1p4OeeUdswhH7fSmAMiNTs0X3564=";
};
goPackagePath = "github.com/googlecloudplatform/gcsfuse";
diff --git a/pkgs/tools/filesystems/irods/common.nix b/pkgs/tools/filesystems/irods/common.nix
index 83aaa3d612ab..5dab97c9c25a 100644
--- a/pkgs/tools/filesystems/irods/common.nix
+++ b/pkgs/tools/filesystems/irods/common.nix
@@ -19,7 +19,7 @@
"-DIRODS_LINUX_DISTRIBUTION_NAME=nix"
"-DIRODS_LINUX_DISTRIBUTION_VERSION_MAJOR=${builtins.nixVersion}"
"-DCPACK_GENERATOR=TGZ"
- "-DCMAKE_CXX_FLAGS=-I${libcxx}/include/c++/v1"
+ "-DCMAKE_CXX_FLAGS=-I${lib.getDev libcxx}/include/c++/v1"
];
preConfigure = ''
diff --git a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
index 265495389b01..d0ad7803c791 100644
--- a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
+++ b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
@@ -1,18 +1,20 @@
{ stdenv, lib, fetchurl, doxygen, graphviz, perl, pkg-config
-, lz4, lzo, xz, zlib, zstd
+, bzip2, lz4, lzo, xz, zlib, zstd
}:
stdenv.mkDerivation rec {
pname = "squashfs-tools-ng";
- version = "1.1.0";
+ version = "1.1.1";
src = fetchurl {
url = "https://infraroot.at/pub/squashfs/squashfs-tools-ng-${version}.tar.xz";
- sha256 = "1swsw5j8rrjxdxsfyd446f6g8f0k3mwg15baivi953i69c9981qi";
+ sha256 = "07c8vpzgwvqr9ycww1769ya40cf077c6igdg1b4akwszz2nw0bxq";
};
nativeBuildInputs = [ doxygen graphviz pkg-config perl ];
- buildInputs = [ zlib xz lz4 lzo zstd ];
+ buildInputs = [ bzip2 zlib xz lz4 lzo zstd ];
+
+ enableParallelBuilding = true;
meta = with lib; {
homepage = "https://github.com/AgentD/squashfs-tools-ng";
diff --git a/pkgs/tools/filesystems/supertag/default.nix b/pkgs/tools/filesystems/supertag/default.nix
index 3602f8e31f94..2e333b5b054e 100644
--- a/pkgs/tools/filesystems/supertag/default.nix
+++ b/pkgs/tools/filesystems/supertag/default.nix
@@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "1mzmp1jcxgn2swp52r9y7k09fk0z67i1qafzkkzlfxxd10vfr70v";
- LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+ LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
nativeBuildInputs = [ clang pkg-config ];
buildInputs = [ dbus fuse sqlite ];