Apt-get :: Debian unstable



I have my doubts that apt-get'ing a Python module is going to be compatible with the .uci Python extension. Apt is most likely going to tell you that you need to install *all* of the base Python packages (since apt doesn't know about .uci extensions). That will chew up tons of ramdisk and sort of defeats the whole DSL extension concept. If you bypass apt and just dpkg -i the package directly, it will not get installed in /opt where the Python .uci lives and as such probably won't work correctly.

I think what will work better is getting the actual module source from Sourceforge and using Python distutils to install it in a way that will be compatible with your .uci Python extension. That may sound complicated but it's actually quite simple. I'm downloading the pieces I need to try that out now (over a brutally slow internet connection). Once I can validate this approach, I'll post more detailed instructions.

Ok, the following steps will install the pyParallel Python module to work with the standard python.uci MyDSL extension. It's also likely to work with the python.dsl MyDSL extension, but I haven't tested that. This technique should work fine for Live CD, frugal, and HD installs.

Note that everything installed using the technique below will end up in your /home/dsl directory making it easy to preserve through DSL's normal backup/restore functionality. Also note that this technique will work with pretty much any Python module that is designed for installation via distutils (which is almost all publicly released Python stuff) and is pure Python (doesn't require compiling any C code).

Ok, here we go ...

1) Get the source code for the module. In this case you can download pyParallel from its Sourceforge project page. Save the file to your /dsl/home/ directory.

2) Extract the contents of the zipfile. Open an Aterm and use the command "unzip pyparallel-0.2.zip".

3) Go to the directory with the extracted source files ("cd pyparallel-0.2").

4) Install using the command "/opt/python/bin/python setup.py install --home=~"

At that point the pyParallel module is installed. To test it do the following:

1) Set your PYTHONPATH environment variable so Python can locate modules in your home dir ("export PYTHONPATH=/home/dsl/lib/python"). Note that the setting described here should let Python find any number of modules installed following this technique -- you don't have to add each individual module directory to the PYTHONPATH.

2) Run Python ("/opt/python/bin/python").

3) Load the module ("import parallel") ... if it loads without errors you're good to go!

If the module loads, you can clean up /home/dsl/ by deleting the "pyparallel-0.2.zip" file and the "pyparallel-0.2" directory.

That's all there is to it. A variation on this is to use the command ("/opt/python/bin/python setup.py install --prefix=somepath") where "somepath" is the full path to the directory where you want the module files installed. This allows installing directly to a mounted hard disk partition instead of your /home/dsl/ directory. Just remember to set your PYTHONPATH environment variable accordingly. I prefer the --home technique because it keeps the PYTHONPATH simple and keeps all my installed Python modules in my backup.tar.gz so they're easily moved to from one DSL system to another.

I appreciate all your efforts, Kopsis.  However I am hung up on the second step.  When I try to  unzip the file, I type:

unzip pyparallel-0.2.zip

It returns the following message:

unzip:  pyparallel-0.2/README.txt:  No such file or directory

I tryed downloading it several times thinking that maybe I had a bad download, but the results are always the same.  Any ideas?

Grab the gnu-utils mydsl package and load it up. I've heard that unzip in DSL's Busybox is a bit broken.
Thanks again for all your efforts, Kopsis.  That did the trick.  After I installed gnu-utils, everything worked per your instructions.  Now I just need to learn how to put this all to good use.

I really appreciate all you have done and I hope this will also help others with the same interests.

Next Page...
original here.