- changed dcmtk.diff to fix TW build error

OBS-URL: https://build.opensuse.org/package/show/graphics/orthanc?expand=0&rev=88
This commit is contained in:
Axel Braun 2025-01-19 11:01:59 +00:00 committed by Git OBS Bridge
commit efed80ae55
19 changed files with 1714 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

538
Configuration.json Normal file
View File

@ -0,0 +1,538 @@
{
/**
* General configuration of Orthanc
**/
// The logical name of this instance of Orthanc. This one is
// displayed in Orthanc Explorer and at the URI "/system".
"Name" : "MyOrthanc@openSUSE",
// Path to the directory that holds the heavyweight files (i.e. the
// raw DICOM instances). Backslashes must be either escaped by
// doubling them, or replaced by forward slashes "/".
"StorageDirectory" : "/var/lib/orthanc/OrthancStorage",
// Path to the directory that holds the SQLite index (if unset, the
// value of StorageDirectory is used). This index could be stored on
// a RAM-drive or a SSD device for performance reasons.
"IndexDirectory" : "/var/lib/orthanc/OrthancStorage",
// Path to the directory where Orthanc stores its large temporary
// files. The content of this folder can be safely deleted if
// Orthanc once stopped. The folder must exist. The corresponding
// filesystem must be properly sized, given that for instance a ZIP
// archive of DICOM images created by a job can weight several GBs,
// and that there might be up to "min(JobsHistorySize,
// MediaArchiveSize)" archives to be stored simultaneously. If not
// set, Orthanc will use the default temporary folder of the
// operating system (such as "/tmp/" on UNIX-like systems, or
// "C:/Temp" on Microsoft Windows).
// "TemporaryDirectory" : "/tmp/Orthanc/",
// Enable the transparent compression of the DICOM instances
"StorageCompression" : false,
// Maximum size of the storage in MB (a value of "0" indicates no
// limit on the storage size)
"MaximumStorageSize" : 0,
// Maximum number of patients that can be stored at a given time
// in the storage (a value of "0" indicates no limit on the number
// of patients)
"MaximumPatientCount" : 0,
// List of paths to the custom Lua scripts that are to be loaded
// into this instance of Orthanc
"LuaScripts" : [
],
// List of paths to the plugins that are to be loaded into this
// instance of Orthanc (e.g. "./libPluginTest.so" for Linux, or
// "./PluginTest.dll" for Windows). These paths can refer to
// folders, in which case they will be scanned non-recursively to
// find shared libraries. Backslashes must be either escaped by
// doubling them, or replaced by forward slashes "/".
// global definition for openSUSE
"Plugins" : [
"/usr/share/orthanc/plugins"
],
// Maximum number of processing jobs that are simultaneously running
// at any given time. A value of "0" indicates to use all the
// available CPU logical cores. To emulate Orthanc <= 1.3.2, set
// this value to "1".
"ConcurrentJobs" : 2,
/**
* Configuration of the HTTP server
**/
// Enable the HTTP server. If this parameter is set to "false",
// Orthanc acts as a pure DICOM server. The REST API and Orthanc
// Explorer will not be available.
"HttpServerEnabled" : true,
// HTTP port for the REST services and for the GUI
"HttpPort" : 8042,
// When the following option is "true", if an error is encountered
// while calling the REST API, a JSON message describing the error
// is put in the HTTP answer. This feature can be disabled if the
// HTTP client does not properly handles such answers.
"HttpDescribeErrors" : true,
// Enable HTTP compression to improve network bandwidth utilization,
// at the expense of more computations on the server. Orthanc
// supports the "gzip" and "deflate" HTTP encodings.
"HttpCompressionEnabled" : true,
/**
* Configuration of the DICOM server
**/
// Enable the DICOM server. If this parameter is set to "false",
// Orthanc acts as a pure REST server. It will not be possible to
// receive files or to do query/retrieve through the DICOM protocol.
"DicomServerEnabled" : true,
// The DICOM Application Entity Title (cannot be longer than 16
// characters)
"DicomAet" : "ORTHANC",
// Check whether the called AET corresponds to the AET of Orthanc
// during an incoming DICOM SCU request
"DicomCheckCalledAet" : false,
// The DICOM port
"DicomPort" : 4242,
// The default encoding that is assumed for DICOM files without
// "SpecificCharacterSet" DICOM tag, and that is used when answering
// C-Find requests (including worklists). The allowed values are
// "Ascii", "Utf8", "Latin1", "Latin2", "Latin3", "Latin4",
// "Latin5", "Cyrillic", "Windows1251", "Arabic", "Greek", "Hebrew",
// "Thai", "Japanese", "Chinese", "JapaneseKanji", "Korean", and
// "SimplifiedChinese".
"DefaultEncoding" : "Latin1",
// The transfer syntaxes that are accepted by Orthanc C-Store SCP
"DeflatedTransferSyntaxAccepted" : true,
"JpegTransferSyntaxAccepted" : true,
"Jpeg2000TransferSyntaxAccepted" : true,
"JpegLosslessTransferSyntaxAccepted" : true,
"JpipTransferSyntaxAccepted" : true,
"Mpeg2TransferSyntaxAccepted" : true,
"RleTransferSyntaxAccepted" : true,
"Mpeg4TransferSyntaxAccepted" : true, // New in Orthanc 1.6.0
// Whether Orthanc accepts to act as C-Store SCP for unknown storage
// SOP classes (aka. "promiscuous mode")
"UnknownSopClassAccepted" : false,
// Set the timeout (in seconds) after which the DICOM associations
// are closed by the Orthanc SCP (server) if no further DIMSE
// command is received from the SCU (client).
"DicomScpTimeout" : 30,
/**
* Security-related options for the HTTP server
**/
// Whether remote hosts can connect to the HTTP server
"RemoteAccessAllowed" : false,
// Whether or not SSL is enabled
"SslEnabled" : false,
// Path to the SSL certificate in the PEM format (meaningful only if
// SSL is enabled)
"SslCertificate" : "certificate.pem",
// Whether or not the password protection is enabled (using HTTP
// basic access authentication). Starting with Orthanc 1.5.8, if
// "AuthenticationEnabled" is not explicitly set, authentication is
// enabled iff. remote access is allowed (i.e. the default value of
// "AuthenticationEnabled" equals that of "RemoteAccessAllowed").
/**
"AuthenticationEnabled" : false,
**/
// The list of the registered users. Because Orthanc uses HTTP
// Basic Authentication, the passwords are stored as plain text.
"RegisteredUsers" : {
// "alice" : "alicePassword"
},
/**
* Network topology
**/
// The list of the known DICOM modalities
"DicomModalities" : {
/**
* Uncommenting the following line would enable Orthanc to
* connect to an instance of the "storescp" open-source DICOM
* store (shipped in the DCMTK distribution), as started by the
* command line "storescp 2000". The first parameter is the
* AET of the remote modality (cannot be longer than 16
* characters), the second one is the remote network address,
* and the third one is the TCP port number corresponding
* to the DICOM protocol on the remote modality (usually 104).
**/
// "sample" : [ "STORESCP", "127.0.0.1", 2000 ]
/**
* A fourth parameter is available to enable patches for
* specific PACS manufacturers. The allowed values are currently:
* - "Generic" (default value),
* - "GenericNoWildcardInDates" (to replace "*" by "" in date fields
* in outgoing C-Find requests originating from Orthanc),
* - "GenericNoUniversalWildcard" (to replace "*" by "" in all fields
* in outgoing C-Find SCU requests originating from Orthanc),
* - "StoreScp" (storescp tool from DCMTK),
* - "Vitrea",
* - "GE" (Enterprise Archive, MRI consoles and Advantage Workstation
* from GE Healthcare).
*
* This parameter is case-sensitive.
**/
// "vitrea" : [ "VITREA", "192.168.1.1", 104, "Vitrea" ]
/**
* By default, the Orthanc SCP accepts all DICOM commands (C-ECHO,
* C-STORE, C-FIND, C-MOVE, and storage commitment) issued by the
* registered remote SCU modalities. Starting with Orthanc 1.5.0,
* it is possible to specify which DICOM commands are allowed,
* separately for each remote modality, using the syntax
* below. The "AllowEcho" (resp. "AllowStore") option only has an
* effect respectively if global option "DicomAlwaysAllowEcho"
* (resp. "DicomAlwaysAllowStore") is set to false.
**/
//"untrusted" : {
// "AET" : "ORTHANC",
// "Port" : 104,
// "Host" : "127.0.0.1",
// "Manufacturer" : "Generic",
// "AllowEcho" : false,
// "AllowFind" : false,
// "AllowMove" : false,
// "AllowStore" : true,
// "AllowStorageCommitment" : false // new in 1.6.0
//}
},
// Whether to store the DICOM modalities in the Orthanc database
// instead of in this configuration file (new in Orthanc 1.5.0)
"DicomModalitiesInDatabase" : false,
// Whether the Orthanc SCP allows incoming C-Echo requests, even
// from SCU modalities it does not know about (i.e. that are not
// listed in the "DicomModalities" option above). Orthanc 1.3.0
// is the only version to behave as if this argument was set to "false".
"DicomAlwaysAllowEcho" : true,
// Whether the Orthanc SCP allows incoming C-Store requests, even
// from SCU modalities it does not know about (i.e. that are not
// listed in the "DicomModalities" option above)
"DicomAlwaysAllowStore" : true,
// Whether Orthanc checks the IP/hostname address of the remote
// modality initiating a DICOM connection (as listed in the
// "DicomModalities" option above). If this option is set to
// "false", Orthanc only checks the AET of the remote modality.
"DicomCheckModalityHost" : false,
// The timeout (in seconds) after which the DICOM associations are
// considered as closed by the Orthanc SCU (client) if the remote
// DICOM SCP (server) does not answer.
"DicomScuTimeout" : 10,
// The list of the known Orthanc peers
"OrthancPeers" : {
/**
* Each line gives the base URL of an Orthanc peer, possibly
* followed by the username/password pair (if the password
* protection is enabled on the peer).
**/
// "peer" : [ "http://127.0.0.1:8043/", "alice", "alicePassword" ]
// "peer2" : [ "http://127.0.0.1:8044/" ]
/**
* This is another, more advanced format to define Orthanc
* peers. It notably allows to specify HTTP headers, a HTTPS
* client certificate in the PEM format (as in the "--cert" option
* of curl), or to enable PKCS#11 authentication for smart cards.
**/
// "peer" : {
// "Url" : "http://127.0.0.1:8043/",
// "Username" : "alice",
// "Password" : "alicePassword",
// "HttpHeaders" : { "Token" : "Hello world" },
// "CertificateFile" : "client.crt",
// "CertificateKeyFile" : "client.key",
// "CertificateKeyPassword" : "certpass",
// "Pkcs11" : false
// }
},
// Whether to store the Orthanc peers in the Orthanc database
// instead of in this configuration file (new in Orthanc 1.5.0)
"OrthancPeersInDatabase" : false,
// Parameters of the HTTP proxy to be used by Orthanc. If set to the
// empty string, no HTTP proxy is used. For instance:
// "HttpProxy" : "192.168.0.1:3128"
// "HttpProxy" : "proxyUser:proxyPassword@192.168.0.1:3128"
"HttpProxy" : "",
// If set to "true", debug messages from libcurl will be issued
// whenever Orthanc makes an outgoing HTTP request. This is notably
// useful to debug HTTPS-related problems.
"HttpVerbose" : false,
// Set the timeout for HTTP requests issued by Orthanc (in seconds).
"HttpTimeout" : 60,
// Enable the verification of the peers during HTTPS requests. This
// option must be set to "false" if using self-signed certificates.
// Pay attention that setting this option to "false" results in
// security risks!
// Reference: http://curl.haxx.se/docs/sslcerts.html
"HttpsVerifyPeers" : true,
// Path to the CA (certification authority) certificates to validate
// peers in HTTPS requests. From curl documentation ("--cacert"
// option): "Tells curl to use the specified certificate file to
// verify the peers. The file may contain multiple CA
// certificates. The certificate(s) must be in PEM format." On
// Debian-based systems, this option can be set to
// "/etc/ssl/certs/ca-certificates.crt"
"HttpsCACertificates" : "",
/**
* Advanced options
**/
// Dictionary of symbolic names for the user-defined metadata. Each
// entry must map an unique string to an unique number between 1024
// and 65535. Reserved values:
// - The Orthanc whole-slide imaging plugin uses metadata 4200
"UserMetadata" : {
// "Sample" : 1024
},
// Dictionary of symbolic names for the user-defined types of
// attached files. Each entry must map an unique string to an unique
// number between 1024 and 65535. Optionally, a second argument can
// provided to specify a MIME content type for the attachment.
"UserContentType" : {
// "sample" : 1024
// "sample2" : [ 1025, "application/pdf" ]
},
// Number of seconds without receiving any instance before a
// patient, a study or a series is considered as stable.
"StableAge" : 60,
// By default, Orthanc compares AET (Application Entity Titles) in a
// case-insensitive way. Setting this option to "true" will enable
// case-sensitive matching.
"StrictAetComparison" : false,
// When the following option is "true", the MD5 of the DICOM files
// will be computed and stored in the Orthanc database. This
// information can be used to detect disk corruption, at the price
// of a small performance overhead.
"StoreMD5ForAttachments" : true,
// The maximum number of results for a single C-FIND request at the
// Patient, Study or Series level. Setting this option to "0" means
// no limit.
"LimitFindResults" : 0,
// The maximum number of results for a single C-FIND request at the
// Instance level. Setting this option to "0" means no limit.
"LimitFindInstances" : 0,
// The maximum number of active jobs in the Orthanc scheduler. When
// this limit is reached, the addition of new jobs is blocked until
// some job finishes.
"LimitJobs" : 10,
// If this option is set to "true" (default behavior until Orthanc
// 1.3.2), Orthanc will log the resources that are exported to other
// DICOM modalities or Orthanc peers, inside the URI
// "/exports". Setting this option to "false" is useful to prevent
// the index to grow indefinitely in auto-routing tasks (this is the
// default behavior since Orthanc 1.4.0).
"LogExportedResources" : false,
// Enable or disable HTTP Keep-Alive (persistent HTTP
// connections). Setting this option to "true" prevents Orthanc
// issue #32 ("HttpServer does not support multiple HTTP requests in
// the same TCP stream"), but can possibly slow down HTTP clients
// that do not support persistent connections. The default behavior
// used to be "false" in Orthanc <= 1.5.1. Setting this option to
// "false" is also recommended if Orthanc is compiled against
// Mongoose.
"KeepAlive" : true,
// Enable or disable Nagle's algorithm. Only taken into
// consideration if Orthanc is compiled to use CivetWeb. Experiments
// show that best performance can be obtained by setting both
// "KeepAlive" and "TcpNoDelay" to "true". Beware however of
// caveats: https://eklitzke.org/the-caveats-of-tcp-nodelay
"TcpNoDelay" : true,
// Number of threads that are used by the embedded HTTP server.
"HttpThreadsCount" : 50,
// If this option is set to "false", Orthanc will run in index-only
// mode. The DICOM files will not be stored on the drive. Note that
// this option might prevent the upgrade to newer versions of Orthanc.
"StoreDicom" : true,
// DICOM associations initiated by Lua scripts are kept open as long
// as new DICOM commands are issued. This option sets the number of
// seconds of inactivity to wait before automatically closing a
// DICOM association used by Lua. If set to 0, the connection is
// closed immediately.
"DicomAssociationCloseDelay" : 5,
// Maximum number of query/retrieve DICOM requests that are
// maintained by Orthanc. The least recently used requests get
// deleted as new requests are issued.
"QueryRetrieveSize" : 100,
// When handling a C-Find SCP request, setting this flag to "true"
// will enable case-sensitive match for PN value representation
// (such as PatientName). By default, the search is
// case-insensitive, which does not follow the DICOM standard.
"CaseSensitivePN" : false,
// Configure PKCS#11 to use hardware security modules (HSM) and
// smart cards when carrying on HTTPS client authentication.
/**
"Pkcs11" : {
"Module" : "/usr/local/lib/libbeidpkcs11.so",
"Module" : "C:/Windows/System32/beidpkcs11.dll",
"Pin" : "1234",
"Verbose" : true
}
**/
// If set to "false", Orthanc will not load its default dictionary
// of private tags. This might be necessary if you cannot import a
// DICOM file encoded using the Implicit VR Endian transfer syntax,
// and containing private tags: Such an import error might stem from
// a bad dictionary. You can still list your private tags of
// interest in the "Dictionary" configuration option below.
"LoadPrivateDictionary" : true,
// Locale to be used by Orthanc. Currently, only used if comparing
// strings in a case-insensitive way. It should be safe to keep this
// value undefined, which lets Orthanc autodetect the suitable locale.
// "Locale" : "en_US.UTF-8",
// Register a new tag in the dictionary of DICOM tags that are known
// to Orthanc. Each line must contain the tag (formatted as 2
// hexadecimal numbers), the value representation (2 upcase
// characters), a nickname for the tag, possibly the minimum
// multiplicity (> 0 with defaults to 1), possibly the maximum
// multiplicity (0 means arbitrary multiplicity, defaults to 1), and
// possibly the Private Creator (for private tags).
"Dictionary" : {
// "0014,1020" : [ "DA", "ValidationExpiryDate", 1, 1 ]
// "00e1,10c2" : [ "UI", "PET-CT Multi Modality Name", 1, 1, "ELSCINT1" ]
// "7053,1003" : [ "ST", "Original Image Filename", 1, 1, "Philips PET Private Group" ]
// "2001,5f" : [ "SQ", "StackSequence", 1, 1, "Philips Imaging DD 001" ]
},
// Whether to run DICOM C-Move operations synchronously. If set to
// "false" (asynchronous mode), each incoming C-Move request results
// in the creation of a new background job. Up to Orthanc 1.3.2, the
// implicit behavior was to use synchronous C-Move ("true"). Between
// Orthanc 1.4.0 and 1.4.2, the default behavior was set to
// asynchronous C-Move ("false"). Since Orthanc 1.5.0, the default
// behavior is back to synchronous C-Move ("true", which ensures
// backward compatibility with Orthanc <= 1.3.2).
"SynchronousCMove" : true,
// Maximum number of completed jobs that are kept in memory. A
// processing job is considered as complete once it is tagged as
// "Success" or "Failure". Since Orthanc 1.5.0, a value of "0"
// indicates to keep no job in memory (i.e. jobs are removed from
// the history as soon as they are completed), which prevents the
// use of some features of Orthanc (typically, synchronous mode in
// REST API) and should be avoided for non-developers.
"JobsHistorySize" : 10,
// Whether to save the jobs into the Orthanc database. If this
// option is set to "true", the pending/running/completed jobs are
// automatically reloaded from the database if Orthanc is stopped
// then restarted (except if the "--no-jobs" command-line argument
// is specified). This option should be set to "false" if multiple
// Orthanc servers are using the same database (e.g. if PostgreSQL
// or MariaDB/MySQL is used).
"SaveJobs" : true,
// Specifies how Orthanc reacts when it receives a DICOM instance
// whose SOPInstanceUID is already stored. If set to "true", the new
// instance replaces the old one. If set to "false", the new
// instance is discarded and the old one is kept. Up to Orthanc
// 1.4.1, the implicit behavior corresponded to "false".
"OverwriteInstances" : false,
// Maximum number of ZIP/media archives that are maintained by
// Orthanc, as a response to the asynchronous creation of archives.
// The least recently used archives get deleted as new archives are
// generated. This option was introduced in Orthanc 1.5.0, and has
// no effect on the synchronous generation of archives.
"MediaArchiveSize" : 1,
// Performance setting to specify how Orthanc accesses the storage
// area during C-FIND. Three modes are available: (1) "Always"
// allows Orthanc to read the storage area as soon as it needs an
// information that is not present in its database (slowest mode),
// (2) "Never" prevents Orthanc from accessing the storage area, and
// makes it uses exclusively its database (fastest mode), and (3)
// "Answers" allows Orthanc to read the storage area to generate its
// answers, but not to filter the DICOM resources (balance between
// the two modes). By default, the mode is "Always", which
// corresponds to the behavior of Orthanc <= 1.5.0.
"StorageAccessOnFind" : "Always",
// Whether Orthanc monitors its metrics (new in Orthanc 1.5.4). If
// set to "true", the metrics can be retrieved at
// "/tools/metrics-prometheus" formetted using the Prometheus
// text-based exposition format.
"MetricsEnabled" : true,
// Whether calls to URI "/tools/execute-script" is enabled. Starting
// with Orthanc 1.5.8, this URI is disabled by default for security.
"ExecuteLuaEnabled" : false,
// Set the timeout for HTTP requests, in seconds. This corresponds
// to option "request_timeout_ms" of Mongoose/Civetweb. It will set
// the socket options "SO_RCVTIMEO" and "SO_SNDTIMEO" to the
// specified value.
"HttpRequestTimeout" : 30,
// Set the default private creator that is used by Orthanc when it
// looks for a private tag in its dictionary (cf. "Dictionary"
// option), or when it creates/modifies a DICOM file (new in Orthanc 1.6.0).
"DefaultPrivateCreator" : "",
// Maximum number of storage commitment reports (i.e. received from
// remote modalities) to be kept in memory (new in Orthanc 1.6.0).
"StorageCommitmentReportsSize" : 100
}

