diff --git a/in/scripts=wicd-cli.in b/in/scripts=wicd-cli.in index be9aefe..71cfa25 100755 --- a/in/scripts=wicd-cli.in +++ b/in/scripts=wicd-cli.in @@ -1,2 +1,2 @@ #!/bin/bash -exec %PYTHON% -O %LIB%wicd-cli.py $@ +exec %PYTHON% -O %LIB%cli/wicd-cli.py $@ diff --git a/in/scripts=wicd-client.in b/in/scripts=wicd-client.in index 249c157..9e91898 100755 --- a/in/scripts=wicd-client.in +++ b/in/scripts=wicd-client.in @@ -41,5 +41,5 @@ EOF fi else - exec %PYTHON% -O %LIB%wicd-client.py $@ + exec %BIN%wicd-gtk fi diff --git a/in/scripts=wicd-curses.in b/in/scripts=wicd-curses.in index 9e74c0f..fa9c249 100755 --- a/in/scripts=wicd-curses.in +++ b/in/scripts=wicd-curses.in @@ -6,4 +6,4 @@ if [ -e "%VARLIB%WHEREAREMYFILES" ] && [ ! -L "$HOME/.wicd/WHEREAREMYFILES" ]; t ln -s "%VARLIB%WHEREAREMYFILES" "$HOME/.wicd/WHEREAREMYFILES" fi -exec %PYTHON% -O %LIB%wicd-curses.py $@ +exec %PYTHON% -O %LIB%curses/wicd-curses.py $@ diff --git a/in/scripts=wicd-gtk.in b/in/scripts=wicd-gtk.in new file mode 100644 index 0000000..d2bdda5 --- /dev/null +++ b/in/scripts=wicd-gtk.in @@ -0,0 +1,15 @@ +#!/bin/sh + +# check_firstrun() +if [ ! -d "$HOME/.wicd" ]; then + mkdir -p "$HOME/.wicd" +fi +# Make sure the user knows WHEREAREMYFILES ;-) +if [ -e "/var/lib/wicd/WHEREAREMYFILES" ] && [ ! -L "$HOME/.wicd/WHEREAREMYFILES" ]; then + ln -s "/var/lib/wicd/WHEREAREMYFILES" "$HOME/.wicd/WHEREAREMYFILES" +fi + +PYTHONPATH=%LIB% +export PYTHONPATH + +exec %PYTHON% -O %LIB%gtk/wicd-client.py $@ diff --git a/in/scripts=wicd.in b/in/scripts=wicd.in index 6ea4b29..96f3563 100755 --- a/in/scripts=wicd.in +++ b/in/scripts=wicd.in @@ -1,3 +1,6 @@ #!/bin/bash -exec %PYTHON% -O %LIB%wicd-daemon.py $@ +PYTHONPATH=%LIB% +export PYTHONPATH + +exec %PYTHON% -O %LIB%daemon/wicd-daemon.py $@ diff --git a/in/wicd=wpath.py.in b/in/wicd=wpath.py.in index 717e558..fc4bb20 100755 --- a/in/wicd=wpath.py.in +++ b/in/wicd=wpath.py.in @@ -44,6 +44,10 @@ pmutils = '%PMUTILS%' dbus = '%DBUS%' desktop = '%DESKTOP%' backends= '%BACKENDS%' +daemon = '%DAEMON%' +curses = '%CURSES%' +gtk = '%GTK%' +cli = '%CLI%' translations = '%TRANSLATIONS%' icons = '%ICONS%' autostart = '%AUTOSTART%' diff --git a/setup.py b/setup.py index b305c40..6d5d4a5 100644 --- a/setup.py +++ b/setup.py @@ -61,6 +61,10 @@ class configure(Command): ('bin=', None, 'set the bin directory'), ('sbin=', None, 'set the sbin directory'), ('backends=', None, 'set the backend storage directory'), + ('daemon=', None, 'set the daemon directory'), + ('curses=', None, 'set the curses UI directory'), + ('gtk=', None, 'set the GTK UI directory'), + ('cli=', None, 'set the CLI directory'), ('networks=', None, 'set the encryption configuration directory'), ('log=', None, 'set the log directory'), ('resume=', None, 'set the directory the resume from suspend script is stored in'), @@ -113,7 +117,11 @@ class configure(Command): self.encryption = self.etc + 'encryption/templates/' self.bin = '/usr/bin/' self.sbin = '/usr/sbin/' - self.backends = self.lib + 'backends' + self.daemon = self.share + 'daemon' + self.backends = self.share + 'backends' + self.curses = self.share + 'curses' + self.gtk = self.share + 'gtk' + self.cli = self.share + 'cli' self.varlib = '/var/lib/wicd/' self.networks = self.varlib + 'configurations/' self.log = '/var/log/wicd/' @@ -464,7 +472,7 @@ configure yet or you are running it for the first time.''' data = [] py_modules=['wicd.networking','wicd.misc','wicd.wnettools', - 'wicd.wpath','wicd.prefs','wicd.netentry','wicd.dbusmanager', + 'wicd.wpath','wicd.dbusmanager', 'wicd.logfile','wicd.backend','wicd.configmanager', 'wicd.translations'] @@ -478,7 +486,7 @@ try: os.listdir('encryption/templates') if not b.startswith('.')]), (wpath.networks, []), (wpath.sbin, ['scripts/wicd']), - (wpath.lib, ['wicd/monitor.py', 'wicd/wicd-daemon.py', 'wicd/configscript.py', + (wpath.daemon, ['wicd/monitor.py', 'wicd/wicd-daemon.py', 'wicd/suspend.py', 'wicd/autoconnect.py']), (wpath.backends, ['wicd/backends/be-external.py', 'wicd/backends/be-ioctl.py']), (wpath.scripts, []), @@ -488,11 +496,11 @@ try: (wpath.postconnectscripts, []), ] if not wpath.no_install_gtk: - py_modules.extend(['wicd.gui', 'wicd.guiutil']) data.append((wpath.desktop, ['other/wicd.desktop'])) data.append((wpath.bin, ['scripts/wicd-client'])) - data.append((wpath.share, ['data/wicd.glade'])) - data.append((wpath.lib, ['wicd/wicd-client.py'])) + data.append((wpath.gtk, ['wicd/wicd-client.py', 'wicd/netentry.py', 'wicd/prefs.py', + 'wicd/gui.py', 'wicd/guiutil.py', 'data/wicd.glade', + 'wicd/configscript.py'])) data.append((wpath.autostart, ['other/wicd-tray.desktop'])) if not wpath.no_install_man: data.append((wpath.mandir + 'man1/', [ 'man/wicd-client.1' ])) @@ -510,18 +518,18 @@ try: data.append((wpath.icons + '16x16/apps/', ['icons/16px/wicd-client.png'])) data.append((wpath.images, [('images/' + b) for b in os.listdir('images') if not b.startswith('.')])) if not wpath.no_install_ncurses: - data.append((wpath.lib, ['curses/curses_misc.py'])) - data.append((wpath.lib, ['curses/prefs_curses.py'])) - data.append((wpath.lib, ['curses/wicd-curses.py'])) - data.append((wpath.lib, ['curses/netentry_curses.py'])) - data.append((wpath.lib, ['curses/configscript_curses.py'])) + data.append((wpath.curses, ['curses/curses_misc.py'])) + data.append((wpath.curses, ['curses/prefs_curses.py'])) + data.append((wpath.curses, ['curses/wicd-curses.py'])) + data.append((wpath.curses, ['curses/netentry_curses.py'])) + data.append((wpath.curses, ['curses/configscript_curses.py'])) data.append((wpath.bin, ['scripts/wicd-curses'])) if not wpath.no_install_man: data.append(( wpath.mandir + 'man8/', ['man/wicd-curses.8'])) if not wpath.no_install_docs: data.append(( wpath.docdir, ['curses/README.curses'])) if not wpath.no_install_cli: - data.append((wpath.lib, ['cli/wicd-cli.py'])) + data.append((wpath.cli, ['cli/wicd-cli.py'])) data.append((wpath.bin, ['scripts/wicd-cli'])) if not wpath.no_install_man: data.append(( wpath.mandir + 'man8/', ['man/wicd-cli.8'])) diff --git a/wicd/gui.py b/wicd/gui.py index cd32460..2534cf1 100644 --- a/wicd/gui.py +++ b/wicd/gui.py @@ -36,12 +36,12 @@ from dbus import DBusException from wicd import misc from wicd import wpath from wicd import dbusmanager -from wicd import prefs -from wicd import netentry from wicd.misc import noneToString -from wicd.netentry import WiredNetworkEntry, WirelessNetworkEntry -from wicd.prefs import PreferencesDialog -from wicd.guiutil import error, LabelEntry +import prefs +from prefs import PreferencesDialog +import netentry +from netentry import WiredNetworkEntry, WirelessNetworkEntry +from guiutil import error, LabelEntry from wicd.translations import language if __name__ == '__main__': @@ -148,7 +148,7 @@ class appGui(object): self.tray = tray - gladefile = os.path.join(wpath.share, "wicd.glade") + gladefile = os.path.join(wpath.gtk, "wicd.glade") self.wTree = gtk.glade.XML(gladefile) self.window = self.wTree.get_widget("window1") self.window.set_icon_name("wicd-client") diff --git a/wicd/guiutil.py b/wicd/guiutil.py index 6a38607..2837edd 100644 --- a/wicd/guiutil.py +++ b/wicd/guiutil.py @@ -19,7 +19,7 @@ import gtk import os.path -import wpath +import wicd.wpath as wpath HAS_NOTIFY = True try: diff --git a/wicd/netentry.py b/wicd/netentry.py index 9736504..eeabfd6 100644 --- a/wicd/netentry.py +++ b/wicd/netentry.py @@ -26,13 +26,13 @@ contained within them. import gtk import os -import misc -import wpath -import dbusmanager -from misc import noneToString, stringToNone, noneToBlankString, to_bool +import wicd.misc as misc +import wicd.wpath as wpath +import wicd.dbusmanager as dbusmanager +from wicd.misc import noneToString, stringToNone, noneToBlankString, to_bool from guiutil import error, LabelEntry, GreyLabel, LeftAlignedLabel, string_input -from translations import language +from wicd.translations import language # These get set when a NetworkEntry is instantiated. daemon = None @@ -303,7 +303,7 @@ class WiredSettingsDialog(AdvancedSettingsDialog): def edit_scripts(self, widget=None, event=None): """ Launch the script editting dialog. """ profile = self.prof_name - cmdend = [os.path.join(wpath.lib, "configscript.py"), profile, "wired"] + cmdend = [os.path.join(wpath.gtk, "configscript.py"), profile, "wired"] if os.getuid() != 0: cmdbase = misc.get_sudo_cmd(language['scripts_need_pass'], prog_num=daemon.GetSudoApp()) @@ -408,7 +408,7 @@ class WirelessSettingsDialog(AdvancedSettingsDialog): def edit_scripts(self, widget=None, event=None): """ Launch the script editting dialog. """ - cmdend = [os.path.join(wpath.lib, "configscript.py"), + cmdend = [os.path.join(wpath.gtk, "configscript.py"), str(self.networkID), "wireless"] if os.getuid() != 0: cmdbase = misc.get_sudo_cmd(language['scripts_need_pass'], diff --git a/wicd/prefs.py b/wicd/prefs.py index 948074c..7985de7 100644 --- a/wicd/prefs.py +++ b/wicd/prefs.py @@ -39,7 +39,7 @@ daemon = None wireless = None wired = None -from translations import language +from wicd.translations import language USER_SETTINGS_DIR = os.path.expanduser('~/.wicd/') diff --git a/wicd/wicd-client.py b/wicd/wicd-client.py index 343b7ff..9deb1b6 100644 --- a/wicd/wicd-client.py +++ b/wicd/wicd-client.py @@ -60,9 +60,9 @@ except ImportError: # Wicd specific imports from wicd import wpath from wicd import misc -from wicd import gui from wicd import dbusmanager -from wicd.guiutil import error, can_use_notify +import gui +from guiutil import error, can_use_notify from wicd.translations import language diff --git a/wicd/wicd-daemon.py b/wicd/wicd-daemon.py index 4fbc478..be08c75 100644 --- a/wicd/wicd-daemon.py +++ b/wicd/wicd-daemon.py @@ -1790,7 +1790,7 @@ def main(argv): daemon = WicdDaemon(wicd_bus, auto_connect=auto_connect) if not no_poll: child_pid = Popen([misc.find_path("python"), "-O", - os.path.join(wpath.lib, "monitor.py")], + os.path.join(wpath.lib, "daemon", "monitor.py")], shell=False, close_fds=True).pid atexit.register(on_exit, child_pid)