[bug#76728] gnu: avogadro2: fix open babel input

Message ID Z8ZNlSc-d6XXvY6_@kernelpanicroom
State New
Headers
Series [bug#76728] gnu: avogadro2: fix open babel input |

Commit Message

Jakob Kirsch March 4, 2025, 12:47 a.m. UTC
  avogadro2 needs open babel at runtime so we should add this to the propagated inputs.
From b353ae32e3b160b47ae1b34fe65e79b141caf05f Mon Sep 17 00:00:00 2001
Message-ID: <b353ae32e3b160b47ae1b34fe65e79b141caf05f.1741049088.git.jakob.kirsch@web.de>
From: Jakob Kirsch <jakob.kirsch@web.de>
Date: Tue, 4 Mar 2025 01:44:43 +0100
Subject: [PATCH v1] gnu: avogadro2: Update to 1.93.0.

* gnu/packages/chemistry.scm (avogadro2): Update to 1.93.0.
[propagated-inputs]: Add openbabel.

Change-Id: Ia7f02e66d9caced61a6a206076513806bb7b29a9
---
 gnu/packages/chemistry.scm | 2 ++
 1 file changed, 2 insertions(+)


base-commit: 72923a75af53a819f2be9dc4ae3c096aa3147d3f
--
2.48.1
  

Comments

Z572 March 4, 2025, 3:18 a.m. UTC | #1
Jakob Kirsch via Guix-patches via <guix-patches@gnu.org> writes:

> avogadro2 needs open babel at runtime so we should add this to the propagated inputs.
>
> [2. text/plain; v1-0001-gnu-avogadro2-Update-to-1.93.0.patch]...

I think wrapper might be better, if it's just an application.
  
Jakob Kirsch March 6, 2025, 2:57 p.m. UTC | #2
This is still WIP as some things are broken like:
* icons don't render
* openbabel optimization is broken with DNA
  
Jakob Kirsch April 10, 2025, 4:21 p.m. UTC | #3
Currently working on it, it's still broken for some reason.
  
Danny Milosavljevic May 18, 2025, 11:02 a.m. UTC | #4
Hi,

As a user of the avogadro2 program, would you say that a regular user
would use openbabel as an extra program anyway? (or be aware of it)

That is, is openbabel "inside the avogadro2 black box" or "outside the
avogadro2 black box as its own black box" ?

For what it's worth, I've checked the avogadro2 source code, and they
set the variable OBABEL_EXE to where the program "obabel" is.  After
that, they set BABEL_DIR relative to that, and finally they set
ob_plugins to refer to some .so files within $BABEL_DIR/lib, and then:

install_qt5_executable(${exe} "${plugins}" "${ob_plugins}" "${dirs}" "")

So for me as not-a-user-of-avogadro2 it seems like openbabel should be
inside the black box of avogadro2?

What do you think?
  
Andreas Enge June 2, 2025, 12:57 p.m. UTC | #5
Hello,

this somehow does not pass the hurdle of being picked up by QA, so I
ended up going through the patches manually.

I have added openbabel as an explicit input to avogadro2; I am surprised
it can be referenced without this...

Danny, I do not quite get what you mean with the "blackbox" comment.
I have pushed the patches as they are; please feel free to open a new
issue to improve the packages or correct anything I may have broken.

Thanks,

Andreas
  

Patch

diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm
index bd27bfad7a..46728bb407 100644
--- a/gnu/packages/chemistry.scm
+++ b/gnu/packages/chemistry.scm
@@ -130,6 +130,8 @@  (define-public avogadro2
      (list eigen pkg-config))
     (inputs
      (list avogadrolibs hdf5 molequeue qtbase-5))
+    (propagated-inputs
+     (list openbabel))
     ;; TODO: Enable tests with "-DENABLE_TESTING" configure flag.
     (arguments
      '(#:tests? #f))