3
Orthanc-1.12.4.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:54964a43639248840abcba23b2566e5f6786594bfa5b494644608cc29db8a92b
size 2056110

3
Orthanc-1.12.5.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b9ed9da0a1c1821ad488a1b004ba492c4782839f10f132b35e1d99035adc5b23
size 2065505

4
_service Normal file
View File

@ -0,0 +1,4 @@
<services>
<service name="download_files" mode="localonly" />
</services>

3
axios-0.19.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:29577c6085b090b4e4a99392fcdd582fb6bbcb49b2aaf2cc7b7fa3874529b380
size 125193

3
bootstrap-4.3.1.zip Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c7fcae50c070250e4e1ae36a670e5ee8fe9d529eb3f1a03c527f8223ce3f61bc
size 2705432

12
dcmtk.diff Normal file
View File

@ -0,0 +1,12 @@
diff -U 3 -dHrN -- a/OrthancFramework/Resources/CMake/DcmtkConfiguration.cmake b/OrthancFramework/Resources/CMake/DcmtkConfiguration.cmake
--- a/OrthancFramework/Resources/CMake/DcmtkConfiguration.cmake 2024-01-31 12:33:17.000000000 +0100
+++ b/OrthancFramework/Resources/CMake/DcmtkConfiguration.cmake 2024-02-07 18:49:46.121815912 +0100
@@ -302,6 +302,8 @@
/usr/share/libdcmtk18
/usr/share/libdcmtk19
/usr/share/libdcmtk20
+ /usr/share/dcmtk-3.6.8
+ /usr/share/dcmtk-3.6.8
/usr/local/share/dcmtk
/usr/local/share/dcmtk-3.6.8
)

