Author: simons
Date: Tue Sep 13 17:50:03 2011
New Revision: 29244
URL: https://ssl.nixos.org/websvn/nix/?rev=29244&sc=1
Log:
bash: install extensive completion library in the interactive version
Add the command-line completion library to the "interactive" version of
bash. That code is *not* active by default. To enable it, run
| . ${bash}/etc/bash_completion
in your ~/.bashrc. If you prefer to build bashInteractive without that
feature, use the following override in ~/.nixpkgs/config.nix to disable it:
| {
| packageOverrides = pkgs:
| {
| bashInteractive = pkgs.bashInteractive.override {
| bashCompletion = null;
| };
| };
| }
Modified:
nixpkgs/trunk/pkgs/shells/bash/default.nix
Modified: nixpkgs/trunk/pkgs/shells/bash/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/shells/bash/default.nix Tue Sep 13 17:35:18 2011
(r29243)
+++ nixpkgs/trunk/pkgs/shells/bash/default.nix Tue Sep 13 17:50:03 2011
(r29244)
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, readline ? null, interactive ? false, texinfo ? null,
bison}:
+{stdenv, fetchurl, readline ? null, interactive ? false, texinfo ? null,
bison, bashCompletion ? null}:
assert interactive -> readline != null;
@@ -47,18 +47,22 @@
buildNativeInputs = [bison]
++ stdenv.lib.optional (texinfo != null) texinfo
++ stdenv.lib.optional interactive readline;
-
+
postInstall = ''
# Add an `sh' -> `bash' symlink.
ln -s bash "$out/bin/sh"
+ '' + (if interactive && bashCompletion != null then ''
+ ensureDir "$out/etc"
+ echo >"$out/etc/bash_completion" '.
"${bashCompletion}/etc/bash_completion"'
+ '' else ''
# Install the completion examples.
ensureDir "$out/etc"
cp -v "examples/complete/bash_completion" "$out/etc"
ensureDir "$out/etc/bash_completion.d"
cp -v "examples/complete/complete.gnu-longopt" "$out/etc/bash_completion.d"
- '';
+ '');
meta = {
homepage = http://www.gnu.org/software/bash/;
@@ -79,7 +83,7 @@
license = "GPLv3+";
- maintainers = [ stdenv.lib.maintainers.ludo ];
+ maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons
];
};
passthru = {
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits