Opened 13 years ago

Closed 13 years ago

#1884 closed bug (Invalid)

OSError Permission Denied for /opt/local/etc/xdg/deluge on OSX 10.6

Reported by: elmiko Owned by:
Priority: minor Milestone: Future
Component: GTK UI Version: other (please specify)
Keywords: OSX Cc:

Description

I have built deluge from the git trunk using the default python for OSX (Python 2.6.6 (r266:84292, May 17 2011, 10:52:47)) and after an installation with --prefix=$HOME I am getting the following exception when running '$ deluge-gtk'

Traceback (most recent call last):

File "/Users/mike/bin/deluge-gtk", line 9, in <module>

load_entry_point('deluge==1.3.900-dev', 'gui_scripts', 'deluge-gtk')()

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/ui/gtkui/gtkui.py", line 89, in start

Gtk().start()

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/ui/gtkui/gtkui.py", line 86, in start

GtkUI(self.args)

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/ui/gtkui/gtkui.py", line 181, in init

self.config = deluge.configmanager.ConfigManager("gtkui.conf", DEFAULT_PREFS)

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/configmanager.py", line 125, in ConfigManager

return _configmanager.get_config(config, defaults)

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/configmanager.py", line 117, in get_config

self.config_files[config_file] = Config(config_file, defaults, self.config_directory)

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/configmanager.py", line 54, in config_directory

self.config_directory = deluge.common.get_default_config_dir()

File "/Users/mike/lib/python2.6/site-packages/deluge-1.3.900_dev-py2.6.egg/deluge/common.py", line 143, in get_default_config_dir

return xdg.BaseDirectory.save_config_path("deluge")

File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/xdg/BaseDirectory.py", line 59, in save_config_path

os.makedirs(path, 0700)

File "/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/os.py", line 157, in makedirs

mkdir(name, mode)

OSError: [Errno 13] Permission denied: '/opt/local/etc/xdg/deluge'

I think the proper behavior is for the OSX version of deluge to operate as the linux version and look to the user's home directory as the first place for saving config information.

Change History (2)

comment:1 by elmiko, 13 years ago

Priority: majorminor

after looking at the code a little more, this might be an issue with the xdg package on OSX.

in deluge/common.py @ line 143 it looks like the call to xdg.BaseDirectory.save_config_path is returning an the system-wide path and not the local writable one.

sorry, this might be a problem for whoever is maintaining that package.

comment:2 by elmiko, 13 years ago

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.