diff --git a/nixos/modules/programs/bash/blesh.nix b/nixos/modules/programs/bash/blesh.nix index 0a9aa6242425..8fa51bef7744 100644 --- a/nixos/modules/programs/bash/blesh.nix +++ b/nixos/modules/programs/bash/blesh.nix @@ -9,7 +9,7 @@ in { config = mkIf cfg.enable { programs.bash.interactiveShellInit = mkBefore '' - source ${pkgs.blesh}/share/ble.sh + source ${pkgs.blesh}/share/blesh/ble.sh ''; }; meta.maintainers = with maintainers; [ laalsaas ]; diff --git a/pkgs/shells/bash/blesh/default.nix b/pkgs/shells/bash/blesh/default.nix index f342f408540f..26ff975dae33 100644 --- a/pkgs/shells/bash/blesh/default.nix +++ b/pkgs/shells/bash/blesh/default.nix @@ -1,51 +1,54 @@ { lib , stdenvNoCC -, fetchFromGitHub -, git +, fetchzip +, runtimeShell , bashInteractive , glibcLocales -, runtimeShell }: stdenvNoCC.mkDerivation rec { name = "blesh"; - version = "unstable-2022-07-24"; + version = "unstable-2022-07-29"; - src = fetchFromGitHub { - owner = "akinomyoga"; - repo = "ble.sh"; - rev = "0b95d5d900b79a63e7f0834da5aa7276b8332a44"; - hash = "sha256-s/RQKcAFcCUB3Xd/4uOsIgigOE0lCCeVC9K3dfnP/EQ="; - fetchSubmodules = true; - leaveDotGit = true; + src = fetchzip { + url = "https://github.com/akinomyoga/ble.sh/releases/download/nightly/ble-nightly-20220729+a22e145.tar.xz"; + sha256 = "088jv02y40pjcfzgrbx8n6aksznfh6zl0j5siwfw3pmwn3i16njw"; }; - nativeBuildInputs = [ git ]; + dontBuild = true; doCheck = true; checkInputs = [ bashInteractive glibcLocales ]; preCheck = "export LC_ALL=en_US.UTF-8"; - installFlags = [ "INSDIR=$(out)/share" ]; + installPhase = '' + runHook preInstall + + mkdir -p "$out/share/blesh/lib" + + cat <"$out/share/blesh/lib/_package.sh" + _ble_base_package_type=nix + + function ble/base/package:nix/update { + echo "Ble.sh is installed by Nix. You can update it there." >&2 + return 1 + } + EOF + + cp -rv $src/* $out/share/blesh + + runHook postInstall + ''; + postInstall = '' mkdir -p "$out/bin" cat <"$out/bin/blesh-share" #!${runtimeShell} # Run this script to find the ble.sh shared folder # where all the shell scripts are living. - echo "$out/share/ble.sh" + echo "$out/share/blesh" EOF chmod +x "$out/bin/blesh-share" - - mkdir -p "$out/share/lib" - cat <"$out/share/lib/_package.sh" - _ble_base_package_type=nix - - function ble/base/package:nix/update { - echo "Ble.sh is installed by Nix. You can update it there." >/dev/stderr - return 1 - } - EOF ''; meta = with lib; {