Merge 'staging' into closure-size
- there were many easy merge conflicts - cc-wrapper needed nontrivial changes Many other problems might've been created by interaction of the branches, but stdenv and a few other packages build fine now.
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
{ stdenv, fetchurl, pkgconfig, fuse, xz }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "avfs-${version}";
|
||||
version = "1.0.2";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/avf/${version}/${name}.tar.bz2";
|
||||
sha1 = "e4f8377ea2565c1ac59f7b66893905b778ddf849";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig fuse xz ];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-library"
|
||||
"--enable-fuse"
|
||||
"--disable-static"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://avf.sourceforge.net/;
|
||||
description = "Virtual filesystem that allows browsing of compressed files";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
{stdenv, fetchFromGitHub}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "bashmount-${version}";
|
||||
version = "3.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jamielinux";
|
||||
repo = "bashmount";
|
||||
rev = version;
|
||||
sha256 = "0rki4s0jgz6vkywc6hcx9qa551r5bnjs7sw0rdh93k64l32kh644";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp bashmount $out/bin
|
||||
|
||||
mkdir -p $out/etc
|
||||
cp bashmount.conf $out/etc
|
||||
|
||||
mkdir -p $out/share/man/man1
|
||||
gzip -c -9 bashmount.1 > bashmount.1.gz
|
||||
cp bashmount.1.gz $out/share/man/man1
|
||||
|
||||
mkdir -p $out/share/doc/bashmount
|
||||
cp COPYING $out/share/doc/bashmount
|
||||
cp NEWS $out/share/doc/bashmount
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/jamielinux/bashmount;
|
||||
description = "A menu-driven bash script for the management of removable media with udisks";
|
||||
maintainers = [ maintainers.koral ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
This patch does two things:
|
||||
1) Drops probe-bcache, so now new util-linux detecting functionality is used.
|
||||
2) Drops bcache-register, using kmod (built in udev) and moving registering device
|
||||
into rule using 'sh'.
|
||||
This reduces things that need to be present in initrd, replacing them with already
|
||||
existing functionality and reducing overall initrd size.
|
||||
|
||||
diff --git a/69-bcache.rules b/69-bcache.rules
|
||||
index 5d28e70..6a52893 100644
|
||||
--- a/69-bcache.rules
|
||||
+++ b/69-bcache.rules
|
||||
@@ -10,15 +10,11 @@ KERNEL=="fd*|sr*", GOTO="bcache_end"
|
||||
# It recognised bcache (util-linux 2.24+)
|
||||
ENV{ID_FS_TYPE}=="bcache", GOTO="bcache_backing_found"
|
||||
# It recognised something else; bail
|
||||
-ENV{ID_FS_TYPE}=="?*", GOTO="bcache_backing_end"
|
||||
-
|
||||
-# Backing devices: scan, symlink, register
|
||||
-IMPORT{program}="probe-bcache -o udev $tempnode"
|
||||
-ENV{ID_FS_TYPE}!="bcache", GOTO="bcache_backing_end"
|
||||
-ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
|
||||
+GOTO="bcache_backing_end"
|
||||
|
||||
LABEL="bcache_backing_found"
|
||||
-RUN+="bcache-register $tempnode"
|
||||
+RUN{builtin}+="kmod load bcache"
|
||||
+RUN+="/bin/sh -c 'echo $tempnode > /sys/fs/bcache/register_quiet'"
|
||||
LABEL="bcache_backing_end"
|
||||
|
||||
# Cached devices: symlink
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 3f8d87b..15638a7 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -9,7 +9,7 @@ all: make-bcache probe-bcache bcache-super-show
|
||||
|
||||
install: make-bcache probe-bcache bcache-super-show
|
||||
$(INSTALL) -m0755 make-bcache bcache-super-show $(DESTDIR)${PREFIX}/sbin/
|
||||
- $(INSTALL) -m0755 probe-bcache bcache-register $(DESTDIR)$(UDEVLIBDIR)/
|
||||
+# $(INSTALL) -m0755 probe-bcache bcache-register $(DESTDIR)$(UDEVLIBDIR)/
|
||||
$(INSTALL) -m0644 69-bcache.rules $(DESTDIR)$(UDEVLIBDIR)/rules.d/
|
||||
$(INSTALL) -m0644 -- *.8 $(DESTDIR)${PREFIX}/share/man/man8/
|
||||
$(INSTALL) -D -m0755 initramfs/hook $(DESTDIR)/usr/share/initramfs-tools/hooks/bcache
|
||||
diff --git a/bcache-register b/bcache-register
|
||||
index 9b592bc..75b4faf 100755
|
||||
--- a/bcache-register
|
||||
+++ b/bcache-register
|
||||
@@ -1,4 +1,3 @@
|
||||
#!/bin/sh
|
||||
-/sbin/modprobe -qba bcache
|
||||
test -f /sys/fs/bcache/register_quiet && echo "$1" > /sys/fs/bcache/register_quiet
|
||||
|
||||
@@ -19,10 +19,10 @@ stdenv.mkDerivation rec {
|
||||
-e "/INSTALL.*initcpio\/install/d" \
|
||||
-e "/INSTALL.*dracut\/module-setup.sh/d" \
|
||||
-i Makefile
|
||||
|
||||
sed -e "s|/sbin/modprobe|${kmod}/sbin/modprobe|" -i bcache-register
|
||||
'';
|
||||
|
||||
patches = [ ./bcache-udev-modern.patch ];
|
||||
|
||||
preBuild = ''
|
||||
export makeFlags="$makeFlags PREFIX=\"$out\" UDEVLIBDIR=\"$out/lib/udev/\"";
|
||||
'';
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
{ stdenv, fetchFromGitHub, curl, fuse, libxml2, pkgconfig }:
|
||||
|
||||
let
|
||||
version = "2-20150109";
|
||||
srcs = {
|
||||
boxfs2 = fetchFromGitHub {
|
||||
sha256 = "10af1l3sjnh25shmq5gdnpyqk4vrq7i1zklv4csf1n2nrahln8j8";
|
||||
rev = "d7018b0546d2dae956ae3da3fb95d2f63fa6d3ff";
|
||||
repo = "boxfs2";
|
||||
owner = "drotiro";
|
||||
};
|
||||
libapp = fetchFromGitHub {
|
||||
sha256 = "1p2sbxiranan2n2xsfjkp3c6r2vcs57ds6qvjv4crs1yhxr7cp00";
|
||||
rev = "febebe2bc0fb88d57bdf4eb4a2a54c9eeda3f3d8";
|
||||
repo = "libapp";
|
||||
owner = "drotiro";
|
||||
};
|
||||
libjson = fetchFromGitHub {
|
||||
sha256 = "1vhss3gq44nl61fbnh1l3qzwvz623gwhfgykf1lf1p31rjr7273w";
|
||||
rev = "75a7f50fca2c667bc5f32cdd6dd98f2b673f6657";
|
||||
repo = "libjson";
|
||||
owner = "vincenthz";
|
||||
};
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
name = "boxfs-${version}";
|
||||
|
||||
src = srcs.boxfs2;
|
||||
prePatch = with srcs; ''
|
||||
substituteInPlace Makefile --replace "git pull" "true"
|
||||
cp -a --no-preserve=mode ${libapp} libapp
|
||||
cp -a --no-preserve=mode ${libjson} libjson
|
||||
'';
|
||||
|
||||
buildInputs = [ curl fuse libxml2 pkgconfig ];
|
||||
|
||||
buildFlags = "static";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
install boxfs boxfs-init $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "FUSE file system for box.com accounts";
|
||||
longDescription = ''
|
||||
Store files on box.com (an account is required). The first time you run
|
||||
boxfs, you will need to complete the authentication (oauth2) process and
|
||||
grant access to your box.com account. Just follow the instructions on
|
||||
the terminal and in your browser. When you've done using your files,
|
||||
unmount the file system with `fusermount -u mountpoint`.
|
||||
'';
|
||||
homepage = https://github.com/drotiro/boxfs2;
|
||||
license = with licenses; gpl3;
|
||||
platforms = with platforms; linux;
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
};
|
||||
}
|
||||
@@ -1,18 +1,18 @@
|
||||
{ stdenv, fetchurl, attr, acl, zlib, libuuid, e2fsprogs, lzo
|
||||
{ stdenv, fetchurl, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo
|
||||
, asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }:
|
||||
|
||||
let version = "3.14.2"; in
|
||||
let version = "3.19.1"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "btrfs-progs-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/people/mason/btrfs-progs/btrfs-progs-v${version}.tar.xz";
|
||||
sha256 = "14vpj6f2v076v9zabgrz8l4dp6n1ar2mvk3lvii51ykvi35d1qbh";
|
||||
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
|
||||
sha256 = "1nw8rsc0dc5k6hrg03m1c65n4d0f7rfs1fjv96xqhqg0wykn5214";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
attr acl zlib libuuid e2fsprogs lzo
|
||||
pkgconfig attr acl zlib libuuid e2fsprogs lzo
|
||||
asciidoc xmlto docbook_xml_dtd_45 docbook_xsl libxslt
|
||||
];
|
||||
|
||||
@@ -21,10 +21,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
makeFlags = "prefix=$(out)";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Utilities for the btrfs filesystem";
|
||||
homepage = https://btrfs.wiki.kernel.org/;
|
||||
maintainers = [ stdenv.lib.maintainers.raskin ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ raskin wkennington ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From 2507ab33236f0da12899fbcdd36535f7c7b68a06 Mon Sep 17 00:00:00 2001
|
||||
From: "William A. Kennington III" <william@wkennington.com>
|
||||
Date: Sat, 20 Sep 2014 22:52:31 -0700
|
||||
Subject: [PATCH] Cleanup boost optionals
|
||||
|
||||
---
|
||||
src/osd/ECBackend.cc | 2 +-
|
||||
src/osd/ReplicatedPG.cc | 5 ++++-
|
||||
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/osd/ECBackend.cc b/src/osd/ECBackend.cc
|
||||
index a87b5b4..c386900 100644
|
||||
--- a/src/osd/ECBackend.cc
|
||||
+++ b/src/osd/ECBackend.cc
|
||||
@@ -81,7 +81,7 @@ ostream &operator<<(ostream &lhs, const ECBackend::read_result_t &rhs)
|
||||
lhs << "read_result_t(r=" << rhs.r
|
||||
<< ", errors=" << rhs.errors;
|
||||
if (rhs.attrs) {
|
||||
- lhs << ", attrs=" << rhs.attrs;
|
||||
+ lhs << ", attrs=" << rhs.attrs.get();
|
||||
} else {
|
||||
lhs << ", noattrs";
|
||||
}
|
||||
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc
|
||||
index 5e5510d..79e8616 100644
|
||||
--- a/src/osd/ReplicatedPG.cc
|
||||
+++ b/src/osd/ReplicatedPG.cc
|
||||
@@ -5259,7 +5259,10 @@ void ReplicatedPG::do_osd_op_effects(OpContext *ctx)
|
||||
for (list<OpContext::NotifyAck>::iterator p = ctx->notify_acks.begin();
|
||||
p != ctx->notify_acks.end();
|
||||
++p) {
|
||||
- dout(10) << "notify_ack " << make_pair(p->watch_cookie, p->notify_id) << dendl;
|
||||
+ if (p->watch_cookie)
|
||||
+ dout(10) << "notify_ack " << make_pair(p->watch_cookie.get(), p->notify_id) << dendl;
|
||||
+ else
|
||||
+ dout(10) << "notify_ack " << make_pair("NULL", p->notify_id) << dendl;
|
||||
for (map<pair<uint64_t, entity_name_t>, WatchRef>::iterator i =
|
||||
ctx->obc->watchers.begin();
|
||||
i != ctx->obc->watchers.end();
|
||||
--
|
||||
2.1.0
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
From 34c27f66210570adf5aba624d7da3c0382d5493f Mon Sep 17 00:00:00 2001
|
||||
From: "William A. Kennington III" <william@wkennington.com>
|
||||
Date: Sun, 21 Sep 2014 12:19:30 -0700
|
||||
Subject: [PATCH] Makefile-env: Don't force /sbin
|
||||
|
||||
---
|
||||
src/Makefile-env.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/Makefile-env.am b/src/Makefile-env.am
|
||||
index f2ab655..bf8876e 100644
|
||||
--- a/src/Makefile-env.am
|
||||
+++ b/src/Makefile-env.am
|
||||
@@ -27,7 +27,7 @@ bin_DEBUGPROGRAMS =
|
||||
ceph_sbindir = $(sbindir)
|
||||
|
||||
# certain things go straight into /sbin, though!
|
||||
-su_sbindir = /sbin
|
||||
+su_sbindir = $(sbindir)
|
||||
|
||||
# C/C++ tests to build will be appended to this
|
||||
check_PROGRAMS =
|
||||
--
|
||||
2.1.0
|
||||
|
||||
@@ -1,37 +1,61 @@
|
||||
{stdenv, fetchgit, libatomic_ops, autoconf, automake, boost, btrfsProgs, cryptopp, curl, expat,
|
||||
fcgi, fuse, gperftools, keyutils, leveldb, libaio, libedit, libtool,
|
||||
libuuid, linuxHeaders, openssl, pkgconfig, python, snappy, which, xfsprogs, xz}:
|
||||
{ stdenv, fetchgit, autoconf, automake, makeWrapper, pkgconfig, libtool, which
|
||||
, boost, btrfsProgs, cryptopp, curl, expat, fcgi, fuse, gperftools, keyutils
|
||||
, leveldb, libaio, libatomic_ops, libedit, libuuid, linuxHeaders, openssl
|
||||
, python, snappy, udev, xfsprogs, xz
|
||||
, zfs ? null
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
let
|
||||
wrapArgs = "--prefix PYTHONPATH : \"$(toPythonPath $out)\""
|
||||
+ " --prefix PYTHONPATH : \"$(toPythonPath ${python.modules.readline})\""
|
||||
+ " --prefix PATH : \"$out/bin\""
|
||||
+ " --prefix LD_LIBRARY_PATH : \"$out/lib\"";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
baseName="ceph";
|
||||
version="0.79";
|
||||
name="${baseName}-${version}";
|
||||
name="ceph-${version}";
|
||||
version="0.94";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/ceph/ceph.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0xqfmfg34w8yngv2qg4kwbpv9xhc8rn9hzsrgpw68f5hrs3dfimz";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./0001-Makefile-env-Don-t-force-sbin.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ autoconf automake makeWrapper pkgconfig libtool which ];
|
||||
buildInputs = [
|
||||
fuse linuxHeaders pkgconfig libatomic_ops autoconf automake boost btrfsProgs cryptopp expat
|
||||
fcgi fuse gperftools keyutils leveldb libaio libedit libtool libuuid openssl pkgconfig
|
||||
python snappy which xfsprogs.lib xz
|
||||
boost btrfsProgs cryptopp curl expat fcgi fuse gperftools keyutils
|
||||
libatomic_ops leveldb libaio libedit libuuid linuxHeaders openssl python
|
||||
snappy udev xfsprogs.lib xz zfs
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
installFlags = "DESTDIR=\${out}";
|
||||
configureFlags = [
|
||||
"--exec_prefix=$(out)"
|
||||
] ++ optional (zfs != null) "--with-zfs=${zfs}";
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/ceph ${wrapArgs}
|
||||
wrapProgram $out/bin/ceph-brag ${wrapArgs}
|
||||
wrapProgram $out/bin/ceph-rest-api ${wrapArgs}
|
||||
wrapProgram $out/sbin/ceph-create-keys ${wrapArgs}
|
||||
wrapProgram $out/sbin/ceph-disk ${wrapArgs}
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
src = fetchgit {
|
||||
url = "https://github.com/ceph/ceph";
|
||||
rev = "4c2d73a5095f527c3a2168deb5fa54b3c8991a6e";
|
||||
sha256 = "0850m817wqqmw2qdnwm5jvbdgifzlc7kcd05jv526pdvmq1x92rf";
|
||||
};
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
homepage = http://ceph.com/;
|
||||
description = "Distributed storage system";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.ak
|
||||
];
|
||||
platforms = with stdenv.lib.platforms;
|
||||
linux;
|
||||
license = licenses.lgpl21;
|
||||
maintainers = with maintainers; [ ak wkennington ];
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, gettext }:
|
||||
|
||||
let version = "0.5.2"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "duff-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
sha256 = "0yfm910wjj6z0f0cg68x59ykf4ql5m49apzy8sra00f8kv4lpn53";
|
||||
rev = version;
|
||||
repo = "duff";
|
||||
owner = "elmindreda";
|
||||
};
|
||||
|
||||
buildInputs = [ autoreconfHook gettext ];
|
||||
|
||||
preAutoreconf = ''
|
||||
# duff is currently badly packaged, requiring us to do extra work here that
|
||||
# should be done upstream. If that is ever fixed, this entire phase can be
|
||||
# removed along with all buildInputs.
|
||||
|
||||
# gettexttize rightly refuses to run non-interactively:
|
||||
cp ${gettext}/bin/gettextize .
|
||||
substituteInPlace gettextize \
|
||||
--replace "read dummy" "echo '(Automatically acknowledged)' #"
|
||||
./gettextize
|
||||
sed 's@po/Makefile.in\( .*\)po/Makefile.in@po/Makefile.in \1@' \
|
||||
-i configure.ac
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Quickly find duplicate files.";
|
||||
homepage = http://duff.dreda.org/;
|
||||
license = with licenses; zlib;
|
||||
longDescription = ''
|
||||
Duff is a Unix command-line utility for quickly finding duplicates in
|
||||
a given set of files.
|
||||
'';
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
platforms = with platforms; all;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{ lib, stdenv, fetchurl, libgcrypt, pkgconfig, glib, linuxHeaders }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "duperemove-${version}";
|
||||
version = "0.09.beta2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/markfasheh/duperemove/archive/v${version}.tar.gz";
|
||||
sha256 = "0rn7lf9rjf4ypgfwms2y7b459rri4rfn809h6wx8xl9nbm5niil4";
|
||||
};
|
||||
|
||||
buildInputs = [ libgcrypt pkgconfig glib linuxHeaders ];
|
||||
|
||||
makeFlags = [ "DESTDIR=$(out)" "PREFIX=" ];
|
||||
|
||||
meta = {
|
||||
description = "A simple tool for finding duplicated extents and submitting them for deduplication";
|
||||
homepage = https://github.com/markfasheh/duperemove;
|
||||
license = lib.licenses.gpl2;
|
||||
|
||||
maintainers = [ lib.maintainers.bluescreen303 ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -1,19 +1,30 @@
|
||||
{ stdenv, fetchurl, openssl, fuse, boost, rlog }:
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, boost, fuse, openssl, perl
|
||||
, pkgconfig, rlog }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "encfs-1.7.4";
|
||||
let version = "1.8.1"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "encfs-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://encfs.googlecode.com/files/encfs-1.7.4.tgz";
|
||||
sha256 = "1a3h47f4h0qdc0bf3vic1i8wrdw5nkx22mml4wsvmmrd9zqg0bi8";
|
||||
src = fetchFromGitHub {
|
||||
sha256 = "1cxihqwpnqbzy8qz0134199pwfnd7ikr2835p5p1yzqnl203wcdb";
|
||||
rev = "v${version}";
|
||||
repo = "encfs";
|
||||
owner = "vgough";
|
||||
};
|
||||
|
||||
buildInputs = [ boost fuse openssl rlog ];
|
||||
buildInputs = [ autoreconfHook boost fuse openssl perl pkgconfig rlog ];
|
||||
|
||||
configureFlags = "--with-boost-serialization=boost_wserialization --with-boost-filesystem=boost_filesystem";
|
||||
configureFlags = [
|
||||
"--with-boost-serialization=boost_wserialization"
|
||||
"--with-boost-filesystem=boost_filesystem"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.arg0.net/encfs;
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://vgough.github.io/encfs;
|
||||
description = "Provides an encrypted filesystem in user-space via FUSE";
|
||||
license = with licenses; lgpl2;
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchurl, scons }:
|
||||
|
||||
let version = "1.1.1"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "exfat-utils-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
sha256 = "0ck2snhlhp965bb9a4y1g2lpl979sw1yznm79wbavyv174458i66";
|
||||
url = "https://docs.google.com/uc?export=download&id=0B7CLI-REKbE3UzNtSkRvdHBpdjQ";
|
||||
name = "${name}.tar.gz";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Free exFAT file system utilities";
|
||||
longDescription = ''
|
||||
Full-featured exFAT file system implementation for GNU/Linux and other
|
||||
Unix-like systems.
|
||||
'';
|
||||
homepage = https://code.google.com/p/exfat;
|
||||
license = with licenses; gpl2Plus;
|
||||
platforms = with platforms; linux;
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
};
|
||||
|
||||
buildInputs = [ scons ];
|
||||
|
||||
buildPhase = ''
|
||||
export CCFLAGS="-std=c99"
|
||||
mkdir -pv $out/sbin
|
||||
scons DESTDIR=$out/sbin install
|
||||
'';
|
||||
|
||||
installPhase = ":";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{stdenv, fetchurl, help2man}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.3.365";
|
||||
name = "fatsort-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/fatsort/${name}.tar.gz";
|
||||
sha256 = "0g9zn2ns86g7zmy0y8hw1w1zhnd51hy8yl6kflyhxs49n5sc7b3p";
|
||||
};
|
||||
|
||||
patches = [ ./fatsort-Makefiles.patch ];
|
||||
|
||||
buildInputs = [ help2man ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://fatsort.sourceforge.net/;
|
||||
description = "Sorts FAT partition table, for devices that don't do sorting of files";
|
||||
maintainers = [ maintainers.kovirobi ];
|
||||
license = licenses.gpl2;
|
||||
inherit version;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
diff -uNr fatsort-1.3.365-a/Makefile fatsort-1.3.365-b/Makefile
|
||||
--- fatsort-1.3.365-a/Makefile 2014-04-08 19:19:36.000000000 +0100
|
||||
+++ fatsort-1.3.365-b/Makefile 2014-12-14 18:31:55.982857720 +0000
|
||||
@@ -1,4 +1,5 @@
|
||||
-MANDIR=/usr/local/share/man/man1
|
||||
+PREFIX=$(out)
|
||||
+MANDIR=$(PREFIX)/share/man/man1
|
||||
|
||||
INSTALL_FLAGS=-m 0755 -p -D
|
||||
|
||||
diff -uNr fatsort-1.3.365-a/src/Makefile fatsort-1.3.365-b/src/Makefile
|
||||
--- fatsort-1.3.365-a/src/Makefile 2014-04-08 19:19:36.000000000 +0100
|
||||
+++ fatsort-1.3.365-b/src/Makefile 2014-12-14 18:32:08.282870461 +0000
|
||||
@@ -1,3 +1,5 @@
|
||||
+PREFIX=$(out)
|
||||
+
|
||||
CC=gcc
|
||||
LD=gcc
|
||||
|
||||
@@ -33,9 +35,9 @@
|
||||
|
||||
# Mac OS X does not have a "/usr/local/sbin"
|
||||
ifeq ($(UNAME),Darwin)
|
||||
-SBINDIR=/usr/local/bin
|
||||
+SBINDIR=$(PREFIX)/bin
|
||||
else
|
||||
-SBINDIR=/usr/local/sbin
|
||||
+SBINDIR=$(PREFIX)/sbin
|
||||
endif
|
||||
|
||||
OBJ=fatsort.o FAT_fs.o fileio.o endianness.o signal.o entrylist.o errors.o options.o clusterchain.o sort.o misc.o natstrcmp.o stringlist.o
|
||||
@@ -1,11 +1,12 @@
|
||||
{ stdenv, fetchurl, pkgconfig, fuse, scons }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "fuse-exfat-1.0.1";
|
||||
name = "fuse-exfat-1.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://exfat.googlecode.com/files/${name}.tar.gz";
|
||||
sha256 = "0n27hpi45lj9hpi7k8d7npiwyhasf1v832g7ckpknd6lnyhipb0j";
|
||||
sha256 = "0glmgwrf0nv09am54i6s35ksbvrywrwc51w6q32mv5by8475530r";
|
||||
url = "https://docs.google.com/uc?export=download&id=0B7CLI-REKbE3VTdaa0EzTkhYdU0";
|
||||
name = "${name}.tar.gz";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig fuse scons ];
|
||||
@@ -19,11 +20,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installPhase = ":";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://code.google.com/p/exfat/;
|
||||
description = "A FUSE-based filesystem that allows read and write access to exFAT devices";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = with platforms; linux;
|
||||
license = with licenses; gpl2Plus;
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -8,8 +8,11 @@ stdenv.mkDerivation {
|
||||
sha256 = "1z7czvsf3ircvz2cw1cf53yifsq29ljxmj15hbgc79l6gbxbnka0";
|
||||
};
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://genext2fs.sourceforge.net/;
|
||||
description = "A tool to generate ext2 filesystem images without requiring root privileges";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.bjornfor ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,30 +1,35 @@
|
||||
{stdenv, fetchurl, fuse, bison, flex_2_5_35, openssl, python, ncurses, readline,
|
||||
autoconf, automake, libtool, pkgconfig, zlib, libaio}:
|
||||
autoconf, automake, libtool, pkgconfig, zlib, libaio, libxml2}:
|
||||
let
|
||||
s = # Generated upstream information
|
||||
rec {
|
||||
baseName="glusterfs";
|
||||
version="3.5.2";
|
||||
version="3.6.2";
|
||||
name="${baseName}-${version}";
|
||||
hash="1hvns9islr5jcy0r1cw5890ra246y12pl5nlhl3bvmhglrkv8n7g";
|
||||
url="http://download.gluster.org/pub/gluster/glusterfs/3.5/3.5.2/glusterfs-3.5.2.tar.gz";
|
||||
sha256="1hvns9islr5jcy0r1cw5890ra246y12pl5nlhl3bvmhglrkv8n7g";
|
||||
hash="1kz0kmj0apkhkmw1zy72bsx06b1ii6z8y3fq365cy5l3xnjibdaa";
|
||||
url="http://download.gluster.org/pub/gluster/glusterfs/3.6/3.6.2/glusterfs-3.6.2.tar.gz";
|
||||
sha256="1kz0kmj0apkhkmw1zy72bsx06b1ii6z8y3fq365cy5l3xnjibdaa";
|
||||
};
|
||||
buildInputs = [
|
||||
fuse bison flex_2_5_35 openssl python ncurses readline
|
||||
autoconf automake libtool pkgconfig zlib libaio
|
||||
autoconf automake libtool pkgconfig zlib libaio libxml2
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
inherit (s) name version;
|
||||
inherit buildInputs;
|
||||
|
||||
preConfigure = ''
|
||||
./autogen.sh
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
''--with-mountutildir="$out/sbin"''
|
||||
''--with-mountutildir="$out/sbin" --localstatedir=/var''
|
||||
];
|
||||
|
||||
makeFlags = "DESTDIR=$(out)";
|
||||
|
||||
preInstall = ''
|
||||
substituteInPlace api/examples/Makefile --replace '$(DESTDIR)' $out
|
||||
substituteInPlace geo-replication/syncdaemon/Makefile --replace '$(DESTDIR)' $out
|
||||
@@ -32,6 +37,12 @@ rec {
|
||||
substituteInPlace xlators/features/glupy/examples/Makefile --replace '$(DESTDIR)' $out
|
||||
substituteInPlace xlators/features/glupy/src/Makefile --replace '$(DESTDIR)' $out
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
cp -r $out/$out/* $out
|
||||
rm -r $out/nix
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
inherit (s) url sha256;
|
||||
};
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
{ lib, goPackages, pkgconfig, libmtp, fetchFromGitHub }:
|
||||
|
||||
with goPackages;
|
||||
|
||||
buildGoPackage rec {
|
||||
rev = "9c2b46050e8ea8574eaec2124867ac7b11e6471d";
|
||||
name = "go-mtpfs-${lib.strings.substring 0 7 rev}";
|
||||
goPackagePath = "github.com/hanwen/go-mtpfs";
|
||||
src = fetchFromGitHub {
|
||||
inherit rev;
|
||||
owner = "hanwen";
|
||||
repo = "go-mtpfs";
|
||||
sha256 = "0kxi18cb078q4wikfajp3yvp802wzfsfdp431j0dg2jdw8y7gfii";
|
||||
};
|
||||
|
||||
buildInputs = [ go-fuse libmtp usb ];
|
||||
|
||||
subPackages = [ "./" ];
|
||||
|
||||
dontInstallSrc = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "A simple FUSE filesystem for mounting Android devices as a MTP device";
|
||||
homepage = https://github.com/hanwen/go-mtpfs;
|
||||
maintainers = with maintainers; [ bennofs ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{ stdenv, fetchurl, pkgconfig, usbmuxd, fuse, gnutls, libgcrypt,
|
||||
libplist, libimobiledevice }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ifuse-1.1.3";
|
||||
|
||||
nativeBuildInputs = [ pkgconfig fuse libplist usbmuxd gnutls libgcrypt libimobiledevice ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/downloads/${name}.tar.bz2";
|
||||
sha256 = "1p9a4n36jb194cnp6v57cz2bggwbywaz8pbpb95ch83pzdkdx257";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://www.libimobiledevice.org;
|
||||
license = stdenv.lib.licenses.lgpl21Plus;
|
||||
description = "A fuse filesystem implementation to access the contents of iOS devices";
|
||||
longDescription = ''
|
||||
Mount directories of an iOS device locally using fuse. By default the media
|
||||
directory is mounted, options allow to also mount the sandbox container of an
|
||||
app, an app's documents folder or even the root filesystem on jailbroken
|
||||
devices.'';
|
||||
inherit (usbmuxd.meta) platforms maintainers;
|
||||
};
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
{ stdenv, fetchurl, boost }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "jfsrec-0-pre-svn-7";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/jfsrec/jfsrec-svn-7.tar.gz;
|
||||
sha256 = "163z6ljr05vw2k5mj4fim2nlg4khjyibrii95370pvn474mg28vg";
|
||||
};
|
||||
|
||||
patches = [ ./jfsrec-gcc-4.3.patch ];
|
||||
buildInputs = [ boost ];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
sed -e '/[#]include [<]config.h[>]/a\#include <string.h>' -i src/unicode_to_utf8.cpp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "JFS recovery tool";
|
||||
homepage = http://jfsrec.sourceforge.net/;
|
||||
};
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
Taken from Archlinux, although this solves the build in gcc 4.4, not 4.3.
|
||||
http://aur.archlinux.org/packages/jfsrec-svn/jfsrec-svn/jfsrec-gcc-4.3.patch
|
||||
diff -uBdr jfsrec/src/device.cpp jfsrec-build/src/device.cpp
|
||||
--- jfsrec/src/device.cpp 2009-12-01 18:34:03.860437077 +0100
|
||||
+++ jfsrec-build/src/device.cpp 2009-12-01 18:39:48.297067088 +0100
|
||||
@@ -20,6 +20,7 @@
|
||||
//Parts of the code in this file was originally taken from JFS's xpeek (debugfs_jfs)
|
||||
|
||||
#include "device.h"
|
||||
+#include <stdio.h>
|
||||
#ifdef __linux__
|
||||
#include <linux/fs.h>
|
||||
#include <sys/ioctl.h>
|
||||
diff -uBdr jfsrec/src/unicode_to_utf8.cpp jfsrec-build/src/unicode_to_utf8.cpp
|
||||
--- jfsrec/src/unicode_to_utf8.cpp 2009-12-01 18:34:03.860437077 +0100
|
||||
+++ jfsrec-build/src/unicode_to_utf8.cpp 2009-12-01 18:39:43.501626737 +0100
|
||||
@@ -8,6 +8,7 @@
|
||||
*/
|
||||
#include <config.h>
|
||||
#include "unicode_to_utf8.h"
|
||||
+#include <string.h>
|
||||
#define JFS_PATH_MAX 4096
|
||||
|
||||
/*
|
||||
@@ -14,5 +14,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "IBM JFS utilities";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ autoconf automake file fuse libmtp pkgconfig unzip ];
|
||||
|
||||
meta = {
|
||||
description = "A FUSE filesystem for MTP devices like Android phones.";
|
||||
description = "A FUSE filesystem for MTP devices like Android phones";
|
||||
homepage = https://github.com/JasonFerrara/jmtpfs;
|
||||
license = stdenv.lib.licenses.gpl3;
|
||||
maintainers = [ stdenv.lib.maintainers.coconnor ];
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchurl, flac, fuse, lame, libid3tag, pkgconfig }:
|
||||
|
||||
let version = "0.91"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mp3fs-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/khenriks/mp3fs/releases/download/v${version}/${name}.tar.gz";
|
||||
sha256 = "14ngiqg24p3a0s6hp33zjl4i46d8qn4v9id36psycq3n3csmwyx4";
|
||||
};
|
||||
|
||||
buildInputs = [ flac fuse lame libid3tag pkgconfig ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "FUSE file system that transparently transcodes to MP3";
|
||||
longDescription = ''
|
||||
A read-only FUSE filesystem which transcodes between audio formats
|
||||
(currently only FLAC to MP3) on the fly when files are opened and read.
|
||||
It can let you use a FLAC collection with software and/or hardware
|
||||
which only understands the MP3 format, or transcode files through
|
||||
simple drag-and-drop in a file browser.
|
||||
'';
|
||||
homepage = http://khenriks.github.com/mp3fs/;
|
||||
license = with licenses; gpl3Plus;
|
||||
platforms = with platforms; linux;
|
||||
maintainers = with maintainers; [ nckx ];
|
||||
};
|
||||
}
|
||||
@@ -1,15 +1,13 @@
|
||||
{stdenv, fetchgit, libuuid, lzo, zlib, acl}:
|
||||
|
||||
let
|
||||
version = "1.5.0";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mtd-utils-${version}";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://git.infradead.org/mtd-utils.git;
|
||||
rev = "refs/tags/v" + version;
|
||||
sha256 = "cc645c0ec28083431b11f3b38f9f7759378d89e11047a883529f703e1b6c1cce";
|
||||
sha256 = "1bjx42pwl789ara63c672chvgvmqhkj4y132gajqih6naq71f8g7";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
||||
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1d8dc8ysslkis4yl1xab1w9p0pz7a1kg0i6fds4wxsp4fhb6wqhq";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig db libgcrypt avahi libiconv pam openssl ];
|
||||
buildInputs = [ pkgconfig db libgcrypt avahi pam openssl libiconv ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-bdb=${db}"
|
||||
|
||||
@@ -1,52 +1,38 @@
|
||||
x@{builderDefsPackage
|
||||
, libuuid
|
||||
, ...}:
|
||||
builderDefsPackage
|
||||
(a :
|
||||
{ stdenv, fetchurl, libuuid, libselinux }:
|
||||
let
|
||||
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
|
||||
[];
|
||||
|
||||
buildInputs = map (n: builtins.getAttr n x)
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
|
||||
sourceInfo = rec {
|
||||
version = "2.0.19";
|
||||
url = "http://www.nilfs.org/download/nilfs-utils-${version}.tar.bz2";
|
||||
hash = "0q9cb6ny0ah1s9rz1rgqka1pxdm3xvg0ywcqyhzcz4yhamfhg100";
|
||||
version = "2.2.3";
|
||||
url = "http://nilfs.sourceforge.net/download/nilfs-utils-${version}.tar.bz2";
|
||||
sha256 = "1sv0p5d9ivik7lhrdynf6brma66llcvn11zhzasws12n4sfk6k6q";
|
||||
baseName = "nilfs-utils";
|
||||
name = "${baseName}-${version}";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
stdenv.mkDerivation rec {
|
||||
src = fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
sha256 = sourceInfo.sha256;
|
||||
};
|
||||
|
||||
inherit (sourceInfo) name version;
|
||||
inherit buildInputs;
|
||||
buildInputs = [libuuid libselinux];
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = ["doFixPaths" "doConfigure" "doMakeInstall"];
|
||||
|
||||
doFixPaths = a.fullDepEntry (''
|
||||
sed -e '/sysconfdir=\/etc/d; /sbindir=\/sbin/d' -i configure
|
||||
sed -e 's@/sbin/@'"$out"'/sbin/@' -i ./sbin/mount/cleaner_ctl.c
|
||||
'') ["doUnpack" "minInit"];
|
||||
preConfigure = ''
|
||||
sed -e '/sysconfdir=\/etc/d; ' -i configure
|
||||
sed -e "s@sbindir=/sbin@sbindir=$out/sbin@" -i configure
|
||||
sed -e 's@/sbin/@'"$out"'/sbin/@' -i ./lib/cleaner*.c
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "NILFS utilities";
|
||||
maintainers = with a.lib.maintainers;
|
||||
maintainers = with stdenv.lib.maintainers;
|
||||
[
|
||||
raskin
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
platforms = with stdenv.lib.platforms;
|
||||
linux;
|
||||
downloadPage = "http://nilfs.sourceforge.net/en/download.html";
|
||||
updateWalker = true;
|
||||
inherit version;
|
||||
};
|
||||
passthru = {
|
||||
updateInfo = {
|
||||
downloadPage = "http://www.nilfs.org/download/?C=M;O=D";
|
||||
};
|
||||
};
|
||||
}) x
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
{ stdenv, fetchurl, buildPythonPackage, pykickstart, pyparted, pyblock
|
||||
, libselinux, cryptsetup, multipath_tools, lsof, utillinux
|
||||
, useNixUdev ? true, udev ? null
|
||||
# This is only used when useNixUdev is false
|
||||
, udevSoMajor ? 1
|
||||
}:
|
||||
|
||||
assert useNixUdev -> udev != null;
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "blivet-${version}";
|
||||
version = "0.17-1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://git.fedorahosted.org/cgit/blivet.git/snapshot/"
|
||||
+ "${name}.tar.bz2";
|
||||
sha256 = "1k3mws2q0ryb7422mml6idmaasz2i2v6ngyvg6d976dx090qnmci";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's|"multipath"|"${multipath_tools}/sbin/multipath"|' \
|
||||
blivet/devicelibs/mpath.py blivet/devices.py
|
||||
sed -i -e '/"wipefs"/ {
|
||||
s|wipefs|${utillinux}/sbin/wipefs|
|
||||
s/-f/--force/
|
||||
}' blivet/formats/__init__.py
|
||||
sed -i -e 's|"lsof"|"${lsof}/bin/lsof"|' blivet/formats/fs.py
|
||||
sed -i -r -e 's|"(u?mount)"|"${utillinux}/bin/\1"|' blivet/util.py
|
||||
sed -i '/pvscan/s/, *"--cache"//' blivet/devicelibs/lvm.py
|
||||
'' + (if useNixUdev then ''
|
||||
sed -i -e '/find_library/,/find_library/ {
|
||||
c libudev = "${udev}/lib/libudev.so.1"
|
||||
}' blivet/pyudev.py
|
||||
'' else ''
|
||||
sed -i \
|
||||
-e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
|
||||
-e 's|common =.*|& + ["/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]|' \
|
||||
blivet/pyudev.py
|
||||
'');
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pykickstart pyparted pyblock libselinux cryptsetup
|
||||
] ++ stdenv.lib.optional useNixUdev udev;
|
||||
|
||||
# tests are currently _heavily_ broken upstream
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "https://fedoraproject.org/wiki/Blivet";
|
||||
description = "Module for management of a system's storage configuration";
|
||||
license = [ "GPLv2+" "LGPLv2.1+" ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchurl, devicemapper, libgcrypt, libuuid, pkgconfig, popt
|
||||
, enablePython ? true, python ? null
|
||||
}:
|
||||
|
||||
assert enablePython -> python != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cryptsetup-1.6.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://cryptsetup.googlecode.com/files/${name}.tar.bz2";
|
||||
sha256 = "1n1qk5chyjspbiianrdb55fhb4wl0vfyqz2br05vfb24v4qlgbx2";
|
||||
};
|
||||
|
||||
configureFlags = [ "--enable-cryptsetup-reencrypt" ]
|
||||
++ stdenv.lib.optional enablePython "--enable-python";
|
||||
|
||||
buildInputs = [ devicemapper libgcrypt libuuid pkgconfig popt ]
|
||||
++ stdenv.lib.optional enablePython python;
|
||||
|
||||
meta = {
|
||||
homepage = http://code.google.com/p/cryptsetup/;
|
||||
description = "LUKS for dm-crypt";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
maintainers = with stdenv.lib.maintainers; [ viric chaoflow ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
{ stdenv, fetchurl, python, buildPythonPackage
|
||||
# Propagated to blivet
|
||||
, useNixUdev ? true, udevSoMajor ? null
|
||||
# Propagated dependencies
|
||||
, pkgs, urlgrabber
|
||||
}:
|
||||
|
||||
let
|
||||
blivet = import ./blivet.nix {
|
||||
inherit stdenv fetchurl buildPythonPackage;
|
||||
inherit pykickstart pyparted pyblock cryptsetup multipath_tools;
|
||||
inherit useNixUdev udevSoMajor;
|
||||
inherit (pkgs) lsof utillinux udev;
|
||||
libselinux = pkgs.libselinux.override { enablePython = true; };
|
||||
};
|
||||
|
||||
cryptsetup = import ./cryptsetup.nix {
|
||||
inherit stdenv fetchurl python;
|
||||
inherit (pkgs) pkgconfig libgcrypt libuuid popt;
|
||||
devicemapper = lvm2;
|
||||
};
|
||||
|
||||
dmraid = import ./dmraid.nix {
|
||||
inherit stdenv fetchurl;
|
||||
devicemapper = lvm2;
|
||||
};
|
||||
|
||||
lvm2 = import ./lvm2.nix {
|
||||
inherit stdenv fetchurl;
|
||||
inherit (pkgs) pkgconfig utillinux udev coreutils;
|
||||
};
|
||||
|
||||
multipath_tools = import ./multipath-tools.nix {
|
||||
inherit stdenv fetchurl lvm2;
|
||||
inherit (pkgs) readline udev libaio gzip;
|
||||
};
|
||||
|
||||
parted = import ./parted.nix {
|
||||
inherit stdenv fetchurl;
|
||||
inherit (pkgs) utillinux readline libuuid gettext check;
|
||||
devicemapper = lvm2;
|
||||
};
|
||||
|
||||
pyblock = import ./pyblock.nix {
|
||||
inherit stdenv fetchurl python lvm2 dmraid;
|
||||
};
|
||||
|
||||
pykickstart = import ./pykickstart.nix {
|
||||
inherit stdenv fetchurl python buildPythonPackage urlgrabber;
|
||||
};
|
||||
|
||||
pyparted = import ./pyparted.nix {
|
||||
inherit stdenv fetchurl python buildPythonPackage parted;
|
||||
inherit (pkgs) pkgconfig e2fsprogs;
|
||||
};
|
||||
|
||||
in buildPythonPackage rec {
|
||||
name = "nixpart-${version}";
|
||||
version = "0.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/aszlig/nixpart/archive/v${version}.tar.gz";
|
||||
sha256 = "0avwd8p47xy9cydlbjxk8pj8q75zyl68gw2w6fnkk78dcb1a3swp";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ blivet ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
description = "NixOS storage manager/partitioner";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
maintainers = [ stdenv.lib.maintainers.aszlig ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
{ stdenv, fetchurl, devicemapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "dmraid-1.0.0.rc15";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://people.redhat.com/~heinzm/sw/dmraid/src/old/${name}.tar.bz2";
|
||||
sha256 = "01bcaq0sc329ghgj7f182xws7jgjpdc41bvris8fsiprnxc7511h";
|
||||
};
|
||||
|
||||
preConfigure = "cd */";
|
||||
|
||||
buildInputs = [ devicemapper ];
|
||||
|
||||
meta = {
|
||||
description = "Old-style RAID configuration utility";
|
||||
longDescritipn = ''
|
||||
Old RAID configuration utility (still under development, though).
|
||||
It is fully compatible with modern kernels and mdadm recognizes
|
||||
its volumes. May be needed for rescuing an older system or nuking
|
||||
the metadata when reformatting.
|
||||
'';
|
||||
maintainers = [ stdenv.lib.maintainers.raskin ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
{ stdenv, fetchurl, pkgconfig, udev, utillinux, coreutils }:
|
||||
|
||||
let
|
||||
v = "2.02.106";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lvm2-${v}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://sources.redhat.com/pub/lvm2/releases/LVM2.${v}.tgz";
|
||||
sha256 = "0nr833bl0q4zq52drjxmmpf7bs6kqxwa5kahwwxm9411khkxz0vc";
|
||||
};
|
||||
|
||||
configureFlags =
|
||||
"--disable-readline --enable-udev_rules --enable-udev_sync --enable-pkgconfig --enable-applib";
|
||||
|
||||
buildInputs = [ pkgconfig udev ];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
substituteInPlace scripts/lvmdump.sh \
|
||||
--replace /usr/bin/tr ${coreutils}/bin/tr
|
||||
substituteInPlace scripts/lvm2_activation_generator_systemd_red_hat.c \
|
||||
--replace /usr/sbin/lvm $out/sbin/lvm \
|
||||
--replace /usr/bin/udevadm ${udev}/bin/udevadm
|
||||
|
||||
sed -i /DEFAULT_SYS_DIR/d Makefile.in
|
||||
sed -i /DEFAULT_PROFILE_DIR/d conf/Makefile.in
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
#patches = [ ./purity.patch ];
|
||||
|
||||
# To prevent make install from failing.
|
||||
preInstall = "installFlags=\"OWNER= GROUP= confdir=$out/etc\"";
|
||||
|
||||
# Install systemd stuff.
|
||||
#installTargets = "install install_systemd_generators install_systemd_units install_tmpfiles_configuration";
|
||||
|
||||
postInstall =
|
||||
''
|
||||
substituteInPlace $out/lib/udev/rules.d/13-dm-disk.rules \
|
||||
--replace $out/sbin/blkid ${utillinux}/sbin/blkid
|
||||
|
||||
# Systemd stuff
|
||||
mkdir -p $out/etc/systemd/system $out/lib/systemd/system-generators
|
||||
cp scripts/blk_availability_systemd_red_hat.service $out/etc/systemd/system
|
||||
cp scripts/lvm2_activation_generator_systemd_red_hat $out/lib/systemd/system-generators
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://sourceware.org/lvm2/;
|
||||
descriptions = "Tools to support Logical Volume Management (LVM) on Linux";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
{ stdenv, fetchurl, lvm2, libaio, gzip, readline, udev }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "multipath-tools-0.4.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://christophe.varoqui.free.fr/multipath-tools/${name}.tar.bz2";
|
||||
sha256 = "04n7kazp1zrlqfza32phmqla0xkcq4zwn176qff5ida4a60whi4d";
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
buildInputs = [ lvm2 libaio readline ];
|
||||
|
||||
preBuild =
|
||||
''
|
||||
makeFlagsArray=(GZIP="${gzip}/bin/gzip -9 -c" prefix=$out mandir=$out/share/man/man8 man5dir=$out/share/man/man5 LIB=lib)
|
||||
|
||||
substituteInPlace multipath/Makefile --replace /etc $out/etc
|
||||
substituteInPlace kpartx/Makefile --replace /etc $out/etc
|
||||
|
||||
substituteInPlace kpartx/kpartx.rules --replace /sbin/kpartx $out/sbin/kpartx
|
||||
substituteInPlace kpartx/kpartx_id --replace /sbin/dmsetup ${lvm2}/sbin/dmsetup
|
||||
|
||||
substituteInPlace libmultipath/defaults.h --replace /lib/udev/scsi_id ${udev}/lib/udev/scsi_id
|
||||
substituteInPlace libmultipath/hwtable.c --replace /lib/udev/scsi_id ${udev}/lib/udev/scsi_id
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Tools for the Linux multipathing driver";
|
||||
homepage = http://christophe.varoqui.free.fr/;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
{ stdenv, fetchurl, devicemapper, libuuid, gettext, readline
|
||||
, utillinux, check, enableStatic ? false, hurd ? null }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "parted-3.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/parted/${name}.tar.xz";
|
||||
sha256 = "05fa4m1bky9d13hqv91jlnngzlyn7y4rnnyq6d86w0dg3vww372y";
|
||||
};
|
||||
|
||||
buildInputs = [ libuuid ]
|
||||
++ stdenv.lib.optional (readline != null) readline
|
||||
++ stdenv.lib.optional (gettext != null) gettext
|
||||
++ stdenv.lib.optional (devicemapper != null) devicemapper
|
||||
++ stdenv.lib.optional (hurd != null) hurd
|
||||
++ stdenv.lib.optional doCheck check;
|
||||
|
||||
configureFlags =
|
||||
(if (readline != null)
|
||||
then [ "--with-readline" ]
|
||||
else [ "--without-readline" ])
|
||||
++ stdenv.lib.optional (devicemapper == null) "--disable-device-mapper"
|
||||
++ stdenv.lib.optional enableStatic "--enable-static";
|
||||
|
||||
doCheck = true;
|
||||
|
||||
preCheck =
|
||||
stdenv.lib.optionalString doCheck
|
||||
# The `t0400-loop-clobber-infloop.sh' test wants `mkswap'.
|
||||
"export PATH=\"${utillinux}/sbin:$PATH\"";
|
||||
|
||||
meta = {
|
||||
description = "Create, destroy, resize, check, and copy partitions";
|
||||
|
||||
longDescription = ''
|
||||
GNU Parted is an industrial-strength package for creating, destroying,
|
||||
resizing, checking and copying partitions, and the file systems on
|
||||
them. This is useful for creating space for new operating systems,
|
||||
reorganising disk usage, copying data on hard disks and disk imaging.
|
||||
|
||||
It contains a library, libparted, and a command-line frontend, parted,
|
||||
which also serves as a sample implementation and script backend.
|
||||
'';
|
||||
|
||||
homepage = http://www.gnu.org/software/parted/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
|
||||
maintainers = [
|
||||
# Add your name here!
|
||||
];
|
||||
|
||||
# GNU Parted requires libuuid, which is part of util-linux-ng.
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
{ stdenv, fetchurl, python, lvm2, dmraid }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pyblock-${version}";
|
||||
version = "0.53";
|
||||
|
||||
src = fetchurl rec {
|
||||
url = "http://pkgs.fedoraproject.org/repo/pkgs/python-pyblock/"
|
||||
+ "${name}.tar.bz2/${md5}/${name}.tar.bz2";
|
||||
md5 = "f6d33a8362dee358517d0a9e2ebdd044";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's|/usr/include/python|${python}/include/python|' \
|
||||
-e 's/-Werror *//' -e 's|/usr/|'"$out"'/|' Makefile
|
||||
'';
|
||||
|
||||
buildInputs = [ python lvm2 dmraid ];
|
||||
|
||||
makeFlags = [
|
||||
"USESELINUX=0"
|
||||
"SITELIB=$(out)/lib/${python.libPrefix}/site-packages"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Interface for working with block devices";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
{ stdenv, python, buildPythonPackage, fetchurl, urlgrabber }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "pykickstart-${version}";
|
||||
version = "1.99.39";
|
||||
|
||||
src = fetchurl rec {
|
||||
url = "http://pkgs.fedoraproject.org/repo/pkgs/pykickstart/"
|
||||
+ "${name}.tar.gz/${md5}/${name}.tar.gz";
|
||||
md5 = "d249f60aa89b1b4facd63f776925116d";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e "s/for tst in tstList/for tst in sorted(tstList, \
|
||||
key=lambda m: m.__name__)/" tests/baseclass.py
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [ urlgrabber ];
|
||||
|
||||
checkPhase = ''
|
||||
export PYTHONPATH="$PYTHONPATH:."
|
||||
${python}/bin/${python.executable} tests/baseclass.py -vv
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://fedoraproject.org/wiki/Pykickstart";
|
||||
description = "Read and write Fedora kickstart files";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
{ stdenv, fetchurl, pkgconfig, python, buildPythonPackage, parted, e2fsprogs }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
name = "pyparted-${version}";
|
||||
version = "3.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://fedorahosted.org/releases/p/y/pyparted/${name}.tar.gz";
|
||||
sha256 = "17wq4invmv1nfazaksf59ymqyvgv3i8h4q03ry2az0s9lldyg3dv";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e 's|/sbin/mke2fs|${e2fsprogs}&|' tests/baseclass.py
|
||||
sed -i -e '
|
||||
s|e\.path\.startswith("/tmp/temp-device-")|"temp-device-" in e.path|
|
||||
' tests/test__ped_ped.py
|
||||
'' + stdenv.lib.optionalString stdenv.isi686 ''
|
||||
# remove some integers in this test case which overflow on 32bit systems
|
||||
sed -i -r -e '/class *UnitGetSizeTestCase/,/^$/{/[0-9]{11}/d}' \
|
||||
tests/test__ped_ped.py
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
PATH="${parted}/sbin:$PATH"
|
||||
'';
|
||||
|
||||
buildInputs = [ pkgconfig ];
|
||||
|
||||
propagatedBuildInputs = [ parted ];
|
||||
|
||||
checkPhase = ''
|
||||
patchShebangs Makefile
|
||||
make test PYTHON=${python.executable}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://fedorahosted.org/pyparted/";
|
||||
description = "Python interface for libparted";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -1,29 +1,21 @@
|
||||
{ stdenv, fetchurl, buildPythonPackage, blivet
|
||||
# Propagated to blivet
|
||||
, useNixUdev ? null, udevSoMajor ? null
|
||||
}:
|
||||
{ stdenv, fetchurl, buildPythonPackage, blivet }:
|
||||
|
||||
let
|
||||
blivetOverrides = stdenv.lib.filterAttrs (k: v: v != null) {
|
||||
inherit useNixUdev udevSoMajor;
|
||||
};
|
||||
in buildPythonPackage rec {
|
||||
buildPythonPackage rec {
|
||||
name = "nixpart-${version}";
|
||||
version = "0.4.1";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/aszlig/nixpart/archive/v${version}.tar.gz";
|
||||
sha256 = "0avwd8p47xy9cydlbjxk8pj8q75zyl68gw2w6fnkk78dcb1a3swp";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ (blivet.override blivetOverrides) ];
|
||||
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = [ blivet ];
|
||||
|
||||
meta = {
|
||||
description = "NixOS storage manager/partitioner";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
maintainers = [ stdenv.lib.maintainers.aszlig ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
broken = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchurl, nettle }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rdfind-${version}";
|
||||
version = "1.3.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://rdfind.pauldreik.se/${name}.tar.gz";
|
||||
sha256 = "0zfc5whh6j5xfbxr6wvznk62qs1mkd3r7jcq72wjgnck43vv7w55";
|
||||
};
|
||||
|
||||
buildInputs = [ nettle ];
|
||||
|
||||
meta = {
|
||||
homepage = http://rdfind.pauldreik.se/;
|
||||
description = "Removes or hardlinks duplicate files very swiftly";
|
||||
license = with stdenv.lib.licenses; gpl2;
|
||||
maintainers = with stdenv.lib.maintainers; [ wmertens ];
|
||||
platforms = with stdenv.lib.platforms; all;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{stdenv, fetchurl, autoconf, automake, pkgconfig, curl, openssl, libxml2, fuse}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "sshfs-fuse-1.78";
|
||||
src = fetchurl {
|
||||
url = https://github.com/s3fs-fuse/s3fs-fuse/archive/v1.78.tar.gz;
|
||||
sha256 = "1xcp0bqa4a2ynjn5phb1pj70wm322czhqp4qcb27d5jd545b1h1n";
|
||||
};
|
||||
preConfigure = "./autogen.sh";
|
||||
buildInputs = [ autoconf automake pkgconfig curl openssl libxml2 fuse ];
|
||||
|
||||
meta = {
|
||||
description = "Mount an S3 bucket as filesystem through FUSE";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
x@{builderDefsPackage
|
||||
, fuse, samba, pkgconfig
|
||||
, fuse, samba, pkgconfig, glib
|
||||
, ...}:
|
||||
builderDefsPackage
|
||||
(a :
|
||||
@@ -12,17 +12,16 @@ let
|
||||
sourceInfo = rec {
|
||||
baseName="smbnetfs";
|
||||
dirBaseName="SMBNetFS";
|
||||
version="0.5.3a";
|
||||
version = "0.6.0";
|
||||
name="${baseName}-${version}";
|
||||
project="${baseName}";
|
||||
url="mirror://sourceforge/project/${project}/${baseName}/${dirBaseName}-${version}/${name}.tar.bz2";
|
||||
hash="0fzlw11y2vkxmjzz3qcypqlvz074v6a3pl4pyffbniqal64qgrsw";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
sha256 = "16sikr81ipn8v1a1zrqgnsy2as3zcaxbzkr0bm5vxy012bq0plkd";
|
||||
};
|
||||
|
||||
inherit (sourceInfo) name version;
|
||||
@@ -40,11 +39,9 @@ rec {
|
||||
platforms = with a.lib.platforms;
|
||||
linux;
|
||||
license = a.lib.licenses.gpl2;
|
||||
};
|
||||
passthru = {
|
||||
updateInfo = {
|
||||
downloadPage = "http://sourceforge.net/projects/smbnetfs/files/smbnetfs";
|
||||
};
|
||||
downloadPage = "http://sourceforge.net/projects/smbnetfs/files/smbnetfs";
|
||||
updateWalker = true;
|
||||
inherit version;
|
||||
};
|
||||
}) x
|
||||
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
url http://sourceforge.net/projects/smbnetfs/files/smbnetfs/
|
||||
version_link '[-][0-9.]+[a-z]*/$'
|
||||
version_link '[.]tar[.][a-z0-9]+/download$'
|
||||
SF_redirect
|
||||
version '.*[-]([0-9.]+[a-z]*)[.]tar[.].*' '\1'
|
||||
do_overwrite () { do_overwrite_just_version; }
|
||||
@@ -1,19 +1,18 @@
|
||||
{ stdenv, fetchurl, zlib, xz }:
|
||||
{ stdenv, fetchgit, zlib, xz }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "squashfs-4.2";
|
||||
name = "squashfs-4.4dev";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/squashfs/squashfs4.2.tar.gz;
|
||||
sha256 = "15if08j0pl5hmnz9pwshwrp4fjp0jsm9larjxmjvdnr2m5d1kq6r";
|
||||
src = fetchgit {
|
||||
url = https://github.com/plougher/squashfs-tools.git;
|
||||
sha256 = "059pa2shdysr3zfmwrhq28s12zbi5nyzbpzyaf5lmspgfh1493ks";
|
||||
rev = "9c1db6d13a51a2e009f0027ef336ce03624eac0d";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib xz ];
|
||||
|
||||
preBuild = "cd squashfs-tools";
|
||||
|
||||
NIX_LDFLAGS = "-lgcc_s"; # for pthread_cancel
|
||||
|
||||
installFlags = "INSTALL_DIR=\${out}/bin";
|
||||
|
||||
makeFlags = "XZ_SUPPORT=1";
|
||||
@@ -21,5 +20,6 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = http://squashfs.sourceforge.net/;
|
||||
description = "Tool for creating and unpacking squashfs filesystems";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
{ stdenv, fetchgit, fetchFromGitHub, go, fuse }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tmsu-${version}";
|
||||
version = "0.5.2";
|
||||
|
||||
go-sqlite3 = fetchgit {
|
||||
url = "git://github.com/mattn/go-sqlite3";
|
||||
rev = "c9a0db5d8951646743317f0756da0339fe144dd5";
|
||||
sha256 = "0j01nr3q89qs9n9zzp8gsr94hl9v0gnis6hmndl9ms554bhlv99p";
|
||||
};
|
||||
|
||||
go-fuse = fetchgit {
|
||||
url = "git://github.com/hanwen/go-fuse";
|
||||
rev = "8c85ded140ac1889372a0e22d8d21e3d10a303bd";
|
||||
sha256 = "1kssndvrbcxvf85x6c6lgn5kpcl7d788z3sxrv1szik4acb6n2sa";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "oniony";
|
||||
repo = "tmsu";
|
||||
rev = "v${version}";
|
||||
sha256 = "090wzhcd4sr3358p1f640psy42r4kd3kkhgnf8196qsh2vcx8arc";
|
||||
};
|
||||
|
||||
buildInputs = [ go fuse ];
|
||||
|
||||
preBuild = ''
|
||||
mkdir -p src/github.com/mattn/go-sqlite3/
|
||||
ln -s ${go-sqlite3}/* src/github.com/mattn/go-sqlite3
|
||||
|
||||
mkdir -p src/github.com/hanwen/go-fuse
|
||||
ln -s ${go-fuse}/* src/github.com/hanwen/go-fuse
|
||||
|
||||
mkdir -p src/github.com/oniony/tmsu
|
||||
ln -s ${src}/* src/github.com/oniony/tmsu
|
||||
|
||||
export GOPATH=$PWD
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/sbin
|
||||
mkdir -p $out/share/man
|
||||
mkdir -p $out/share/zsh/site-functions
|
||||
make install INSTALL_DIR=$out/bin \
|
||||
MOUNT_INSTALL_DIR=$out/sbin \
|
||||
MAN_INSTALL_DIR=$out/share/man \
|
||||
ZSH_COMP_INSTALL_DIR=$out/share/zsh/site-functions
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.tmsu.org;
|
||||
description = "A tool for tagging your files using a virtual filesystem";
|
||||
maintainers = with maintainers; [ pSub ];
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -1,41 +1,58 @@
|
||||
{ stdenv, fetchurl, libtool, gettext, libuuid }:
|
||||
{ stdenv, fetchurl, gettext, libuuid, readline }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xfsprogs-3.1.11";
|
||||
name = "xfsprogs-3.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [ "ftp://oss.sgi.com/projects/xfs/cmd_tars/${name}.tar.gz" "ftp://oss.sgi.com/projects/xfs/previous/${name}.tar.gz" ];
|
||||
sha256 = "1gnnyhy3khl08a24c5y0pyakz6nnwkiw1fc6rb0r1j5mfw0rix5d";
|
||||
urls = map (dir: "ftp://oss.sgi.com/projects/xfs/${dir}/${name}.tar.gz")
|
||||
[ "cmd_tars" "previous" ];
|
||||
sha256 = "1aszsqz7gkqdagads18ybslbfkyxq893rykmsz9lm7f33pi5qlhs";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
sed -i s,/bin/bash,`type -P bash`, install-sh
|
||||
prePatch = ''
|
||||
sed -i s,/bin/bash,`type -P bash`,g install-sh
|
||||
sed -i s,ldconfig,`type -P ldconfig`,g configure m4/libtool.m4
|
||||
|
||||
# Fixes from gentoo 3.2.1 ebuild
|
||||
sed -i "/^PKG_DOC_DIR/s:@pkg_name@:${name}:" include/builddefs.in
|
||||
sed -i '1iLLDFLAGS = -static' {estimate,fsr}/Makefile
|
||||
sed -i "/LLDFLAGS/s:-static::" $(find -name Makefile)
|
||||
sed -i '/LIB_SUBDIRS/s:libdisk::' Makefile
|
||||
'';
|
||||
|
||||
outputs = ["out" "lib"];
|
||||
patches = [
|
||||
# This patch fixes shared libs installation, still not fixed in 3.2.2
|
||||
./xfsprogs-3.2.2-sharedlibs.patch
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
(cd include; make install-dev)
|
||||
# The make install-dev target is broken when --disable-shared
|
||||
mkdir -p $lib/lib $lib/include
|
||||
cp ./libhandle/.libs/libhandle.a \
|
||||
./libxcmd/.libs/libxcmd.a \
|
||||
./libxlog/.libs/libxlog.a \
|
||||
./libxfs/.libs/libxfs.a $lib/lib
|
||||
mv $out/include/* $lib/include
|
||||
buildInputs = [ gettext libuuid readline ];
|
||||
|
||||
outputs = [ "out" "lib" ];
|
||||
|
||||
preConfigure = ''
|
||||
NIX_LDFLAGS="$(echo $NIX_LDFLAGS | sed "s,$out,$lib,g")"
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"MAKE=make"
|
||||
"MSGFMT=msgfmt"
|
||||
"MSGMERGE=msgmerge"
|
||||
"XGETTEXT=xgettext"
|
||||
"--disable-lib64"
|
||||
"--enable-readline"
|
||||
"--includedir=$(lib)/include"
|
||||
"--libdir=$(lib)/lib"
|
||||
];
|
||||
|
||||
installFlags = [ "install-dev" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ libtool gettext libuuid ];
|
||||
|
||||
configureFlags = "MAKE=make MSGFMT=msgfmt MSGMERGE=msgmerge XGETTEXT=xgettext ZIP=gzip AWK=gawk --disable-shared";
|
||||
preConfigure = ''
|
||||
configureFlags="$configureFlags root_sbindir=$out/sbin root_libdir=$lib/lib"
|
||||
'';
|
||||
disableStatic = false;
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://xfs.org/;
|
||||
description = "SGI XFS utilities";
|
||||
license = licenses.lgpl21;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ wkennington ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,108 @@
|
||||
use libtool to do all installing. do not use the manual file install as
|
||||
that'll copy files directly from the .libs/ subdir which might have rpaths
|
||||
that we do not want.
|
||||
|
||||
--- xfsprogs-3.2.2/include/buildmacros
|
||||
+++ xfsprogs-3.2.2/include/buildmacros
|
||||
@@ -70,18 +70,9 @@
|
||||
# /usr/lib.
|
||||
ifeq ($(ENABLE_SHARED),yes)
|
||||
INSTALL_LTLIB_DEV = \
|
||||
- cd $(TOPDIR)/$(LIBNAME)/.libs; \
|
||||
- ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
|
||||
- ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_LIB_DIR); \
|
||||
- ../$(INSTALL) -m 644 $(LIBNAME).lai $(PKG_LIB_DIR)/$(LIBNAME).la ; \
|
||||
- ../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \
|
||||
- ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \
|
||||
- if [ "x$(shell readlink -f $(PKG_LIB_DIR))" != \
|
||||
- "x$(shell readlink -f $(PKG_ROOT_LIB_DIR))"; ]; then \
|
||||
- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).a $(PKG_ROOT_LIB_DIR)/$(LIBNAME).a; \
|
||||
- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_ROOT_LIB_DIR)/$(LIBNAME).la; \
|
||||
- ../$(INSTALL) -S $(PKG_ROOT_LIB_DIR)/$(LIBNAME).so $(PKG_LIB_DIR)/$(LIBNAME).so; \
|
||||
- fi
|
||||
+ set -e; cd $(TOPDIR)/$(LIBNAME); \
|
||||
+ $(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
|
||||
+ env -uDIST_ROOT $(LTINSTALL) $(TOPDIR)/$(LIBNAME)/$(LIBNAME).la $(DIST_ROOT)$(PKG_LIB_DIR)/$(LIBNAME).la
|
||||
else
|
||||
INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
|
||||
endif
|
||||
--- xfsprogs-3.2.2/libdisk/Makefile
|
||||
+++ xfsprogs-3.2.2/libdisk/Makefile
|
||||
@@ -31,6 +31,7 @@
|
||||
install: default
|
||||
|
||||
install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
|
||||
install-qa: install-dev
|
||||
|
||||
--- xfsprogs-3.2.2/libhandle/Makefile
|
||||
+++ xfsprogs-3.2.2/libhandle/Makefile
|
||||
@@ -20,7 +20,6 @@
|
||||
include $(BUILDRULES)
|
||||
|
||||
install: default
|
||||
- $(INSTALL_LTLIB)
|
||||
|
||||
install-dev: default
|
||||
$(INSTALL_LTLIB_DEV)
|
||||
--- xfsprogs-3.2.2/libxcmd/Makefile
|
||||
+++ xfsprogs-3.2.2/libxcmd/Makefile
|
||||
@@ -34,6 +34,11 @@
|
||||
|
||||
include $(BUILDRULES)
|
||||
|
||||
-install install-dev install-qa: default
|
||||
+install: default
|
||||
+
|
||||
+ install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
+
|
||||
+install-qa: default
|
||||
|
||||
-include .ltdep
|
||||
--- xfsprogs-3.2.2/libxfs/Makefile
|
||||
+++ xfsprogs-3.2.2/libxfs/Makefile
|
||||
@@ -86,6 +86,7 @@
|
||||
install: default
|
||||
|
||||
install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
|
||||
install-qa: default
|
||||
|
||||
--- xfsprogs-3.2.2/libxlog/Makefile
|
||||
+++ xfsprogs-3.2.2/libxlog/Makefile
|
||||
@@ -12,6 +12,8 @@
|
||||
|
||||
CFILES = xfs_log_recover.c util.c
|
||||
|
||||
+LTLIBS = $(LIBUUID) $(LIBXFS)
|
||||
+
|
||||
# don't want to link xfs_repair with a debug libxlog.
|
||||
DEBUG = -DNDEBUG
|
||||
|
||||
@@ -19,6 +21,11 @@
|
||||
|
||||
include $(BUILDRULES)
|
||||
|
||||
-install install-dev install-qa: default
|
||||
+install: default
|
||||
+
|
||||
+install-dev: default
|
||||
+ $(INSTALL_LTLIB_DEV)
|
||||
+
|
||||
+install-qa: default
|
||||
|
||||
-include .ltdep
|
||||
--- xfsprogs-3.2.2/Makefile
|
||||
+++ xfsprogs-3.2.2/Makefile
|
||||
@@ -63,6 +63,8 @@
|
||||
mkfs: libxfs
|
||||
quota: libxcmd
|
||||
repair: libxfs libxlog
|
||||
+libxlog: libxfs
|
||||
+libxlog-install-dev: libxfs-install-dev
|
||||
|
||||
ifneq ($(ENABLE_BLKID), yes)
|
||||
mkfs: libdisk
|
||||
@@ -1,22 +1,23 @@
|
||||
{ stdenv, fetchurl, writeText, zlib, rpm, cpio, patchelf, which }:
|
||||
{ stdenv, fetchurl, writeText, zlib, rpmextract, patchelf, which }:
|
||||
|
||||
assert stdenv.isLinux;
|
||||
|
||||
let
|
||||
p = if stdenv.is64bit then {
|
||||
arch = "x86_64";
|
||||
gcclib = "${stdenv.gcc.gcc}/lib64";
|
||||
sha256 = "1fmmlvvh97d60n9k08bn4k6ghwr3yhs8sib82025nwpw1sq08vim";
|
||||
gcclib = "${stdenv.cc.cc}/lib64";
|
||||
sha256 = "061kl186vllqhl1443d9cwvp4qdhqc42yf3x72a1w0bjvn0i3z1i";
|
||||
}
|
||||
else {
|
||||
arch = "i386";
|
||||
gcclib = "${stdenv.gcc.gcc}/lib";
|
||||
sha256 = "3940420bd9d1fe1ecec1a117bfd9d21d545bca59f5e0a4364304ab808c976f7f";
|
||||
gcclib = "${stdenv.cc.cc}/lib";
|
||||
sha256 = "1l9mxlin41w83dn70cvdk1n1vn1dll3d8r120jkqn5jfhicrgvv3";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "yandex-disk-0.1.2.481";
|
||||
name = "yandex-disk-${version}";
|
||||
version = "0.1.5.870";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${name}-1.fedora.${p.arch}.rpm";
|
||||
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
mkdir -pv unpacked
|
||||
cd unpacked
|
||||
${rpm}/bin/rpm2cpio $src | ${cpio}/bin/cpio -imd
|
||||
${rpmextract}/bin/rpmextract $src
|
||||
|
||||
cp -r -t $out/bin usr/bin/*
|
||||
cp -r -t $out/share usr/share/*
|
||||
@@ -41,7 +42,7 @@ stdenv.mkDerivation rec {
|
||||
$out/etc/bash_completion.d/yandex-disk-completion.bash
|
||||
|
||||
${patchelf}/bin/patchelf \
|
||||
--set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
|
||||
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath "${zlib}/lib:${p.gcclib}" \
|
||||
$out/bin/yandex-disk
|
||||
'';
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchurl, e2fsprogs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "zerofree-1.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://intgat.tigress.co.uk/rmy/uml/zerofree-1.0.3.tgz";
|
||||
sha256 = "3acfda860be0f0ddcb5c982ff3b4475b1ee8cc35a90ae2a910e93261dbe0ccf6";
|
||||
};
|
||||
|
||||
buildInputs = [ e2fsprogs ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp zerofree $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://intgat.tigress.co.uk/rmy/uml/index.html;
|
||||
description = "zero free blocks from ext2, ext3 and ext4 file-systems";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.theuni ];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user