12
index.html Normal file
View File

@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<body>
<h1>Index of the Orthanc documentation</h1>
<ul>
<li><a href="Samples/index.html">Samples for Orthanc</a>.</li>
<li><a href="OrthancPlugin/index.html">Plugin SDK</a> to develop plugins for Orthanc.</li>
<li><a href="OrthancPluginSamples/index.html">Sample plugins</a>.</li>
</ul>
</body>
</html>

2
jquery-3.4.1.min.js vendored Normal file

File diff suppressed because one or more lines are too long

34
orthanc-readme.SUSE Normal file
View File

@ -0,0 +1,34 @@
README: Orthanc for openSUSE
============================
Orthanc is a RESTful DICOM server for healthcare and medical research.
This package provides the server for Orthanc (you may want to check for plugins as well)
Configuration files for Orthanc are in
/etc/orthanc
Configuration files are in JSON format. Orthanc reads all files in the configuration folder to build up its internal setup.
We ship a template Configuration.json. In case you are using SQLite, make sure you keep the location of /var/lib/orthanc/OrthancStorage
Starting/stopping Orthanc
Orthanc comes as systemd-service. so you can start it with:
systemctl start orthanc
To stop it:
systemctl stop orthanc
To check it:
systemctl status orthanc
To enable it at system start:
systemctl enable orthanc
Once orthanc is running, you can use
http://localhost:8042
to connect.
For any 'outside connection', the use of SSL certificates is recommended!
Further documentation:
https://book.orthanc-server.com/
Have fun
Axel Braun <DocB@openSUSE.org> Tue Aug 13 08:06:42 UTC 2019

12
orthanc-rpmlintrc Normal file
View File

@ -0,0 +1,12 @@
# end-of-line is not really a pain:
addFilter("wrong-file-end-of-line-encoding /usr/share/doc/packages/orthanc/Samples/CppHelpers/README.md");
# some python files are installed under 'examples'
# they should be adjusted
addFilter("env-script-interpreter");
addFilter("non-executable-script");
# false positive
addFilter("script-without-shebang /etc/orthanc/Configuration.json");
addFilter("script-without-shebang /etc/orthanc/worklists.json");
addFilter("script-without-shebang /etc/orthanc/serve-folders.json");
# Orthanc source was all the time in /usr/src....
addFilter("filelist-forbidden-fhs23 /usr/src/orthanc");

681
orthanc.changes Normal file
View File

