nixpkgs/pkgs/by-name/ha/hamrs/package.nix
2024-08-05 04:17:23 +00:00

57 lines
1.6 KiB
Nix

{
appimageTools,
lib,
fetchurl,
stdenv,
}:
let
suffix =
{
aarch64-linux = "linux-armv7l";
x86_64-linux = "linux-x86_64";
i686-linux = "linux-i386";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
in
appimageTools.wrapType2 rec {
pname = "hamrs";
version = "1.0.7";
src = fetchurl {
url = "https://hamrs-releases.s3.us-east-2.amazonaws.com/${version}/hamrs-${version}-${suffix}.AppImage";
hash =
{
aarch64-linux = "sha256-nBW8q7LVWQz93LkTc+c36H+2ymLLwLKfxePUwEm3D2E=";
x86_64-linux = "sha256-tplp7TADvbxkk5qBb4c4zm4mrzrVtW/WVUjiolBBJHc=";
i686-linux = "sha256-PllxLMBsPCedKU7OUN0nqi4qtQ57l2Z+huLfkfaBfT4=";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
extraInstallCommands =
let
contents = appimageTools.extract { inherit pname version src; };
in
''
install -m 444 -D ${contents}/${pname}.desktop -t $out/share/applications
substituteInPlace $out/share/applications/${pname}.desktop \
--replace-fail 'Exec=AppRun' 'Exec=${pname}'
cp -r ${contents}/usr/share/icons $out/share
'';
meta = with lib; {
description = "A simple, portable logger tailored for activities like Parks on the Air, Field Day, and more.";
homepage = "https://hamrs.app/";
license = licenses.unfree;
maintainers = [ maintainers.jhollowe ];
platforms = [
"aarch64-linux"
"x86_64-linux"
"i686-linux"
];
mainProgram = "hamrs";
sourceProvenance = [ sourceTypes.binaryNativeCode ];
};
}