forked from mirrors/nixpkgs
bash-my-aws: init at 20191231
Create bma-init
This commit is contained in:
parent
5a3c1eda46
commit
e5208af780
|
@ -96,6 +96,7 @@
|
|||
./programs/atop.nix
|
||||
./programs/autojump.nix
|
||||
./programs/bash/bash.nix
|
||||
./programs/bash-my-aws.nix
|
||||
./programs/bcc.nix
|
||||
./programs/browserpass.nix
|
||||
./programs/captive-browser.nix
|
||||
|
|
25
nixos/modules/programs/bash-my-aws.nix
Normal file
25
nixos/modules/programs/bash-my-aws.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
prg = config.programs;
|
||||
cfg = prg.bash-my-aws;
|
||||
|
||||
initScript = ''
|
||||
eval $(${pkgs.bash-my-aws}/bin/bma-init)
|
||||
'';
|
||||
in
|
||||
{
|
||||
options = {
|
||||
programs.bash-my-aws = {
|
||||
enable = mkEnableOption "bash-my-aws";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [ bash-my-aws ];
|
||||
|
||||
programs.bash.interactiveShellInit = initScript;
|
||||
};
|
||||
}
|
72
pkgs/tools/admin/bash-my-aws/default.nix
Normal file
72
pkgs/tools/admin/bash-my-aws/default.nix
Normal file
|
@ -0,0 +1,72 @@
|
|||
{ stdenv
|
||||
, awscli
|
||||
, jq
|
||||
, fetchgit
|
||||
, installShellFiles
|
||||
, bashInteractive
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "bash-my-aws";
|
||||
version = "20191231";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/bash-my-aws/bash-my-aws";
|
||||
rev = "ef93bd1bf8692dc2fe9f475e7c8a309eb25ef7a6";
|
||||
sha256 = "c57e8327a3dfa24f0c40b8c94eab55fa232f87044e7d59f7bc4b40e5012e83ed";
|
||||
};
|
||||
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
# Why does it propagate packages that are used for testing?
|
||||
propagatedBuildInputs = [
|
||||
awscli
|
||||
jq
|
||||
bashInteractive
|
||||
];
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
#Checks are failing due to missing TTY, which won't exist.
|
||||
checkPhase = ''
|
||||
pushd test
|
||||
./shared-spec.sh
|
||||
./stack-spec.sh
|
||||
popd
|
||||
'';
|
||||
installPhase=''
|
||||
mkdir -p $out
|
||||
cp -r . $out
|
||||
'';
|
||||
postFixup = ''
|
||||
pushd $out
|
||||
# substituteInPlace scripts/build \
|
||||
# --replace '~/.bash-my-aws' $out
|
||||
# substituteInPlace scripts/build-completions \
|
||||
# --replace "{HOME}" $out \
|
||||
# --replace '~/.bash-my-aws' $out
|
||||
# ./scripts/build
|
||||
# ./scripts/build-completions
|
||||
# substituteInPlace bash_completion.sh \
|
||||
# --replace "{HOME}" $out \
|
||||
# --replace .bash-my-aws ""
|
||||
# substituteInPlace bin/bma \
|
||||
# --replace '~/.bash-my-aws' $out
|
||||
# installShellCompletion --bash --name bash-my-aws.bash bash_completion.sh
|
||||
# chmod +x $out/lib/*
|
||||
# patchShebangs --host $out/lib
|
||||
# cat > $out/bin/bma-init <<EOF
|
||||
# echo source $out/aliases
|
||||
# echo source $out/bash
|
||||
# EOF
|
||||
# chmod +x $out/bin/bma-init
|
||||
popd
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://bash-my-aws.org;
|
||||
description = "CLI commands for AWS";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ tomberek ];
|
||||
};
|
||||
}
|
|
@ -769,6 +769,8 @@ in
|
|||
|
||||
automirror = callPackage ../tools/misc/automirror { };
|
||||
|
||||
bash-my-aws = callPackage ../tools/admin/bash-my-aws { };
|
||||
|
||||
bcachefs-tools = callPackage ../tools/filesystems/bcachefs-tools { };
|
||||
|
||||
bitwarden = callPackage ../tools/security/bitwarden { };
|
||||
|
|
Loading…
Reference in a new issue