···
-
stdenv.mkDerivation (finalAttrs: {
-
version = "4.3.3.6560";
-
semver = lib.strings.concatStringsSep "." (
-
lib.lists.init (builtins.splitVersion finalAttrs.version)
-
url = "https://download.raise3d.com/ideamaker/release/${semver}/ideaMaker_${finalAttrs.version}-ubuntu_amd64.deb";
-
hash = "sha256-aTVWCTgnVKD16uhJUVz0vR7KPGJqCVj0xoL53Qi3IKM=";
-
libsForQt5.wrapQtAppsHook
-
# we need curl 7.47.0, as the app segfaults on launch in 7.47.1 and beyond
-
# (tested with 7.47.1, 7.50.3, 7.62, 7.79.1, and 8.7.1)
-
openssl_1_0_1u = openssl.overrideAttrs (previous: {
-
url = "https://www.openssl.org/source/openssl-1.0.1u.tar.gz";
-
hash = "sha256-QxK0yhIVtvLJcAdQPYDbgNUVf3b499P+u+a0xW/yZzk=";
-
outputs = lib.lists.remove "doc" previous.outputs;
-
meta.knownVulnerabilities = [
-
"OpenSSL 1.0.1 reached its end of life 2016-12-31, see https://endoflife.software/applications/security-libraries/openssl."
-
# while we use openssl, the configureFlag has since changed, so we manually set it below
-
opensslSupport = false;
-
url = "https://curl.se/download/curl-7.47.0.tar.lzma";
-
hash = "sha256-XlZk1nJbSmiQp7jMSE2QRCY4C9w2us8BgosBSzlD4dE=";
-
configureFlags = previous.configureFlags ++ [
-
"--with-ca-bundle=${cacert}/etc/ssl/certs/ca-bundle.crt"
-
"--with-ssl=${lib.getLib openssl_1_0_1u}"
-
# curl https://curl.se/docs/vuln-7.74.0.json | jq -r '.[].id' | sed 's/^/"/;s/$/"/'
-
meta.knownVulnerabilities = [
-
(lib.getLib curl_7_47_0)
-
libsForQt5.qtserialport
-
install -D usr/lib/x86_64-linux-gnu/ideamaker/ideamaker \
-
patchelf --replace-needed libquazip.so.1 libquazip1-qt5.so \
mimetypeDir=$out/share/icons/hicolor/128x128/mimetypes
···
install -D usr/share/ideamaker/icons/ideamaker-icon.png \
$out/share/pixmaps/ideamaker.png
-
ln -s ${finalAttrs.desktopItem}/share/applications $out/share/
-
desktopItem = makeDesktopItem {
-
desktopName = "Ideamaker";
-
comment = "ideaMaker - www.raise3d.com";
-
genericName = finalAttrs.meta.description;
-
"application/x-ideamaker"
passthru.updateScript = lib.getExe (writeShellApplication {
name = "ideamaker-update-script";
-
curl -s https://www.raise3d.com/download/ideamaker-all-versions/ > "$release_page"
-
latest_stable_version=$(
-
sed -nE '/Beta|Alpha/! s/.*Version ([0-9]+\.[0-9]+\.[0-9]+).*/\1/p' "$release_page" | \
-
latest_stable_build_number=$(
-
sed -nE "s/.*ideaMaker_$latest_stable_version\.([0-9]+).*/\1/p" "$release_page" | head -n 1
-
update-source-version ideamaker "$latest_stable_version.$latest_stable_build_number"
-
homepage = "https://www.raise3d.com/ideamaker/";
changelog = "https://www.raise3d.com/download/ideamaker-release-notes/";
-
description = "Raise3D's 3D slicer software";
-
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.unfree;
-
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ cjshearer ];