Convert a package from Curl source to a compact representation (pcurl)
Returns
Notes
{curl 8.0 applet}
{let constant files:UrlArray =
{UrlArray
{url "load.scurl"},
{url "common/load.scurl"},
{url "screens/Projects/load.scurl"},
{url "screens/Risk/load.scurl"},
{url "pages/bar-chart-3d/load.scurl"},
{url "pages/simple-graph/load.scurl"}
}
}
{let status:VBox = {VBox}}
{let total-pcurl-size:int64 = 0}
{define-proc package {pcurl-file-by-index index:int}:void
{if not {files.in-bounds? index} then
{status.add
"Total pcurled size = " & total-pcurl-size & " bytes."
}
{return}
}
let u:Url = files[index]
{status.add "Beginning to pcurl '" & u & "'"}
{try
{pcurl-file u}
let u2:Url = {u.set-extension ".pcurl"}
let size:int64 = {{u2.resolve}.info}.size
{status.add
"Created '" & u2 & "', size = " & size & " bytes."
}
{inc total-pcurl-size, size}
catch ex:Exception do
{status.add
{text color = "red", Error: {value ex}}
}
}
{status.add {Fill height = 5pt}}
{after 0s do
{pcurl-file-by-index index + 1}
}
}
{if not {process-privileged?} then
{center
color = "red",
This page requires trusted access to your system
in order to translate packages to single pcurl files.
Please use the Curl Control Panel to give privilege
to this applet.
}
else
{status.add "Starting to pcurl all the packages..."}
{status.add {Fill height = 5pt}}
{after 0s do
{pcurl-file-by-index 0}
}
{value status}
}
Revisions