def checkLatexConfig(check_config, bool_docbook, bool_linuxdoc):
- ''' Explore the LaTeX configuration '''
+ ''' Explore the LaTeX configuration
+ Return None (will be passed to sys.exit()) for success.
+ '''
print 'checking LaTeX configuration... ',
# if --without-latex-config is forced, or if there is no previous
# version of textclass.lst, re-generate a default file.
tx.write(processLayoutFile(file, bool_docbook, bool_linuxdoc))
tx.close()
print '\tdone'
+ if not check_config:
+ return None
# the following will generate textclass.lst.tmp, and packages.lst.tmp
- if check_config:
+ else:
print '\tauto'
removeFiles(['wrap_chkconfig.ltx', 'chkconfig.vars', \
'chkconfig.classes', 'chklayouts.tex'])
break;
if re.match('^\+', line):
print line,
- fout.close()
+ # if the command succeeds, None will be returned
+ ret = fout.close()
#
# currently, values in chhkconfig are only used to set
# \font_encoding
and os.path.isfile('packages.lst.tmp') and len(open('packages.lst.tmp').read()) > 0:
shutil.move('textclass.lst.tmp', 'textclass.lst')
shutil.move('packages.lst.tmp', 'packages.lst')
+ return ret
def checkModulesConfig():
addToRC(r'\tex_expects_windows_paths %s' % windows_style_tex_paths)
checkOtherEntries()
# --without-latex-config can disable lyx_check_config
- checkLatexConfig( lyx_check_config and LATEX != '', bool_docbook, bool_linuxdoc)
+ ret = checkLatexConfig(lyx_check_config and LATEX != '',
+ bool_docbook, bool_linuxdoc)
checkModulesConfig() #lyx_check_config and LATEX != '')
removeTempFiles()
+ sys.exit(ret)
string configure_command = package().configure_command();
configure_command += option;
Systemcall one;
- one.startscript(Systemcall::Wait, configure_command);
+ int ret = one.startscript(Systemcall::Wait, configure_command);
p.pop();
// emit message signal.
lv.message(_("Reloading configuration..."));
// Re-read packages.lst
LaTeXFeatures::getAvailable();
- Alert::information(_("System reconfigured"),
+ if (ret)
+ Alert::information(_("System reconfiguration failed"),
+ _("The system reconfiguration has failed.\n"
+ "Default textclass is used but LyX may "
+ "not be able to work properly.\n"
+ "Please reconfigure again if needed."));
+ else
+
+ Alert::information(_("System reconfigured"),
_("The system has been reconfigured.\n"
"You need to restart LyX to make use of any\n"
"updated document class specifications."));