1{ lib
2, stdenv
3, fetchurl
4, appimageTools
5}:
6
7let
8 pname = "nrfconnect";
9 version = "4.0.1";
10
11 src = fetchurl {
12 url = "https://nsscprodmedia.blob.core.windows.net/prod/software-and-other-downloads/desktop-software/nrf-connect-for-desktop/${lib.versions.major version}-${lib.versions.minor version}-${lib.versions.patch version}/nrfconnect-${version}-x86_64.appimage";
13 sha256 = "sha256-Mh4DrXn3DS5qOz3109lmXyFn28WenG6ZSvqFnUuc+rw=";
14 name = "${pname}-${version}.AppImage";
15 };
16
17 appimageContents = appimageTools.extractType2 {
18 inherit pname version src;
19 };
20
21in appimageTools.wrapType2 {
22 inherit pname version src;
23
24 extraPkgs = pkgs: with pkgs; [
25 segger-jlink
26 ];
27
28 extraInstallCommands = ''
29 mv $out/bin/${pname}-${version} $out/bin/${pname}
30 install -m 444 -D ${appimageContents}/nrfconnect.desktop $out/share/applications/nrfconnect.desktop
31 install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/nrfconnect.png \
32 $out/share/icons/hicolor/512x512/apps/nrfconnect.png
33 substituteInPlace $out/share/applications/nrfconnect.desktop \
34 --replace 'Exec=AppRun' 'Exec=${pname}'
35 '';
36
37 meta = with lib; {
38 description = "Nordic Semiconductor nRF Connect for Desktop";
39 homepage = "https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-desktop";
40 license = licenses.unfree;
41 platforms = platforms.linux;
42 maintainers = with maintainers; [ stargate01 ];
43 };
44}