nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 fetchpatch,
6 autoreconfHook,
7 libtool,
8 pkg-config,
9 libxml2,
10 json_c,
11 testers,
12}:
13
14stdenv.mkDerivation (finalAttrs: {
15 pname = "freesasa";
16 version = "2.1.2";
17
18 src = fetchFromGitHub {
19 owner = "mittinatten";
20 repo = "freesasa";
21 tag = finalAttrs.version;
22 fetchSubmodules = true;
23 hash = "sha256-OH1/GGFtMBnHuoOu3pdR+ohVO1m0I/jmCZbxPQ0C0jo=";
24 };
25
26 patches = [
27 (fetchpatch {
28 # https://github.com/mittinatten/freesasa/issues/85
29 name = "fix-linker-error.patch";
30 url = "https://github.com/mittinatten/freesasa/commit/d5898c13af0f272697726c567a22f1c48af53d62.patch";
31 includes = [ "src/Makefile.am" ];
32 hash = "sha256-NA4jMue9ATxP+A0tYIptwz0qCXTmAqoMRBsi5d5uv3E=";
33 })
34 ];
35
36 nativeBuildInputs = [
37 autoreconfHook
38 libtool
39 pkg-config
40 ];
41
42 buildInputs = [
43 json_c
44 libxml2
45 ];
46
47 passthru.tests = {
48 version = testers.testVersion { package = finalAttrs.finalPackage; };
49 };
50
51 meta = {
52 description = "C-library for calculating Solvent Accessible Surface Areas";
53 homepage = "https://github.com/mittinatten/freesasa";
54 changelog = "https://github.com/mittinatten/freesasa/blob/${finalAttrs.src.rev}/CHANGELOG.md";
55 license = lib.licenses.mit;
56 maintainers = with lib.maintainers; [ natsukium ];
57 mainProgram = "freesasa";
58 platforms = lib.platforms.unix;
59 };
60})