59 lines
1.3 KiB
Nix
59 lines
1.3 KiB
Nix
{ lib, stdenv, fetchFromGitHub, nix-gitignore, dtc, installShellFiles, logLevel ? 5, ... }:
|
|
|
|
let
|
|
rawSrc = fetchFromGitHub {
|
|
owner = "mjallen18";
|
|
repo = "argononed";
|
|
rev = "master"; # replace with actual commit or tag
|
|
sha256 = "sha256-PpFR+6Aa4Pz9EmxOayMSsSTKFzUR6sYIAkGZ8+SUK18="; # fill this in with actual hash
|
|
};
|
|
|
|
ignores = ''
|
|
/*
|
|
!/version
|
|
!/makefile
|
|
!/configure
|
|
!/src
|
|
!/OS
|
|
/OS/*
|
|
!/OS/_common/
|
|
!/OS/nixos/
|
|
'';
|
|
|
|
cleanSrc = nix-gitignore.gitignoreSourcePure ignores rawSrc;
|
|
in
|
|
|
|
stdenv.mkDerivation {
|
|
pname = "argononed";
|
|
version = lib.strings.fileContents "${cleanSrc}/version";
|
|
|
|
src = cleanSrc;
|
|
|
|
nativeBuildInputs = [ dtc installShellFiles ];
|
|
|
|
preConfigure = ''
|
|
patchShebangs --build ./configure
|
|
export TARGET_DISTRO=nixos
|
|
'';
|
|
|
|
patches = [
|
|
"${cleanSrc}/OS/nixos/patches/nixos.patch"
|
|
"${cleanSrc}/OS/nixos/patches/shutdown.patch"
|
|
];
|
|
|
|
buildFlags = [ "LOGLEVEL=${toString logLevel}" ];
|
|
|
|
installFlags = [ "NIX_DRVOUT=$(out)" ];
|
|
|
|
postInstall = ''
|
|
installShellCompletion --bash --name argonone-cli OS/_common/argonone-cli-complete.bash
|
|
'';
|
|
|
|
meta = {
|
|
description = "A replacement daemon for the Argon One Raspberry Pi case";
|
|
homepage = "https://gitlab.com/DarkElvenAngel/argononed";
|
|
license = lib.licenses.mit;
|
|
platforms = [ "aarch64-linux" ];
|
|
};
|
|
}
|