Created
February 3, 2024 20:11
-
-
Save raspher/9bf953bdc4c85271048999cd9bcadfca to your computer and use it in GitHub Desktop.
Slicer on Nix packaging attemp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/SuperBuild.cmake b/SuperBuild.cmake | |
index 05d12d6d4f..d6d9ad3e7e 100644 | |
--- a/SuperBuild.cmake | |
+++ b/SuperBuild.cmake | |
@@ -22,7 +22,7 @@ | |
#----------------------------------------------------------------------------- | |
# CMake https support | |
#----------------------------------------------------------------------------- | |
-include(SlicerCheckCMakeHTTPS) | |
+#include(SlicerCheckCMakeHTTPS) | |
#----------------------------------------------------------------------------- | |
# Git protocol option |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/SuperBuild/External_sqlite.cmake b/SuperBuild/External_sqlite.cmake | |
index 4b54bf5b63..299d6b487b 100644 | |
--- a/SuperBuild/External_sqlite.cmake | |
+++ b/SuperBuild/External_sqlite.cmake | |
@@ -10,7 +10,7 @@ ExternalProject_Include_Dependencies(${proj} PROJECT_VAR proj DEPENDS_VAR ${proj | |
if(Slicer_USE_SYSTEM_${proj}) | |
unset(${proj}_DIR CACHE) | |
unset(${proj} CACHE) | |
- find_package(${proj} REQUIRED) | |
+ find_package(SQLite3 REQUIRED) | |
endif() | |
# Sanity checks |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ autoconf | |
, automake | |
, bzip2 | |
, cmake | |
, curl | |
, dcmtk | |
, fetchurl | |
, git | |
, lib | |
, libarchive | |
, libffi | |
, libsForQt5 | |
, libXt | |
, libz | |
, openssl | |
, pkg-config | |
, python3 | |
, rapidjson | |
, simpleitk | |
, stdenv | |
, sqlite | |
, xz | |
}: | |
let | |
version = "5.6.1"; | |
in | |
stdenv.mkDerivation rec { | |
inherit version; | |
pname = "slicer"; | |
src = fetchurl { | |
url = "https://github.com/Slicer/Slicer/archive/refs/tags/v${version}.tar.gz"; | |
hash = "sha256-WsMi554gikNRPAPi8VBsdwdba2kalFUuNBYG2S27GMA="; | |
}; | |
patches = [ | |
./01-disable-https-check.patch | |
./02-fix-external-dependencies.patch | |
]; | |
dontWrapQtApps = true; #todo: wrap | |
buildInputs = with libsForQt5; [ | |
bzip2 | |
curl | |
dcmtk | |
full #todo: don't use full! | |
git | |
libarchive | |
libffi | |
libXt | |
libz | |
openssl | |
python3 | |
rapidjson | |
sqlite | |
xz | |
]; | |
nativeBuildInputs = [ | |
pkg-config | |
git | |
cmake | |
]; | |
cmakeFlags = [ | |
"-DBUILD_TESTING=OFF" | |
"-DCMAKE_BUILD_TYPE=Release" | |
"-DCMAKE_INSTALL_PREFIX=$out" | |
"-DSlicer_BUILD_DOCUMENTATION=ON" | |
"-DSlicer_BUILD_I18N_SUPPORT=ON" | |
"-DSlicer_STORE_SETTINGS_IN_APPLICATION_HOME_DIR=OFF" | |
"-DSlicer_USE_GIT_PROTOCOL=OFF" | |
"-DSlicer_USE_SYSTEM_CTK=OFF" | |
"-DSlicer_USE_SYSTEM_CTKAPPLAUNCHER=OFF" | |
"-DSlicer_USE_SYSTEM_CTKAppLauncherLib=OFF" | |
"-DSlicer_USE_SYSTEM_CTKResEdit=OFF" | |
"-DSlicer_USE_SYSTEM_DCMTK=ON" | |
"-DSlicer_USE_SYSTEM_ITK=OFF" | |
"-DSlicer_USE_SYSTEM_JsonCpp=OFF" | |
"-DSlicer_USE_SYSTEM_LZMA=ON" | |
"-DSlicer_USE_SYSTEM_LibArchive=ON" | |
"-DSlicer_USE_SYSTEM_LibFFI=ON" | |
"-DSlicer_USE_SYSTEM_OpenSSL=ON" | |
"-DSlicer_USE_SYSTEM_PCRE=OFF" | |
"-DSlicer_USE_SYSTEM_ParameterSerializer=OFF" | |
"-DSlicer_USE_SYSTEM_QT=ON" | |
"-DSlicer_USE_SYSTEM_RapidJSON=ON" | |
"-DSlicer_USE_SYSTEM_SimpleITK=OFF" | |
"-DSlicer_USE_SYSTEM_SlicerExecutionModel=OFF" | |
"-DSlicer_USE_SYSTEM_Swig=OFF" # not supported by app | |
"-DSlicer_USE_SYSTEM_VTK=OFF" | |
"-DSlicer_USE_SYSTEM_bzip2=ON" | |
"-DSlicer_USE_SYSTEM_curl=ON" | |
"-DSlicer_USE_SYSTEM_qRestAPI=OFF" # what's that? | |
"-DSlicer_USE_SYSTEM_sqlite=ON" | |
"-DSlicer_USE_SYSTEM_tbb=OFF" | |
"-DSlicer_USE_SYSTEM_teem=OFF" #todo: separate package | |
"-DSlicer_USE_SYSTEM_zlib=ON" | |
"-DSlicer_USE_SimpleITK=ON" | |
"-DSlicer_USE_SimpleITK_SHARED=ON" | |
]; | |
meta = { | |
#todo | |
homepage = ""; | |
description = ""; | |
license = lib.licenses; | |
platforms = lib.platforms.all; | |
maintainers = with lib.maintainers; [ ]; # todo | |
}; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment