aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/potassco.scm
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2024-01-25 10:46:07 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2024-02-03 10:55:06 +0100
commit689ca1e73992200fe2edb99baa512590e91ee0c2 (patch)
treea653354430e2f3fd80c5accc1689766259d950b2 /gnu/packages/potassco.scm
parent77b36076537b5e04044b7096255ea073f4713322 (diff)
downloadguix-689ca1e73992200fe2edb99baa512590e91ee0c2.tar
guix-689ca1e73992200fe2edb99baa512590e91ee0c2.tar.gz
gnu: Add python-plingo.
* gnu/packages/potassco.scm (python-plingo): New variable.
Diffstat (limited to 'gnu/packages/potassco.scm')
-rw-r--r--gnu/packages/potassco.scm38
1 files changed, 38 insertions, 0 deletions
diff --git a/gnu/packages/potassco.scm b/gnu/packages/potassco.scm
index 0ec6253099..81d7cfa7e2 100644
--- a/gnu/packages/potassco.scm
+++ b/gnu/packages/potassco.scm
@@ -439,6 +439,44 @@ programming} solver clingo. Its goal is to make integration of clingo
into Python programs easier.")
(license license:expat)))
+(define-public python-plingo
+ (package
+ (name "python-plingo")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/potassco/plingo")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1mp0pdjzwpl7bpba20iwszx9x49gsyl2rhrp7w7xpwjqdjrp23r8"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-script
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((script (string-append (assoc-ref outputs "out")
+ "/bin/plingo")))
+ (mkdir-p (dirname script))
+ (call-with-output-file script
+ (lambda (port)
+ (display "#!/usr/bin/env python\n" port)
+ (display "from plingo import main\n" port)
+ (display "main()\n" port)))
+ (chmod script #o755)
+ ;; XXX: Does this cross-compile?
+ (patch-shebang script)))))))
+ (propagated-inputs (list python-clingo))
+ (home-page "https://potassco.org/")
+ (synopsis "Solve probabilistic logic programs")
+ (description "This package provides a system to solve probabilistic
+logic programs with clingo. It can solve the reasoning tasks of finding
+the most probable model as well as finding all models and their probabilities.")
+ (license license:expat)))
+
(define-public python-telingo
(package
(name "python-telingo")