nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 autoreconfHook,
6 fuse,
7 curl,
8 pkg-config,
9 glib,
10 zlib,
11}:
12
13stdenv.mkDerivation (finalAttrs: {
14 pname = "curlftpfs";
15 version = "0.9.2";
16
17 src = fetchurl {
18 url = "mirror://sourceforge/curlftpfs/curlftpfs-${finalAttrs.version}.tar.gz";
19 sha256 = "0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f";
20 };
21
22 patches = [
23 # This removes AC_FUNC_MALLOC and AC_FUNC_REALLOC from configure.ac because
24 # it is known to cause problems. Search online for "rpl_malloc" and
25 # "rpl_realloc" to find out more.
26 ./fix-rpl_malloc.patch
27 ./suse-bug-580609.patch
28 ./suse-bug-955687.patch
29 ];
30
31 nativeBuildInputs = [
32 autoreconfHook
33 pkg-config
34 ];
35 buildInputs = [
36 fuse
37 curl
38 glib
39 zlib
40 ];
41
42 CFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-D__off_t=off_t";
43
44 postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
45 # Fix the build on macOS with macFUSE installed. Needs autoreconfHook for
46 # this change to effect
47 substituteInPlace configure.ac --replace \
48 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' \
49 ""
50 '';
51
52 doCheck = false; # fails, doesn't work well too, btw
53
54 meta = {
55 description = "Filesystem for accessing FTP hosts based on FUSE and libcurl";
56 mainProgram = "curlftpfs";
57 homepage = "https://curlftpfs.sourceforge.net";
58 license = lib.licenses.gpl2Only;
59 platforms = lib.platforms.unix;
60 };
61})