New hdapsd module

Emery b16dc8dc 838805f5

Changed files
+34 -2
nixos
modules
services
monitoring
pkgs
os-specific
+1
nixos/modules/module-list.nix
···
./services/monitoring/dd-agent.nix
./services/monitoring/grafana.nix
./services/monitoring/graphite.nix
./services/monitoring/heapster.nix
./services/monitoring/longview.nix
./services/monitoring/monit.nix
···
./services/monitoring/dd-agent.nix
./services/monitoring/grafana.nix
./services/monitoring/graphite.nix
+
./services/monitoring/hdaps.nix
./services/monitoring/heapster.nix
./services/monitoring/longview.nix
./services/monitoring/monit.nix
+22
nixos/modules/services/monitoring/hdaps.nix
···
···
+
{ config, lib, pkgs, ... }:
+
+
with lib;
+
+
let
+
cfg = config.services.hdapsd;
+
hdapsd = [ pkgs.hdapsd ];
+
in
+
{
+
options = {
+
services.hdapsd.enable = mkEnableOption
+
''
+
Hard Drive Active Protection System Daemon,
+
devices are detected and managed automatically by udev and systemd
+
'';
+
};
+
+
config = mkIf cfg.enable {
+
services.udev.packages = hdapsd;
+
systemd.packages = hdapsd;
+
};
+
}
+4 -2
pkgs/os-specific/linux/hdapsd/default.nix
···
let version = "20141203"; in
stdenv.mkDerivation rec {
-
name = "ldapsd-"+version;
src = fetchurl {
url = "https://github.com/evgeni/hdapsd/releases/download/${version}/hdapsd-${version}.tar.gz";
sha256 = "0ppgrfabd0ivx9hyny3c3rv4rphjyxcdsd5svx5pgfai49mxnl36";
};
meta = with stdenv.lib;
{ description = "Hard Drive Active Protection System Daemon";
hompage = "http://hdaps.sf.net/";
···
platforms = platforms.linux;
maintainers = [ maintainers.ehmry ];
};
-
}
···
let version = "20141203"; in
stdenv.mkDerivation rec {
+
name = "hdapsd-"+version;
src = fetchurl {
url = "https://github.com/evgeni/hdapsd/releases/download/${version}/hdapsd-${version}.tar.gz";
sha256 = "0ppgrfabd0ivx9hyny3c3rv4rphjyxcdsd5svx5pgfai49mxnl36";
};
+
postInstall = builtins.readFile ./postInstall.sh;
+
meta = with stdenv.lib;
{ description = "Hard Drive Active Protection System Daemon";
hompage = "http://hdaps.sf.net/";
···
platforms = platforms.linux;
maintainers = [ maintainers.ehmry ];
};
+
}
+7
pkgs/os-specific/linux/hdapsd/postInstall.sh
···
···
+
mkdir -p $out/lib/udev/rules.d $out/lib/systemd/system
+
cp misc/hdapsd.rules $out/lib/udev/rules.d
+
SBIN_REWRITE="s|@sbindir@|$out/bin|g"
+
for i in misc/*.service.in
+
do sed $SBIN_REWRITE "$i" > "$out/lib/systemd/system/$(basename ${i%.in})"
+
done
+