···
19
-
stdenv.mkDerivation (finalAttrs: {
21
-
version = "4.3.3.6560";
24
-
semver = lib.strings.concatStringsSep "." (
25
-
lib.lists.init (builtins.splitVersion finalAttrs.version)
29
-
url = "https://download.raise3d.com/ideamaker/release/${semver}/ideaMaker_${finalAttrs.version}-ubuntu_amd64.deb";
30
-
hash = "sha256-aTVWCTgnVKD16uhJUVz0vR7KPGJqCVj0xoL53Qi3IKM=";
29
+
version = "5.2.2.8570";
30
+
semver = lib.strings.concatStringsSep "." (lib.lists.init (builtins.splitVersion version));
31
+
description = "Raise3D's 3D slicer software";
33
+
stdenv.mkDerivation {
34
+
inherit pname version;
36
+
url = "https://downcdn.raise3d.com/ideamaker/release/${semver}/ideaMaker_${version}-ubuntu_amd64.deb";
37
+
hash = "sha256-kXcgVuuPTMWoOCrEztiedJrZrTbFx1xHyzzh4y2b0UA=";
37
-
libsForQt5.wrapQtAppsHook
42
-
# we need curl 7.47.0, as the app segfaults on launch in 7.47.1 and beyond
43
-
# (tested with 7.47.1, 7.50.3, 7.62, 7.79.1, and 8.7.1)
46
-
openssl_1_0_1u = openssl.overrideAttrs (previous: {
49
-
url = "https://www.openssl.org/source/openssl-1.0.1u.tar.gz";
50
-
hash = "sha256-QxK0yhIVtvLJcAdQPYDbgNUVf3b499P+u+a0xW/yZzk=";
54
-
outputs = lib.lists.remove "doc" previous.outputs;
55
-
meta.knownVulnerabilities = [
56
-
"OpenSSL 1.0.1 reached its end of life 2016-12-31, see https://endoflife.software/applications/security-libraries/openssl."
63
-
gnutlsSupport = true;
65
-
http2Support = false;
66
-
# while we use openssl, the configureFlag has since changed, so we manually set it below
67
-
opensslSupport = false;
74
-
url = "https://curl.se/download/curl-7.47.0.tar.lzma";
75
-
hash = "sha256-XlZk1nJbSmiQp7jMSE2QRCY4C9w2us8BgosBSzlD4dE=";
77
-
configureFlags = previous.configureFlags ++ [
78
-
"--with-ca-bundle=${cacert}/etc/ssl/certs/ca-bundle.crt"
79
-
"--with-ssl=${lib.getLib openssl_1_0_1u}"
82
-
# curl https://curl.se/docs/vuln-7.74.0.json | jq -r '.[].id' | sed 's/^/"/;s/$/"/'
83
-
meta.knownVulnerabilities = [
84
-
"CURL-CVE-2024-2398"
85
-
"CURL-CVE-2023-46218"
86
-
"CURL-CVE-2023-38546"
87
-
"CURL-CVE-2023-38545"
88
-
"CURL-CVE-2023-28322"
89
-
"CURL-CVE-2023-28321"
90
-
"CURL-CVE-2023-28320"
91
-
"CURL-CVE-2023-27538"
92
-
"CURL-CVE-2023-27536"
93
-
"CURL-CVE-2023-27535"
94
-
"CURL-CVE-2023-27534"
95
-
"CURL-CVE-2023-27533"
96
-
"CURL-CVE-2023-23916"
97
-
"CURL-CVE-2022-43552"
98
-
"CURL-CVE-2022-32221"
99
-
"CURL-CVE-2022-35252"
100
-
"CURL-CVE-2022-32208"
101
-
"CURL-CVE-2022-32207"
102
-
"CURL-CVE-2022-32206"
103
-
"CURL-CVE-2022-32205"
104
-
"CURL-CVE-2022-27782"
105
-
"CURL-CVE-2022-27781"
106
-
"CURL-CVE-2022-27776"
107
-
"CURL-CVE-2022-27775"
108
-
"CURL-CVE-2022-27774"
109
-
"CURL-CVE-2022-22576"
110
-
"CURL-CVE-2021-22947"
111
-
"CURL-CVE-2021-22946"
112
-
"CURL-CVE-2021-22945"
113
-
"CURL-CVE-2021-22926"
114
-
"CURL-CVE-2021-22925"
115
-
"CURL-CVE-2021-22924"
116
-
"CURL-CVE-2021-22923"
117
-
"CURL-CVE-2021-22922"
118
-
"CURL-CVE-2021-22898"
119
-
"CURL-CVE-2021-22897"
120
-
"CURL-CVE-2021-22890"
121
-
"CURL-CVE-2021-22876"
126
-
(lib.getLib curl_7_47_0)
130
-
libsForQt5.qtserialport
48
+
dontWrapQtApps = true;
59
+
libsForQt5.qt5.qtwayland
137
-
install -D usr/lib/x86_64-linux-gnu/ideamaker/ideamaker \
140
-
patchelf --replace-needed libquazip.so.1 libquazip1-qt5.so \
68
+
cp -r usr/share $out/share
mimetypeDir=$out/share/icons/hicolor/128x128/mimetypes
···
install -D usr/share/ideamaker/icons/ideamaker-icon.png \
$out/share/pixmaps/ideamaker.png
154
-
ln -s ${finalAttrs.desktopItem}/share/applications $out/share/
81
+
ln -sf $out/usr/lib/x86_64-linux-gnu/ideamaker/ideamaker $out/bin/ideamaker
159
-
desktopItem = makeDesktopItem {
160
-
name = "ideamaker";
161
-
exec = "ideamaker";
162
-
icon = "ideamaker";
163
-
desktopName = "Ideamaker";
164
-
comment = "ideaMaker - www.raise3d.com";
172
-
genericName = finalAttrs.meta.description;
174
-
"application/x-ideamaker"
181
-
startupNotify = true;
183
-
type = "Application";
87
+
wrapProgram $out/bin/ideamaker \
88
+
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
89
+
--set QT_XKB_CONFIG_ROOT "${xkeyboardconfig}/share/X11/xkb" \
90
+
--set QTCOMPOSE "${libX11.out}/share/X11/locale" \
91
+
--set KDEDIRS "$HOME/.nix-profile:/nix/var/nix/profiles/default" \
92
+
--set NIX_REDIRECTS /usr/share=$out/share/
97
+
--add-needed libdbus-1.so.3 \
98
+
"$out/usr/lib/x86_64-linux-gnu/ideamaker/libQt5DBus.so.5.15.2"
103
+
name = "ideamaker";
104
+
exec = "ideamaker";
105
+
icon = "ideamaker";
106
+
desktopName = "Ideamaker";
107
+
comment = "ideaMaker - www.raise3d.com";
115
+
genericName = description;
117
+
"application/x-ideamaker"
124
+
startupNotify = true;
126
+
type = "Application";
passthru.updateScript = lib.getExe (writeShellApplication {
name = "ideamaker-update-script";
193
-
set -eu -o pipefail
195
-
release_page=$(mktemp)
196
-
curl -s https://www.raise3d.com/download/ideamaker-all-versions/ > "$release_page"
198
-
latest_stable_version=$(
199
-
sed -nE '/Beta|Alpha/! s/.*Version ([0-9]+\.[0-9]+\.[0-9]+).*/\1/p' "$release_page" | \
203
-
latest_stable_build_number=$(
204
-
sed -nE "s/.*ideaMaker_$latest_stable_version\.([0-9]+).*/\1/p" "$release_page" | head -n 1
207
-
update-source-version ideamaker "$latest_stable_version.$latest_stable_build_number"
138
+
update-source-version ideamaker "$(
139
+
curl 'https://api.raise3d.com/ideamakerio-v1.1/hq/ofpVersionControl/find' -X 'POST' \
140
+
| jq -r '.data.release_version.linux_64_deb_url' \
141
+
| sed -E 's#.*/release/([0-9]+\.[0-9]+\.[0-9]+)/ideaMaker_\1\.([0-9]+).*#\1.\2#'
212
-
homepage = "https://www.raise3d.com/ideamaker/";
147
+
inherit description;
changelog = "https://www.raise3d.com/download/ideamaker-release-notes/";
214
-
description = "Raise3D's 3D slicer software";
215
-
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
149
+
homepage = "https://www.raise3d.com/ideamaker/";
license = lib.licenses.unfree;
217
-
platforms = [ "x86_64-linux" ];
151
+
mainProgram = "ideamaker";
maintainers = with lib.maintainers; [ cjshearer ];
153
+
platforms = [ "x86_64-linux" ];
154
+
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];