nixpkgs/pkgs/by-name/se/segger-ozone/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

88 lines
2.5 KiB
Nix

{ lib
, stdenv
, fetchurl
, autoPatchelfHook
, fontconfig
, freetype
, libICE
, libSM
, libX11
, libXcursor
, libXfixes
, libXrandr
, libXrender
}:
stdenv.mkDerivation rec {
pname = "segger-ozone";
version = "3.30b";
src = {
x86_64-linux = fetchurl {
url = "https://www.segger.com/downloads/jlink/Ozone_Linux_V${builtins.replaceStrings ["."] [""] version}_x86_64.tgz";
hash = "sha256-W8Fo0q58pAn1aB92CjYARcN3vMLEguvsyozsS7VRArQ=";
};
i686-linux = fetchurl {
url = "https://www.segger.com/downloads/jlink/Ozone_Linux_V${builtins.replaceStrings ["."] [""] version}_i386.tgz";
hash = "sha256-Xq/69lwF2Ll5VdkYMDNRtc0YUUvWc+XR0FHJXxOLNQ4=";
};
}.${stdenv.hostPlatform.system} or (throw "unsupported system: ${stdenv.hostPlatform.system}");
nativeBuildInputs = [
autoPatchelfHook
];
buildInputs = [
fontconfig
freetype
libICE
libSM
libX11
libXcursor
libXfixes
libXrandr
libXrender
(lib.getLib stdenv.cc.cc)
];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mv Lib lib
mv * $out
ln -s $out/Ozone $out/bin
runHook postInstall
'';
meta = with lib; {
description = "J-Link Debugger and Performance Analyzer";
longDescription = ''
Ozone is a cross-platform debugger and performance analyzer for J-Link
and J-Trace.
- Stand-alone graphical debugger
- Debug output of any tool chain and IDE 1
- C/C++ source level debugging and assembly instruction debugging
- Debug information windows for any purpose: disassembly, memory,
globals and locals, (live) watches, CPU and peripheral registers
- Source editor to fix bugs immediately
- High-speed programming of the application into the target
- Direct use of J-Link built-in features (Unlimited Flash
Breakpoints, Flash Download, Real Time Terminal, Instruction Trace)
- Scriptable project files to set up everything automatically
- New project wizard to ease the basic configuration of new projects
1 Ozone has been tested with the output of the following compilers:
GCC, Clang, ARM, IAR. Output of other compilers may be supported but is
not guaranteed to be.
'';
homepage = "https://www.segger.com/products/development-tools/ozone-j-link-debugger";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
maintainers = [ maintainers.bmilanov ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
}