Package Details: python-txtorcon 0.19.3-3

Git Clone URL: https://aur.archlinux.org/python-txtorcon.git (read-only)
Package Base: python-txtorcon
Description: A Twisted-based Python asynchronous controller library for Tor
Upstream URL: https://txtorcon.readthedocs.org/
Licenses: MIT
Submitter: stormdragon2976
Maintainer: stormdragon2976
Last Packager: stormdragon2976
Votes: 2
Popularity: 0.018737
First Submitted: 2017-06-28 15:21
Last Updated: 2017-07-04 01:13

Latest Comments

FirefighterBlu3 commented on 2017-10-18 20:11

installs python-ipaddress which conflicts with native python ipaddress

pigmonkey commented on 2017-07-04 01:41

Works great! I wiped all traces of python-txtorcon and was able to install the new package build without error.

stormdragon2976 commented on 2017-07-04 01:18

@pigmonkey I added your sed statement to the PKGBUILD. It seems to work, but I never did experience the problems with it you did, even using makepkg. So, if you don't mind, make sure all is well, and hopefully we can call this one solved :) Thanks for the help.

pigmonkey commented on 2017-07-03 22:31

Yes, I first experienced the problem using Aura. After seeing that I tried makepkg to make sure it wasn't a problem with my AUR helper. I've tried it on 2 different machines. I'm doing this:

$ wget https://aur.archlinux.org/cgit/aur.git/snapshot/python-txtorcon.tar.gz
$ tar xvzf python-txtorcon.tar.gz
$ cd python-txtorcon
$ makepkg -sri # fails with conflicts

Adding this prior to the py2 setup call in the PKBUILD allows me to install it via makepkg -sri: sed -i '77,91 {s/^/#/}' setup.py

Alternatively, I can do this:

$ wget https://aur.archlinux.org/cgit/aur.git/snapshot/python-txtorcon.tar.gz
$ tar xvzf python-txtorcon.tar.gz
$ cd python-txtorcon
$ makepkg -s
$ sudo pacman -U python2-txtorcon-0.19.3-2-any.pkg.tar.xz # this works fine
$ sudo pacman -U python-txtorcon-0.19.3-2-any.pkg.tar.xz # this fails with conflicts in /usr/share/txtorcon
$ sudo pacman -U --force python-txtorcon-0.19.3-2-any.pkg.tar.xz # this works fine since we are overwriting conflicts

I just installed pacaur. I am able to install the package with that. It must be telling pacman to overwrite the conflicts.

stormdragon2976 commented on 2017-07-03 22:05

@pigmonkey I made the suggest changes from the AUR General list. I'm not sure what else to do currently. Have you tried using a package manager to install just the python-txtorcon package? I ran it with both pacaur and makepkg and had no problems, so I'm not sure what's going on. We'll get it solved eventually though.

pigmonkey commented on 2017-07-03 21:59

Any feedback? The package is still failing to me.

It may be something where in package_python2-txtorcon() we have to use sed to comment out the share/txtorcon docs from setup.py. Which seems less than ideal.

stormdragon2976 commented on 2017-06-29 15:25

@pigmonkey I really don't want to offer a crippled PKGBUILD. It should be able to fulfill either requirement. So, I sent a request for help to the AUR email list. Hopefully they can help me get it fixed. If that fails though, I will remove the python2 bits.

pigmonkey commented on 2017-06-29 00:36

I get the error with makepkg. Perhaps you do not because you installed one of the versions while you were building the pkgbuild? Maybe try completely uninstall python{,2}-txtorcon and installing it again?

Anyway, I had no idea how split python packages were supposed to work either. I looked at the virtualenv package in extra to see how that works. It looks like you are doing it correctly and that both python2 and python3 versions are expected to be installed, even if the user is only requesting one.

I think this is actually a problem upstream. They are defining "share/txtorcon" as the data_files prefix in their setup.py: https://github.com/meejah/txtorcon/blob/master/setup.py#L78

I'm not sure what the proper way to handle that in distutils is. A quick look through my /usr/share doesn't show any split python packages that we could use as examples. Using some sort of prefix directory seems silly since we would just be installing the same docs twice.

The short term solution may be to just drop python2-txtorcon since we only need py3 (The Wave of the Future Since 2008(tm)) for shai-hulud.

I'm happy to help with the wormhole stuff, though I just muddle my way through the few pkgbuilds I maintain

stormdragon2976 commented on 2017-06-28 21:21

@pigmonkey weird you are getting errors. I ran makepkg on it and it worked just fine. Also, as a last test, after uploading the package, I installed it using pacaur.
The pkgname is an array. I based the package on python-twisted's PKGBUILD, because I don't have any experience with split packages.
It's also odd that it is complaining about the paths existing in bothe python2 and 3 versions, they should be able to happily coexist. Do you have any other ideas to fix the problem? Also, if you are willing to help maintain any of this stuff (python-txtorcon, magic-wormhole, magic-wormhole-git) let me know, I'll add you.

pigmonkey commented on 2017-06-28 20:28

Thanks for building these.

Currently it looks like this is trying to pull in both py2 and py3 versions, which results in conflicts. It may be the pkgname array.

loading packages...
resolving dependencies...
looking for conflicting packages...

Packages (3) python-geoip-1.3.2-4 python-txtorcon-0.19.3-1 python2-txtorcon-0.19.3-1

Total Installed Size: 4.40 MiB

:: Proceed with installation? [Y/n] Y
(3/3) checking keys in keyring [########################################################################################] 100%
(1/3) checking package integrity [########################################################################################] 100%
(1/3) loading package files [########################################################################################] 100%
(3/3) checking for file conflicts [########################################################################################] 100%
error: failed to commit transaction (conflicting files)
/usr/share/txtorcon/INSTALL exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/Makefile exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/README.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/TODO exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/apilinks_sphinxext.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/avatar.png exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/conf.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/connect.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/disallow_streams_by_port.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/dns_lookups.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/hidden_echo.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor2web.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor_endpoint.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor_endpoint2.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor_unix_sockets.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/launch_tor_with_simplehttpd.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/minimal_endpoint.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/monitor.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/readme.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/readme3.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/stem_relay_descriptor.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/stream_circuit_logger.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/tor_info.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/web_client.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/web_client_custom_circuit.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/web_client_treq.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/examples/webui_server.py exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/guide.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/hacking.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/haiku.css exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/index.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/installing.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/introduction.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/logo.png exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/logo.svg exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/meejah.asc exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/release-checklist.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/releases.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-config.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-controller.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-endpoints.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-interface.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-protocol.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-socks.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-state.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon-util.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
/usr/share/txtorcon/txtorcon.rst exists in both 'python-txtorcon' and 'python2-txtorcon'
Errors occurred, no packages were upgraded.