nixpkgs/pkgs/development/octave-modules/octclip/default.nix
Karl Hallsby 45b015a165 octavePackages: use alternative fetchers for moved projects
Many projects moved from SourceForge to other hosting sites. Use an
appropriate fetcher for each of the packages that have moved to the
new sites.

octavePackages.bim: fetchurl -> fetchFromGitHub

There was a migration from SourceForge to GitHub by the authors.

octavePackages.msh: fetchurl -> fetchFromGitHub

There was a migration from SourceForge to GitHub by the authors.

octavePackages.statistics: fetchurl -> fetchFromGitHub

There was a migration from SourceForge to GitHub by the authors.

octavePackages.octclip: fetchurl -> fetchFromBitbucket

There was a migration from SourceForge to Bitbucket by the authors.

octavePackages.geometry: fetchurl -> fetchhg

Release 4.0.0 is broken. Revision
04965cda30b5f9e51774194c67879e7336df1710 was made shortly thereafter,
fixing a compilation bug.

The bug in question:
polygon.cpp:208:22:
error: static assertion failed: comparison object must be invocable as const
is_invocable_v<const _Compare&, const _Key&, const _Key&>,

octavePackages.octproj: fetchurl -> fetchFromBitbucket

There was a migration from SourceForge to Bitbucket by the authors.
2023-03-22 20:22:56 +02:00

32 lines
923 B
Nix

{ buildOctavePackage
, lib
, fetchFromBitbucket
}:
buildOctavePackage rec {
pname = "octclip";
version = "2.0.3";
src = fetchFromBitbucket {
owner = "jgpallero";
repo = pname;
rev = "OctCLIP-${version}";
sha256 = "sha256-gG2b8Ix6bzO6O7GRACE81JCVxfXW/+ZdfoniigAEq3g=";
};
# The only compilation problem is that no formatting specifier was provided
# for the error function. Because errorText is a string, I provide such a
# formatting specifier.
patchPhase = ''
sed -i s/"error(errorText)"/"error(\"%s\", errorText)"/g src/*.cc
'';
meta = with lib; {
name = "GNU Octave Clipping Polygons Tool";
homepage = "https://octave.sourceforge.io/octclip/index.html";
license = with licenses; [ gpl3Plus ]; # modified BSD?
maintainers = with maintainers; [ KarlJoad ];
description = "Perform boolean operations with polygons using the Greiner-Hormann algorithm";
};
}