@ -0,0 +1,681 @@
-------------------------------------------------------------------
Sun Jan 19 10:42:03 UTC 2025 - Axel Braun <axel.braun@gmx.de>
- changed dcmtk.diff to fix TW build error
-------------------------------------------------------------------
Fri Dec 20 17:20:24 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- version 1.12.5
* patches toolbox.patch boost.patch sha.patch removed (in sourcecode)
* for details, see NEWS file
-------------------------------------------------------------------
Mon Oct 14 11:53:47 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- applied patches to source tree (for plugins)
-------------------------------------------------------------------
Mon Sep 30 08:43:53 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- sha.patch added to fix Leap build
-------------------------------------------------------------------
Wed Sep 25 08:35:12 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- toolbox.patch and boost.patch added to fix TW build
-------------------------------------------------------------------
Fri Jun 7 06:00:51 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- version 1.12.4
* boost185.diff removed
* API version upgraded to 24
* Added "MaximumPatientCount" in /system
* Added a new "LimitToThisLevelMainDicomTags" field in the payload of
/patients|studies|series/instances/../reconstruct to speed up the reconstruction
in case you just want to update the MainDicomTags of that resource level only
(e.g., after you have updated the "ExtraMainDicomTags" for this level)
* The "requestedTags" GET argument is deprecated in favor of "requested-tags"
* Added "?whole" option to "/instances/{id}/tags" to access tags stored after pixel data
* Multitenant DICOM plugin: added support for locales.
* Housekeeper plugin:
- Added an option "LimitMainDicomTagsReconstructLevel"
(allowed values: "Patient", "Study", "Series", "Instance"). This can greatly speed
up the housekeeper process, e.g. if you have only update the Study level ExtraMainDicomTags.
- Fixed broken /instances/../tags route after running the Housekeeper
after having changed the "IngestTranscoding".
* SDK: added OrthancPluginLogMessage() as a new primitive for plugins
to log messages. This new primitive will display the plugin name,
the plugin file name, and the plugin line number in the logs. If
they are not using the LOG() facilities provided by the
OrthancFramework, plugins should now use ORTHANC_PLUGINS_LOG_INFO(),
ORTHANC_PLUGINS_LOG_WARNING(), and ORTHANC_PLUGINS_LOG_ERROR().
* C-Find queries:
- In C-Find queries including "GenericGroupLength" tags, Orthanc was still
extracting these tags from the storage although they were already ignored
and not returned in the response.
They are now removed from the query earlier to avoid this disk access that
could slow down the response time. Note that this seems to happen mainly
when the query originates from some GE devices (AWS).
- "TimezoneOffsetFromUTC" is now ignored for matching.
* The 0x0111 DIMSE Status is now considered as a warning instead of an error
when received as a response to a C-Store.
See https://discourse.orthanc-server.org/t/ignore-dimse-status-0x0111-when-sending-partial-duplicate-studies/4555/3
* Removed potential PHI from the logs when Orthanc encounters an error while
creating a ZIP archive.
* Monitoring of stable resources now also takes into consideration the
resource type, not only the resource identifier identifier.
* DICOM TLS:
- In prior versions, when "DicomTlsRemoteCertificateRequired" was set to false, Orthanc
was still sending a client certificate request during the TLS handshake but was not
triggering and error if the client certificate was not trusted (equivalent to the
"--verify-peer-cert" DCMTK option). Starting with Orthanc 1.12.4, if this option is
set to "false", Orthanc will not send a client certificate request during the TLS
handshake anymore (equivalent to the "--ignore-peer-cert" DCMTK option).
- When working with "DicomTlsEnabled": true and "DicomTlsRemoteCertificateRequired": false,
Orthanc was refusing to start if no "DicomTlsTrustedCertificates" was provided.
- New configuration options:
- "DicomTlsMinimumProtocolVersion" to select the minimum TLS protocol version
- "DicomTlsCiphersAccepted" to fine tune the list of accepted ciphers
* Fixed broken /instances/../tags route after calling of
/studies/../reconstruct after having changed the "IngestTranscoding".
* Upgraded dependencies for static builds:
- boost 1.85.0
-------------------------------------------------------------------
Fri May 17 09:30:42 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- boost185.diff added to fix TW build issue
-------------------------------------------------------------------
Thu Mar 21 16:31:18 UTC 2024 - Christophe Marin <christophe@krop.fr>
- Update orthanc-source requirements to fix the orthanc-wsi build
-------------------------------------------------------------------
Tue Mar 19 08:23:12 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- apply dcmtk patch to install section: we need this patch in the source
RPM as well for the plugins, otherwise TW and Leap 15.6 fail to build plugins
-------------------------------------------------------------------
Thu Mar 7 20:21:58 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- fix build for Leap < 15.6
-------------------------------------------------------------------
Thu Mar 7 15:13:59 UTC 2024 - Max Lin <mlin@suse.com>
- Build orthanc with gcc13 on Leap 15
-------------------------------------------------------------------
Fri Feb 2 11:54:18 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- version 1.12.3
* dcmtk.diff added to fix TW build issue
* add user/group orthanc
* Performance of databases:
- At startup, if using a database plugin, displays the latency to access the DB.
- Added support for new DB primitives to enable the "READ COMMITTED"
transaction mode in the PostgreSQL plugin.
* API version upgraded to 23
* Added a 'KeepLabels' option in /modify routes (default = false)
* Upgraded dependencies for static builds:
- boost 1.84.0
- curl 8.5.0
- dcmtk 3.6.8
- jsoncpp 1.9.5
- libjpeg 9f
- libpng 1.6.40
- openssl 3.1.4
- pugixml 1.14
- zlib 1.3.1
-------------------------------------------------------------------
Thu Dec 21 09:13:15 UTC 2023 - Axel Braun <axel.braun@gmx.de>
- version 1.12.2 - see NEWS for full changelog
libboost.diff removed (included in source)
-------------------------------------------------------------------
Mon Dec 18 14:13:12 UTC 2023 - Axel Braun <axel.braun@gmx.de>
- libboost.diff to fix build error with boost 1.84
-------------------------------------------------------------------
Wed Jul 5 17:24:07 UTC 2023 - Axel Braun <axel.braun@gmx.de>
- version 1.12.1
* Orthanc now anonymizes according to Basic Profile of PS 3.15-2023b Table E.1-1
* Added metrics:
- "orthanc_storage_read_bytes"
- "orthanc_storage_written_bytes"
- "orthanc_memory_trimming_duration_ms"
* API version upgraded to 21
* "/tools/create-dicom" can now be used to create Encapsulated 3D
Manufacturing Model IODs (MTL, OBJ, or STL)
* Added a route to delete the output of an asynchronous job (right now
only for archive jobs): e.g. DELETE /jobs/../archive
* Added "OrthancPluginLoadDicomInstance()" to load DICOM instances from the database
* Added "OrthancPluginSetMetricsIntegerValue()" to track metrics with integer values
* Fix decoding of YBR_FULL RLE images for which the "Planar Configuration"
tag (0028,0006) equals 1
* Made Orthanc more resilient to common spelling errors in SpecificCharacterSet
* Modality worklists plugin: Allow searching on private tags (exact match only)
* Fix orphan files remaining in storage when working with MaximumStorageSize
(https://discourse.orthanc-server.org/t/issue-with-deleting-incoming-dicoms-when-maximumstoragesize-is-reached/3510)
* When deleting a resource, the "LastUpdate" metadata of its parents are now updated
* Reduced the memory usage when downloading archives when "ZipLoaderThreads" > 0
* Metrics can be stored either as floating-point numbers, or as integers
* Reduce the frequency of memory trimming from 100ms to 30s to avoid high idle
CPU load (https://discourse.orthanc-server.org/t/onchange-callbacks-and-cpu-loads/3534).
* Upgraded dependencies for static builds:
- boost 1.82.0
-------------------------------------------------------------------
Sun Apr 16 19:52:25 UTC 2023 - Axel Braun <axel.braun@gmx.de>
- version 1.12.0
* Support for labels associated with patients, studies, series, and instances
* Added a sample plugin bringing multitenant DICOM support through labels
* Many other fixes and improvements, see NEWS
-------------------------------------------------------------------
Fri Apr 14 17:08:47 UTC 2023 - Axel Braun <axel.braun@gmx.de>
- version 1.11.3
* cmake.diff removed (included in source)
* install_cmd.diff removed (included in source)
* Many improvements, for detailed log see NEWS
-------------------------------------------------------------------
Tue Oct 25 10:13:39 UTC 2022 - Axel Braun <axel.braun@gmx.de>
- Build fixed for new plugins
cmake.diff added
install_cmd.diff added
-------------------------------------------------------------------
Tue Sep 27 10:52:42 UTC 2022 - Axel Braun <axel.braun@gmx.de>
- version 1.11.2
* Added support for RGBA64 images in tools/create-dicom and /preview
* New configuration "MaximumStorageMode" to choose between recyling of
old patients (default behavior) and rejection of new incoming data when
the MaximumStorageSize has been reached.
* New sample plugin: "DelayedDeletion" that will delete files from disk
asynchronously to speed up deletion of large studies.
* Lua: new "SetHttpTimeout" function
* Lua: new "OnHeartBeat" callback called at regular interval provided that
you have configured "LuaHeartBeatPeriod" > 0.
* "ExtraMainDicomTags" configuration now accepts Dicom Sequences. Sequences are
stored in a dedicated new metadata "MainDicomSequences". This should improve
DicomWeb QIDO-RS and avoid warnings like "Accessing Dicom tags from storage when
accessing series : 0040,0275".
Main dicom sequences can now be returned in "MainDicomTags" and in "RequestedTags".
* Fix the "Never" option of the "StorageAccessOnFind" that was sill accessing
files (bug introduced in 1.11.0).
* Fix the Storage Cache for compressed files (bug introduced in 1.11.1).
* Fix the storage cache that was not used by the Plugin SDK. This fixes the
DicomWeb plugin "/rendered" route performance issues.
* DelayedDeletion plugin: Fix leaking of symbols
* SQLite now closes and deletes WAL and SHM files on exit. This should improve
handling of SQLite DB over network drives.
* Fix static compilation of boost 1.69 on Ubuntu 22.04
* Upgraded dependencies for static builds:
- boost 1.80.0
- dcmtk 3.6.7 (fixes CVE-2022-2119 and CVE-2022-2120)
- openssl 3.0.5
* Housekeeper plugin: Fix resume of previous processing
* Added missing MOVEPatientRootQueryRetrieveInformationModel in
DicomControlUserConnection::SetupPresentationContexts()
* Improved HttpClient error logging (add method + url)
* API version upgraded to 18
* /system is now reporting "DatabaseServerIdentifier"
* Added an Asynchronous mode to /modalities/../move.
* "RequestedTags" option can now include DICOM sequences.
* New function in the SDK: "OrthancPluginGetDatabaseServerIdentifier"
* DicomMap::ParseMainDicomTags has been deprecated -> retrieve "full" tags
and use DicomMap::FromDicomAsJson instead
-------------------------------------------------------------------
Tue May 10 19:36:27 UTC 2022 - Axel Braun <axel.braun@gmx.de>
- version 1.11.0
* new API version 1.7
* new configuration parameter
* for detailed changelog see NEWS
-------------------------------------------------------------------
Fri May 6 13:35:07 UTC 2022 - Marcus Meissner <meissner@suse.com>
- switched source urls to https
-------------------------------------------------------------------
Fri Mar 25 20:11:18 UTC 2022 - Axel Braun <axel.braun@gmx.de>
- version 1.10.1
* for detailed changelog see NEWS
-------------------------------------------------------------------
Wed Oct 13 13:27:12 UTC 2021 - Johannes Segitz <jsegitz@suse.com>
- Added hardening to systemd service(s) (bsc#1181400). Modified:
* orthanc.service
-------------------------------------------------------------------
Sun Sep 26 20:02:08 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- Test for SharedLibrary.Basic disabled (fails with new glibc)
-------------------------------------------------------------------
Wed Sep 1 07:27:28 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- Version 1.9.7
* New configuration option "DicomAlwaysAllowMove" to disable verification of
the remote modality in C-MOVE SCP
* API version upgraded to 15
* Added "Level" option to POST /tools/bulk-modify
* Added missing OpenAPI documentation of "KeepSource" in ".../modify" and ".../anonymize"
* Added file CITATION.cff
* Linux Standard Base (LSB) builds of Orthanc can load non-LSB builds of plugins
* Fix upload of ZIP archives containing a DICOMDIR file
* Fix computation of the estimated time of arrival in jobs
* Support detection of windowing and rescale in Philips multiframe images
-------------------------------------------------------------------
Thu Jul 22 13:34:16 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- version 1.9.6
* In lookup and query/retrieve, possibility to provide a specific study date
* Clicking on "Send to remote modality" displays the job information to monitor progress
* Fix orphaned attachments if bad revision number is provided
-------------------------------------------------------------------
Mon Jul 19 06:00:06 UTC 2021 - Steve Kowalik <steven.kowalik@suse.com>
- Remove executable bits from Python scripts when creating the source
tree for the -source package to stop it requiring /usr/bin/python
-------------------------------------------------------------------
Sun Jul 11 11:16:07 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- version 1.9.5
* Anonymization is applied recursively to nested tags
* API version upgraded to 14
* Added "Short", "Simplify" and/or "Full" options to control the format of DICOM tags in:
- POST /modalities/{id}/find-worklist
- POST /queries/{id}/answers/{index}/retrieve
- POST /queries/{id}/retrieve
* Fix broken "Do lookup" button in Orthanc Explorer
* Error code and description of jobs are now saved into the Orthanc database
-------------------------------------------------------------------
Thu Jun 24 12:42:18 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- version 1.9.4
* Orthanc now anonymizes according to Basic Profile of PS 3.15-2021b Table E.1-1
* New configuration options:
- "ExternalDictionaries" to load external DICOM dictionaries (useful for DICONDE)
- "SynchronousZipStream" to disable streaming of ZIP
* Orthanc Explorer supports the DICONDE dictionary
* API version upgraded to 13
* New routes to handle groups of multiple, unrelated DICOM resources at once:
- "/tools/bulk-anonymize" to anonymize a set of resources
- "/tools/bulk-content" to get the content of a set of resources
- "/tools/bulk-delete" to delete a set of resources
- "/tools/bulk-modify" to modify a set of resources
* ZIP archive/media generated in synchronous mode are now streamed by default
* "Replace" tags in "/modify" and "/anonymize" now supports value representation AT
* "/jobs/..." has new field "ErrorDetails" to help identify the cause of an error
* "Replace", "Keep" and "Remove" in "/modify" and "/anonymize" accept paths to subsequences
using the syntax of the dcmodify command-line tool (wildcards are supported as well)
* Added "short", "simplify" and/or "full" options to control the format of DICOM tags in:
- GET /patients, GET /studies, GET /series, GET /instances (together with "&expand")
- GET /patients/{id}, GET /studies/{id}, GET /series/{id}, GET /instances/{id}
- GET /patients/{id}/studies, GET /patients/{id}/series, GET /patients/{id}/instances
- GET /studies/{id}/patient, GET /studies/{id}/series, GET /studies/{id}/instances
- GET /series/{id}/patient, GET /series/{id}/study, GET /series/{id}/instances
- GET /instances/{id}/patient, GET /instances/{id}/study, GET /instances/{id}/series
- GET /patients/{id}/instances-tags, GET /patients/{id}/shared-tags
- GET /studies/{id}/instances-tags, GET /series/{id}/shared-tags
- GET /series/{id}/instances-tags, GET /studies/{id}/shared-tags
- GET /patients/{id}/module, GET /patients/{id}/patient-module
- GET /series/{id}/module, GET /studies/{id}/module, GET /instances/{id}/module
- POST /tools/find
* "/studies/{id}/split" accepts "Instances" parameter to split instances instead of series
* "/studies/{id}/merge" accepts instances inside its "Resources" parameter
* Full support of hierarchical relationships in tags whose VR is UI during anonymization
* C-MOVE SCP: added possible DIMSE status "Sub-operations Complete - One or more Failures"
* Fix issue #146 (Update Anonyization to 2019c) - was actually updated to 2021b
* Upgraded dependencies for static builds (notably on Windows):
- curl 7.77.0
-------------------------------------------------------------------
Sun May 9 09:54:25 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- Version 1.9.3
* New configuration option: "DicomTlsRemoteCertificateRequired" to allow secure DICOM TLS
connections without certificate
* "ETag" headers for metadata and attachments now allow strong comparison (MD5 is included)
* New CMake option: "ORTHANC_LUA_VERSION" to use a specific version of system-wide Lua
* Fix the lifetime of temporary files associated with jobs that create ZIP archive/media:
- In synchronous mode, their number could grow up to "JobsHistorySize" in Orthanc <= 1.9.2
- In asynchronous mode, the temporary files are removed as soon as their job gets canceled
* Fix regression in the handling of "DicomCheckModalityHost" configuration option
introduced by changeset 4182 in Orthanc 1.7.4
* Reduced memory consumption of "OrthancPluginHttpClient()", "OrthancPluginHttpClient2()" and
"OrthancPluginCallPeerApi()" on POST/PUT if chunked transfer is disabled
* Fix issue #195 (No need for BulkDataURI when Data Element is empty)
- from version 1.9.2:
* New configuration options related to multiple readers/writers:
- "DatabaseServerIdentifier" identifies the server in the DB among a pool of Orthanc servers
- "CheckRevisions" to protect against concurrent modifications of metadata and attachments
* API version upgraded to 12
* "/system" reports the value of the "CheckRevisions" global option
* "/.../{id}/metadata/{name}" and "/.../{id}/attachments/{name}/..." URIs handle the
HTTP headers "If-Match", "If-None-Match" and "ETag" to cope with revisions
* New function in the SDK: OrthancPluginCallRestApi()
* Full refactoring of the database plugin SDK to handle multiple readers/writers,
which notably implies the handling of retries in the case of collisions
* Use the local timezone for query/retrieve in the Orthanc Explorer interface (was UTC before)
* Fix "OrthancServer/Resources/Samples/Python/Replicate.py" for Python 3.x
* Fix issue #83 (ServerIndex shall implement retries for DB temporary errors)
* Upgraded dependencies for static builds (notably on Windows and LSB):
- civetweb 1.14
- openssl 1.1.1k
-------------------------------------------------------------------
Thu Feb 25 20:31:58 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- version 1.9.1
* The "dicom-as-json" attachments are not explicitly stored anymore to improve performance
* If the storage area doesn't support range reading, or if "StorageCompression"
is enabled, a new type of attachment "dicom-until-pixel-data" is generated
* New metadata automatically computed at the instance level: "PixelDataOffset"
* New configuration option related to networking:
- "Timeout" in "DicomModalities" to set DICOM SCU timeout on a per-modality basis
- "Timeout" in "OrthancPeers" to set HTTP client timeout on a per-peer basis
* API version upgraded to 11
* BREAKING CHANGES:
- External applications should not call "/instances/.../attachments/dicom-as-json" anymore,
and should use "/instances/.../tags" instead
- "/instances/.../tags" route does not report the tags after "Pixel Data" (7fe0,0010) anymore
* "/peers/{id}/store-straight": Synchronously send the DICOM instance in POST body to the peer
* New arguments in the REST API:
- "Timeout" in "/modalities/.../query"
- "Timeout" in "/modalities/.../storage-commitment"
- "Timeout" in "/queries/.../answers/.../query-{studies|series|instances}"
* New value in enumeration: OrthancPluginDicomToJsonFlags_StopAfterPixelData
* New value in enumeration: OrthancPluginDicomToJsonFlags_SkipGroupLengths
* Improved precision of floating-point numbers in DICOM-as-JSON and DICOM summary
* Optimization in C-STORE SCP by avoiding an unnecessary DICOM parsing
* Fix build on big-endian architectures
* Handle public tags with "UN" value representation and containing a string (cf. DICOM CP 246)
* The numbering of sequences in Orthanc Explorer now uses the DICOM convention (starts at 1)
* Possibility to generate a static library containing the Orthanc Framework
-------------------------------------------------------------------
Fri Jan 29 16:58:24 UTC 2021 - Axel Braun <axel.braun@gmx.de>
- Version 1.9.0
* Support of DICOM TLS
* New configuration options related to DICOM networking:
- "DicomTlsEnabled" to enable DICOM TLS in Orthanc SCP
- "DicomTlsCertificate" to provide the TLS certificate to be used in both Orthanc SCU and SCP
- "DicomTlsPrivateKey" to provide the private key of the TLS certificate
- "DicomTlsTrustedCertificates" to provide the list of TLS certificates to be trusted by Orthanc
- "UseDicomTls" in "DicomModalities" to enable DICOM TLS in outgoing SCU on a per-modality basis
- "MaximumPduLength" to tune the maximum PDU length (Protocol Data Unit)
- "LocalAet" in "DicomModalities" to overwrite global "DicomAet" for SCU on a per-modality basis
- "AcceptedTransferSyntaxes" to set the transfer syntax UIDs accepted by Orthanc C-STORE SCP
- "H265TransferSyntaxAccepted" to enable/disable all the transfer syntaxes related to H.265
- "DicomAlwaysAllowFind" to disable verification of the remote modality in C-FIND SCP
- "DicomAlwaysAllowGet" to disable verification of the remote modality in C-GET SCP
* New configuration option: "DicomScuPreferredTransferSyntax" to control transcoding in C-STORE SCU
* New command-line option: "--openapi" to write the OpenAPI documentation of the REST API to a file
* New metadata automatically computed at the series level: "RemoteAET"
* The DICOM meta-header and the transfer syntax are displayed at the "Instance" level
* API version upgraded to 10
* "/tools/accepted-transfer-syntaxes": Get/set transfer syntaxes accepted by Orthanc C-STORE SCP
* "/tools/unknown-sop-class-accepted": Get/set whether C-STORE SCP accepts unknown SOP class UID
* "/modalities/{...}/query": New string argument "LocalAet"
* "/tools/create-dicom": New flag "Force" to bypass consistency checks for the DICOM tags
* BREAKING CHANGE: All the Lua callbacks "IsXXXTransferSyntaxAccepted()" and
"IsUnknownSopClassAccepted()" have been removed
* New functions in the SDK:
- OrthancPluginCreateMemoryBuffer64()
- OrthancPluginRegisterStorageArea2()
- OrthancPluginCreateDicom2()
* Refactoring and improvements to the cache of DICOM files (it can now hold many files)
* New Prometheus metrics "orthanc_dicom_cache_count" and "orthanc_dicom_cache_size"
* Fix upload of multiple DICOM files using one single POST call to "multipart/form-data"
Could be the final resolution of issue #21 (DICOM files missing after uploading with Firefox)
* Partial fix of issue #48 (Windows service not stopped properly), cf. comments 4 and 5
* Explicitly use little-endian to encode uncompressed file size with zlib compression
* Upgraded dependencies for static builds (notably on Windows):
- dcmtk 3.6.6
- jsoncpp 1.9.4
-------------------------------------------------------------------
Wed Dec 30 13:15:11 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Workaround for boo#1180359
-------------------------------------------------------------------
Sat Dec 19 12:53:48 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Version 1.8.2
* ZIP archives containing DICOM files can be uploaded using WebDAV
* New config option "MallocArenaMax" to control memory usage on GNU/Linux
* Explicit error log if trying to load a 32bit (resp. 64bit) plugin into
a 64bit (resp. 32bit) version of Orthanc
* New configuration options contributed by Varian Medical Systems:
- "DeidentifyLogs" to remove patient identification from the logs (C-GET, C-MOVE, C-FIND)
- "DeidentifyLogsDicomVersion" to specify the deidentification rules for the logs
- "OrthancExplorerEnabled" to enable/disable the Orthanc Explorer Web user interface
- "SslMinimumProtocolVersion" to set the minimal SSL protocol version (now defaults to SSL 1.2)
- "SslCiphersAccepted" to set the accepted ciphers over SSL (now defaults to FIPS 140-2)
* New configuration options related to ingest transcoding:
- "IngestTranscodingOfUncompressed" to control whether uncompressed transfer syntaxes are transcoded
- "IngestTranscodingOfCompressed" to control whether compressed transfer syntaxes are transcoded
* "/instances" can be used to import ZIP archives provided in the POST body
* Allow concurrency on the OrthancPluginRegisterIncomingHttpRequestFilter() callbacks
* Allow empty request body in "/modalities/{id}/echo"
* If meta-header is missing, best-effort to extract "TransferSyntax" in "/instances/{id}/metadata"
-------------------------------------------------------------------
Tue Dec 8 06:35:51 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Version 1.8.1
* adaption to new systemd-macros (OBS)
* New sample tool "OrthancImport.py" to easily import compressed archives (ZIP) into Orthanc
* Logging categories (cf. command-line options starting with "--verbose-" and "--trace=")
* New command-line option "--trace-dicom" to access full debug information from DCMTK
* New config option "DicomEchoChecksFind" to automatically complement C-GET SCU with C-FIND SCU
* API version upgraded to 9
* "/tools/dicom-echo": Execute C-Echo SCU to a modality that is not registered in "/modalities"
* "/tools/log-level-*": Dynamically access and/or change the verbosity of logging categories
* "/peers/{id}/configuration": Get the configuration of one peer (cf. "/peers?expand")
* "/modalities/{id}/configuration": Get the configuration of one modality (cf. "/modalities?expand")
* "/tools/dicom-echo" and "/modalities/{id}/echo" now accept the field "CheckFind" in their JSON
body to complement C-GET SCU with C-FIND SCU ("DicomEchoChecksFind" on a per-connection basis)
* Archive/media jobs report the size of the created ZIP file in content field "ArchiveSizeMB"
* New function in the SDK: OrthancPluginGenerateRestApiAuthorizationToken()
* C-GET SCP: Fix responses and handling of cancel
* Fix decoding sequence if "BuiltinDecoderTranscoderOrder" is "Before"
* Fix keep-alive in the embedded HTTP server by setting the "Keep-Alive" HTTP header
* Fix access to videos as a single raw frame (feature broken since Orthanc 1.6.0)
* REST API now returns 404 error if deleting an inexistent peer or modality
* Improved forward ABI compatibility of Orthanc Framework (notably, no inline methods anymore)
* Upgraded dependencies for static builds (notably on Windows and LSB):
- civetweb 1.13
-------------------------------------------------------------------
Fri Oct 16 10:46:46 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- version 1.8.0
* Serving the content of Orthanc as a WebDAV network share
* New config options: "WebDavEnabled", "WebDavDeleteAllowed" and "WebDavUploadAllowed"
-------------------------------------------------------------------
Fri Sep 18 14:50:14 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Version 1.7.4
* New configuration options to enable HTTP peers identification through certificates:
"SslVerifyPeers" and "SslTrustedClientCertificates"
* New configuration option "SyncStorageArea" to immediately commit the files onto the disk
(through fsync()), so as to avoid discrepencies between DB and filesystem in case of hard
shutdown of the machine running Orthanc. This slows down adding new files into Orthanc.
* Underscores are now allowed in peers/modalities symbolic names
* Fix compatibility with C-MOVE SCU requests issued by Ambra
* Fix transcoding in C-MOVE SCP, in the case where "SynchronousCMove" is "true"
* When checking DICOM allowed methods, if there are multiple modalities with the same AET,
differentiate them from the calling IP
* Enable the access to raw frames in Philips ELSCINT1 proprietary compression
* Support empty key passwords when using HTTP client certificates
* Fix handling of "ModalitiesInStudy" (0008,0061) in C-FIND and "/tools/find"
-------------------------------------------------------------------
Tue Aug 25 09:02:07 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Version 1.7.3
* API version upgraded to 8
* "/peers/{id}/store": New option "Compress" to compress DICOM data using gzip
* "OrthancPeerStore" jobs now report the transmitted size in their public content
* New config option "Worklist.LimitAnswers" for the sample modality worklist plugin
* Add missing tag "Retrieve AE Title (0008,0054)" in C-FIND SCP responses
* Fix DICOM SCP filters if some query tag has > 256 characters (list of UIDs matching)
* "/series/.../ordered-slices" supports spaces in Image Position/Orientation Patient tags
* Fix possible crash in HttpClient if sending multipart body (can occur in STOW-RS)
* Support receiving multipart messages larger than 2GB in the embedded HTTP server
-------------------------------------------------------------------
Sun Aug 2 15:19:18 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- Version 1.7.2
* C-FIND SCP now returns private tags (cf. option "DefaultPrivateCreator")
* Packaging of the Orthanc framework as a shared library
* New change types in the SDK: JobSubmitted, JobSuccess, JobFailure
* Issue #182: Better reporting of errors in plugins reading chunked HTTP body
* Fix issue #183 (C-ECHO always fails in Orthanc Explorer, regression from 1.6.1 to 1.7.0)
-------------------------------------------------------------------
Wed May 27 14:24:06 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- version 1.7.1
* Fix decoding of DICOM images for plugins (for compatibility with
Orthanc Web Viewer 2.6)
-------------------------------------------------------------------
Fri May 22 17:22:11 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- new version 1.7.0
* Support of DICOM C-GET SCP (contribution by Varian)
* DICOM transcoding over the REST API
* Transcoding from compressed to uncompressed transfer syntaxes over DICOM
C-STORE SCU (if the remote modality doesn't support compressed syntaxes)
* New configuration options related to transcoding:
"TranscodeDicomProtocol", "BuiltinDecoderTranscoderOrder",
"IngestTranscoding" and "DicomLossyTranscodingQuality"
* See NEWS for details
-------------------------------------------------------------------
Wed Apr 22 17:59:05 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- version 1.6.1
sqlitewrapper.patch removed (included in 1.6.1)
-------------------------------------------------------------------
Sun Apr 5 07:33:34 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- sqlitewrapper.patch (boo#1167431)
-------------------------------------------------------------------
Wed Mar 25 19:08:48 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- various security hardenings (boo#1167431)
-------------------------------------------------------------------
Tue Mar 24 19:34:05 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- ConnectivityCheck Plugin enabled in build
-------------------------------------------------------------------
Fri Mar 20 13:16:54 UTC 2020 - Axel Braun <axel.braun@gmx.de>
- version 1.6.0
bugfixes and improvements (see /usr/share/doc/packages/orthanc/NEWS
rpmlintrc for some rpmlint warnings
-------------------------------------------------------------------
Tue Dec 17 09:02:21 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- for i586, one test disabled (fail due to rounding issues)
-------------------------------------------------------------------
Thu Oct 17 00:02:56 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.8
* various bugfixes, see NEWS for details
-------------------------------------------------------------------
Tue Aug 13 08:06:42 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.7
* Documentation added
-------------------------------------------------------------------
Mon Feb 25 17:30:32 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.5
-------------------------------------------------------------------
Fri Feb 8 16:17:54 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.4
civetweb.patch removed
various bugfixes
-------------------------------------------------------------------
Wed Jan 30 15:55:39 UTC 2019 - axel.braun@gmx.de
- civetweb.patch added
-------------------------------------------------------------------
Tue Jan 29 19:35:06 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.3
* New configuration option: "SaveJobs" to specify whether jobs are stored in the database
* Don't return tags whose group is below 0x0008 in C-FIND SCP answers
* Fix compatibility with DICOMweb plugin (allow multipart answers over HTTP Keep-Alive)
* Fix issue #73 (/modalities/{modalityId}/store raises 500 errors instead of 404)
* Fix issue #90 (C-Find shall match missing tags to null/empty string)
* Fix issue #119 (/patients/.../archive returns a 500 when JobsHistorySize is 0)
* Fix issue #128 (Asynchronous C-MOVE: invalid number of remaining sub-operations)
-------------------------------------------------------------------
Tue Jan 22 12:36:58 UTC 2019 - Axel Braun <axel.braun@gmx.de>
- version 1.5.2
temporary fixes for civetweb 1.11 removed
-------------------------------------------------------------------
Sat Dec 22 16:41:25 UTC 2018 - Axel Braun <axel.braun@gmx.de>
- Version 1.5.1
Initial OBS build
spec file adapted from Fedora project <s.jodogne@gmail.com>

31
orthanc.service Normal file
View File

@ -0,0 +1,31 @@
[Unit]
Description=Orthanc DICOM server
Documentation=man:orthanc(1) http://www.orthanc-server.com/
After=syslog.target network.target
[Service]
# some security settings
PrivateTmp=true
ProtectSystem=true
ProtectHome=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectControlGroups=true
MountFlags=private
NoNewPrivileges=true
PrivateDevices=true
# added automatically, for details please see
# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
ProtectHostname=true
ProtectKernelLogs=true
RestrictRealtime=true
# end of automatic additions
MemoryDenyWriteExecute=true
Type=simple
User=orthanc
Group=orthanc
ExecStart=/usr/sbin/orthanc /etc/orthanc/
[Install]
WantedBy=multi-user.target

322
orthanc.spec Normal file
View File

@ -0,0 +1,322 @@
#
# spec file for package orthanc
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2019-2024 Dr. Axel Braun
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: orthanc
Version: 1.12.5
Release: 0
Summary: RESTful DICOM server for healthcare and medical research
License: GPL-3.0-or-later
Group: Productivity/Graphics/Visualization/Other
URL: https://www.orthanc-server.com/
Source0: https://orthanc.uclouvain.be/downloads/sources/%{name}/Orthanc-%{version}.tar.gz
Source1: orthanc.service
Source2: orthanc-readme.SUSE
Source3: serve-folders.json
Source4: worklists.json
Source5: index.html
Source7: orthanc-rpmlintrc
Source8: Configuration.json
# Sources for plugin - need a defined version, so taking them from orthanc-server
Source10: https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/bootstrap-4.3.1.zip
Source11: https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/axios-0.19.0.tar.gz
Source12: https://orthanc.uclouvain.be/downloads/third-party-downloads/jquery-3.4.1.min.js
Source13: https://orthanc.uclouvain.be/downloads/third-party-downloads/dicom-web/vuejs-2.6.10.tar.gz
Patch0: dcmtk.diff
## Patch1: toolbox.patch
# Patch2: boost.patch
## Patch3: sha.patch
BuildRequires: civetweb-devel
BuildRequires: cmake >= 2.8.0
BuildRequires: curl-devel
BuildRequires: dcmtk
BuildRequires: dcmtk-devel
BuildRequires: doxygen
%if 0%{?suse_version} == 1500 && 0%{?sle_version} > 150200
BuildRequires: gcc13-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: googletest-devel
BuildRequires: help2man
BuildRequires: jsoncpp-devel
BuildRequires: libboost_date_time-devel >= 1.66
BuildRequires: libboost_filesystem-devel >= 1.66
BuildRequires: libboost_iostreams-devel >= 1.66
BuildRequires: libboost_locale-devel >= 1.66
BuildRequires: libboost_regex-devel >= 1.66
BuildRequires: libboost_system-devel >= 1.66
BuildRequires: libboost_thread-devel >= 1.66
BuildRequires: protobuf-devel
#Workaround for boo#1180359
BuildRequires: libbz2-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: libuuid-devel
BuildRequires: libwrap0
BuildRequires: libxml2-devel
BuildRequires: openssl-devel
BuildRequires: pugixml-devel
BuildRequires: sqlite3-devel
BuildRequires: tcpd-devel
BuildRequires: unzip
#Workaround for boo#1180359
BuildRequires: zlib-devel
BuildRequires: pkgconfig(icu-uc)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(lua5.1)
Requires: dcmtk
Requires(pre): /usr/sbin/groupadd
Requires(pre): /usr/sbin/useradd
Provides: group(orthanc)
Provides: user(orthanc)
%{?systemd_ordering}
%description
Orthanc aims at providing a simple, yet powerful standalone DICOM server.
Orthanc can turn any computer running Windows or Linux into a DICOM store
(in other words, a mini-PACS system). Its architecture is lightweight,
meaning that no complex database administration is required, nor the
installation of third-party dependencies. What makes Orthanc unique
is the fact that it provides a RESTful API. Thanks to this major
feature, it is possible to drive Orthanc from any computer language.
The DICOM tags of the stored medical images can be downloaded in the
JSON file format. Furthermore, standard PNG images can be generated
on-the-fly from the DICOM instances by Orthanc. Orthanc lets its
users focus on the content of the DICOM files, hiding the complexity
of the DICOM format and of the DICOM protocol.
%package -n %{name}-devel
Summary: Header and source files for creating Orthanc plugins
Group: Development/Libraries/C and C++
Provides: orthanc-static = %{version}-%{release}
BuildArch: noarch
%description -n %{name}-devel
This package includes the header files to develop C/C++ plugins for Orthanc.
%package -n %{name}-doc
Summary: Documentation files for Orthanc
Group: Productivity/Graphics/Visualization/Other
BuildArch: noarch
%description -n %{name}-doc
This package includes the documentation and the sample codes available
for Orthanc.
It also includes the Python and LUA Scripts, and the documentation to develop
C/C++ plugins for Orthanc.
%package source
Summary: This package includes the source files for Orthanc
Group: Development/Sources
# DcmtkConfiguration.cmake looks for dicom.dic
Requires: dcmtk
BuildArch: noarch
%description source
This package includes the source files for Orthanc. Use it in conjunction with the -devel package
%prep
%autosetup -p1 -n Orthanc-%{version}
cp %{S:1} %{S:2} .
#slight change in standard configuration for OrthancStorage
cp %{S:8} OrthancServer/Resources/.
#OrthancPlugins may ask for additional files to be loaded
#Putting them into this folder prevents download of sources from the web
mkdir -p OrthancServer/ThirdPartyDownloads
cp %{S:10} %{S:11} %{S:12} %{S:13} OrthancServer/ThirdPartyDownloads/.
%build
%if 0%{?suse_version} == 1500 && 0%{?sle_version} > 150200
export CC=gcc-13
export CXX=g++-13
%endif
%cmake ../OrthancServer \
-DSTANDALONE_BUILD:BOOL=ON \
-DSTATIC_BUILD:BOOL=OFF \
-DENABLE_CIVETWEB=ON \
-DORTHANC_UNIT_TESTS_LINK_FRAMEWORK=OFF \
-DUSE_SYSTEM_MONGOOSE=OFF \
-DSYSTEM_MONGOOSE_USE_CA/var/tmp/build-root/openSUSE_Tumbleweed-x86_64LLBACKS=OFF \
-DUNIT_TESTS_WITH_HTTP_CONNEXIONS=OFF \
-DBoost_NO_BOOST_CMAKE=ON
%cmake_build %{?_smp_mflags}
# Generate the man page
help2man ./Orthanc -N -n "Lightweight, RESTful DICOM server for healthcare and medical research" > %{name}.1
%check
# we disable one test for i586
%ifarch != ix86
build/UnitTests
%else
build/UnitTests --gtest_filter=-ImageProcessing.Convolution --gtest_filter=-Version.CivetwebCompression --gtest_filter=-SharedLibrary.Basic
%endif
%install
# install: make some dirs...
mkdir -p -m 755 %{buildroot}
mkdir -p -m 755 %{buildroot}%{_sysconfdir}/%{name}
mkdir -p -m 755 %{buildroot}%{_unitdir}
mkdir -p -m 755 %{buildroot}%{_initddir}
mkdir -p -m 755 %{buildroot}%{_bindir}
mkdir -p -m 755 %{buildroot}%{_sbindir}
mkdir -p -m 755 %{buildroot}%{_libdir}
mkdir -p -m 755 %{buildroot}%{_mandir}
mkdir -p -m 755 %{buildroot}%{_docdir}/%{name}
##setup source directory
mkdir -p -m 755 %{buildroot}/usr/src/%{name}
# Copy sources
tar --strip-components 1 -xzf %{S:0} -C %{buildroot}/usr/src/%{name}/
#Apply dcmtk patch
patch %{buildroot}/usr/src/%{name}/OrthancFramework/Resources/CMake/DcmtkConfiguration.cmake < %{P:0}
#Apply remaining patches to source tree
## patch -p1 -d %{buildroot}/usr/src/%{name} < %{P:1}
## patch -p1 -d %{buildroot}/usr/src/%{name} < %{P:2}
## patch -p1 -d %{buildroot}/usr/src/%{name} < %{P:3}
# Do not mark Python scripts as executable
find %{buildroot}/usr/src/%{name} -name '*.py' -exec chmod a-x "{}" +
#...and delete dot files
rm %{buildroot}/usr/src/%{name}/.[!.]*
# and patched files
find %{buildroot}/usr/src/%{name} -iname *.orig -type f -print | xargs /bin/rm -f
%cmake_install
##move the doc into
cp -r %{buildroot}/usr/share/doc/%{name}/* %{buildroot}%{_docdir}/%{name}/.
rm -rf %{buildroot}/usr/share/doc/%{name}
install -m 755 -d %{buildroot}%{_mandir}/man1
cp build/%{name}.1 %{buildroot}%{_mandir}/man1
install -m 755 -d %{buildroot}%{_sysconfdir}/%{name}
cp %{S:3} %{buildroot}%{_sysconfdir}/%{name}
cp %{S:4} %{buildroot}%{_sysconfdir}/%{name}
cp %{S:8} %{buildroot}%{_sysconfdir}/%{name}
install -m 755 -d %{buildroot}%{_unitdir}
cp orthanc.service %{buildroot}%{_unitdir}
install -m 755 -d %{buildroot}%{_sharedstatedir}/%{name}/db-v6
# Move the plugins from "/usr/lib64/" to "/usr/lib64/orthanc", and
# remove the symbolic links generated by CMake
mkdir -p %{buildroot}%{_libdir}/%{name}
mv build/*.so.%{version} %{buildroot}%{_libdir}/%{name}
# libs since version 1.11.1 dont install in /usr/lib anymore, we need a workaround:
cp %{buildroot}%{_prefix}/share/%{name}/plugins/libConnectivityChecks.so.%{version} %{buildroot}%{_libdir}/%{name}
cp %{buildroot}%{_prefix}/share/%{name}/plugins/libDelayedDeletion.so.%{version} %{buildroot}%{_libdir}/%{name}
rm build/*.so
# move the executables to stay consistent
mv %{buildroot}%{_bindir}/OrthancRecoverCompressedFile %{buildroot}%{_bindir}/orthancRecoverCompressedFile
mv %{buildroot}%{_sbindir}/Orthanc %{buildroot}%{_sbindir}/orthanc
# Create symbolic links to plugins in "/usr/share/orthanc/plugins"
# We stick to the "relative symlinks" section of the guideline
rm %{buildroot}%{_prefix}/share/%{name}/plugins/*.so*
ln -s ../../../..%{_libdir}/%{name}/libConnectivityChecks.so.%{version} \
%{buildroot}%{_prefix}/share/%{name}/plugins/libConnectivityChecks.so
ln -s ../../../..%{_libdir}/%{name}/libDelayedDeletion.so.%{version} \
%{buildroot}%{_prefix}/share/%{name}/plugins/libDelayedDeletion.so
ln -s ../../../..%{_libdir}/%{name}/libServeFolders.so.%{version} \
%{buildroot}%{_prefix}/share/%{name}/plugins/libServeFolders.so
ln -s ../../../..%{_libdir}/%{name}/libModalityWorklists.so.%{version} \
%{buildroot}%{_prefix}/share/%{name}/plugins/libModalityWorklists.so
# Prepare documentation: "index.html", Doxygen of plugin SDK, and sample codes
cp -r %{S:5} %{buildroot}%{_docdir}/%{name}/
cp -r OrthancServer/Resources/Samples/ %{buildroot}%{_docdir}/%{name}/Samples
cp -r OrthancServer/Plugins/Samples/ %{buildroot}%{_docdir}/%{name}/OrthancPluginSamples
echo 'ldconfig -v | grep libcrypto.so'
%pre
getent group orthanc >/dev/null || groupadd -r orthanc
getent passwd orthanc >/dev/null || \
useradd -r -g orthanc -G orthanc -d %{_sharedstatedir}/orthanc -s /sbin/nologin \
-c "User account that holds information for Orthanc" orthanc
%service_add_pre orthanc.service
%preun
%service_del_preun orthanc.service
%post
/sbin/ldconfig
%service_add_post orthanc.service
%postun
/sbin/ldconfig
%service_del_postun orthanc.service
%files
%doc AUTHORS NEWS README TODO orthanc-readme.SUSE
%license COPYING
%{_mandir}/man1/orthanc.1*
%{_bindir}/orthancRecoverCompressedFile
%{_sbindir}/orthanc
%{_unitdir}/orthanc.service
%{_libdir}/orthanc/*.so.%{version}
%{_prefix}/share/orthanc/plugins/*.so*
%dir %attr(0755, orthanc, orthanc) %{_sysconfdir}/orthanc
%dir %{_libdir}/orthanc
%dir %{_prefix}/share/orthanc
%dir %{_prefix}/share/orthanc/plugins
%defattr(0750, orthanc , orthanc)
%config(noreplace) %{_sysconfdir}/orthanc/*.json
%dir %attr(0755, orthanc, orthanc) %{_sharedstatedir}/orthanc
%dir %attr(0755, orthanc, orthanc) %{_sharedstatedir}/orthanc/db-v6
%files -n orthanc-devel
%dir %{_includedir}/orthanc
%{_includedir}/orthanc/*
%files -n orthanc-doc
%{_docdir}/orthanc/index.html
%{_docdir}/orthanc/Orthanc*
%{_docdir}/orthanc/Samples/*
%dir %attr(0755, orthanc, orthanc) %{_docdir}/orthanc/Samples
%files source
%defattr(-,root,root)
%dir /usr/src/%{name}
/usr/src/%{name}/*
%changelog

15
serve-folders.json Normal file
View File

@ -0,0 +1,15 @@
{
/**
* Configuration of the ServeFolders plugin, that can be used to
* serve additional folders through the embedded Web server of
* Orthanc. This is especially useful to avoid problems related to
* the same-origin policy when developing Web applications in
* JavaScript on the top of the REST API of Orthanc.
*
* The commented example would serve the documentation of the plugin
* SDK at the URL http://localhost:8042/doc/index.html
**/
"ServeFolders" : {
// "/doc" : "/usr/share/doc/orthanc/"
}
}

3
vuejs-2.6.10.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e3d900cd9266b5bed9bb6d575fc9ab6787e79e7ad21c01ee1277bff5453121f2
size 1576461

12
worklists.json Normal file
View File

@ -0,0 +1,12 @@
{
/**
* Configuration of the ModalityWorklists plugin, that can be used
* to serve DICOM modality worklists. More information about this
* plugin is available in the source distribution at:
* https://bitbucket.org/sjodogne/orthanc/src/default/Plugins/Samples/ModalityWorklists/README
**/
"Worklists" : {
"Enable": false,
"Database": "/var/lib/orthanc/worklists"
}
}