forked from mirrors/nixpkgs
59fcbd9e2a
If we would overwrite pname then the FOD would be broken and the github repo doesn't chane if we would append some variant name to pname. meta.homepage was before a not very helpful download page which didn't even contain the version number of the program.
85 lines
1.8 KiB
Nix
85 lines
1.8 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitHub
|
|
, wrapQtAppsHook
|
|
, cmake
|
|
, pkg-config
|
|
, util-linux
|
|
, curl
|
|
, libarchive
|
|
, qtbase
|
|
, qtdeclarative
|
|
, qtsvg
|
|
, qttools
|
|
, qtquickcontrols2
|
|
, qtgraphicaleffects
|
|
, xz
|
|
, testers
|
|
, nix-update-script
|
|
, enableTelemetry ? false
|
|
}:
|
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "rpi-imager";
|
|
version = "1.8.4";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "raspberrypi";
|
|
repo = "rpi-imager";
|
|
rev = "refs/tags/v${finalAttrs.version}";
|
|
sha256 = "sha256-ZuS/fhPpVlLSdaD+t+qIw6fdEbi7c82X+BxcgWlPntg=";
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
cmake
|
|
pkg-config
|
|
util-linux
|
|
wrapQtAppsHook
|
|
];
|
|
|
|
# Disable telemetry and update check.
|
|
cmakeFlags = lib.optionals (!enableTelemetry) [
|
|
"-DENABLE_CHECK_VERSION=OFF"
|
|
"-DENABLE_TELEMETRY=OFF"
|
|
];
|
|
|
|
buildInputs = [
|
|
curl
|
|
libarchive
|
|
qtbase
|
|
qtdeclarative
|
|
qtsvg
|
|
qttools
|
|
qtquickcontrols2
|
|
qtgraphicaleffects
|
|
xz
|
|
];
|
|
|
|
sourceRoot = "${finalAttrs.src.name}/src";
|
|
|
|
/* By default, the builder checks for JSON support in lsblk by running "lsblk --json",
|
|
but that throws an error, as /sys/dev doesn't exist in the sandbox.
|
|
This patch removes the check. */
|
|
patches = [ ./lsblkCheckFix.patch ];
|
|
|
|
passthru = {
|
|
tests.version = testers.testVersion {
|
|
package = finalAttrs.finalPackage;
|
|
command = "QT_QPA_PLATFORM=offscreen rpi-imager --version";
|
|
};
|
|
updateScript = nix-update-script { };
|
|
};
|
|
|
|
meta = with lib; {
|
|
description = "Raspberry Pi Imaging Utility";
|
|
homepage = "https://github.com/raspberrypi/rpi-imager/";
|
|
changelog = "https://github.com/raspberrypi/rpi-imager/releases/tag/v${finalAttrs.version}";
|
|
license = licenses.asl20;
|
|
mainProgram = "rpi-imager";
|
|
maintainers = with maintainers; [ ymarkus anthonyroussel ];
|
|
platforms = platforms.all;
|
|
# does not build on darwin
|
|
broken = stdenv.isDarwin;
|
|
};
|
|
})
|