44 val version = |
44 val version = |
45 Library.try_unprefix("EasyChair", easychair_dir.file_name) |
45 Library.try_unprefix("EasyChair", easychair_dir.file_name) |
46 .getOrElse("Failed to detect version from " + quote(easychair_dir.file_name)) |
46 .getOrElse("Failed to detect version from " + quote(easychair_dir.file_name)) |
47 |
47 |
48 val component = "easychair-" + version |
48 val component = "easychair-" + version |
49 val component_dir = Isabelle_System.new_directory(target_dir + Path.basic(component)) |
49 val component_dir = |
50 progress.echo("Component " + component_dir) |
50 Components.Directory.create(target_dir + Path.basic(component), progress = progress) |
51 |
51 |
52 component_dir.file.delete |
52 Isabelle_System.rm_tree(component_dir.path) |
53 Isabelle_System.copy_dir(easychair_dir, component_dir) |
53 Isabelle_System.copy_dir(easychair_dir, component_dir.path) |
|
54 Isabelle_System.make_directory(component_dir.etc) |
54 |
55 |
55 |
56 |
56 /* settings */ |
57 /* settings */ |
57 |
58 |
58 val etc_dir = Isabelle_System.make_directory(component_dir + Path.basic("etc")) |
59 File.write(component_dir.settings, |
59 File.write(etc_dir + Path.basic("settings"), |
|
60 """# -*- shell-script -*- :mode=shellscript: |
60 """# -*- shell-script -*- :mode=shellscript: |
61 |
61 |
62 ISABELLE_EASYCHAIR_HOME="$COMPONENT" |
62 ISABELLE_EASYCHAIR_HOME="$COMPONENT" |
63 """) |
63 """) |
64 |
64 |
65 |
65 |
66 /* README */ |
66 /* README */ |
67 |
67 |
68 File.write(component_dir + Path.basic("README"), |
68 File.write(component_dir.README, |
69 """This is the Easychair style for authors from |
69 """This is the Easychair style for authors from |
70 """ + download_url + """ |
70 """ + download_url + """ |
71 |
71 |
72 |
72 |
73 Makarius |
73 Makarius |