Hi, so for my first post to the list I am going to ask a somewhat lame question. Apologies if this is not the right list -- clues welcome.
This is totally the right list. All discussion of Twisted is welcome!
So my problem is that while my protocol stack spins up very nicely and trivially easy using the twistd daemon, the standard python3-twisted package for 14.04 is waaaay behind and doesn't include twistd (!), and I haven't found a good backport. I'd also like to avoid doing things that make life hard for DevOps, such as pip3 installing and risking a package manager fight.
The general solution to this problem is "don't use the system Python environment to deploy your applications".
This is what virtualenv is for.
So some options:
- Is there a reliable backport of the python3-twisted package for 14.04? Google is failing me on that one.
[...]
- Perhaps I should create my own backport for Ubuntu 14.04 of the current python3-twisted .deb. (This is probably not the right list to ask, but I'm happy to dereference a pointer.)
Both of these options are bad. Installing or creating a backport will break any system tools that depend on the python3-twisted package. This is better than `sudo pip3 install`, but only a little.
- All I need is the most basic twistd functionality. Perhaps I should spin up my own by snarfing the code out of the twisted source repo. I can package this with my stuff temporarily and get on with life. Clues to the relevant parts of the repo welcome, I haven't poked around much in Twisted sources so need a road map.
If you have the ability to ship parts of the Twisted stack, there's a tool that can automate the "snarfing": pip :-).
This is a short-term problem for me, we are transitioning to 16.04 soon, but the process is driven by other parts of the software stack. So I don't want to over-invest. I'm looking for a reasonable band-aid.
16.04 will also be out of date.
I'm tempted to launch into a diatribe about namespacing, containers, and application isolation generally, but before I do - why is it that you want to use the system Python environment? Had you just not considered the option of virtual environments?