--- a/src/Pure/Admin/other_isabelle.scala Sun Oct 21 14:35:46 2018 +0200
+++ b/src/Pure/Admin/other_isabelle.scala Sun Oct 21 18:32:33 2018 +0200
@@ -61,12 +61,22 @@
val etc_settings: Path = etc + Path.explode("settings")
val etc_preferences: Path = etc + Path.explode("preferences")
+ def fonts(html: Boolean = false): List[Path] =
+ Isabelle_System.fonts(html = html, get = getenv(_))
- /* init settings */
+
+ /* settings */
+
+ def clean_settings(): Boolean =
+ if (!etc_settings.is_file) true
+ else if (File.read(etc_settings).startsWith("# generated by Isabelle")) {
+ etc_settings.file.delete; true
+ }
+ else false
def init_settings(components_base: String, nonfree: Boolean, more_settings: List[String])
{
- if (etc_settings.is_file && !File.read(etc_settings).startsWith("# generated by Isabelle"))
+ if (!clean_settings())
error("Cannot proceed with existing user settings file: " + etc_settings)
Isabelle_System.mkdirs(etc_settings.dir)
@@ -94,4 +104,14 @@
File.append(etc_settings, "\n" + cat_lines(settings.map(terminate_lines(_))))
}
+
+
+ /* cleanup */
+
+ def cleanup()
+ {
+ clean_settings()
+ etc.file.delete
+ isabelle_home_user.file.delete
+ }
}