Package Details: wallabag-client 1.8.5-1

Git Clone URL: https://aur.archlinux.org/wallabag-client.git (read-only, click to copy)
Package Base: wallabag-client
Description: Command line client for the self hosted read-it-later app Wallabag
Upstream URL: https://github.com/artur-shaik/wallabag-client
Licenses: MIT
Submitter: bjo
Maintainer: noUsernamesLef7
Last Packager: noUsernamesLef7
Votes: 0
Popularity: 0.000000
First Submitted: 2021-01-08 20:30 (UTC)
Last Updated: 2022-10-02 07:36 (UTC)

Latest Comments

noUsernamesLef7 commented on 2023-05-26 04:31 (UTC)

I haven't been able to recreate any build issues with the python-markdownify dependency, but I did find the python-babel problem. Looks like it was in there because python-delorean depends on it, but that AUR PKGBUILD is missing it as a dependency. I've requested the maintainer add it so that it pulls that in correctly. If the maintainer doesn't respond promptly, I'll consider re-adding it here as a workaround. Thanks!

m040601 commented on 2022-12-12 17:20 (UTC) (edited on 2022-12-18 12:12 (UTC) by m040601)

Made some progress and can confirm that this PKGBUILD is indeed working now, without conflict with other packages (AUR or Arch official)

When it fails to build is probably because of one it its dependencies (also in AUR) fails.

[Aur Make:3]  python-click-spinner-0.1.10-1  python-delorean-1.0.0-1  python-markdownify-0.9.2-1

Specially "python-markdownify" seems problematic. Every once in a while giving problems.

==> Entering fakeroot environment...                                                    [72/1949]
==> Starting package()...
/usr/lib/python3.10/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setup
tools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
  warnings.warn(
running install
/usr/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning:
 setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running build

m040601 commented on 2022-11-20 20:23 (UTC) (edited on 2022-11-20 20:39 (UTC) by m040601)

Cant get this to run.

I see some recent changes to this PKGBUILD,

Age Commit message (Expand) Author
2022-10-02  Remove python-setuptools from depends, leave in makedepends Jason Brown
2022-10-02  Remove unused python-babel dependency   Jason Brown
2022-10-02  Update to 1.8.5 Jason Brown

And it is about "babel" that it complains when I try to run it,

pkg_resources.DistributionNotFound: The 'babel>=2.1.1' distribution was not found and is required by delorean

Full errorr message,

Traceback (most recent call last):
  File "/usr/bin/wallabag", line 33, in <module>
    sys.exit(load_entry_point('wallabag-client==1.8.5', 'console_scripts', 'wallabag')())
  File "/usr/bin/wallabag", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3.10/site-packages/wallabag/wallabag.py", line 15, in <module>
    from wallabag.commands.add import AddCommand, AddCommandParams
  File "/usr/lib/python3.10/site-packages/wallabag/commands/add.py", line 10, in <module>
    from wallabag.entry import Entry
  File "/usr/lib/python3.10/site-packages/wallabag/entry.py", line 3, in <module>
    import delorean
  File "/usr/lib/python3.10/site-packages/delorean/__init__.py", line 7, in <module>
    from delorean.dates import (
  File "/usr/lib/python3.10/site-packages/delorean/dates.py", line 9, in <module>
    import humanize
  File "/usr/lib/python3.10/site-packages/humanize/__init__.py", line 2, in <module>
    import pkg_resources
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3260, in <module>
    def _initialize_master_working_set():
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3234, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 3272, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 581, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 909, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.10/site-packages/pkg_resources/__init__.py", line 795, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'babel>=2.1.1' distribution was not found and is required by delorean

I then uninstalled everything and tried an alternative. With pipx or python -m venv, you can test and use things in a self contained environment.

pipx install wallabag-client

And it worked without a problem. So I'm assuming the problem is with this PKGBUILD.

I cant provide any ideas or suggestions because I'm an user, not a programmer. Dont know about python and have limited understandig of PKGBUILD's.

bjo commented on 2021-08-23 08:29 (UTC)

Regarding the python-markdownify tests, you commented on the wrong package.

m040601 commented on 2021-08-21 20:26 (UTC) (edited on 2021-08-21 21:17 (UTC) by m040601)

Having some trouble caused, I think (no python expert) by python-markdownify.

It seems that a lot of AUR packages want to create stuff in the "tests" folder, /usr/lib/python3.9/site-packages/tests/.

And then forget to "cleanup" ?

python-markdownify is one of them:

pacman -Ql python-markdownify


....
....
python-markdownify /usr/lib/python3.9/site-packages/tests/
python-markdownify /usr/lib/python3.9/site-packages/tests/__init__.py
python-markdownify /usr/lib/python3.9/site-packages/tests/__pycache__/
python-markdownify /usr/lib/python3.9/site-packages/tests/__pycache__/__init__.cpython-39.opt-1.pyc
python-markdownify /usr/lib/python3.9/site-packages/tests/__pycache__/__init__.cpython-39.pyc
....
....
python-markdownify /usr/lib/python3.9/site-packages/tests/test_advanced.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_args.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_basic.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_conversions.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_custom_converter.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_escaping.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_lists.py
python-markdownify /usr/lib/python3.9/site-packages/tests/test_tables.py
....
....

$ pacman -Qo /usr/lib/python3.9/site-packages/tests/*

/usr/lib/python3.9/site-packages/tests/__init__.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/__pycache__/ is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_advanced.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_args.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_basic.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_conversions.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_custom_converter.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_escaping.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_lists.py is owned by python-markdownify 0.9.2-1
/usr/lib/python3.9/site-packages/tests/test_tables.py is owned by python-markdownify 0.9.2-1

All that stuff left behind in "/usr/lib/python3.9/site-packages/tests/", doesnt seem right to me.

Especially the "init.py" file left behind in /usr/lib/python3.9/site-packages/tests/init.py.

I dont see any other package in the entire universe of possible to install packages (pacman -F) owning that "tests/init.py" file

pacman -F /usr/lib/python3.9/site-packages/tests/init.py

usr/lib/python3.9/site-packages/tests/__init__.py is owned by community/python-pyroute2 0.5.19-1
usr/lib/python3.9/site-packages/tests/__init__.py is owned by community/python-wiktionaryparser 0.0.97.20210613-1

(these 2 pyroute2 and wikitionaryparser might alsa be a mistake)

This is what happens when after installing wallabag-client, I try to install some other AUR python package. Tested with different ones:

yay -S python-md2gemini

error: failed to commit transaction (conflicting files)
python-md2gemini: /usr/lib/python3.9/site-packages/tests/__init__.py exists in filesystem (owned by python-markdownify)
python-md2gemini: /usr/lib/python3.9/site-packages/tests/__pycache__/__init__.cpython-39.opt-1.pyc
exists in filesystem (owned by python-markdownify)
python-md2gemini: /usr/lib/python3.9/site-packages/tests/__pycache__/__init__.cpython-39.pyc exists in filesystem (owned by python-markdownify)
Errors occurred, no packages were upgraded.

m040601 commented on 2021-08-21 19:32 (UTC) (edited on 2021-08-21 21:28 (UTC) by m040601)

I have some more suggestions:

  • Update the description from:
pkgdesc="Command line client for the self hosted read-it-later app Wallabag"

to something like, ex:

pkgdesc="A python based Command line client for the Wallabag service"

There are many, many tools, written in many, many languages, for Wallabag. This makes it easy to find them and distinguish them later in AUR. And, this is AUR, not github. You don't have to copy exactly what the source repo writes in his github "description" line.

  • Rename the PKGBUILD and the installed binary from:
pkgname=wallabag-client

to something like, ex:

pkgname=python-wallabag-client

and the final installed binary in /usr/bin/ to something like ex:

wallabag-client-py

In any case, please do not name the installed binary /usr/bin/wallabag.

I dont know exactly the naming "conventions" but you can check them here.

https://wiki.archlinux.org/title/AUR_submission_guidelines https://wiki.archlinux.org/title/Python_package_guidelines

I've seen many other python AUR PKGBUILD's do something similar renaming.

This to ensure no conflicts and clashes in the future. And save you some trouble ahead. Sooner or later someone will come and package another client for wallabag, with a generic name confusing name "wallabag-something-client". And they will forget about the others and want to install something to "/usr/bin/wallabag". There are also many scripts just simply called "wallabag"

Just a quick github search by "topic" or "name" wallabag finds me a lot of them, https://github.com/topics/wallabag

Here's another python based one. Also simply called "wallabag-cli". Seems to be well maintained and documented also,

https://github.com/Nepochal/wallabag-cli

Surprisingly, it is very "spartan" in its requirements:

beautifulsoup4>=4.5.1
pycrypto>=2.6.1
requests>=2.11.1

I tested it and worked perfectly. I installed it, user wide, not system wide, with "pipx install wallabag-cli". I dont like that it installed a binary called "wallabag", but this can be changed if a PKGBUILD is created.

bjo commented on 2021-08-21 12:15 (UTC)

Seems like we need to package python-markdownify.

bjo commented on 2021-08-21 08:30 (UTC)

Thanks for your report, I will take a look into this later.

m040601 commented on 2021-08-21 05:28 (UTC) (edited on 2021-08-21 05:37 (UTC) by m040601)

Thanks for your work creating this PKGBUILD.

Not working at the moment.

The installation seems to go ok, but then when you try to run it:

  File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 772, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'markdownify' distribution was not found and is required by wallabag-client


And indeed, looking at the source repo, https://github.com/artur-shaik/wallabag-client/blob/master/setup.py, it does require that "markdownify" thingy:

install_requires=[
        'beautifulsoup4>=4.9.1',
.....
.....
.....
        'markdownify',

Also, I'm not a python expert neither PKGBUILD connaisseur. But, I see that this PKGBUILD currently has

python-babel

On its dependencies. Which is a "huge" one. Is it really necessary ? I git cloned the source repo, and grepped for "babel". Couldnt find any mention of it.

Can you recheck the source repo requirements to see what is really necessary with the latest version ?

Thanks in advance