FlightGear configuration via XML: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
No edit summary
Line 10: Line 10:


== defaults.xml and autosave.xml ==
== defaults.xml and autosave.xml ==
FlightGear installs with a configuration already set up in a XML file, {{Base Package Filename|filename=preferences.xml}}.  Some of these settings are preserved between FlightGear sessions in another file, <code>autosave.xml</code>.  All settings contained in these two files get parsed by FlightGear while it starts up.
FlightGear installs with a configuration already set up in a XML file, {{Base Package Resource|filename=preferences.xml}}.  Some of these settings are preserved between FlightGear sessions in another file, <code>autosave.xml</code>.  All settings contained in these two files get parsed by FlightGear while it starts up.


Some of the properties in {{Base Package Filename|filename=preferences.xml}} have an XML attribute, <code>userarchive</code>, that automatically add any changes of those properties to <code>autosave.xml</code>.
Some of the properties in {{Base Package Resource|filename=preferences.xml}} have an XML attribute, <code>userarchive</code>, that automatically add any changes of those properties to <code>autosave.xml</code>.


we should absolutely stop telling anyone to edit {{Base Package Filename|filename=preferences.xml}} in FG_ROOT; any documentation or advice which says to should be changes ASAP. <ref>{{cite web
we should absolutely stop telling anyone to edit {{Base Package Resource|filename=preferences.xml}} in FG_ROOT; any documentation or advice which says to should be changes ASAP. <ref>{{cite web
   |url    =  https://forum.flightgear.org/viewtopic.php?p=192632#p192632  
   |url    =  https://forum.flightgear.org/viewtopic.php?p=192632#p192632  
   |title  =  <nowiki> Re: NavCache:init failed:Sqlite error:Sqlite API abuse </nowiki>  
   |title  =  <nowiki> Re: NavCache:init failed:Sqlite error:Sqlite API abuse </nowiki>  
Line 26: Line 26:
=== defaults.xml ===
=== defaults.xml ===
{{Main article|defaults.xml}}
{{Main article|defaults.xml}}
{{Base Package Filename|filename=preferences.xml}} is FlightGear's main configuration file and is located within [[$FG_ROOT]].
{{Base Package Resource|filename=preferences.xml}} is FlightGear's main configuration file and is located within [[$FG_ROOT]].


Using the [[PropertyList XML files|property-list]] format it sets up a large number of [[Property tree|properties]] and their values that determines various settings of FlightGear.  It more or less contain all settings that can be set.  All settings contained within this file get parsed by FlightGear while it starts up.
Using the [[PropertyList XML files|property-list]] format it sets up a large number of [[Property tree|properties]] and their values that determines various settings of FlightGear.  It more or less contain all settings that can be set.  All settings contained within this file get parsed by FlightGear while it starts up.

Revision as of 22:21, 6 January 2019

This article is a stub. You can help the wiki by expanding it.
Screen shot showing typical structure $FG_HOME

You can set up a FlightGear configuration via XML by creating a XML file that loads on to of FlightGear's other settings.

Next to using graphical launchers like FGRun or FGx or parsing console commands to FlightGear's binary, FlightGear's configuration can also be set by means of two .xml files.

defaults.xml and autosave.xml

FlightGear installs with a configuration already set up in a XML file, defaults.xml (previously, preferences.xml FlightGear commit 78498c560d30797ee55c277ea5f1c74f120fe1a2 ). Some of these settings are preserved between FlightGear sessions in another file, autosave.xml. All settings contained in these two files get parsed by FlightGear while it starts up.

Some of the properties in defaults.xml (previously, preferences.xml FlightGear commit 78498c560d30797ee55c277ea5f1c74f120fe1a2 ) have an XML attribute, userarchive, that automatically add any changes of those properties to autosave.xml.

we should absolutely stop telling anyone to edit defaults.xml (previously, preferences.xml FlightGear commit 78498c560d30797ee55c277ea5f1c74f120fe1a2 ) in FG_ROOT; any documentation or advice which says to should be changes ASAP. [1]


defaults.xml

1rightarrow.png See defaults.xml for the main article about this subject.

defaults.xml (previously, preferences.xml FlightGear commit 78498c560d30797ee55c277ea5f1c74f120fe1a2 ) is FlightGear's main configuration file and is located within $FG_ROOT.

Using the property-list format it sets up a large number of properties and their values that determines various settings of FlightGear. It more or less contain all settings that can be set. All settings contained within this file get parsed by FlightGear while it starts up.

autosave.xml

autosave.xml is a child of preferences.xml in user space that contains the properties with an userarchive="y" attribute. Location depends on the operating system used:

OS Path
Windows Vista/7/8 C:\Users\{Your username}\AppData\Roaming\flightgear.org\
Windows XP C:\Documents and Settings\{Your username}\Application Data\flightgear.org\
Linux/OS X ~/.fgfs

If not present, it is generated upon launching FGFS with the options set in its parent file Preferences.xml.

Any changes you do within FlightGear's user interface are saved into autosave.xml, so a manual edit is, in most cases, not necessary. The next time you launch FGFS, the settings stored in autosave.xml will be used.

Adding your own settings

Rather than modifying preferences.xml or autosave.xml you should create your own configuration file using the same format and load it using the --config command-line parameter. You are not limited only to use properties from those files, but can use any properties from the property tree. You can also add entirely new properties if that is needed.

When you use the --config option to load your own configuration, it will be loaded into FlightGear just as preferences.xml and autosave.xml, but your configuration will be used instead. To use your own configuration add this command-line parameter either in .fgfsrc or when you start FlightGear:

--config=/home/<user name>/.fgfs/<my-preferences>.xml

The reason to why you should not modify preferences.xml or autosave.xml is that the modifications can cause problems with your FlightGear installation and, unless you manually make a copy of them, they will be lost when you upgrade or uninstall FlightGear. In addition, using a configuration file from one version of FlightGear with another version may not work too well either.

Related content

References