nixpkgs/pkgs/applications/misc/prusa-slicer/super-slicer.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

78 lines
2.5 KiB
Nix
Raw Normal View History

{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, prusa-slicer, wxGTK31-gtk3 }:
2020-09-01 20:14:47 +00:00
let
appname = "SuperSlicer";
pname = "super-slicer";
description = "PrusaSlicer fork with more features and faster development cycle";
versions = {
stable = {
version = "2.3.57.12";
sha256 = "sha256-lePhDRHI++9zs54bTt2/Lu6ZQ7egjJCWb752aI0s7Mw==";
patches = null;
};
latest = {
version = "2.4.58.3";
sha256 = "sha256-pEZcBEvK4Mq8nytiXLJvta7Bk6qZRJfTNrYz7N/aUAE=";
patches = [
# Fix detection of TBB, see https://github.com/prusa3d/PrusaSlicer/issues/6355
(fetchpatch {
url = "https://github.com/prusa3d/PrusaSlicer/commit/76f4d6fa98bda633694b30a6e16d58665a634680.patch";
sha256 = "1r806ycp704ckwzgrw1940hh1l6fpz0k1ww3p37jdk6mygv53nv6";
})
# Fix compile error with boost 1.79. See https://github.com/supermerill/SuperSlicer/issues/2823
(fetchpatch {
url = "https://raw.githubusercontent.com/gentoo/gentoo/81e3ca3b7c131e8345aede89e3bbcd700e1ad567/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch";
sha256 = "sha256-xMbUjumPZ/7ulyRuBA76CwIv4BOpd+yKXCINSf58FxI=";
})
];
};
};
override = { version, sha256, patches }: super: {
inherit version pname patches;
2020-09-01 20:14:47 +00:00
src = fetchFromGitHub {
owner = "supermerill";
repo = "SuperSlicer";
inherit sha256;
2020-09-01 20:14:47 +00:00
rev = version;
fetchSubmodules = true;
2020-09-01 20:14:47 +00:00
};
# We don't need PS overrides anymore, and gcode-viewer is embedded in the binary.
postInstall = null;
2021-07-12 16:01:40 +00:00
separateDebugInfo = true;
2020-09-01 20:14:47 +00:00
# See https://github.com/supermerill/SuperSlicer/issues/432
cmakeFlags = super.cmakeFlags ++ [
"-DSLIC3R_BUILD_TESTS=0"
];
2021-01-15 18:42:12 +00:00
desktopItems = [
(makeDesktopItem {
name = "superslicer";
2021-01-15 18:42:12 +00:00
exec = "superslicer";
icon = appname;
comment = description;
desktopName = appname;
genericName = "3D printer tool";
categories = [ "Development" ];
2021-01-15 18:42:12 +00:00
})
];
2020-09-01 20:14:47 +00:00
meta = with lib; {
2020-09-01 20:14:47 +00:00
inherit description;
homepage = "https://github.com/supermerill/SuperSlicer";
2020-09-01 20:14:47 +00:00
license = licenses.agpl3;
maintainers = with maintainers; [ cab404 moredread ];
2021-12-16 18:26:34 +00:00
mainProgram = "superslicer";
2020-09-01 20:14:47 +00:00
};
passthru = allVersions;
2020-09-01 20:14:47 +00:00
};
prusa-slicer' = prusa-slicer.override { wxGTK31-gtk3-override = wxGTK31-gtk3; };
allVersions = builtins.mapAttrs (_name: version: (prusa-slicer'.overrideAttrs (override version))) versions;
in
allVersions.stable