def qgisMainInfo(): """Returns general QGIS information like version, code revision, lib and app paths, etc. """ if iface is None: try: app = QgsApplication(sys.argv, False) app.initQgis() appState = app.showSettings().replace("\t\t", " ").split("\n")[1:] prefixPath = app.prefixPath() libraryPath = app.libraryPath() libExecPath = app.libexecPath() pkgDataPath = app.pkgDataPath() except: appState = ["Could not read QGIS settings"] prefixPath = "Not available" libraryPath = "Not available" libExecPath = "Not available" pkgDataPath = "Not available" else: appState = QgsApplication.showSettings().replace("\t\t", " ").split("\n")[1:] prefixPath = QgsApplication.prefixPath() libraryPath = QgsApplication.libraryPath() libExecPath = QgsApplication.libexecPath() pkgDataPath = QgsApplication.pkgDataPath() return { "QGIS information": { "QGIS version": "{} ({})".format(Qgis.QGIS_VERSION, Qgis.QGIS_DEV_VERSION), "QGIS prefix path": prefixPath, "QGIS library path": libraryPath, "QGIS lib exec path": libExecPath, "QGIS pkg data path": pkgDataPath, "QGIS application state": appState } }