summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
authorRob Vermaas2009-09-22 08:12:11 +0000
committerRob Vermaas2009-09-22 08:12:11 +0000
commita9d801d645f02d96f6151878df8917e6a9ec0ebb (patch)
tree70bf4a517db68997323a1e4f5d9f4aef23f93801 /pkgs/os-specific
parent2750e04339d0bc76a6dededc4cf2a7edcca34287 (diff)
* added davfs2 1.4.1
svn path=/nixpkgs/trunk/; revision=17345
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/davfs2/davfs2-install.patch49
-rw-r--r--pkgs/os-specific/linux/davfs2/default.nix20
2 files changed, 69 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/davfs2/davfs2-install.patch b/pkgs/os-specific/linux/davfs2/davfs2-install.patch
new file mode 100644
index 000000000000..93e9b09a9145
--- /dev/null
+++ b/pkgs/os-specific/linux/davfs2/davfs2-install.patch
@@ -0,0 +1,49 @@
+diff -rc davfs2-1.4.1/src/Makefile.in davfs2-1.4.1-new/src/Makefile.in
+*** davfs2-1.4.1/src/Makefile.in	2009-06-13 18:31:22.000000000 +0200
+--- davfs2-1.4.1-new/src/Makefile.in	2009-09-22 09:12:09.523154536 +0200
+***************
+*** 489,500 ****
+  
+  
+  install-exec-hook:
+! 	chmod u+s $(DESTDIR)$(sbindir)/mount.davfs; \
+! 	if test "$(sbindir)" != "$(ssbindir)"; then \
+! 	  $(mkinstalldirs) $(DESTDIR)$(ssbindir); \
+! 	  $(LN_S) -f $(DESTDIR)$(sbindir)/mount.davfs $(DESTDIR)$(ssbindir)/mount.davfs; \
+! 	  $(LN_S) -f $(DESTDIR)$(sbindir)/umount.davfs $(DESTDIR)$(ssbindir)/umount.davfs; \
+! 	fi
+  
+  uninstall-hook:
+  	if test "$(sbindir)" != "$(ssbindir)"; then \
+--- 489,495 ----
+  
+  
+  install-exec-hook:
+! 	chmod u+s $(DESTDIR)$(sbindir)/mount.davfs; 
+  
+  uninstall-hook:
+  	if test "$(sbindir)" != "$(ssbindir)"; then \
+diff -rc davfs2-1.4.1/src/mount_davfs.c davfs2-1.4.1-new/src/mount_davfs.c
+*** davfs2-1.4.1/src/mount_davfs.c	2009-06-12 11:54:58.000000000 +0200
+--- davfs2-1.4.1-new/src/mount_davfs.c	2009-09-22 09:45:21.462726033 +0200
+***************
+*** 2327,2335 ****
+      }
+      if (st.st_uid != geteuid())
+          error(EXIT_FAILURE, 0, _("file %s has wrong owner"), filename);
+!     if ((st.st_mode &
+            (S_IXUSR | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX)) != 0)
+!         error(EXIT_FAILURE, 0, _("file %s has wrong permissions"), filename);
+  
+      FILE *file = fopen(filename, "r");
+      if (!file) {
+--- 2327,2335 ----
+      }
+      if (st.st_uid != geteuid())
+          error(EXIT_FAILURE, 0, _("file %s has wrong owner"), filename);
+! /*    if ((st.st_mode &
+            (S_IXUSR | S_IRWXG | S_IRWXO | S_ISUID | S_ISGID | S_ISVTX)) != 0)
+!         error(EXIT_FAILURE, 0, _("file %s has wrong permissions"), filename); */
+  
+      FILE *file = fopen(filename, "r");
+      if (!file) {
diff --git a/pkgs/os-specific/linux/davfs2/default.nix b/pkgs/os-specific/linux/davfs2/default.nix
new file mode 100644
index 000000000000..b4acc96f208d
--- /dev/null
+++ b/pkgs/os-specific/linux/davfs2/default.nix
@@ -0,0 +1,20 @@
+{stdenv, fetchurl, neon, zlib}:
+
+stdenv.mkDerivation rec {
+  name = "davfs2-1.4.1";
+
+  src = fetchurl {
+    url = "http://www.very-clever.com/download/nongnu/davfs2/${name}.tar.gz";
+    sha256 = "0fqq331rd3ylzfhdsbbj0b2znn3d0js0kxcv3w54dl9g2cs8fqhn";
+  };
+
+  buildInputs = [ neon zlib ]; 
+  patches = [ ./davfs2-install.patch ]; 
+
+  meta = {
+    description = "Web Distributed Authoring and Versioning (WebDAV), an extension to the HTTP-protocol, allows authoring of resources on a remote web server. davfs2 provides the ability to access such resources like a typical filesystem, allowing for use by standard applications with no built-in support for WebDAV.";
+
+    license = "GPLv3+";
+    homepage = http://savannah.nongnu.org/projects/davfs2;
+  };
+}