diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index ef6fdab0efac..72d4e8dfb21e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8258,6 +8258,17 @@ githubId = 1776903; name = "Andrew Abbott"; }; + misterio77 = { + email = "eu@misterio.me"; + github = "misterio77"; + githubId = 5727578; + matrix = "@misterio:matrix.org"; + name = "Gabriel Fontes"; + keys = [{ + longkeyid = "rsa3072/0x245CAB70B4C225E9"; + fingerprint = "7088 C742 1873 E0DB 97FF 17C2 245C AB70 B4C2 25E9"; + }]; + }; mitchmindtree = { email = "mail@mitchellnordine.com"; github = "mitchmindtree"; diff --git a/pkgs/misc/drivers/argononed/default.nix b/pkgs/misc/drivers/argononed/default.nix new file mode 100644 index 000000000000..5fa28c17c529 --- /dev/null +++ b/pkgs/misc/drivers/argononed/default.nix @@ -0,0 +1,48 @@ +{ lib, stdenv, fetchFromGitLab, dtc, installShellFiles }: + +stdenv.mkDerivation rec { + pname = "argononed"; + version = "unstable-2022-03-26"; + + src = fetchFromGitLab { + owner = "DarkElvenAngel"; + repo = pname; + rev = "97c4fa07fc2c09ffc3bd86e0f6319d50fa639578"; + sha256 = "sha256-5/xUYbprRiwD+FN8V2cUpHxnTbBkEsFG2wfsEXrCrgQ="; + }; + + patches = [ ./fix-hardcoded-reboot-poweroff-paths.patch ]; + + postPatch = '' + patchShebangs configure + ''; + + nativeBuildInputs = [ installShellFiles ]; + + buildInputs = [ dtc ]; + + installPhase = '' + runHook preInstall + + install -Dm755 build/argononed $out/bin/argononed + install -Dm755 build/argonone-cli $out/bin/argonone-cli + install -Dm755 build/argonone-shutdown $out/lib/systemd/system-shutdown/argonone-shutdown + install -Dm644 build/argonone.dtbo $out/boot/overlays/argonone.dtbo + + install -Dm644 OS/_common/argononed.service $out/lib/systemd/system/argononed.service + install -Dm644 OS/_common/argononed.logrotate $out/etc/logrotate.d/argononed + install -Dm644 LICENSE $out/share/argononed/LICENSE + + installShellCompletion --bash --name argonone-cli OS/_common/argonone-cli-complete.bash + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://gitlab.com/DarkElvenAngel/argononed"; + description = "A replacement daemon for the Argon One Raspberry Pi case"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = [ maintainers.misterio77 ]; + }; +} diff --git a/pkgs/misc/drivers/argononed/fix-hardcoded-reboot-poweroff-paths.patch b/pkgs/misc/drivers/argononed/fix-hardcoded-reboot-poweroff-paths.patch new file mode 100644 index 000000000000..88bcb6ddd25e --- /dev/null +++ b/pkgs/misc/drivers/argononed/fix-hardcoded-reboot-poweroff-paths.patch @@ -0,0 +1,18 @@ +--- a/src/argononed.c ++++ b/src/argononed.c +@@ -783,13 +783,13 @@ + { + log_message(LOG_DEBUG, "EXEC REBOOT"); + sync(); +- system("/sbin/reboot"); ++ system("/run/current-system/sw/bin/reboot"); + } + if (count >= 39 && count <= 41) + { + log_message(LOG_DEBUG, "EXEC SHUTDOWN"); + sync(); +- system("/sbin/poweroff"); ++ system("/run/current-system/sw/bin/poweroff"); + } + #else + log_message(LOG_INFO,"Daemon Ready"); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 21345ef8d88a..52b9da97b7a3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33190,6 +33190,8 @@ with pkgs; swt = swt_jdk8; }; + argononed = callPackage ../misc/drivers/argononed { }; + attract-mode = callPackage ../applications/emulators/attract-mode { }; autotiling = python3Packages.callPackage ../misc/autotiling { };