Index: client/1.0/neutral/pkgu.eagle ================================================================== --- client/1.0/neutral/pkgu.eagle +++ client/1.0/neutral/pkgu.eagle @@ -624,10 +624,18 @@ } return [string trim $directory] } + # + # NOTE: This procedure builds a native path using the specified parts and + # returns it. All arguments are considered to be parts of the path. + # + proc joinPath { args } { + return [file nativename [eval file join $args]] + } + # # NOTE: This procedure attempts to verify that the root directory of the # Fossil checkout is present, valid, and is actually a directory. # There are no arguments. Script errors will be raised if any of # the checks fail. @@ -634,12 +642,12 @@ # proc verifyCheckoutDirectory {} { variable checkoutDirectory if {[isWindows]} then { - set repositories C:\\repositories - set checkouts C:\\checkouts + set repositories C:/repositories + set checkouts C:/checkouts } else { set repositories ~/repositories set checkouts ~/checkouts } @@ -648,41 +656,39 @@ Prior to running the package uploader client tool, Fossil must be installed -AND- the Package File Server repository must be cloned and opened, using commands very similar to the following: - mkdir ${repositories} - cd ${repositories} + mkdir [joinPath ${repositories}] + cd [joinPath ${repositories}] fossil clone https://your_login@pkg.management/pkgd pkgd.fossil - mkdir ${checkouts} - cd ${checkouts} - fossil open [file join ${repositories} pkgd.fossil] + mkdir [joinPath ${checkouts}] + cd [joinPath ${checkouts}] + fossil open [joinPath ${repositories} pkgd.fossil] After the above steps have been completed, package uploader client tool can be executed using a command very similar to the following: - tclsh [file join ${checkouts} client 1.0 neutral pkgr_upload.eagle] + tclsh [joinPath ${checkouts} client 1.0 neutral pkgr_upload.eagle] }]] if {![info exists checkoutDirectory]} then { - set error "checkout directory is missing" - - error [string map [list %error% $error] $message] + error [string map [list \ + %error% "checkout directory is missing"] \ + $message] } if {[string length $checkoutDirectory] == 0} then { - set error "checkout directory is invalid" - - error [string map [list %error% $error] $message] + error [string map [list \ + %error% "checkout directory is invalid"] \ + $message] } if {![file isdir $checkoutDirectory]} then { - set error [appendArgs \ + error [string map [list %error% [appendArgs \ "checkout directory \"" $checkoutDirectory \ - "\" is not really a directory"] - - error [string map [list %error% $error] $message] + "\" is not really a directory"]] $message] } } # # NOTE: This procedure attempts to verify that an implementation of Fossil Index: client/1.0/neutral/pkgu.eagle.asc ================================================================== --- client/1.0/neutral/pkgu.eagle.asc +++ client/1.0/neutral/pkgu.eagle.asc @@ -1,18 +1,18 @@ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository -iQIcBAABCAAGBQJYYGgiAAoJEFAslq9JXcLZbEAQAMBSGYpCun4rMNua1p1UqHjC -PDOnqa8yo4n7V/462uqo834b5NgSFyRqOMO8/fHtqXWY7V2WnqVlvKoV6Ay4n5Ne -diJ2XJnDhe2x9e8DyqKeauWHqdpAXcWhzZYUdpHjU84VUaJKLErS7+dfEErsRKps -oVMZjTozvs9Xz1rIThZRWXmwvP/espaXLKetttemthJKE/4hNaboHjlxjedvQ+CY -/2ris8YWB9tZ+8M80XISViLIIa8i+VKi6SwVbOkemkUs/zpfDCqi6dW48ZvaZMI5 -MB5KplfDwSTHBIk4hEDqyw1I7i0sR6N7o5hJLX9yHaVOFJZWDHLHHFYqoyY2JymN -PczsuGBPPZqU09Cy2RdUXkP0CY+ingQVmsDCXf6btLdRNxSpvCys20V8voaknMpT -7krBSxo9LlVdJEntQfW98ibKhmp7RZUi9OAGQzDM/MCPLk+MHXiqC6P90997j9JX -fReKCwj/wNfzjgVnmRCA2p7P6JOTWroSnKCzsi9ucvN1Z9H152nONpn7WBXhN27o -yctnzgIUue0RbL23gcGHZDrCplm7GGEOZ8c+iIJCMRado1fPRKWOfvHTYonWuKHI -IXlRP46/xBB2rvhJzDe54BPRaFDQqwKZtIM+HCWSdw24+/7uu/abpqr4eR30dHHb -ufEn6qildkhNxublkdz+ -=iEQO +iQIcBAABCAAGBQJYYGx/AAoJEFAslq9JXcLZCs4P/05lLmqJJ3VGRntDmjBrJ975 +qOICvmX84RES3fZA4q6dsL+UcSt7TVNQjgKUWVaGCjVLm6KT1ReNtddPWOMlatxB +jNYAqHa+6f3kvZlL4a3hheLjoFAfrwajGSkIyImy3WjR/1EEKI9GcByBiccY6G49 +MtqgI0ZNcIxpPbm/1nhwOeiiWO6uMTTA/zNvccUu4Rd/PhJyzdr4+dl+zPyoPWG+ +ghjJK383URQTvZ6uA/GgYnIsabP1G5ttCzj5WE7Ioqe99J7B+UHSGh9TDGEavRyU +w+cdbnkIEPPy1sM4hpOWXM137YFvaYHbuBU05tJyGkpFWIDbsNrSLiaKyiRGWC49 +CwmVxgsRb+tOojQig2nL9/At76CI5bpNkf3NB28RqwTWF/5ag89wi6c90SIAWVSH +MTCmwzeV2KUYNp0aFSOnJRJC/zcclruS25ItpNN2VSZE+nnHoscB5mUANlqCk+kW +LkhbpJA+ZBWxIDyFUnwoGjG8XFpaEPhOx1XH7RpC03LSpUURP8yrbqPqj+WLPMlD +WTm1I9fHemEQo2ghiuYa4gg/k58MtQiAq9irtmZ+ofV5FSU3MtxY9THC+GEWEeAh +sIMfifvoBfC8oI9/BBSpdVfZvw87EHhumqesfCalY6lZ4aOY0F1Tl12LcQduvoDf +kijm4I5Z307Ch7TItHVF +=bzsD -----END PGP SIGNATURE----- Index: client/1.0/neutral/pkgu.eagle.harpy ================================================================== --- client/1.0/neutral/pkgu.eagle.harpy +++ client/1.0/neutral/pkgu.eagle.harpy @@ -19,50 +19,50 @@ None Mistachkin Systems - 35aa66b6-34f2-4468-b2d4-f37118db09ab + 63f281ab-3d9d-4043-9b62-139f09a7cdcb SHA512 Script - 2016-12-26T00:44:28.2502578Z + 2016-12-26T01:03:33.8713515Z -1.00:00:00 0x9559f6017247e3e2 - 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 Index: client/1.0/neutral/pkgu.eagle.harpy.asc ================================================================== --- client/1.0/neutral/pkgu.eagle.harpy.asc +++ client/1.0/neutral/pkgu.eagle.harpy.asc @@ -1,18 +1,18 @@ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository -iQIcBAABCAAGBQJYYGgjAAoJEFAslq9JXcLZCuMQAI6v/gdRryLRqpOTlKBBoo1Y -vapN6M+YOoIsDE9TcezpgayUNmGnpVaBN7hAX9kOF4qN17Dths1y35DQcgnqHzIK -QE3TWrdorAuyCKVB0G2/hc3H9wG/muqIomSlwrgq0NnVcVvl+BQVpZmCdBKoplbi -ImoSM4HP8otKrIMY83zFBcm7ySNaxHyUUrJ7s6ufNOOQYqGZFPrSShiPeadwbdZ1 -Bav3pYZDKQap+PUDDNq1ZOaQNiSaX7MgeeMH+ACMrGUvGv0nfGuO3N2Kaj2MI4Xk -Q3PiZKV94njU/FBWjNgAW28fVKAmYsJ4iexXY7pnSKr5rIOPZhYUSQW33JinfIrS -mkKsA2h/0+IUdn3qkpG8FdPRSolhhKSbPuXw81JG8YWT6w56+6D3yAAWoaQPOxjt -DKobjqZUJYyMgZLLWfy0dz3TWnn5jNUYxJhw/XxEK19xfJr9RJn2wD7yA65U4f79 -OLvWxPM27fygBDoD3bHepKuGJ9JixZrambCBBJfzTBukkl14y2QrOxlI31L7rIQl -v0r1tGD27k0kQgNpc7EcKqlwRGbhRwPPZ6QcRV+UvcRDtXXZ9ntFjlPWuPTWgWKY -cJ7Mkj2eG0VJ2kpSy6NJW0QTf72e7Ppze+ZWagfC9Jf7sCRZIMRatiKD1oV3Gmm9 -qAAWz/TXPHiSFJ4FN6Sb -=CjvD +iQIcBAABCAAGBQJYYGyBAAoJEFAslq9JXcLZA34QAIS4LGJCAILtcFpxNDCB8K3A +WEmnf4OOSFucX4JTLoVm/XkM0zQRx70fyTFUQGIuTt7zDo+gJqmltUskLuQC8W2b +yPcJ+89jRtWHL2pDUGQcNBWPEkaTKh2KsJH5yAZZ4s85gwZ5eibs1h2BsA1zBfOk +2+l59qvYepBEduSv6Od4K35Tv6oYdZCiZu0H9EQAUbpjKf/bdhXNUyIgS/h6P2Ue +ddp1blX07Tz3+EItucGm8CA8i/x7mPniYoHcRb8wEsbI8jYeNGjkwD6p8Fkbu22A +ltuN1RaYh94893vDkZH+r0hU9K/qCs3yjsRk2eew4hNu0LKEjokCvl63fppLC6v8 +2ffuFrYIFKb998yTq1F4FfSrEUqfw0gDVdVDPJ6P40gJwm+XgUncvFB1Agx0BS1a +MHvYjO2fbOYN43qWPXpH2Zf77tCSvJJIxXpeSe/rp/Tn4vnI/Bit9XJq8AA0pE3v +jmKciLSro8TDh6ZFeQJTxSeHEDMNQltdopXLSIzjEBmhO6zcfWxZsNbPdsti3q3S +oSaAGJjNDO2jxSXaoDjavBWK0swmjqp3N9KvFkMGCblF8g+0gQYxp6NWQN6TNVmw +zJTHP7M0OMmmn1LbmSvGClfkvGBfhEoFYcrVZLJfY1uo388fmjcI/4jxqCG+s1mH +nonC4/oDh1r6QPW0DXwG +=D8FD -----END PGP SIGNATURE-----