Check-in [ffc6b46c9f]
Overview
Comment:KitCreator downloader: Make the downloaded Tclkit executable
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: ffc6b46c9f42bff469e84e409e46bc2e3a6f54e7
User & Date: dbohdan on 2016-03-08 18:28:39
Other Links: manifest | tags
Context
2016-03-08
19:12
Improved buildinfo URL guessing. Fixed Tclkits with no packages having a dash an the end of the filename. Do not use [file attributes] to restore Jim Tcl compatibility. check-in: 8e422c69d7 user: dbohdan tags: trunk
18:28
KitCreator downloader: Make the downloaded Tclkit executable check-in: ffc6b46c9f user: dbohdan tags: trunk
18:20
KitCreator downloader: use /buildinfo URLs instead of parsing building pages. check-in: 0aa347b99c user: dbohdan tags: trunk
Changes

Modified build/utils/kitcreator-downloader.tcl from [f7dbe58451] to [a023a886a6].

1
2

3
4
5
6
7
8
9
1

2
3
4
5
6
7
8
9

-
+







#!/usr/bin/env tclsh
# KitCreator downloader v0.2.0 -- download Tclkits created with the KitCreator
# KitCreator downloader v0.2.1 -- download Tclkits created with the KitCreator
# Web Interface. Works with Tcl 8.5+ and Jim Tcl v0.75+.
# Copyright (C) 2016, dbohdan.
# License: MIT.
proc download url {
    # Guess at what the buildinfo URL might be if we are given, e.g., a building
    # page URL.
    set url [string map {/building {}} $url]
33
34
35
36
37
38
39

40
41
42
43
44
45
46
47
48
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49







+









    if {[string index $baseUrl end] ne {/}} {
        append baseUrl /
    }
    set tclkit $baseUrl[dict get $buildInfo filename]

    puts "Downloading $tclkit to $filename..."
    exec curl -o $filename $tclkit >@ stdout 2>@ stderr
    file attributes $filename -permissions +x
}

set url [lindex $argv 0]
if {$url eq {}} {
    puts "usage: $argv0 url"
    puts {The URL must be a KitCreator Web Interface buildinfo page.}
} else {
    download $url
}