203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
|
#
# NOTE: This procedure sets up the default values for all configuration
# parameters used by the package downloader client. The script
# argument is the fully qualified path and file name for the script
# being evaluated.
#
proc setupDownloadVars { script } {
#
# NOTE: What is the fully qualified path to the directory containing the
# package downloader client?
#
variable clientDirectory
if {![info exists clientDirectory]} then {
set clientDirectory [file normalize [file dirname $script]]
}
#
# NOTE: This is the HTTP(S) login cookie to use when downloading files
# from the package file server.
#
variable loginCookie; # DEFAULT: NONE
if {![info exists loginCookie]} then {
set loginCookie [list]
}
#
# NOTE: Prevent progress messages from being displayed while downloading
# from the repository, etc? By default, this is enabled.
#
variable quiet; # DEFAULT: true
if {![info exists quiet]} then {
set quiet true
}
#
# NOTE: Emit diagnostic messages when a new temporary directory name is
# created.
#
variable verboseTemporaryDirectory; # DEFAULT: false
if {![info exists verboseTemporaryDirectory]} then {
set verboseTemporaryDirectory false
}
#
# NOTE: The user name for the public account on the package file server.
# If this is an empty string, there is no public account.
#
variable publicUserName; # DEFAULT: public
if {![info exists publicUserName]} then {
set publicUserName public
}
#
# NOTE: The password associated with the public account on the package
# file server. If this is an empty string, the public account is
# disabled. This is not considered to be a secret; however, it
# should not be shared with any person or organization that does
# not have access to the package downloader client.
#
variable publicPassword; # DEFAULT: X+NlF2obS5tQFKIsf/q345/naqVSGD67Cg
if {![info exists publicPassword]} then {
set publicPassword X+NlF2obS5tQFKIsf/q345/naqVSGD67Cg
}
#
# NOTE: The root directory where any persistent packages will be saved.
#
variable persistentRootDirectory; # DEFAULT: [getPersistentRootDirectory]
if {![info exists persistentRootDirectory]} then {
set persistentRootDirectory [getPersistentRootDirectory]
}
#
# NOTE: The root directory where any temporary packages will be written.
#
variable temporaryRootDirectory; # DEFAULT: [getFileTempDirectory PKGD_TEMP]
if {![info exists temporaryRootDirectory]} then {
set temporaryRootDirectory \
[::PackageRepository::getFileTempDirectory PKGD_TEMP]
}
#
# NOTE: Is this package being run by the package installer tool? If so,
# all downloaded packages should be automatically persisted to the
# library path.
#
variable viaInstall; # DEFAULT: false
if {![info exists viaInstall]} then {
set viaInstall false
}
#
# NOTE: This is the name of the executable file used to invoke the
# Mono implementation, possibly without a file extension.
#
variable monoFileNameOnly; # DEFAULT: <unset>
if {![info exists monoFileNameOnly]} then {
if {[isWindows]} then {
set monoFileNameOnly mono.exe
} else {
set monoFileNameOnly mono
}
}
#
# NOTE: The command to use when attempting to verify that Mono and its
# associated runtimes are installed locally. Generally, this is
# not needed on Windows machines.
#
variable monoInstalledCommand; # DEFAULT: mono --version
if {![info exists monoInstalledCommand]} then {
set monoInstalledCommand {{${monoFileNameOnly}} --version}
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that Mono and its associated runtimes are installed locally.
# Generally, this is not needed on Windows machines.
#
variable monoInstalledPattern; # DEFAULT: ^Mono JIT compiler version \d+\.
if {![info exists monoInstalledPattern]} then {
set monoInstalledPattern {^Mono JIT compiler version \d+\.}
}
#
# NOTE: This is the name of the executable file used to invoke the
# .NET Core implementation, possibly without a file extension.
#
variable dotnetFileNameOnly; # DEFAULT: <unset>
if {![info exists dotnetFileNameOnly]} then {
if {[isWindows]} then {
set dotnetFileNameOnly dotnet.exe
} else {
set dotnetFileNameOnly dotnet
}
}
#
# NOTE: The command to use when attempting to verify that .NET Core and
# its associated runtimes are installed locally. Generally, this
# is not needed on Windows machines.
#
variable dotnetInstalledCommand; # DEFAULT: dotnet --version
if {![info exists dotnetInstalledCommand]} then {
set dotnetInstalledCommand {{${dotnetFileNameOnly}} --version}
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that .NET Core and its associated runtimes are installed locally.
# Generally, this is not needed on Windows machines.
#
variable dotnetInstalledPattern; # DEFAULT: ^\d+\.\d+(?:\.\d+)*$
if {![info exists dotnetInstalledPattern]} then {
set dotnetInstalledPattern {^\d+\.\d+(?:\.\d+)*$}
}
}
#
# NOTE: This procedure modifies the URN variables used by the package
# downloader client so that one or more alternative (private?)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
|
#
# NOTE: This procedure sets up the default values for all configuration
# parameters used by the package downloader client. The script
# argument is the fully qualified path and file name for the script
# being evaluated.
#
proc setupDownloadVars { script force } {
#
# NOTE: What is the fully qualified path to the directory containing the
# package downloader client?
#
variable clientDirectory
if {$force || ![info exists clientDirectory]} then {
set clientDirectory [file normalize [file dirname $script]]
}
#
# NOTE: This is the HTTP(S) login cookie to use when downloading files
# from the package file server.
#
variable loginCookie; # DEFAULT: NONE
if {$force || ![info exists loginCookie]} then {
set loginCookie [list]
}
#
# NOTE: Prevent progress messages from being displayed while downloading
# from the repository, etc? By default, this is enabled.
#
variable quiet; # DEFAULT: true
if {$force || ![info exists quiet]} then {
set quiet true
}
#
# NOTE: Emit diagnostic messages when a new temporary directory name is
# created.
#
variable verboseTemporaryDirectory; # DEFAULT: false
if {$force || ![info exists verboseTemporaryDirectory]} then {
set verboseTemporaryDirectory false
}
#
# NOTE: The user name for the public account on the package file server.
# If this is an empty string, there is no public account.
#
variable publicUserName; # DEFAULT: public
if {$force || ![info exists publicUserName]} then {
set publicUserName public
}
#
# NOTE: The password associated with the public account on the package
# file server. If this is an empty string, the public account is
# disabled. This is not considered to be a secret; however, it
# should not be shared with any person or organization that does
# not have access to the package downloader client.
#
variable publicPassword; # DEFAULT: X+NlF2obS5tQFKIsf/q345/naqVSGD67Cg
if {$force || ![info exists publicPassword]} then {
set publicPassword X+NlF2obS5tQFKIsf/q345/naqVSGD67Cg
}
#
# NOTE: The root directory where any persistent packages will be saved.
#
variable persistentRootDirectory; # DEFAULT: [getPersistentRootDirectory]
if {$force || ![info exists persistentRootDirectory]} then {
set persistentRootDirectory [getPersistentRootDirectory]
}
#
# NOTE: The root directory where any temporary packages will be written.
#
variable temporaryRootDirectory; # DEFAULT: [getFileTempDirectory PKGD_TEMP]
if {$force || ![info exists temporaryRootDirectory]} then {
set temporaryRootDirectory \
[::PackageRepository::getFileTempDirectory PKGD_TEMP]
}
#
# NOTE: Is this package being run by the package installer tool? If so,
# all downloaded packages should be automatically persisted to the
# library path.
#
variable viaInstall; # DEFAULT: false
if {$force || ![info exists viaInstall]} then {
set viaInstall false
}
#
# NOTE: This is the name of the executable file used to invoke the
# Mono implementation, possibly without a file extension.
#
variable monoFileNameOnly; # DEFAULT: <unset>
if {$force || ![info exists monoFileNameOnly]} then {
if {[isWindows]} then {
set monoFileNameOnly mono.exe
} else {
set monoFileNameOnly mono
}
}
#
# NOTE: The command to use when attempting to verify that Mono and its
# associated runtimes are installed locally. Generally, this is
# not needed on Windows machines.
#
variable monoInstalledCommand; # DEFAULT: mono --version
if {$force || ![info exists monoInstalledCommand]} then {
set monoInstalledCommand {{${monoFileNameOnly}} --version}
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that Mono and its associated runtimes are installed locally.
# Generally, this is not needed on Windows machines.
#
variable monoInstalledPattern; # DEFAULT: ^Mono JIT compiler version \d+\.
if {$force || ![info exists monoInstalledPattern]} then {
set monoInstalledPattern {^Mono JIT compiler version \d+\.}
}
#
# NOTE: This is the name of the executable file used to invoke the
# .NET Core implementation, possibly without a file extension.
#
variable dotnetFileNameOnly; # DEFAULT: <unset>
if {$force || ![info exists dotnetFileNameOnly]} then {
if {[isWindows]} then {
set dotnetFileNameOnly dotnet.exe
} else {
set dotnetFileNameOnly dotnet
}
}
#
# NOTE: The command to use when attempting to verify that .NET Core and
# its associated runtimes are installed locally. Generally, this
# is not needed on Windows machines.
#
variable dotnetInstalledCommand; # DEFAULT: dotnet --version
if {$force || ![info exists dotnetInstalledCommand]} then {
set dotnetInstalledCommand {{${dotnetFileNameOnly}} --version}
}
#
# NOTE: The regular expression pattern used when attempting to verify
# that .NET Core and its associated runtimes are installed locally.
# Generally, this is not needed on Windows machines.
#
variable dotnetInstalledPattern; # DEFAULT: ^\d+\.\d+(?:\.\d+)*$
if {$force || ![info exists dotnetInstalledPattern]} then {
set dotnetInstalledPattern {^\d+\.\d+(?:\.\d+)*$}
}
}
#
# NOTE: This procedure modifies the URN variables used by the package
# downloader client so that one or more alternative (private?)
|
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
|
# one or more of the variable setup in the next step.
#
::PackageRepository::maybeReadSettingsFiles [info script]
#
# NOTE: Setup the variables, within this namespace, used by this script.
#
setupDownloadVars [info script]
#
# NOTE: Setup the server, version, and URI variables, in this namespace,
# that are used by this script.
#
setupDownloadServerVars false
setupDownloadVersionVars false
|
|
|
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
|
# one or more of the variable setup in the next step.
#
::PackageRepository::maybeReadSettingsFiles [info script]
#
# NOTE: Setup the variables, within this namespace, used by this script.
#
setupDownloadVars [info script] false
#
# NOTE: Setup the server, version, and URI variables, in this namespace,
# that are used by this script.
#
setupDownloadServerVars false
setupDownloadVersionVars false
|
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
|
maybeAddToAutoPath [expr {[isEagle] ? "eagle" : "tcl"}] \
$persistentRootDirectory
#
# NOTE: Provide the package to the interpreter.
#
package provide Eagle.Package.Downloader 1.0.8
}
|
|
|
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
|
maybeAddToAutoPath [expr {[isEagle] ? "eagle" : "tcl"}] \
$persistentRootDirectory
#
# NOTE: Provide the package to the interpreter.
#
package provide Eagle.Package.Downloader 1.0.9
}
|