nixos/hardware/raid/hpsa: init at 2.40

Volth b998d8e8 f0f55ac6

Changed files
+62
nixos
modules
hardware
raid
+61
nixos/modules/hardware/raid/hpsa.nix
···
···
+
{ config, lib, pkgs, ... }:
+
+
with lib;
+
+
let
+
hpssacli = pkgs.stdenv.mkDerivation rec {
+
name = "hpssacli-${version}";
+
version = "2.40-13.0";
+
+
src = pkgs.fetchurl {
+
url = "http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/${name}_amd64.deb";
+
sha256 = "11w7fwk93lmfw0yya4jpjwdmgjimqxx6412sqa166g1pz4jil4sw";
+
};
+
+
nativeBuildInputs = [ pkgs.dpkg ];
+
+
unpackPhase = "dpkg -x $src ./";
+
+
installPhase = ''
+
mkdir -p $out/bin $out/share/doc $out/share/man
+
mv opt/hp/hpssacli/bld/{hpssascripting,hprmstr,hpssacli} $out/bin/
+
mv opt/hp/hpssacli/bld/*.{license,txt} $out/share/doc/
+
mv usr/man $out/share/
+
+
for file in $out/bin/*; do
+
chmod +w $file
+
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+
--set-rpath ${lib.makeLibraryPath [ pkgs.stdenv.cc.cc ]} \
+
$file
+
done
+
'';
+
+
dontStrip = true;
+
+
meta = with lib; {
+
description = "HP Smart Array CLI";
+
homepage = http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/;
+
license = licenses.unfreeRedistributable;
+
platforms = [ "x86_64-linux" ];
+
maintainers = with maintainers; [ volth ];
+
};
+
};
+
in {
+
###### interface
+
+
options = {
+
hardware.raid.HPSmartArray = {
+
enable = mkEnableOption "HP Smart Array kernel modules and CLI utility";
+
};
+
};
+
+
###### implementation
+
+
config = mkIf config.hardware.raid.HPSmartArray.enable {
+
+
boot.initrd.kernelModules = [ "sg" ]; /* hpssacli wants it */
+
boot.initrd.availableKernelModules = [ "hpsa" ];
+
+
environment.systemPackages = [ hpssacli ];
+
};
+
}
+1
nixos/modules/module-list.nix
···
./hardware/nitrokey.nix
./hardware/opengl.nix
./hardware/pcmcia.nix
./hardware/usb-wwan.nix
./hardware/video/amdgpu.nix
./hardware/video/amdgpu-pro.nix
···
./hardware/nitrokey.nix
./hardware/opengl.nix
./hardware/pcmcia.nix
+
./hardware/raid/hpsa.nix
./hardware/usb-wwan.nix
./hardware/video/amdgpu.nix
./hardware/video/amdgpu-pro.nix