1 { fetchurl, lib, stdenv, bash, perl }:
3 stdenv.mkDerivation rec {
8 url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
9 sha256 = "sha256-Jm80iJq2pwO/CJCItSN8gUo5ThxRQsG0Z5TYVtWSEts=";
13 buildInputs = [ bash ];
15 # Make sure that Rush looks for rush.rc in a directory that users can
17 configureFlags = [ "--sysconfdir=/etc" ];
18 # Prevent “make install” from trying to copy something to
20 installFlags = [ "sysconfdir=$(out)/etc" ];
22 substituteInPlace $out/bin/rush-po \
23 --replace "exec perl" "exec ${lib.getExe perl}"
29 broken = stdenv.hostPlatform.isDarwin;
30 description = "Restricted User Shell";
33 GNU Rush is a Restricted User Shell, designed for sites
34 providing limited remote access to their resources, such as
35 svn or git repositories, scp, or the like. Using a
36 sophisticated configuration file, Rush gives you complete
37 control over the command lines that users execute, as well as
38 over the usage of system resources, such as virtual memory,
41 In particular, it allows remote programs to be run in a chrooted
42 environment, which is important with such programs as
43 sftp-server or scp, that lack this ability.
46 homepage = "https://www.gnu.org/software/rush/";
47 license = lib.licenses.gpl3Plus;
50 platforms = lib.platforms.all;
54 shellPath = "/bin/rush";