lol
fork

Configure Feed

Select the types of activity you want to include in your feed.

at 17.09-beta 92 lines 3.5 kB view raw
1# CAVEATS: 2# - Have only tested this with rsync, scp, and sftp. cvs support should work, but chroot integration is unlikely to function without further work 3# - It is compiled without rdist support because rdist is ludicrously ancient (and not already in nixpkgs) 4 5{ stdenv, fetchurl, openssh, rsync, cvs }: 6 7stdenv.mkDerivation rec { 8 name = "rssh-${version}"; 9 version = "2.3.4"; 10 11 src = fetchurl { 12 url = "mirror://sourceforge/rssh/rssh/${version}/${name}.tar.gz"; 13 sha256 = "f30c6a760918a0ed39cf9e49a49a76cb309d7ef1c25a66e77a41e2b1d0b40cd9"; 14 }; 15 16 patches = [ 17 ./fix-config-path.patch 18 19 # Patches from AUR 20 (fetchurl { 21 url = https://aur.archlinux.org/cgit/aur.git/plain/0001-fail-logging.patch?h=rssh; 22 name = "0001-fail-logging.patch"; 23 sha256 = "d30f2f4fdb1b57f94773f5b0968a4da3356b14a040efe69ec1e976c615035c65"; 24 }) 25 (fetchurl { 26 url = https://aur.archlinux.org/cgit/aur.git/plain/0002-info-to-debug.patch?h=rssh; 27 name = "0002-info-to-debug.patch"; 28 sha256 = "86f6ecf34f62415b0d6204d4cbebc47322dc2ec71732d06aa27758e35d688fcd"; 29 }) 30 (fetchurl { 31 url = https://aur.archlinux.org/cgit/aur.git/plain/0003-man-page-spelling.patch?h=rssh; 32 name = "0003-man-page-spelling.patch"; 33 sha256 = "455b3bbccddf1493999d00c2cd46e62930ef4fd8211e0b7d3a89d8010d6a5431"; 34 }) 35 (fetchurl { 36 url = https://aur.archlinux.org/cgit/aur.git/plain/0004-mkchroot.patch?h=rssh; 37 name = "0004-mkchroot.patch"; 38 sha256 = "f7fd8723d2aa94e64e037c13c2f263a52104af680ab52bfcaea73dfa836457c2"; 39 }) 40 (fetchurl { 41 url = https://aur.archlinux.org/cgit/aur.git/plain/0005-mkchroot-arch.patch?h=rssh; 42 name = "0005-mkchroot-arch.patch"; 43 sha256 = "ac8894c4087a063ae8267d2fdfcde69c2fe6b67a8ff5917e4518b8f73f08ba3f"; 44 }) 45 (fetchurl { 46 url = https://aur.archlinux.org/cgit/aur.git/plain/0006-mkchroot-symlink.patch?h=rssh; 47 name = "0006-mkchroot-symlink.patch"; 48 sha256 = "bce98728cb9b55c92182d4901c5f9adf49376a07c5603514b0004e3d1c85e9c7"; 49 }) 50 (fetchurl { 51 url = https://aur.archlinux.org/cgit/aur.git/plain/0007-destdir.patch?h=rssh; 52 name = "0007-destdir.patch"; 53 sha256 = "7fa03644f81dc37d77cc7e2cad994f17f91b2b8a49b1a74e41030a4ac764385e"; 54 }) 55 (fetchurl { 56 url = https://aur.archlinux.org/cgit/aur.git/plain/0008-rsync-protocol.patch?h=rssh; 57 name = "0008-rsync-protocol.patch"; 58 sha256 = "0c772afe9088eeded129ead86775ef18e58c318bbc58fc3e2585e7ff09cc5e91"; 59 }) 60 ]; 61 62 # Run this after to avoid conflict with patches above 63 postPatch = '' 64 sed -i '/chmod u+s/d' Makefile.in 65 ''; 66 67 68 buildInputs = [ openssh rsync cvs ]; 69 70 configureFlags = [ 71 "--with-sftp-server=${openssh}/libexec/sftp-server" 72 "--with-scp=${openssh}/bin/scp" 73 "--with-rsync=${rsync}/bin/rsync" 74 "--with-cvs=${cvs}/bin/cvs" 75 ]; 76 77 78 meta = with stdenv.lib; { 79 description = "A restricted shell for use with OpenSSH, allowing only scp and/or sftp"; 80 longDescription = '' 81 rssh also includes support for rsync and cvs. For example, if you have a server which you only want to allow users to copy files off of via scp, without providing shell access, you can use rssh to do that. 82 ''; 83 homepage = http://www.pizzashack.org/rssh/; 84 license = licenses.bsd2; 85 platforms = platforms.linux; 86 maintainers = with maintainers; [ arobyn ]; 87 }; 88 89 passthru = { 90 shellPath = "/bin/rssh"; 91 }; 92}