Qirky / FoxDot

Python driven environment for Live Coding
http://foxdot.org
Other
1.04k stars 135 forks source link

Linux Packaging Improvements #28

Open prikhi opened 7 years ago

prikhi commented 7 years ago

Heya, I'm trying to package this up for the Arch Linux User Repository, some issues.

It'd be nice if each new release had a tag associated with it. Then I could just bump version numbers instead of having the find the release commit every time.

Once FoxDot is installed, it tries to write to the installed files. This causes a permissions error when FoxDot is installed globally, since the installed files are owned by root:

$ foxdot 
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 163, in _run_module_as_main
    mod_name, _Error)
  File "/usr/lib/python2.7/runpy.py", line 111, in _get_module_details
    __import__(mod_name)  # Do not catch exceptions initializing package
  File "/usr/lib/python2.7/site-packages/FoxDot/__init__.py", line 11, in <module>
    from lib import *
  File "/usr/lib/python2.7/site-packages/FoxDot/lib/__init__.py", line 15, in <module>
    from TempoClock import *
  File "/usr/lib/python2.7/site-packages/FoxDot/lib/TempoClock.py", line 15, in <module>
    from Players import Player
  File "/usr/lib/python2.7/site-packages/FoxDot/lib/Players.py", line 152, in <module>
    from Effects import FxList
  File "/usr/lib/python2.7/site-packages/FoxDot/lib/Effects.py", line 209, in <module>
    fx.save()
  File "/usr/lib/python2.7/site-packages/FoxDot/lib/Effects.py", line 113, in save
    with open(self.filename, 'w') as f:
IOError: [Errno 13] Permission denied: '/usr/lib/python2.7/site-packages/FoxDot/osc/sceffects/slideTo.scd'

I think this code should either use the tempfile module or if you need files to persist between restarts, check for a HOME environmental variable & stick them under $HOME/.foxdot.

Qirky commented 7 years ago

Hi Prikhi, just to let you know I've read this and will add this in the next update

prikhi commented 7 years ago

Awesome, thanks! Not in a big hurry, just figured one day it'd be nice to be able to simply run foxdot instead of sourcing a virtualenv & running it as a module :)