From 354c979ea85d89e8269e71b5ab4d5d73d8b8bc3c Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Thu, 27 Jul 2017 13:03:26 +0800 Subject: [PATCH 1/2] mcelog: 148 -> 153 --- pkgs/os-specific/linux/mcelog/default.nix | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/pkgs/os-specific/linux/mcelog/default.nix b/pkgs/os-specific/linux/mcelog/default.nix index 64b937390f1..a7f5ffaae4a 100644 --- a/pkgs/os-specific/linux/mcelog/default.nix +++ b/pkgs/os-specific/linux/mcelog/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "mcelog-${version}"; - version = "148"; + version = "153"; src = fetchFromGitHub { - sha256 = "04mzscvr38r2q9da9wmv3cxb99vrkxks1mzgvwsxk753xan3p42c"; - rev = "v${version}"; - repo = "mcelog"; - owner = "andikleen"; + owner = "andikleen"; + repo = "mcelog"; + rev = "v${version}"; + sha256 = "1wz55dzqdiam511d6p1958al6vzlhrhs73s7gly0mzm6kpji0gxa"; }; postPatch = '' @@ -28,6 +28,12 @@ stdenv.mkDerivation rec { installFlags = [ "DESTDIR=$(out)" "prefix=" "DOCDIR=/share/doc" ]; + postInstall = '' + mkdir -p $out/lib/systemd/system + substitute mcelog.service $out/lib/systemd/system/mcelog.service \ + --replace /usr/sbin $out/bin + ''; + meta = with stdenv.lib; { description = "Log x86 machine checks: memory, IO, and CPU hardware errors"; longDescription = '' From f5c0607f8d566a5aa2cf74346348bcdb492637e4 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Thu, 27 Jul 2017 13:03:36 +0800 Subject: [PATCH 2/2] mcelog: use .service file from upstream --- nixos/modules/hardware/mcelog.nix | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/nixos/modules/hardware/mcelog.nix b/nixos/modules/hardware/mcelog.nix index e4ac7d39053..13ad238870c 100644 --- a/nixos/modules/hardware/mcelog.nix +++ b/nixos/modules/hardware/mcelog.nix @@ -3,7 +3,7 @@ with lib; { - meta.maintainers = [ maintainers.grahamc ]; + meta.maintainers = with maintainers; [ grahamc ]; options = { hardware.mcelog = { @@ -19,19 +19,17 @@ with lib; }; config = mkIf config.hardware.mcelog.enable { - systemd.services.mcelog = { - description = "Machine Check Exception Logging Daemon"; - wantedBy = [ "multi-user.target" ]; + systemd = { + packages = [ pkgs.mcelog ]; - serviceConfig = { - ExecStart = "${pkgs.mcelog}/bin/mcelog --daemon --foreground"; - SuccessExitStatus = [ 0 15 ]; - - ProtectHome = true; - PrivateNetwork = true; - PrivateTmp = true; + services.mcelog = { + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ProtectHome = true; + PrivateNetwork = true; + PrivateTmp = true; + }; }; }; }; - }