commit:     4d7271caedd3ec77361bba7d98772767dfee8b78
Author:     Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
AuthorDate: Mon Jul 19 10:55:37 2021 +0000
Commit:     Anna Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
CommitDate: Thu Jul 22 08:27:39 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4d7271ca

sci-biology/cmdock: make it prettier, fix perms

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq.in>

 sci-biology/cmdock/cmdock-0.1.3.ebuild             | 31 +++++++++++++++++-----
 .../cmdock/files/cmdock-boinc-zcp_job_0.1.3.xml    | 10 +++----
 sci-biology/cmdock/metadata.xml                    |  1 +
 3 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/sci-biology/cmdock/cmdock-0.1.3.ebuild 
b/sci-biology/cmdock/cmdock-0.1.3.ebuild
index e42b1f253..13e4bc2cc 100644
--- a/sci-biology/cmdock/cmdock-0.1.3.ebuild
+++ b/sci-biology/cmdock/cmdock-0.1.3.ebuild
@@ -10,7 +10,7 @@ DOCS_DIR="docs"
 inherit python-any-r1 docs meson
 
 DESCRIPTION="Program for docking ligands to proteins and nucleic acids"
-HOMEPAGE="https://gitlab.com/Jukic/cmdock";
+HOMEPAGE="https://gitlab.com/Jukic/cmdock https://www.rxdock.org";
 SRC_URI="https://gitlab.com/Jukic/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.gz";
 S="${WORKDIR}/${PN}-v${PV}"
 
@@ -30,6 +30,8 @@ BDEPEND="
        dev-libs/cxxopts
 "
 
+MY_PREFIX="${EPREFIX}/opt/${P}"
+
 src_prepare() {
        default
        rm -r include/indicators || die
@@ -38,7 +40,7 @@ src_prepare() {
 src_configure() {
        # very weird directory layout
        local emesonargs=(
-               --prefix="${EPREFIX}/opt/cmdock-${PV}"
+               --prefix="${MY_PREFIX}"
        )
        meson_src_configure
 }
@@ -52,17 +54,32 @@ src_install() {
        meson_src_install
 
        if use boinc ; then
-               insinto /var/lib/boinc/projects/www.sidock.si_sidock
-               newins "${FILESDIR}/app_info_${PV}.xml" app_info.xml
-               doins "${FILESDIR}/cmdock-boinc-zcp_job_${PV}.xml"
+               local 
project_root="/var/lib/boinc/projects/www.sidock.si_sidock"
+
+               local wrappers=( ${PN}-boinc-zcp )
+
+               insinto ${project_root}
+               insopts --owner boinc --group boinc
+
+               newins "${FILESDIR}"/app_info_${PV}.xml app_info.xml
+               touch "${ED}${project_root}"/docking_out.sd || die
+               fowners boinc:boinc ${project_root}/docking_out.sd
+
+               for app in "${wrappers[@]}" ; do
+                       wrapperjob="${app}_job_${PV}.xml"
+                       wrapperexe="${app}_wrapper_${PV}"
+
+                       dosym -r /usr/bin/boinc-wrapper 
"${project_root}/${wrapperexe}"
 
-               dosym -r /usr/bin/boinc-wrapper 
/var/lib/boinc/projects/www.sidock.si_sidock/cmdock-boinc-zcp_wrapper_${PV}
+                       cp "${FILESDIR}"/${wrapperjob} "${S}" || die
+                       sed "s:@PREFIX@:${MY_PREFIX}:g" -i ${wrapperjob} || die
+                       doins ${wrapperjob}
+               done
        fi
 }
 
 pkg_postinst() {
        if use boinc ; then
-               touch 
/var/lib/boinc/projects/www.sidock.si_sidock/docking_out.sd || die
                elog
                elog "The easiest way to do something useful with this 
application"
                elog "is to attach it to SiDock@home BOINC project."

diff --git a/sci-biology/cmdock/files/cmdock-boinc-zcp_job_0.1.3.xml 
b/sci-biology/cmdock/files/cmdock-boinc-zcp_job_0.1.3.xml
index 3c7818151..074bb29d4 100644
--- a/sci-biology/cmdock/files/cmdock-boinc-zcp_job_0.1.3.xml
+++ b/sci-biology/cmdock/files/cmdock-boinc-zcp_job_0.1.3.xml
@@ -1,13 +1,13 @@
 <job_desc>
        <task>
-               <application>/opt/cmdock-0.1.3/build/cmdock</application>
+               <application>@PREFIX@/build/cmdock</application>
                <stdout_filename>docking_log</stdout_filename>
-               <command_line>-c -j 1 -r target.prm -p 
/opt/cmdock-0.1.3/data/scripts/dock.prm -f htvs.ptc -i ligands.sdf -o 
docking_out</command_line>
+               <command_line>-c -j 1 -r target.prm -p 
@PREFIX@/data/scripts/dock.prm -f htvs.ptc -i ligands.sdf -o 
docking_out</command_line>
                <checkpoint_filename>docking_out.chk</checkpoint_filename>
                
<fraction_done_filename>docking_out.progress</fraction_done_filename>
-               <setenv>CMDOCK_ROOT=/opt/cmdock-0.1.3</setenv>
-               
<setenv>LD_LIBRARY_PATH=/opt/cmdock-0.1.3/build:$LD_LIBRARY_PATH</setenv>
-               <setenv>PERL5LIB=/opt/cmdock-0.1.3/lib:$PERL5LIB</setenv>
+               <setenv>CMDOCK_ROOT=@PREFIX@</setenv>
+               <setenv>LD_LIBRARY_PATH=@PREFIX@/build:$LD_LIBRARY_PATH</setenv>
+               <setenv>PERL5LIB=@PREFIX@/lib:$PERL5LIB</setenv>
        </task>
        <unzip_input>
                <zipfilename>ligands.zip</zipfilename>

diff --git a/sci-biology/cmdock/metadata.xml b/sci-biology/cmdock/metadata.xml
index 9bb734387..f0cb44b3d 100644
--- a/sci-biology/cmdock/metadata.xml
+++ b/sci-biology/cmdock/metadata.xml
@@ -4,6 +4,7 @@
        <upstream>
                <remote-id type="gitlab">Jukic/cmdock</remote-id>
                <bugs-to>https://gitlab.com/Jukic/cmdock/-/issues</bugs-to>
+               <doc>https://www.rxdock.org/api-documentation/devel/html</doc>
        </upstream>
        <maintainer type="person">
                <email>[email protected]</email>

Reply via email to