#!@PYTHON@ # @configure_input@ # The file debian-solfege.py.in is generated from run-solfege.py.in # by the configure script. # # GNU Solfege - ear training for GNOME # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Tom Cato Amundsen # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin ST, Fifth Floor, Boston, MA 02110-1301 USA import sys, os prefix = os.path.split(os.path.dirname(os.path.abspath(sys.argv[0])))[0] os.chdir(os.path.join(prefix, "share", "gnome", "solfege")) sys.path.append(os.path.join(prefix, "lib", "solfege")) sys.path.append(os.path.join(prefix, "share", "gnome", "solfege")) import src import src.cfg from src import filesystem # For future reverence: # The migration code to %APPDATA% on MS Windows that is in # solfege.py is not necessary here because this file is only used on # linux. if not os.path.exists(filesystem.app_data()): os.mkdir(filesystem.app_data()) if prefix == "/usr": sysconf = "/etc/solfege" else: sysconf = os.path.join(prefix, "etc", "solfege") try: src.cfg.initialise(os.path.join(prefix, "share", "gnome", "solfege", "default.config"), sysconf, gethomedir.get_rcfile_name()) except UnicodeDecodeError, e: import traceback traceback.print_exc() print "\n\tYou .solfegerc file is not properly utf8 encoded. Most likely" print "\tit is the path to some external program that contain non-ascii" print "\tcharacters. Please edit or delete the file. Or email it to" print "\ttca@gnu.org, and he will tell you what the problem is.\n" sys.exit(-1) # i18n should be imported very early in program init because it setup # the _ and _i functions for the whole program. import src.i18n src.i18n.setup(prefix, src.cfg.get_string("app/lc_messages")) import src.mainwin src.mainwin.start_app(prefix, os.path.join(prefix, "share", "gnome", "solfege"))