Package Details: papis 0.14.1-2

Git Clone URL: https://aur.archlinux.org/papis.git (read-only, click to copy)
Package Base: papis
Description: Command-line document and bibliography manager
Upstream URL: https://github.com/papis/papis
Licenses: GPL-3.0-or-later
Submitter: JP-Ellis
Maintainer: gesh (tuurep)
Last Packager: gesh
Votes: 18
Popularity: 0.100511
First Submitted: 2018-08-13 20:42 (UTC)
Last Updated: 2025-04-23 18:31 (UTC)

Pinned Comments

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 Next › Last »

gesh commented on 2024-05-15 10:31 (UTC)

@BoostCookie Need to leave home and won't be back until much later today, so I can't test the edits yet. Mind doing so? Patch is attached below, just copy to a .patch file and do git apply cleanup.patch

commit 016a103514306e8a25fd97afe7ee86d6fe5defa7
Author: gesh <gesh@gesh.uni.cx>
Date:   Wed May 15 13:29:24 2024 +0300

    Fix deps, add optdeps, checks, cleanup

diff --git a/PKGBUILD b/PKGBUILD
index 99e0575..505c85e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,37 +1,64 @@
+# Contributor: Gesh <gesh@gesh.uni.cx>
 # Maintainer: Stefan Gehr <stefan@gehr.xyz>

 pkgname=papis
 pkgver=0.13
-pkgrel=3
-pkgdesc="Papis is a powerful and highly extensible command-line based document and bibliography manager."
+pkgrel=4
+pkgdesc="Command-line document and bibliography manager"
 arch=('any')
 url="https://github.com/papis/papis"
-license=('GPL')
-depends=('python-pyaml'
-         'python-arxiv2bib'
-         'python-beautifulsoup4'
-         'python-bibtexparser'
-         'python-click'
-         'python-colorama'
-         'python-dominate'
-         'python-filetype'
-         'python-habanero'
-         'python-isbnlib'
-         'python-lxml'
-         'python-platformdirs'
-         'python-prompt_toolkit'
-         'python-pygments'
-         'python-pyparsing'
-         'python-doi'
-         'python-slugify'
-         'python-requests'
-         'python-stevedore'
-        )
+license=('GPL-3.0-or-later')
+depends=('python'
+    'python-arxiv2bib'
+    'python-beautifulsoup4'
+    'python-bibtexparser'
+    'python-click'
+    'python-colorama'
+    'python-doi'
+    'python-dominate'
+    'python-filetype'
+    'python-habanero'
+    'python-isbnlib'
+    'python-lxml'
+    'python-platformdirs'
+    'python-prompt_toolkit'
+    'python-pygments'
+    'python-pyparsing'
+    'python-requests'
+    'python-slugify'
+    'python-stevedore'
+    'python-yaml'
+)
 optdepends=(
-  'papis-rofi: integration with rofi'
-  'python-whoosh'
+    'fzf: fzf picker'
+    'papis-rofi: integration with rofi'
+    'papis-zotero: imports from zotero'
+    'pdfjs: pdf reader in the web app'
+    'python-chardet: improved encoding autodetection when scraping'
+    'python-jinja: jinja formatting'
+    'python-papis-scihub: imports from scihub'
+    'python-markdownify: convert zenodo imports to markdown'
+    'python-whoosh: whoosh database backend'
+    'python-docutils: for papis.sphinx_ext (used by some plugins)'
+    'python-sphinx: for papis.sphinx_ext (used by some plugins)'
+    'python-sphinx-click: for papis.sphinx_ext (used by some plugins)'
+    'python-pytest: for papis.testing (used by some plugins)'
+)
+makedepends=(
+    'python-build'
+    'python-installer'
+    'python-wheel'
+)
+checkdepends=(
+    'python-pytest'
+    'python-pytest-cov'
+    # These are optional -- if they're not installed, papis will automatically
+    # skip these tests -- and are only necessary if you intend to use the
+    # optdeps as well
+    'python-jinja'
+    'python-markdownify'
+    'python-whoosh'
 )
-makedepends=(python-build python-installer python-wheel)

 source=("https://github.com/papis/papis/archive/refs/tags/v${pkgver}.tar.gz")
 b2sums=("efff09aeaaacf170ef5c01170f1c856dbe09566096deb7ae649bfe755d58f225467241464e4b4bf8f36c25898fc7e9f689358073ab45e81d651defd127729af3")
@@ -41,6 +68,11 @@ build() {
   python -m build --wheel --no-isolation
 }

+check() {
+  cd "${pkgname}-${pkgver}"
+  python -m pytest papis tests
+}
+
 package() {
   cd "${pkgname}-${pkgver}"
   python -m installer --destdir="$pkgdir" dist/*.whl

BoostCookie commented on 2024-05-15 10:15 (UTC)

@gesh I've added you as co-maintainer. Can you add your changes?

gesh commented on 2024-05-15 10:05 (UTC)

Thanks for picking this up, was intending to do so once 0.14 was released.

A few remarks: You want python-yaml in your depends, not pyaml -- I recently pushed a commit to papis-git that fixes that. You might also want to pick up the optdepends from there. Also, licenses should be specified in SPDX nowadays, ie GPL-3.0-or-later.

I'm pretty sure you'll need to add python-chardet and switch python-arxiv2bib -> python-arxiv once 0.14 drops, though I don't 100% recall whether python-typing_extensions is necessary. (Actually, going over things like this makes me wonder at the status of python-chardet -- is it a hard or optdepend? Will need to contact upstream later today to check).

You may want to add at least the pytest checks, I added the others out of perfectionism.

Last and least, you probably want to sort the depends array and break makedepends into multiple lines -- that makes it more legible.

Thanks again for picking this up, I prefer only packaging things I actually use, which in my case is papis-git.

BoostCookie commented on 2024-05-14 18:55 (UTC)

@ExpandingMan I don't know what happened in your case. The dependency is still in the PKGBUILD and every decent AUR helper should therefore install it.

ExpandingMan commented on 2024-05-14 16:28 (UTC)

That's it, sorry about that, was expecting all the dependencies to be installed with it. That seems to have been the case previously.

BoostCookie commented on 2024-05-14 15:57 (UTC)

@ExpandingMan

Are you sure you have the dependency python-doi installed? pacman -Qs python-doi

ExpandingMan commented on 2024-05-14 15:56 (UTC)

getting

Error while loading entrypoint 'EntryPoint(name='add', value='papis.commands.add:cli', group='papis.command')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='addto', value='papis.commands.addto:cli', group='papis.command')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='bibtex', value='papis.commands.bibtex:cli', group='papis.command')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='citations', value='papis.commands.citations:cli', group='papis.command')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='explore', value='papis.commands.explore:cli', group='papis.command')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='crossref', value='papis.crossref:FromCrossrefImporter', group='papis.importer')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='doi', value='papis.crossref:Importer', group='papis.importer')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='folder', value='papis.commands.add:FromFolderImporter', group='papis.importer')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='isbn', value='papis.isbn:Importer', group='papis.importer')': No module named 'isbnlib'.
Error while loading entrypoint 'EntryPoint(name='lib', value='papis.commands.add:FromLibImporter', group='papis.importer')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='pdf2doi', value='papis.crossref:DoiFromPdfImporter', group='papis.importer')': No module named 'doi'.
Error while loading entrypoint 'EntryPoint(name='serve', value='papis.commands.serve:cli', group='papis.command')': No module named 'doi'.

on every call to papis.

pants commented on 2024-03-19 14:54 (UTC)

python-setuptools is necessary as a makedepend in a clean chroot

m040601 commented on 2024-03-09 00:25 (UTC) (edited on 2024-03-09 00:27 (UTC) by m040601)

I was intrigued by the differences between "papis" and "papis-git" PKGBUILD, and the upcoming v0.14 version.

The maintainer of the "papis-git" PKGBUILD has left a very nice description of the differences in this comment, https://aur.archlinux.org/packages/papis-git#comment-959872

There is also the question of the maintenance of the many other possible papis addons, (scihub, zotero etc) in the AUR.

Would be nice if the maintainers of these two PKGBUILD's "papis" and "papis-git" collaborated and shared the maintanence of both PKGBUILDS.

These would avoid reduplicating work, and would provide more pairs of eyes watching this very usefull tool.

With enough votes and concentrated effort this might even one day turn into an official Arch package.