slitaz-dev-tools rev 171

Removed libtaz and old mirror files
author Christophe Lincoln <pankso@slitaz.org>
date Wed Apr 11 02:04:07 2012 +0200 (2012-04-11)
parents e3c9523d107f
children 480efc1aad8c
files libtaz/AUTHORS libtaz/COPYING libtaz/libtaz libtaz/libtaz-modules/commons libtaz/libtaz-modules/report libtaz/slitaz.conf mirror-tools/slitaz/mirror/dir-generator.php mirror-tools/slitaz/mirror/mirrors mirror-tools/slitaz/mirror/pxe/defaults.cfg mirror-tools/slitaz/mirror/pxe/mkcfg.sh
line diff
     1.1 --- a/libtaz/AUTHORS	Tue Apr 10 22:47:01 2012 +0200
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,6 +0,0 @@
     1.4 -Christophe Lincoln <pankso@slitaz.org>
     1.5 -Pascal Bellard <pascal.bellard@slitaz.org>
     1.6 -Eric Joseph-Alexandre <erjo@slitaz.org>
     1.7 -Paul Issott <paul@slitaz.org>
     1.8 -Rohit Joshi <jozee@slitaz.org>
     1.9 -Antoine Bodin <gokhlayeh@slitaz.org>
    1.10 \ No newline at end of file
     2.1 --- a/libtaz/COPYING	Tue Apr 10 22:47:01 2012 +0200
     2.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.3 @@ -1,674 +0,0 @@
     2.4 -                    GNU GENERAL PUBLIC LICENSE
     2.5 -                       Version 3, 29 June 2007
     2.6 -
     2.7 - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
     2.8 - Everyone is permitted to copy and distribute verbatim copies
     2.9 - of this license document, but changing it is not allowed.
    2.10 -
    2.11 -                            Preamble
    2.12 -
    2.13 -  The GNU General Public License is a free, copyleft license for
    2.14 -software and other kinds of works.
    2.15 -
    2.16 -  The licenses for most software and other practical works are designed
    2.17 -to take away your freedom to share and change the works.  By contrast,
    2.18 -the GNU General Public License is intended to guarantee your freedom to
    2.19 -share and change all versions of a program--to make sure it remains free
    2.20 -software for all its users.  We, the Free Software Foundation, use the
    2.21 -GNU General Public License for most of our software; it applies also to
    2.22 -any other work released this way by its authors.  You can apply it to
    2.23 -your programs, too.
    2.24 -
    2.25 -  When we speak of free software, we are referring to freedom, not
    2.26 -price.  Our General Public Licenses are designed to make sure that you
    2.27 -have the freedom to distribute copies of free software (and charge for
    2.28 -them if you wish), that you receive source code or can get it if you
    2.29 -want it, that you can change the software or use pieces of it in new
    2.30 -free programs, and that you know you can do these things.
    2.31 -
    2.32 -  To protect your rights, we need to prevent others from denying you
    2.33 -these rights or asking you to surrender the rights.  Therefore, you have
    2.34 -certain responsibilities if you distribute copies of the software, or if
    2.35 -you modify it: responsibilities to respect the freedom of others.
    2.36 -
    2.37 -  For example, if you distribute copies of such a program, whether
    2.38 -gratis or for a fee, you must pass on to the recipients the same
    2.39 -freedoms that you received.  You must make sure that they, too, receive
    2.40 -or can get the source code.  And you must show them these terms so they
    2.41 -know their rights.
    2.42 -
    2.43 -  Developers that use the GNU GPL protect your rights with two steps:
    2.44 -(1) assert copyright on the software, and (2) offer you this License
    2.45 -giving you legal permission to copy, distribute and/or modify it.
    2.46 -
    2.47 -  For the developers' and authors' protection, the GPL clearly explains
    2.48 -that there is no warranty for this free software.  For both users' and
    2.49 -authors' sake, the GPL requires that modified versions be marked as
    2.50 -changed, so that their problems will not be attributed erroneously to
    2.51 -authors of previous versions.
    2.52 -
    2.53 -  Some devices are designed to deny users access to install or run
    2.54 -modified versions of the software inside them, although the manufacturer
    2.55 -can do so.  This is fundamentally incompatible with the aim of
    2.56 -protecting users' freedom to change the software.  The systematic
    2.57 -pattern of such abuse occurs in the area of products for individuals to
    2.58 -use, which is precisely where it is most unacceptable.  Therefore, we
    2.59 -have designed this version of the GPL to prohibit the practice for those
    2.60 -products.  If such problems arise substantially in other domains, we
    2.61 -stand ready to extend this provision to those domains in future versions
    2.62 -of the GPL, as needed to protect the freedom of users.
    2.63 -
    2.64 -  Finally, every program is threatened constantly by software patents.
    2.65 -States should not allow patents to restrict development and use of
    2.66 -software on general-purpose computers, but in those that do, we wish to
    2.67 -avoid the special danger that patents applied to a free program could
    2.68 -make it effectively proprietary.  To prevent this, the GPL assures that
    2.69 -patents cannot be used to render the program non-free.
    2.70 -
    2.71 -  The precise terms and conditions for copying, distribution and
    2.72 -modification follow.
    2.73 -
    2.74 -                       TERMS AND CONDITIONS
    2.75 -
    2.76 -  0. Definitions.
    2.77 -
    2.78 -  "This License" refers to version 3 of the GNU General Public License.
    2.79 -
    2.80 -  "Copyright" also means copyright-like laws that apply to other kinds of
    2.81 -works, such as semiconductor masks.
    2.82 -
    2.83 -  "The Program" refers to any copyrightable work licensed under this
    2.84 -License.  Each licensee is addressed as "you".  "Licensees" and
    2.85 -"recipients" may be individuals or organizations.
    2.86 -
    2.87 -  To "modify" a work means to copy from or adapt all or part of the work
    2.88 -in a fashion requiring copyright permission, other than the making of an
    2.89 -exact copy.  The resulting work is called a "modified version" of the
    2.90 -earlier work or a work "based on" the earlier work.
    2.91 -
    2.92 -  A "covered work" means either the unmodified Program or a work based
    2.93 -on the Program.
    2.94 -
    2.95 -  To "propagate" a work means to do anything with it that, without
    2.96 -permission, would make you directly or secondarily liable for
    2.97 -infringement under applicable copyright law, except executing it on a
    2.98 -computer or modifying a private copy.  Propagation includes copying,
    2.99 -distribution (with or without modification), making available to the
   2.100 -public, and in some countries other activities as well.
   2.101 -
   2.102 -  To "convey" a work means any kind of propagation that enables other
   2.103 -parties to make or receive copies.  Mere interaction with a user through
   2.104 -a computer network, with no transfer of a copy, is not conveying.
   2.105 -
   2.106 -  An interactive user interface displays "Appropriate Legal Notices"
   2.107 -to the extent that it includes a convenient and prominently visible
   2.108 -feature that (1) displays an appropriate copyright notice, and (2)
   2.109 -tells the user that there is no warranty for the work (except to the
   2.110 -extent that warranties are provided), that licensees may convey the
   2.111 -work under this License, and how to view a copy of this License.  If
   2.112 -the interface presents a list of user commands or options, such as a
   2.113 -menu, a prominent item in the list meets this criterion.
   2.114 -
   2.115 -  1. Source Code.
   2.116 -
   2.117 -  The "source code" for a work means the preferred form of the work
   2.118 -for making modifications to it.  "Object code" means any non-source
   2.119 -form of a work.
   2.120 -
   2.121 -  A "Standard Interface" means an interface that either is an official
   2.122 -standard defined by a recognized standards body, or, in the case of
   2.123 -interfaces specified for a particular programming language, one that
   2.124 -is widely used among developers working in that language.
   2.125 -
   2.126 -  The "System Libraries" of an executable work include anything, other
   2.127 -than the work as a whole, that (a) is included in the normal form of
   2.128 -packaging a Major Component, but which is not part of that Major
   2.129 -Component, and (b) serves only to enable use of the work with that
   2.130 -Major Component, or to implement a Standard Interface for which an
   2.131 -implementation is available to the public in source code form.  A
   2.132 -"Major Component", in this context, means a major essential component
   2.133 -(kernel, window system, and so on) of the specific operating system
   2.134 -(if any) on which the executable work runs, or a compiler used to
   2.135 -produce the work, or an object code interpreter used to run it.
   2.136 -
   2.137 -  The "Corresponding Source" for a work in object code form means all
   2.138 -the source code needed to generate, install, and (for an executable
   2.139 -work) run the object code and to modify the work, including scripts to
   2.140 -control those activities.  However, it does not include the work's
   2.141 -System Libraries, or general-purpose tools or generally available free
   2.142 -programs which are used unmodified in performing those activities but
   2.143 -which are not part of the work.  For example, Corresponding Source
   2.144 -includes interface definition files associated with source files for
   2.145 -the work, and the source code for shared libraries and dynamically
   2.146 -linked subprograms that the work is specifically designed to require,
   2.147 -such as by intimate data communication or control flow between those
   2.148 -subprograms and other parts of the work.
   2.149 -
   2.150 -  The Corresponding Source need not include anything that users
   2.151 -can regenerate automatically from other parts of the Corresponding
   2.152 -Source.
   2.153 -
   2.154 -  The Corresponding Source for a work in source code form is that
   2.155 -same work.
   2.156 -
   2.157 -  2. Basic Permissions.
   2.158 -
   2.159 -  All rights granted under this License are granted for the term of
   2.160 -copyright on the Program, and are irrevocable provided the stated
   2.161 -conditions are met.  This License explicitly affirms your unlimited
   2.162 -permission to run the unmodified Program.  The output from running a
   2.163 -covered work is covered by this License only if the output, given its
   2.164 -content, constitutes a covered work.  This License acknowledges your
   2.165 -rights of fair use or other equivalent, as provided by copyright law.
   2.166 -
   2.167 -  You may make, run and propagate covered works that you do not
   2.168 -convey, without conditions so long as your license otherwise remains
   2.169 -in force.  You may convey covered works to others for the sole purpose
   2.170 -of having them make modifications exclusively for you, or provide you
   2.171 -with facilities for running those works, provided that you comply with
   2.172 -the terms of this License in conveying all material for which you do
   2.173 -not control copyright.  Those thus making or running the covered works
   2.174 -for you must do so exclusively on your behalf, under your direction
   2.175 -and control, on terms that prohibit them from making any copies of
   2.176 -your copyrighted material outside their relationship with you.
   2.177 -
   2.178 -  Conveying under any other circumstances is permitted solely under
   2.179 -the conditions stated below.  Sublicensing is not allowed; section 10
   2.180 -makes it unnecessary.
   2.181 -
   2.182 -  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
   2.183 -
   2.184 -  No covered work shall be deemed part of an effective technological
   2.185 -measure under any applicable law fulfilling obligations under article
   2.186 -11 of the WIPO copyright treaty adopted on 20 December 1996, or
   2.187 -similar laws prohibiting or restricting circumvention of such
   2.188 -measures.
   2.189 -
   2.190 -  When you convey a covered work, you waive any legal power to forbid
   2.191 -circumvention of technological measures to the extent such circumvention
   2.192 -is effected by exercising rights under this License with respect to
   2.193 -the covered work, and you disclaim any intention to limit operation or
   2.194 -modification of the work as a means of enforcing, against the work's
   2.195 -users, your or third parties' legal rights to forbid circumvention of
   2.196 -technological measures.
   2.197 -
   2.198 -  4. Conveying Verbatim Copies.
   2.199 -
   2.200 -  You may convey verbatim copies of the Program's source code as you
   2.201 -receive it, in any medium, provided that you conspicuously and
   2.202 -appropriately publish on each copy an appropriate copyright notice;
   2.203 -keep intact all notices stating that this License and any
   2.204 -non-permissive terms added in accord with section 7 apply to the code;
   2.205 -keep intact all notices of the absence of any warranty; and give all
   2.206 -recipients a copy of this License along with the Program.
   2.207 -
   2.208 -  You may charge any price or no price for each copy that you convey,
   2.209 -and you may offer support or warranty protection for a fee.
   2.210 -
   2.211 -  5. Conveying Modified Source Versions.
   2.212 -
   2.213 -  You may convey a work based on the Program, or the modifications to
   2.214 -produce it from the Program, in the form of source code under the
   2.215 -terms of section 4, provided that you also meet all of these conditions:
   2.216 -
   2.217 -    a) The work must carry prominent notices stating that you modified
   2.218 -    it, and giving a relevant date.
   2.219 -
   2.220 -    b) The work must carry prominent notices stating that it is
   2.221 -    released under this License and any conditions added under section
   2.222 -    7.  This requirement modifies the requirement in section 4 to
   2.223 -    "keep intact all notices".
   2.224 -
   2.225 -    c) You must license the entire work, as a whole, under this
   2.226 -    License to anyone who comes into possession of a copy.  This
   2.227 -    License will therefore apply, along with any applicable section 7
   2.228 -    additional terms, to the whole of the work, and all its parts,
   2.229 -    regardless of how they are packaged.  This License gives no
   2.230 -    permission to license the work in any other way, but it does not
   2.231 -    invalidate such permission if you have separately received it.
   2.232 -
   2.233 -    d) If the work has interactive user interfaces, each must display
   2.234 -    Appropriate Legal Notices; however, if the Program has interactive
   2.235 -    interfaces that do not display Appropriate Legal Notices, your
   2.236 -    work need not make them do so.
   2.237 -
   2.238 -  A compilation of a covered work with other separate and independent
   2.239 -works, which are not by their nature extensions of the covered work,
   2.240 -and which are not combined with it such as to form a larger program,
   2.241 -in or on a volume of a storage or distribution medium, is called an
   2.242 -"aggregate" if the compilation and its resulting copyright are not
   2.243 -used to limit the access or legal rights of the compilation's users
   2.244 -beyond what the individual works permit.  Inclusion of a covered work
   2.245 -in an aggregate does not cause this License to apply to the other
   2.246 -parts of the aggregate.
   2.247 -
   2.248 -  6. Conveying Non-Source Forms.
   2.249 -
   2.250 -  You may convey a covered work in object code form under the terms
   2.251 -of sections 4 and 5, provided that you also convey the
   2.252 -machine-readable Corresponding Source under the terms of this License,
   2.253 -in one of these ways:
   2.254 -
   2.255 -    a) Convey the object code in, or embodied in, a physical product
   2.256 -    (including a physical distribution medium), accompanied by the
   2.257 -    Corresponding Source fixed on a durable physical medium
   2.258 -    customarily used for software interchange.
   2.259 -
   2.260 -    b) Convey the object code in, or embodied in, a physical product
   2.261 -    (including a physical distribution medium), accompanied by a
   2.262 -    written offer, valid for at least three years and valid for as
   2.263 -    long as you offer spare parts or customer support for that product
   2.264 -    model, to give anyone who possesses the object code either (1) a
   2.265 -    copy of the Corresponding Source for all the software in the
   2.266 -    product that is covered by this License, on a durable physical
   2.267 -    medium customarily used for software interchange, for a price no
   2.268 -    more than your reasonable cost of physically performing this
   2.269 -    conveying of source, or (2) access to copy the
   2.270 -    Corresponding Source from a network server at no charge.
   2.271 -
   2.272 -    c) Convey individual copies of the object code with a copy of the
   2.273 -    written offer to provide the Corresponding Source.  This
   2.274 -    alternative is allowed only occasionally and noncommercially, and
   2.275 -    only if you received the object code with such an offer, in accord
   2.276 -    with subsection 6b.
   2.277 -
   2.278 -    d) Convey the object code by offering access from a designated
   2.279 -    place (gratis or for a charge), and offer equivalent access to the
   2.280 -    Corresponding Source in the same way through the same place at no
   2.281 -    further charge.  You need not require recipients to copy the
   2.282 -    Corresponding Source along with the object code.  If the place to
   2.283 -    copy the object code is a network server, the Corresponding Source
   2.284 -    may be on a different server (operated by you or a third party)
   2.285 -    that supports equivalent copying facilities, provided you maintain
   2.286 -    clear directions next to the object code saying where to find the
   2.287 -    Corresponding Source.  Regardless of what server hosts the
   2.288 -    Corresponding Source, you remain obligated to ensure that it is
   2.289 -    available for as long as needed to satisfy these requirements.
   2.290 -
   2.291 -    e) Convey the object code using peer-to-peer transmission, provided
   2.292 -    you inform other peers where the object code and Corresponding
   2.293 -    Source of the work are being offered to the general public at no
   2.294 -    charge under subsection 6d.
   2.295 -
   2.296 -  A separable portion of the object code, whose source code is excluded
   2.297 -from the Corresponding Source as a System Library, need not be
   2.298 -included in conveying the object code work.
   2.299 -
   2.300 -  A "User Product" is either (1) a "consumer product", which means any
   2.301 -tangible personal property which is normally used for personal, family,
   2.302 -or household purposes, or (2) anything designed or sold for incorporation
   2.303 -into a dwelling.  In determining whether a product is a consumer product,
   2.304 -doubtful cases shall be resolved in favor of coverage.  For a particular
   2.305 -product received by a particular user, "normally used" refers to a
   2.306 -typical or common use of that class of product, regardless of the status
   2.307 -of the particular user or of the way in which the particular user
   2.308 -actually uses, or expects or is expected to use, the product.  A product
   2.309 -is a consumer product regardless of whether the product has substantial
   2.310 -commercial, industrial or non-consumer uses, unless such uses represent
   2.311 -the only significant mode of use of the product.
   2.312 -
   2.313 -  "Installation Information" for a User Product means any methods,
   2.314 -procedures, authorization keys, or other information required to install
   2.315 -and execute modified versions of a covered work in that User Product from
   2.316 -a modified version of its Corresponding Source.  The information must
   2.317 -suffice to ensure that the continued functioning of the modified object
   2.318 -code is in no case prevented or interfered with solely because
   2.319 -modification has been made.
   2.320 -
   2.321 -  If you convey an object code work under this section in, or with, or
   2.322 -specifically for use in, a User Product, and the conveying occurs as
   2.323 -part of a transaction in which the right of possession and use of the
   2.324 -User Product is transferred to the recipient in perpetuity or for a
   2.325 -fixed term (regardless of how the transaction is characterized), the
   2.326 -Corresponding Source conveyed under this section must be accompanied
   2.327 -by the Installation Information.  But this requirement does not apply
   2.328 -if neither you nor any third party retains the ability to install
   2.329 -modified object code on the User Product (for example, the work has
   2.330 -been installed in ROM).
   2.331 -
   2.332 -  The requirement to provide Installation Information does not include a
   2.333 -requirement to continue to provide support service, warranty, or updates
   2.334 -for a work that has been modified or installed by the recipient, or for
   2.335 -the User Product in which it has been modified or installed.  Access to a
   2.336 -network may be denied when the modification itself materially and
   2.337 -adversely affects the operation of the network or violates the rules and
   2.338 -protocols for communication across the network.
   2.339 -
   2.340 -  Corresponding Source conveyed, and Installation Information provided,
   2.341 -in accord with this section must be in a format that is publicly
   2.342 -documented (and with an implementation available to the public in
   2.343 -source code form), and must require no special password or key for
   2.344 -unpacking, reading or copying.
   2.345 -
   2.346 -  7. Additional Terms.
   2.347 -
   2.348 -  "Additional permissions" are terms that supplement the terms of this
   2.349 -License by making exceptions from one or more of its conditions.
   2.350 -Additional permissions that are applicable to the entire Program shall
   2.351 -be treated as though they were included in this License, to the extent
   2.352 -that they are valid under applicable law.  If additional permissions
   2.353 -apply only to part of the Program, that part may be used separately
   2.354 -under those permissions, but the entire Program remains governed by
   2.355 -this License without regard to the additional permissions.
   2.356 -
   2.357 -  When you convey a copy of a covered work, you may at your option
   2.358 -remove any additional permissions from that copy, or from any part of
   2.359 -it.  (Additional permissions may be written to require their own
   2.360 -removal in certain cases when you modify the work.)  You may place
   2.361 -additional permissions on material, added by you to a covered work,
   2.362 -for which you have or can give appropriate copyright permission.
   2.363 -
   2.364 -  Notwithstanding any other provision of this License, for material you
   2.365 -add to a covered work, you may (if authorized by the copyright holders of
   2.366 -that material) supplement the terms of this License with terms:
   2.367 -
   2.368 -    a) Disclaiming warranty or limiting liability differently from the
   2.369 -    terms of sections 15 and 16 of this License; or
   2.370 -
   2.371 -    b) Requiring preservation of specified reasonable legal notices or
   2.372 -    author attributions in that material or in the Appropriate Legal
   2.373 -    Notices displayed by works containing it; or
   2.374 -
   2.375 -    c) Prohibiting misrepresentation of the origin of that material, or
   2.376 -    requiring that modified versions of such material be marked in
   2.377 -    reasonable ways as different from the original version; or
   2.378 -
   2.379 -    d) Limiting the use for publicity purposes of names of licensors or
   2.380 -    authors of the material; or
   2.381 -
   2.382 -    e) Declining to grant rights under trademark law for use of some
   2.383 -    trade names, trademarks, or service marks; or
   2.384 -
   2.385 -    f) Requiring indemnification of licensors and authors of that
   2.386 -    material by anyone who conveys the material (or modified versions of
   2.387 -    it) with contractual assumptions of liability to the recipient, for
   2.388 -    any liability that these contractual assumptions directly impose on
   2.389 -    those licensors and authors.
   2.390 -
   2.391 -  All other non-permissive additional terms are considered "further
   2.392 -restrictions" within the meaning of section 10.  If the Program as you
   2.393 -received it, or any part of it, contains a notice stating that it is
   2.394 -governed by this License along with a term that is a further
   2.395 -restriction, you may remove that term.  If a license document contains
   2.396 -a further restriction but permits relicensing or conveying under this
   2.397 -License, you may add to a covered work material governed by the terms
   2.398 -of that license document, provided that the further restriction does
   2.399 -not survive such relicensing or conveying.
   2.400 -
   2.401 -  If you add terms to a covered work in accord with this section, you
   2.402 -must place, in the relevant source files, a statement of the
   2.403 -additional terms that apply to those files, or a notice indicating
   2.404 -where to find the applicable terms.
   2.405 -
   2.406 -  Additional terms, permissive or non-permissive, may be stated in the
   2.407 -form of a separately written license, or stated as exceptions;
   2.408 -the above requirements apply either way.
   2.409 -
   2.410 -  8. Termination.
   2.411 -
   2.412 -  You may not propagate or modify a covered work except as expressly
   2.413 -provided under this License.  Any attempt otherwise to propagate or
   2.414 -modify it is void, and will automatically terminate your rights under
   2.415 -this License (including any patent licenses granted under the third
   2.416 -paragraph of section 11).
   2.417 -
   2.418 -  However, if you cease all violation of this License, then your
   2.419 -license from a particular copyright holder is reinstated (a)
   2.420 -provisionally, unless and until the copyright holder explicitly and
   2.421 -finally terminates your license, and (b) permanently, if the copyright
   2.422 -holder fails to notify you of the violation by some reasonable means
   2.423 -prior to 60 days after the cessation.
   2.424 -
   2.425 -  Moreover, your license from a particular copyright holder is
   2.426 -reinstated permanently if the copyright holder notifies you of the
   2.427 -violation by some reasonable means, this is the first time you have
   2.428 -received notice of violation of this License (for any work) from that
   2.429 -copyright holder, and you cure the violation prior to 30 days after
   2.430 -your receipt of the notice.
   2.431 -
   2.432 -  Termination of your rights under this section does not terminate the
   2.433 -licenses of parties who have received copies or rights from you under
   2.434 -this License.  If your rights have been terminated and not permanently
   2.435 -reinstated, you do not qualify to receive new licenses for the same
   2.436 -material under section 10.
   2.437 -
   2.438 -  9. Acceptance Not Required for Having Copies.
   2.439 -
   2.440 -  You are not required to accept this License in order to receive or
   2.441 -run a copy of the Program.  Ancillary propagation of a covered work
   2.442 -occurring solely as a consequence of using peer-to-peer transmission
   2.443 -to receive a copy likewise does not require acceptance.  However,
   2.444 -nothing other than this License grants you permission to propagate or
   2.445 -modify any covered work.  These actions infringe copyright if you do
   2.446 -not accept this License.  Therefore, by modifying or propagating a
   2.447 -covered work, you indicate your acceptance of this License to do so.
   2.448 -
   2.449 -  10. Automatic Licensing of Downstream Recipients.
   2.450 -
   2.451 -  Each time you convey a covered work, the recipient automatically
   2.452 -receives a license from the original licensors, to run, modify and
   2.453 -propagate that work, subject to this License.  You are not responsible
   2.454 -for enforcing compliance by third parties with this License.
   2.455 -
   2.456 -  An "entity transaction" is a transaction transferring control of an
   2.457 -organization, or substantially all assets of one, or subdividing an
   2.458 -organization, or merging organizations.  If propagation of a covered
   2.459 -work results from an entity transaction, each party to that
   2.460 -transaction who receives a copy of the work also receives whatever
   2.461 -licenses to the work the party's predecessor in interest had or could
   2.462 -give under the previous paragraph, plus a right to possession of the
   2.463 -Corresponding Source of the work from the predecessor in interest, if
   2.464 -the predecessor has it or can get it with reasonable efforts.
   2.465 -
   2.466 -  You may not impose any further restrictions on the exercise of the
   2.467 -rights granted or affirmed under this License.  For example, you may
   2.468 -not impose a license fee, royalty, or other charge for exercise of
   2.469 -rights granted under this License, and you may not initiate litigation
   2.470 -(including a cross-claim or counterclaim in a lawsuit) alleging that
   2.471 -any patent claim is infringed by making, using, selling, offering for
   2.472 -sale, or importing the Program or any portion of it.
   2.473 -
   2.474 -  11. Patents.
   2.475 -
   2.476 -  A "contributor" is a copyright holder who authorizes use under this
   2.477 -License of the Program or a work on which the Program is based.  The
   2.478 -work thus licensed is called the contributor's "contributor version".
   2.479 -
   2.480 -  A contributor's "essential patent claims" are all patent claims
   2.481 -owned or controlled by the contributor, whether already acquired or
   2.482 -hereafter acquired, that would be infringed by some manner, permitted
   2.483 -by this License, of making, using, or selling its contributor version,
   2.484 -but do not include claims that would be infringed only as a
   2.485 -consequence of further modification of the contributor version.  For
   2.486 -purposes of this definition, "control" includes the right to grant
   2.487 -patent sublicenses in a manner consistent with the requirements of
   2.488 -this License.
   2.489 -
   2.490 -  Each contributor grants you a non-exclusive, worldwide, royalty-free
   2.491 -patent license under the contributor's essential patent claims, to
   2.492 -make, use, sell, offer for sale, import and otherwise run, modify and
   2.493 -propagate the contents of its contributor version.
   2.494 -
   2.495 -  In the following three paragraphs, a "patent license" is any express
   2.496 -agreement or commitment, however denominated, not to enforce a patent
   2.497 -(such as an express permission to practice a patent or covenant not to
   2.498 -sue for patent infringement).  To "grant" such a patent license to a
   2.499 -party means to make such an agreement or commitment not to enforce a
   2.500 -patent against the party.
   2.501 -
   2.502 -  If you convey a covered work, knowingly relying on a patent license,
   2.503 -and the Corresponding Source of the work is not available for anyone
   2.504 -to copy, free of charge and under the terms of this License, through a
   2.505 -publicly available network server or other readily accessible means,
   2.506 -then you must either (1) cause the Corresponding Source to be so
   2.507 -available, or (2) arrange to deprive yourself of the benefit of the
   2.508 -patent license for this particular work, or (3) arrange, in a manner
   2.509 -consistent with the requirements of this License, to extend the patent
   2.510 -license to downstream recipients.  "Knowingly relying" means you have
   2.511 -actual knowledge that, but for the patent license, your conveying the
   2.512 -covered work in a country, or your recipient's use of the covered work
   2.513 -in a country, would infringe one or more identifiable patents in that
   2.514 -country that you have reason to believe are valid.
   2.515 -
   2.516 -  If, pursuant to or in connection with a single transaction or
   2.517 -arrangement, you convey, or propagate by procuring conveyance of, a
   2.518 -covered work, and grant a patent license to some of the parties
   2.519 -receiving the covered work authorizing them to use, propagate, modify
   2.520 -or convey a specific copy of the covered work, then the patent license
   2.521 -you grant is automatically extended to all recipients of the covered
   2.522 -work and works based on it.
   2.523 -
   2.524 -  A patent license is "discriminatory" if it does not include within
   2.525 -the scope of its coverage, prohibits the exercise of, or is
   2.526 -conditioned on the non-exercise of one or more of the rights that are
   2.527 -specifically granted under this License.  You may not convey a covered
   2.528 -work if you are a party to an arrangement with a third party that is
   2.529 -in the business of distributing software, under which you make payment
   2.530 -to the third party based on the extent of your activity of conveying
   2.531 -the work, and under which the third party grants, to any of the
   2.532 -parties who would receive the covered work from you, a discriminatory
   2.533 -patent license (a) in connection with copies of the covered work
   2.534 -conveyed by you (or copies made from those copies), or (b) primarily
   2.535 -for and in connection with specific products or compilations that
   2.536 -contain the covered work, unless you entered into that arrangement,
   2.537 -or that patent license was granted, prior to 28 March 2007.
   2.538 -
   2.539 -  Nothing in this License shall be construed as excluding or limiting
   2.540 -any implied license or other defenses to infringement that may
   2.541 -otherwise be available to you under applicable patent law.
   2.542 -
   2.543 -  12. No Surrender of Others' Freedom.
   2.544 -
   2.545 -  If conditions are imposed on you (whether by court order, agreement or
   2.546 -otherwise) that contradict the conditions of this License, they do not
   2.547 -excuse you from the conditions of this License.  If you cannot convey a
   2.548 -covered work so as to satisfy simultaneously your obligations under this
   2.549 -License and any other pertinent obligations, then as a consequence you may
   2.550 -not convey it at all.  For example, if you agree to terms that obligate you
   2.551 -to collect a royalty for further conveying from those to whom you convey
   2.552 -the Program, the only way you could satisfy both those terms and this
   2.553 -License would be to refrain entirely from conveying the Program.
   2.554 -
   2.555 -  13. Use with the GNU Affero General Public License.
   2.556 -
   2.557 -  Notwithstanding any other provision of this License, you have
   2.558 -permission to link or combine any covered work with a work licensed
   2.559 -under version 3 of the GNU Affero General Public License into a single
   2.560 -combined work, and to convey the resulting work.  The terms of this
   2.561 -License will continue to apply to the part which is the covered work,
   2.562 -but the special requirements of the GNU Affero General Public License,
   2.563 -section 13, concerning interaction through a network will apply to the
   2.564 -combination as such.
   2.565 -
   2.566 -  14. Revised Versions of this License.
   2.567 -
   2.568 -  The Free Software Foundation may publish revised and/or new versions of
   2.569 -the GNU General Public License from time to time.  Such new versions will
   2.570 -be similar in spirit to the present version, but may differ in detail to
   2.571 -address new problems or concerns.
   2.572 -
   2.573 -  Each version is given a distinguishing version number.  If the
   2.574 -Program specifies that a certain numbered version of the GNU General
   2.575 -Public License "or any later version" applies to it, you have the
   2.576 -option of following the terms and conditions either of that numbered
   2.577 -version or of any later version published by the Free Software
   2.578 -Foundation.  If the Program does not specify a version number of the
   2.579 -GNU General Public License, you may choose any version ever published
   2.580 -by the Free Software Foundation.
   2.581 -
   2.582 -  If the Program specifies that a proxy can decide which future
   2.583 -versions of the GNU General Public License can be used, that proxy's
   2.584 -public statement of acceptance of a version permanently authorizes you
   2.585 -to choose that version for the Program.
   2.586 -
   2.587 -  Later license versions may give you additional or different
   2.588 -permissions.  However, no additional obligations are imposed on any
   2.589 -author or copyright holder as a result of your choosing to follow a
   2.590 -later version.
   2.591 -
   2.592 -  15. Disclaimer of Warranty.
   2.593 -
   2.594 -  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
   2.595 -APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
   2.596 -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
   2.597 -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
   2.598 -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2.599 -PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
   2.600 -IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
   2.601 -ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
   2.602 -
   2.603 -  16. Limitation of Liability.
   2.604 -
   2.605 -  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
   2.606 -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
   2.607 -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
   2.608 -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
   2.609 -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
   2.610 -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
   2.611 -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
   2.612 -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
   2.613 -SUCH DAMAGES.
   2.614 -
   2.615 -  17. Interpretation of Sections 15 and 16.
   2.616 -
   2.617 -  If the disclaimer of warranty and limitation of liability provided
   2.618 -above cannot be given local legal effect according to their terms,
   2.619 -reviewing courts shall apply local law that most closely approximates
   2.620 -an absolute waiver of all civil liability in connection with the
   2.621 -Program, unless a warranty or assumption of liability accompanies a
   2.622 -copy of the Program in return for a fee.
   2.623 -
   2.624 -                     END OF TERMS AND CONDITIONS
   2.625 -
   2.626 -            How to Apply These Terms to Your New Programs
   2.627 -
   2.628 -  If you develop a new program, and you want it to be of the greatest
   2.629 -possible use to the public, the best way to achieve this is to make it
   2.630 -free software which everyone can redistribute and change under these terms.
   2.631 -
   2.632 -  To do so, attach the following notices to the program.  It is safest
   2.633 -to attach them to the start of each source file to most effectively
   2.634 -state the exclusion of warranty; and each file should have at least
   2.635 -the "copyright" line and a pointer to where the full notice is found.
   2.636 -
   2.637 -    <one line to give the program's name and a brief idea of what it does.>
   2.638 -    Copyright (C) <year>  <name of author>
   2.639 -
   2.640 -    This program is free software: you can redistribute it and/or modify
   2.641 -    it under the terms of the GNU General Public License as published by
   2.642 -    the Free Software Foundation, either version 3 of the License, or
   2.643 -    (at your option) any later version.
   2.644 -
   2.645 -    This program is distributed in the hope that it will be useful,
   2.646 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
   2.647 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   2.648 -    GNU General Public License for more details.
   2.649 -
   2.650 -    You should have received a copy of the GNU General Public License
   2.651 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
   2.652 -
   2.653 -Also add information on how to contact you by electronic and paper mail.
   2.654 -
   2.655 -  If the program does terminal interaction, make it output a short
   2.656 -notice like this when it starts in an interactive mode:
   2.657 -
   2.658 -    <program>  Copyright (C) <year>  <name of author>
   2.659 -    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
   2.660 -    This is free software, and you are welcome to redistribute it
   2.661 -    under certain conditions; type `show c' for details.
   2.662 -
   2.663 -The hypothetical commands `show w' and `show c' should show the appropriate
   2.664 -parts of the General Public License.  Of course, your program's commands
   2.665 -might be different; for a GUI interface, you would use an "about box".
   2.666 -
   2.667 -  You should also get your employer (if you work as a programmer) or school,
   2.668 -if any, to sign a "copyright disclaimer" for the program, if necessary.
   2.669 -For more information on this, and how to apply and follow the GNU GPL, see
   2.670 -<http://www.gnu.org/licenses/>.
   2.671 -
   2.672 -  The GNU General Public License does not permit incorporating your program
   2.673 -into proprietary programs.  If your program is a subroutine library, you
   2.674 -may consider it more useful to permit linking proprietary applications with
   2.675 -the library.  If this is what you want to do, use the GNU Lesser General
   2.676 -Public License instead of this License.  But first, please read
   2.677 -<http://www.gnu.org/philosophy/why-not-lgpl.html>.
     3.1 --- a/libtaz/libtaz	Tue Apr 10 22:47:01 2012 +0200
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,98 +0,0 @@
     3.4 -########################################################################
     3.5 -# This is the SliTaz main library (/usr/lib/slitaz/libtaz).
     3.6 -# libtaz is modular : see explanation of the function source_lib below.
     3.7 -#
     3.8 -# Author :	Antoine Bodin <gokhlayeh@mailoo.org>
     3.9 -#
    3.10 -# Version : 0.0.1 (alpha1)
    3.11 -#
    3.12 -# Documentation : none (will be available with beta version)
    3.13 -# The documentation will include an explanation of all functions, how to 
    3.14 -# use them and how to improve this library.
    3.15 -#
    3.16 -# Devnotes (suppress while beta is released) :
    3.17 -# Add a generic download script ? -> download from tazlito & tazwok
    3.18 -# Add a generic create/cleanup script for tmp files ?
    3.19 -# check_for (pkg on cmd line, pkg, receipt, etc.) -> tazwok,tazpkg,list
    3.20 -#
    3.21 -# Note: as the work is in progress some parts are dirty code or others
    3.22 -# are not finished. I will update this because we need the libdep.
    3.23 -#
    3.24 -########################################################################
    3.25 -# INITIALIZATION
    3.26 -########################
    3.27 -# Load the Slitaz main configuration file : /etc/slitaz/slitaz.conf.
    3.28 -# Don't load it if an application is called by one already, 
    3.29 -# to avoid options overwrite.
    3.30 -
    3.31 -. /etc/slitaz/slitaz.conf
    3.32 -
    3.33 -# Load the command as some modules use it.
    3.34 -log_command="$0 $@"
    3.35 -
    3.36 -# Define & create a temporary directory as it's used by report.
    3.37 -tmp=/tmp/$(basename $0)-$$
    3.38 -mkdir -p $tmp
    3.39 -
    3.40 -########################################################################
    3.41 -# EXIT FUNCTIONS
    3.42 -########################
    3.43 -# run_on_exit commands are executed when apps exit (whatever the reason)
    3.44 -# run_on_kill commands are executed only when apps are killed (or Ctrl+C)
    3.45 -# Note : one command per line in the variable.
    3.46 -run_on_exit="rm -rf $tmp"
    3.47 -run_on_kill=""
    3.48 -trap run_on_exit EXIT
    3.49 -trap run_on_kill INT KILL
    3.50 -
    3.51 -run_on_exit()
    3.52 -{
    3.53 -	echo "$run_on_exit" | while read c; do
    3.54 -		run_on_exit=$(echo "$run_on_exit" | sed 1d)
    3.55 -		$c
    3.56 -	done
    3.57 -	trap - EXIT
    3.58 -	exit
    3.59 -}
    3.60 -
    3.61 -run_on_kill()
    3.62 -{
    3.63 -	echo "$run_on_kill" | while read c; do
    3.64 -		run_on_kill=$(echo "$run_on_kill" | sed 1d)
    3.65 -		$c
    3.66 -	done
    3.67 -	trap - INT KILL
    3.68 -	run_on_exit
    3.69 -}
    3.70 -
    3.71 -########################################################################
    3.72 -# This function should be used after sourcing libtaz to source modular
    3.73 -# libraries. Libtaz only sources main configuration files and contains only
    3.74 -# this function. The modular libraries should be put in the slitaz lib
    3.75 -# directory (/usr/lib/slitaz/libtaz-modules).
    3.76 -#
    3.77 -# Usage : source_lib lib [lib2] [lib3] ...
    3.78 -#
    3.79 -# Description of libraries included with libtaz :
    3.80 -#	commons		: functions used by most SliTaz scripts
    3.81 -#	get_option*	: function to check & parse arguments of a command line
    3.82 -#	report		: display and log scripts in a configurable way
    3.83 -#
    3.84 -# * needs a code review, please don't use them for production : code can
    3.85 -# be hardly modified.
    3.86 -#
    3.87 -# All these libraries contains additional functions. Check them to
    3.88 -# know which ones and how to use them.
    3.89 -# More information will be available at beta release.
    3.90 -
    3.91 -sourced_lib=""
    3.92 -source_lib()
    3.93 -{
    3.94 -	for i in $@; do
    3.95 -		[ "$(echo $sourced_lib | grep $i)" ] && continue
    3.96 -		[ ! -f "/usr/lib/slitaz/libtaz-modules/$i" ] && \
    3.97 -			echo "WARNING: libtaz source_lib: can't find /usr/lib/slitaz/libtaz-modules/$i" >&2 && \
    3.98 -			continue
    3.99 -		. /usr/lib/slitaz/libtaz-modules/$i && sourced_lib="$sourced_lib $i"
   3.100 -	done
   3.101 -}
     4.1 --- a/libtaz/libtaz-modules/commons	Tue Apr 10 22:47:01 2012 +0200
     4.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.3 @@ -1,84 +0,0 @@
     4.4 -status()
     4.5 -{
     4.6 -	local CHECK=$?
     4.7 -	echo -en "\\033[70G[ "
     4.8 -	if [ $CHECK = 0 ]; then
     4.9 -		echo -en "\\033[1;32mOK"
    4.10 -	else
    4.11 -		echo -en "\\033[1;31mFailed"
    4.12 -	fi
    4.13 -	echo -e "\\033[0;39m ]"
    4.14 -}
    4.15 -
    4.16 -get_config()
    4.17 -{
    4.18 -	if [ -f "./`basename $0`.conf" ]; then
    4.19 -		. ./`basename $0`.conf
    4.20 -	elif [ -f "/etc/slitaz/`basename $0`.conf" ]; then
    4.21 -		. /etc/slitaz/`basename $0`.conf
    4.22 -	else
    4.23 -		echo -e "\nUnable to find the configuration file : /etc/slitaz/`basename $0`.conf" >&2
    4.24 -		echo -e "Please read the `basename $0` documentation.\n" >&2
    4.25 -		exit 1
    4.26 -	fi
    4.27 -}
    4.28 -
    4.29 -# The classic SliTaz check_root function used in nearly all SliTaz tools.
    4.30 -check_root()
    4.31 -{
    4.32 -	[ $(id -u) = 0 ] && return
    4.33 -   echo -e "\nYou must be root to run `basename $0` with this option." >&2
    4.34 -   echo -e "Please type 'su' and root password to become super-user.\n" >&2
    4.35 -   exit 1
    4.36 -}
    4.37 -
    4.38 -# A classic check_dir function: - create directory if needed and echo about it.
    4.39 -# Return error if directory is created (to chain other commands with ||)
    4.40 -check_dir()
    4.41 -{
    4.42 -	if ! [ -d "$1" ]; then
    4.43 -		echo -n "Creating $1..."
    4.44 -		mkdir -p "$1"
    4.45 -		status
    4.46 -		return 1
    4.47 -	fi
    4.48 -}
    4.49 -
    4.50 -# Install package if missing.
    4.51 -check_pkg()
    4.52 -{
    4.53 -	if ! [ -d $INSTALLED/$1 ]; then
    4.54 -#		report step "Installing package : $1"
    4.55 -		tazpkg get-install $1
    4.56 -#		report end-step
    4.57 -	fi
    4.58 -}
    4.59 -
    4.60 -# Display a horizontal line, can be used for a clearer script.
    4.61 -horizontal_line()
    4.62 -{
    4.63 -	echo "================================================================================"
    4.64 -}
    4.65 -
    4.66 -# Store -- options in a variable.
    4.67 -# Test phase.
    4.68 -# Need to add something to filter options and report errors in case option is not
    4.69 -# listed and used by the command.
    4.70 -get_options()
    4.71 -{
    4.72 -	if echo "$log_command" | fgrep -q ' '--help; then
    4.73 -		echo "Available options for $(echo `basename "$log_command"` | cut -d ' ' -f 1,2) : $get_options_list"
    4.74 -		exit 0
    4.75 -	fi
    4.76 -	for get_option in $(echo "$log_command" | tr ' ' '\n' | grep ^-- | sed 's/^--//'); do
    4.77 -		if [ "${get_options_list/${get_option%%=*}}" = "$get_options_list" ]; then
    4.78 -			echo "Option ${get_option%%=*} is incorrect, valid options are : $get_options_list". >&2
    4.79 -			exit 1
    4.80 -		fi
    4.81 -		if [ "$get_option" = "${get_option/=}" ]; then
    4.82 -			export $get_option=yes
    4.83 -		else
    4.84 -			export $get_option
    4.85 -		fi
    4.86 -	done
    4.87 -}
     5.1 --- a/libtaz/libtaz-modules/report	Tue Apr 10 22:47:01 2012 +0200
     5.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.3 @@ -1,403 +0,0 @@
     5.4 -
     5.5 -# Usage : use_report functions/commands
     5.6 -# 'use_report' execute functions/commands and redirect the output.
     5.7 -# You can use 'report' function to display messages, steps, blocs and
     5.8 -# status in the terminal and organize the display of the log.
     5.9 -
    5.10 -report_verbosity_opt=all
    5.11 -
    5.12 -report_display()
    5.13 -{
    5.14 -	while read out; do
    5.15 -		[ "$out" = €øß ] && report_stop_display && return
    5.16 -		echo -e " ...\n               ~~~~~~~~~~~~~~~~~~~~ Messages ~~~~~~~~~~~~~~~~~~~~               "
    5.17 -		echo "$out"
    5.18 -		break
    5.19 -	done
    5.20 -	while read out; do
    5.21 -		[ "$out" = €øß ] && report_stop_display && return
    5.22 -		echo "$out"
    5.23 -	done
    5.24 -}
    5.25 -
    5.26 -report_create_html()
    5.27 -{
    5.28 -	mkdir -p "${log_opt%/*}"
    5.29 -	echo '<div id="report">' >> "$log_opt"
    5.30 -
    5.31 -	echo -e "<strong>$(basename "$log_command")</strong>\n<em>$(date)</em>" >> "$log_opt"
    5.32 -}
    5.33 -
    5.34 -report_start()
    5.35 -{
    5.36 -	# Create the temporary directory if needed.
    5.37 -	! [ -d /tmp/libtaz/ ] && mkdir -p /tmp/libtaz
    5.38 -	! [ -d $SLITAZ_LOG ] && mkdir -p $SLITAZ_LOG
    5.39 -
    5.40 -	# Give permissions to all users if user is root.
    5.41 -	if test $(id -u) = 0 ; then
    5.42 -		chmod 777 /tmp/libtaz
    5.43 -		chmod -R 777 $SLITAZ_LOG
    5.44 -	fi
    5.45 -
    5.46 -	# Get a random logfile name.
    5.47 -	if [ "$report_pid" ]; then
    5.48 -		log_tmp=/tmp/libtaz/$report_pid
    5.49 -		embeded_mode=enabled
    5.50 -		initial_bloc_level=$bloc_level
    5.51 -		if [ "$open_bloc" ]; then
    5.52 -			initial_bloc_level=$(($bloc_level+1))
    5.53 -			embeded_open_bloc=yes
    5.54 -		fi
    5.55 -		if [ -p $log_tmp.stdout ] && ! [ "$open_bloc" = yes ]; then
    5.56 -			report_step_status
    5.57 -		fi
    5.58 -	else
    5.59 -		log_tmp=/tmp/libtaz/$$
    5.60 -		report_pid=$$
    5.61 -	fi
    5.62 -	
    5.63 -	# Use the default logfile if no logfile was specified by the main script.
    5.64 -	[ ! "$log_opt" ] && [ "$report_log_all" = yes ] && \
    5.65 -		log_opt="$SLITAZ_LOG/`basename $0`/$(date -Iseconds).html"
    5.66 -	export report_pid log_opt
    5.67 -	
    5.68 -	#if [ "$embeded_mode" != enabled ]; then
    5.69 -
    5.70 -	# Initialize html logfile if needed, or prepare it to be edited.
    5.71 -	[ "$log_opt" ] && { [ ! "$embeded_mode" ] || [ ! -f "$log_opt" ]; } && report_create_html
    5.72 -	
    5.73 -	echo -n "" > $log_tmp
    5.74 -
    5.75 -	# Initialize named pipes & set I/O redirections.
    5.76 -	[ "$embeded_mode" ] || exec 3>&1 4>&2
    5.77 -	
    5.78 -	# Start debugging if the option is enabled.
    5.79 -	if [ "$debug_opt" ]; then
    5.80 -		exec 2>$log_tmp.stdout
    5.81 -		set -vx
    5.82 -		echo "[--------------------------/!\ DEBUG MODE ENABLED /!\--------------------------]"
    5.83 -	fi
    5.84 -	
    5.85 -	# Theses variable are used to configure the display of steps in a terminal.
    5.86 -	bloc1_delimiter="================================================================================"
    5.87 -	bloc1_display="  "
    5.88 -	bloc2_delimiter="----------------------------------------------------------------------------"
    5.89 -	bloc2_display="   > "
    5.90 -	bloc3_delimiter="* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"
    5.91 -	bloc3_display="     * "
    5.92 -	
    5.93 -	# Use a trap to exit cleanly if app is killed.
    5.94 -	trap "report_exit $(basename $0) killed by user" SIGINT SIGTERM
    5.95 -	
    5.96 -	# Use another display function if quiet is enabled.
    5.97 -	[ "$report_verbosity_opt" = "none" ] && report_display()
    5.98 -{
    5.99 -	while read out; do
   5.100 -		[ "$out" = €øß ] && report_stop_display && return
   5.101 -	done
   5.102 -}
   5.103 -}
   5.104 -
   5.105 -report_stop_display()
   5.106 -{
   5.107 -	rm $log_tmp.stderr $log_tmp.stdout
   5.108 -	sed '/^€øß$/d' -i $log_tmp
   5.109 -	touch $log_tmp.end
   5.110 -}
   5.111 -
   5.112 -report_listen()
   5.113 -{
   5.114 -	mkfifo $log_tmp.stderr $log_tmp.stdout
   5.115 -		{
   5.116 -			{ tee -a $log_tmp $log_tmp.error <$log_tmp.stderr | while read line; do echo -e "\\033[1;31m${line}\\033[0m"; done; }&
   5.117 -			{ tee -a $log_tmp <$log_tmp.stdout; }&
   5.118 -		} | report_display&
   5.119 -		usleep 10000
   5.120 -	exec 1>>$log_tmp.stdout 2>>$log_tmp.stderr
   5.121 -}
   5.122 -
   5.123 -report_stop_listen()
   5.124 -{
   5.125 -	if [ -p $log_tmp.stdout ]; then
   5.126 -		[ -f $log_tmp.end ] && rm $log_tmp.end
   5.127 -		usleep 10000 && echo €øß
   5.128 -		while ! [ -f $log_tmp.end ]; do
   5.129 -			usleep 10000
   5.130 -		done
   5.131 -		exec 1>&3 2>&4
   5.132 -		rm $log_tmp.end
   5.133 -	fi
   5.134 -}
   5.135 -
   5.136 -report_stop()
   5.137 -{
   5.138 -	! [ "$report_pid" ] && exit
   5.139 -	# End step and close blocs.
   5.140 -	[ "$step_running" ] && report end-step
   5.141 -	while [ $(($bloc_level)) -gt $(($initial_bloc_level)) ]; do
   5.142 -		report close-bloc
   5.143 -	done
   5.144 -
   5.145 -	if [ "$embeded_mode" = enabled ]; then
   5.146 -		[ "$bloc_level" ] && echo $(eval echo \$bloc${bloc_level}_status) > $log_tmp.status
   5.147 -		if [ "$embeded_open_bloc" = opened ]; then
   5.148 -			touch $log_tmp.eob
   5.149 -		fi
   5.150 -	else
   5.151 -		[ "$log_opt" ] && echo '</div>' >> "$log_opt"
   5.152 -		exec  3>&- 4>&-
   5.153 -		rm -f $log_tmp*
   5.154 -		unset report_pid log_opt
   5.155 -		
   5.156 -		# Stop debugging
   5.157 -		[ "$debug_opt" ] && set +vx
   5.158 -	fi
   5.159 -}
   5.160 -
   5.161 -# Use this to stop a program with an error.
   5.162 -report_exit()
   5.163 -{
   5.164 -	# Log&display error message.
   5.165 -	echo -e "$@" >&2
   5.166 -
   5.167 -	# Close step as failed.
   5.168 -	if [ "$step_running" ]; then
   5.169 -		(exit 1)
   5.170 -		report end-step
   5.171 -	fi
   5.172 -
   5.173 -	# Set blocs as failed, report and exit.
   5.174 -	bloc1_status="failed"
   5.175 -	bloc2_status="failed"
   5.176 -	bloc3_status="failed"
   5.177 -	report_stop
   5.178 -	exit 1
   5.179 -}
   5.180 -
   5.181 -# Usage :	report [command] [message]
   5.182 -#
   5.183 -# type :message 	simply display the message.
   5.184 -#	step	 	name the step and display status when ended.
   5.185 -#	end-step	display status of the step, it's done automatically when
   5.186 -#			starting a new step, closing a bloc or stopping a report.
   5.187 -#	open-bloc	open the list of steps in the operation.
   5.188 -#	close-bloc	close the current bloc.
   5.189 -report()
   5.190 -{
   5.191 -	# First : get status before it is changed by other commands.
   5.192 -	check_status=$?
   5.193 -	case "$1" in
   5.194 -		start)
   5.195 -			report_start
   5.196 -		;;
   5.197 -		stop)
   5.198 -			report_stop
   5.199 -		;;
   5.200 -		exit)
   5.201 -			shift && report_exit "$@"
   5.202 -		;;
   5.203 -		# TODO : Code displaying a message during a step run.
   5.204 -		message)
   5.205 -			shift
   5.206 -			echo -e "${current_bloc_display}$@"
   5.207 -			report_message="$@"
   5.208 -			[ "$log_opt" ] && echo -e "<div class=\"message\">$report_message</div>" >> "$log_opt"
   5.209 -		;;
   5.210 -		step)
   5.211 -			[ "$log_step" ] && echo "$2" > $log_step
   5.212 -			[ "$open_bloc" ] && report_open_bloc
   5.213 -			[ "$step_running" ] && report_step_status
   5.214 -			echo -ne "$current_bloc_display$2\\033[70G[ \\033[1;32mR\\033[33mU\\033[31mN\\033[0;39m ]" >&3
   5.215 -			[ "$log_opt" ] && echo -e "<div class=\"$2\">\n<strong>$2</strong>" >> "$log_opt"
   5.216 -			export step_running="$2"
   5.217 -			report_listen
   5.218 -		;;
   5.219 -		end-step)
   5.220 -			if ! [ "$step_running" ]; then
   5.221 -				report_return_code=$check_status
   5.222 -			else
   5.223 -				report_step_status
   5.224 -			fi
   5.225 -		;;
   5.226 -		open-bloc)
   5.227 -			export open_bloc=yes
   5.228 -		;;
   5.229 -		close-bloc)
   5.230 -			if [ -f "$log_tmp.eob" ]; then
   5.231 -				report_open_bloc
   5.232 -				check_status=$(cat $log_tmp.status)
   5.233 -				rm $log_tmp.status
   5.234 -				report_set_bloc_status
   5.235 -			elif [ "$step_running" ]; then
   5.236 -				report_step_status
   5.237 -			fi
   5.238 -
   5.239 -			# Then close the bloc and report status if it was open.
   5.240 -			if ! [ "$open_bloc" ]; then
   5.241 -				export current_bloc_display="$(eval echo \"\$bloc$((${bloc_level}-1))_display\")"
   5.242 -				[ "$(eval echo \"\$bloc${bloc_level}_delimiter\")" ] && \
   5.243 -					echo -e "$current_bloc_display$(eval echo \"\$bloc${bloc_level}_delimiter\")" >&3
   5.244 -				echo -en "$current_bloc_display... $(eval echo \"\$bloc${bloc_level}_running\")" >&3
   5.245 -				check_status=$(eval echo \$bloc${bloc_level}_status)
   5.246 -				report_display_status
   5.247 -				
   5.248 -				# Set the bloc status in the log file.
   5.249 -				if [ "$log_opt" ]; then
   5.250 -					sed "s~<div class=\"bloc_level$bloc_level\">~<div class=\"$check_status\">~" -i "$log_opt"
   5.251 -					echo "</div>" >> "$log_opt"
   5.252 -				fi	
   5.253 -				echo "" >&3
   5.254 -				export bloc_level=$(($bloc_level-1))
   5.255 -				[ "$bloc_level" = 0 ] && unset bloc_level
   5.256 -			else
   5.257 -				unset open_bloc
   5.258 -			fi
   5.259 -		;;
   5.260 -		sublog)
   5.261 -			shift
   5.262 -			! [ "$log_list" ] && log_list="$log_opt"
   5.263 -			export log_list="$1 $log_list"
   5.264 -			export log_opt="$1"
   5.265 -			report_create_html
   5.266 -		;;
   5.267 -		end-sublog)
   5.268 -			[ "$log_opt" ] || continue
   5.269 -			export log_list="${log_list#* }"
   5.270 -			echo '</div>' >> "$log_opt"	
   5.271 -			# Grep the summary of sublog (main action + status) and put
   5.272 -			# it in the main log, plus a link.
   5.273 -			[ "$log_list" ] && { sed -n '/<div id="report">/,$p' $log_opt | \
   5.274 -				grep -A1 -F '<div class=' | sed 1,2!d &&
   5.275 -				echo '<a class="sublog" href="'$log_opt'">SubLog</a>' && \
   5.276 -				echo "</div>" 
   5.277 -			} >> ${log_list%% *}
   5.278 -			export log_opt="${log_list%% *}"
   5.279 -			report_step_status
   5.280 -			;;
   5.281 -	esac
   5.282 -	return $report_return_code
   5.283 -}
   5.284 -
   5.285 -# Open a bloc of substeps in a terminal and log.
   5.286 -report_open_bloc()
   5.287 -{
   5.288 -	unset open_bloc
   5.289 -	[ "$embeded_open_bloc" = "yes" ] && embeded_open_bloc=opened
   5.290 -	[ -f "$log_tmp.eob" ] && rm $log_tmp.eob	
   5.291 -	export bloc_level=$(($bloc_level+1))
   5.292 -	export bloc${bloc_level}_running="$step_running"
   5.293 -	if [ -p $log_tmp.stdout ]; then
   5.294 -		if [ -s $log_tmp ]; then
   5.295 -			prebloc=yes
   5.296 -			report_step_status
   5.297 -			prebloc=
   5.298 -		else
   5.299 -			report_stop_listen
   5.300 -			echo ' ...' >&3
   5.301 -		fi
   5.302 -		[ "$(eval echo \$bloc${bloc_level}_delimiter)" ] &&  \
   5.303 -			echo "$current_bloc_display$(eval echo \"\$bloc${bloc_level}_delimiter\")" >&3
   5.304 -		[ "$log_opt" ] && sed "s~<div class=\"$step_running\">~<div class=\"bloc_level$bloc_level\">~" -i "$log_opt"
   5.305 -	else
   5.306 -		exec 1>&3 2>&4
   5.307 -	fi
   5.308 -	export current_bloc_display="$(eval echo \"\$bloc${bloc_level}_display\")"
   5.309 -	unset bloc${bloc_level}_status
   5.310 -	unset step_running
   5.311 -}
   5.312 -
   5.313 -# These are the two new status functions used by the report tool.
   5.314 -# States are :	ok - no error since the start of the step
   5.315 -#		warning - there was an error(s) since the start of the step
   5.316 -#		failed - the last executed command has exited abnormally
   5.317 -report_step_status()
   5.318 -{
   5.319 -	unset report_return_code
   5.320 -	if [ -p $log_tmp.stdout ]; then
   5.321 -		report_stop_listen
   5.322 -
   5.323 -		# Close message bloc if opened.
   5.324 -		if [ -s $log_tmp -a "$report_verbosity_opt" = all ] || \
   5.325 -			[ -s $log_tmp.error -a "$report_verbosity_opt" != none ]; then
   5.326 -			echo "               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~               " >&3
   5.327 -			! [ "$prebloc" ] && echo -en "$current_bloc_display... $step_running" >&3 && report_addemptyline="yes"
   5.328 -		fi
   5.329 -	
   5.330 -		# Check, display and log the status of the step.
   5.331 -		if ! [ "$check_status" = "0" ]; then
   5.332 -			check_status=failed
   5.333 -		else
   5.334 -			[ -s "$log_tmp.error" ] && check_status=warning || check_status=ok
   5.335 -		fi
   5.336 -		! [ "$prebloc" ] && report_display_status
   5.337 -		[ "$report_addemptyline" ] && echo "" >&3 && unset report_addemptyline
   5.338 -		[ "$log_opt" ] && report_rec_log
   5.339 -	fi
   5.340 -
   5.341 -	[ -f "$log_tmp.eob" ] && rm $log_tmp.eob
   5.342 -
   5.343 -	# Set blocs status if needed.
   5.344 -	[ -f $log_tmp.status ] && check_status=$(cat $log_tmp.status) && rm $log_tmp.status
   5.345 -	[ "$bloc_level" ] && report_set_bloc_status
   5.346 -
   5.347 -	# Clear variables / temporary logs.
   5.348 -	! [ "$prebloc" ] && export step_running=""
   5.349 -	check_status=""
   5.350 -	echo -n "" > $log_tmp.error
   5.351 -	echo -n "" > $log_tmp
   5.352 -}
   5.353 -
   5.354 -report_display_status()
   5.355 -{
   5.356 -	[ "$report_return_code" = 1 ] && check_status=failed
   5.357 -	echo -en "\\033[70G          " >&3
   5.358 -	echo -en "\\033[70G[ " >&3
   5.359 -	[ "$check_status" = ok ] && report_return_code=0 && echo -en "\\033[1;32mOK" >&3
   5.360 -	[ "$check_status" = warning ] && report_return_code=0 && echo -en "\\033[1;33mWarning" >&3
   5.361 -	[ "$check_status" = failed ] && report_return_code=1 && echo -en "\\033[1;31mFailed" >&3 
   5.362 -	echo -e "\\033[0;39m ]" >&3
   5.363 -}
   5.364 -
   5.365 -report_term_to_html()
   5.366 -{
   5.367 -	report_decolorize | sed -e 's~<~\&lt;~' -e 's~>~\&gt;~' -e 's~STDERR: \(.*\)~<span class="error">\1<\/span>~' -e 's~	~\&nbsp;\&nbsp;\&nbsp;\&nbsp;~'
   5.368 -}
   5.369 -
   5.370 -report_decolorize()
   5.371 -{
   5.372 -	tr -d '\e' | sed -r "s/\[([0-9]{1,3}(;[0-9]{1,3})*)[m|G]//g"
   5.373 -}
   5.374 -
   5.375 -report_rec_log()
   5.376 -{
   5.377 -	! [ "$prebloc" ] && sed "s~<div class=\"$step_running\">~<div class=\"$check_status\">~" -i "$log_opt"
   5.378 -	if [ -s "$log_tmp" ]; then
   5.379 -		if [ -s "$log_tmp.error" ]; then
   5.380 -			cat $log_tmp.error | sort -u | while read line; do
   5.381 -				# Format line to avoid sed errors :
   5.382 -				line=$(echo "$line" | sed -e 's~\*~\\\*~g' -e 's~\[~\\\[~g' -e 's~\]~\\\]~g')
   5.383 -				sed "s~^$line$~STDERR: $line~" -i $log_tmp
   5.384 -			done
   5.385 -		fi
   5.386 -		echo -n "<pre>" >> "$log_opt"
   5.387 -		cat $log_tmp | report_term_to_html >> "$log_opt"
   5.388 -		echo "</pre>" >> "$log_opt"
   5.389 -	fi
   5.390 -	! [ "$prebloc" ] && echo "</div>" >> "$log_opt"
   5.391 -}
   5.392 -
   5.393 -# These variables keep the status of the blocs.
   5.394 -# A bloc is reported as ok if all child steps are ok and has failed
   5.395 -# if all child steps are failed (or if a fatal error occurs).
   5.396 -# In other cases the bloc is reported as a warning.
   5.397 -report_set_bloc_status()
   5.398 -{
   5.399 -	bloc_status=$(eval echo \$bloc${bloc_level}_status)
   5.400 -	for n in $(seq $bloc_level -1 1); do
   5.401 -		! [ "$(eval echo \$bloc${n}_status)" ] && eval bloc${n}_status=$check_status
   5.402 -		! [ "$(eval echo \$bloc${n}_status)" = "$check_status" ] && \
   5.403 -			eval bloc${n}_status=warning
   5.404 -	done
   5.405 -}
   5.406 -
     6.1 --- a/libtaz/slitaz.conf	Tue Apr 10 22:47:01 2012 +0200
     6.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.3 @@ -1,101 +0,0 @@
     6.4 -########################################################################
     6.5 -# This is the generic SliTaz configuration file used by libtaz to get
     6.6 -# the default options and directories.
     6.7 -#
     6.8 -# These variables can be overwritten by a lower level of configuration.
     6.9 -# Order for loading variables (the latest definition is kept) :
    6.10 -# slitaz.conf (then) main app.conf (or) local app.conf
    6.11 -# (or) *.conf of the command line (then) arguments of the command line
    6.12 -#
    6.13 -# ** Alpha Comment by GoKhlaYeh: **
    6.14 -# With libtaz, I plan to change the default location of some important
    6.15 -# directories to fit the server hierarchy. In a general view I want
    6.16 -# to make the organisation on the server and on a released system similar.
    6.17 -# The goal is having tools working out-of-the-box in both cases to make
    6.18 -# the contributors work easier and efficient.
    6.19 -# These changes will takes place with a Release Candidate, when libtaz
    6.20 -# implementation in all SliTaz tools will be finalised, and all code fully
    6.21 -# reviewed. Hope everybody agree with that ;).
    6.22 -#
    6.23 -
    6.24 -########################################################################
    6.25 -# COMMON DIRECTORIES
    6.26 -########################
    6.27 -
    6.28 -# Slitaz logs directory.
    6.29 -SLITAZ_LOG="/var/log/slitaz"
    6.30 -
    6.31 -# Slitaz version.
    6.32 -SLITAZ_VERSION="$(cat /etc/slitaz-release)"
    6.33 -
    6.34 -# Slitaz directory.
    6.35 -SLITAZ_DIR="/home/slitaz"
    6.36 -
    6.37 -# Local repository for current version (can contain local packages 
    6.38 -# repository, wok, sources, ...).
    6.39 -LOCAL_REPOSITORY="$SLITAZ_DIR/$SLITAZ_VERSION"
    6.40 -
    6.41 -# Online packages repository.
    6.42 -ONLINE_REPOSITORY="http://mirror.slitaz.org/packages/$SLITAZ_VERSION/"
    6.43 -
    6.44 -# Packages cache directory.
    6.45 -CACHE_DIR="/var/cache/tazpkg"
    6.46 -
    6.47 -# Path to repository data.
    6.48 -LOCALSTATE="/var/lib/tazpkg"
    6.49 -
    6.50 -# Path to installation data.
    6.51 -INSTALLED="$LOCALSTATE/installed"
    6.52 -
    6.53 -########################################################################
    6.54 -# COMMON VARIABLES
    6.55 -########################
    6.56 -
    6.57 -# the type of checksum and ext for packages.md5-like file
    6.58 -# md5sum : default (but weak)
    6.59 -# sha1sum 
    6.60 -# sha256sum
    6.61 -# sha512sum
    6.62 -
    6.63 -CHECKSUM="md5sum"
    6.64 -SUM="${CHECKSUM/sum}"
    6.65 -
    6.66 -# Packages categories.
    6.67 -CATEGORIES="
    6.68 -base-system
    6.69 -x-window
    6.70 -utilities
    6.71 -network
    6.72 -graphics
    6.73 -multimedia
    6.74 -office
    6.75 -development
    6.76 -system-tools
    6.77 -security
    6.78 -games
    6.79 -misc
    6.80 -meta
    6.81 -non-free"
    6.82 -
    6.83 -
    6.84 -########################################################################
    6.85 -# LIBTAZ OPTIONS
    6.86 -########################
    6.87 -# These options are the default settings for all SliTaz tools which use
    6.88 -# libtaz. They are :
    6.89 -#   * tazwok
    6.90 -#   * tazpkg
    6.91 -
    6.92 -# If this option is enabled - automatically install needed packages. It
    6.93 -# can be depends, build_depends, or package needed to perform a specific
    6.94 -# task.
    6.95 -# Value can be :
    6.96 -#   * yes = enabled
    6.97 -#   * anything else = disabled
    6.98 -auto_install=yes
    6.99 -
   6.100 -# If you want to log all operations (into /var/log/slitaz),
   6.101 -# uncomment the following line
   6.102 -# Note: all important operations are logged by default.
   6.103 -#report_log_all=yes
   6.104 -
     7.1 --- a/mirror-tools/slitaz/mirror/dir-generator.php	Tue Apr 10 22:47:01 2012 +0200
     7.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.3 @@ -1,470 +0,0 @@
     7.4 -<?php
     7.5 -function redirect()
     7.6 -{
     7.7 -?>
     7.8 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     7.9 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    7.10 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
    7.11 -<head>
    7.12 -	<title>SliTaz mirror redirection</title>
    7.13 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    7.14 -	<meta name="description" content="slitaz mirror redirection" />
    7.15 -	<meta name="robots" content="index, nofollow" />
    7.16 -	<meta name="author" content="SliTaz Contributors" />
    7.17 -	<meta http-equiv="Refresh" content="0;url=http://mirror.slitaz.org/">
    7.18 -</head>
    7.19 -<?php
    7.20 -}
    7.21 -
    7.22 -$VERSION = "0.2-slitaz";
    7.23 -
    7.24 -/*  Lighttpd Enhanced Directory Listing Script
    7.25 - *  ------------------------------------------
    7.26 - *  Authors: Evan Fosmark   <me@evanfosmark.com>,
    7.27 - *           Pascal Bellard <pascal.bellard@slitaz.org>
    7.28 - *           Christophe Lincoln <pankso@slitaz.org>
    7.29 - *
    7.30 - *
    7.31 - *  GNU License Agreement
    7.32 - *  ---------------------
    7.33 - *  This program is free software; you can redistribute it and/or modify
    7.34 - *  it under the terms of the GNU General Public License as published by
    7.35 - *  the Free Software Foundation; either version 2 of the License, or
    7.36 - *  (at your option) any later version.
    7.37 - *
    7.38 - *  This program is distributed in the hope that it will be useful,
    7.39 - *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    7.40 - *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    7.41 - *  GNU General Public License for more details.
    7.42 - *
    7.43 - *  You should have received a copy of the GNU General Public License
    7.44 - *  along with this program; if not, write to the Free Software
    7.45 - *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
    7.46 - *
    7.47 - *  http://www.gnu.org/licenses/gpl.txt
    7.48 - */
    7.49 - 
    7.50 -// Get the path (cut out the query string from the request_uri)
    7.51 -list($path) = explode('?', $_SERVER['REQUEST_URI']);
    7.52 -
    7.53 -
    7.54 -// Get the path that we're supposed to show.
    7.55 -$path = ltrim(rawurldecode($path), '/');
    7.56 -
    7.57 -
    7.58 -if(strlen($path) == 0) {
    7.59 -	$path = "./";
    7.60 -}
    7.61 -
    7.62 -
    7.63 -// Can't call the script directly since REQUEST_URI won't be a directory
    7.64 -if($_SERVER['PHP_SELF'] == '/'.$path) {
    7.65 -	redirect();
    7.66 -//	die("Unable to call " . $path . " directly.");
    7.67 -}
    7.68 -
    7.69 -
    7.70 -$vpath = ($path != "./")?$path:"";
    7.71 -// Make sure it is valid.
    7.72 -if(!is_dir($path)) {
    7.73 -//	die("<b>" . $path . "</b> is not a valid path.");
    7.74 -	$path = dirname($_SERVER["SCRIPT_FILENAME"]);
    7.75 -	list($vpath) = explode('?', $_SERVER['REQUEST_URI']);
    7.76 -	$vpath = ltrim(rawurldecode($vpath), '/');
    7.77 -}
    7.78 -
    7.79 -
    7.80 -//
    7.81 -// This function returns the file size of a specified $file.
    7.82 -//
    7.83 -function format_bytes($size, $precision=1) {
    7.84 -    $sizes = array('Y', 'Z', 'E', 'P', 'T', 'G', 'M', 'K', '');
    7.85 -    $total = count($sizes);
    7.86 -
    7.87 -    while($total-- && $size > 1024) $size /= 1024;
    7.88 -    if ($sizes[$total] == '') {
    7.89 -    	$size /= 1024;
    7.90 -    	$total--;
    7.91 -    }
    7.92 -    return sprintf('%.'.$precision.'f', $size).$sizes[$total];
    7.93 -}
    7.94 -
    7.95 -//
    7.96 -// Get some variables from /etc/lighttpd/lighttpd.conf
    7.97 -//
    7.98 -$conf_lightty = file_get_contents("/etc/lighttpd/lighttpd.conf");
    7.99 -
   7.100 -function get_conf($var,$start,$stop,$default='') {
   7.101 -    global $conf_lightty;
   7.102 -
   7.103 -    if (!preg_match('/'.$var.'/',$conf_lightty)) return $default;
   7.104 -    $filter = '/(.*\n)*'.$var.'\s*=\s*'.$start.'(([^'.$stop.']*\n*)*)'.$stop.'(.*\n)*/';
   7.105 -    return preg_replace($filter,'$2',$conf_lightty);
   7.106 -}
   7.107 -
   7.108 -$encoding = get_conf('dir-listing.encoding','"','"','ascii');
   7.109 -$external_css = get_conf('dir-listing.external-css','"','"');
   7.110 -
   7.111 -$show_hidden_files = false;
   7.112 -if (get_conf('dir-listing.hide-dotfile','"','"','disable') == "disable") {
   7.113 -	$show_hidden_files = true;
   7.114 -}
   7.115 -// get_conf('dir-listing.exclude','\(','\)');
   7.116 -// get_conf('dir-listing.set-footer','"','"');
   7.117 -
   7.118 -$mime_types = array();
   7.119 -foreach (explode(',',get_conf('mimetype.assign','\(','\)')) as $item) {
   7.120 -	$filter = '/\s*"(.*)"\s*=>\s*"(.*)".*/';
   7.121 -	$val = explode(',',preg_replace($filter,'$1,$2',$item));
   7.122 -	if (isset($val[1])) $mime_types[$val[0]] = $val[1];
   7.123 -}
   7.124 -
   7.125 -//
   7.126 -// This function returns the mime type of $file.
   7.127 -//
   7.128 -function get_file_type($file) {
   7.129 -	global $mime_types;
   7.130 -	
   7.131 -	$file = basename($file);
   7.132 -	$default_type = "application/octet-stream";
   7.133 -	if (isset($mime_types[$file])) {
   7.134 -		return $mime_types[$file];
   7.135 -	}
   7.136 -	$pos = strrpos($file, ".");
   7.137 -	if ($pos === false) {
   7.138 -		return $default_type;
   7.139 -	}
   7.140 -//FIXME .tar.gz
   7.141 -	$ext = '.'.rtrim(substr($file, $pos+1), "~");
   7.142 -	if (isset($mime_types[$ext])) {
   7.143 -		return $mime_types[$ext];
   7.144 -	}
   7.145 -	return $default_type;
   7.146 -}
   7.147 -
   7.148 -//$slitaz_style = (dirname($_SERVER["PHP_SELF"]) == '/');
   7.149 -//$slitaz_style = ($_SERVER["SERVER_NAME"] == "mirror.slitaz.org");
   7.150 -$slitaz_style = preg_match("/mirror\.slitaz\./",$_SERVER["SERVER_NAME"]);
   7.151 -if ($slitaz_style) {
   7.152 -	$fvalue = "";
   7.153 -	if (isset($_GET['f'])) $fvalue = 'value="'.$_GET['f'].'"';
   7.154 -	print <<<EOT
   7.155 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   7.156 -	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   7.157 -<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en">
   7.158 -<head>
   7.159 -	<title>Index of /$vpath</title>
   7.160 -	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
   7.161 -	<meta name="description" content=">Index of /$vpath" />
   7.162 -	<meta name="robots" content="index, nofollow" />
   7.163 -	<meta name="author" content="SliTaz Contributors" />
   7.164 -	<link rel="shortcut icon" href="http://mf.slitaz.org//favicon.ico" />
   7.165 -	<link rel="stylesheet" type="text/css" href="http://mf.slitaz.org/css/slitaz.css" />
   7.166 -	<link rel="stylesheet" type="text/css" href="http://mf.slitaz.org/css/mirror.css" />
   7.167 -</head>
   7.168 -<body>
   7.169 -
   7.170 -<!-- Header -->
   7.171 -<div id="header">
   7.172 -	<div id="logo"></div>
   7.173 -	<div id="network">
   7.174 -		<a href="http://www.slitaz.org/">
   7.175 -			<img src="http://mf.slitaz.org/images/home.png" alt="[ Home ]" />
   7.176 -			Home</a>
   7.177 -		<a href="http://scn.slitaz.org/">Community</a>
   7.178 -		<a href="http://doc.slitaz.org/">Doc</a>
   7.179 -		<a href="http://forum.slitaz.org/">Forum</a>
   7.180 -		<a href="http://pro.slitaz.org/">Pro</a>
   7.181 -		<a href="https://slitaz.spreadshirt.net/">Shop</a>
   7.182 -		<a href="http://bugs.slitaz.org">Bugs</a>
   7.183 -		<a href="http://hg.slitaz.org/">Hg</a>
   7.184 -		<a href="http://cook.slitaz.org/">BB</a>
   7.185 -	</div>
   7.186 -	<h1><a href="http://mirror.slitaz.org/">SliTaz Mirror</a> /${vpath}</h1>
   7.187 -</div>
   7.188 -
   7.189 -<!-- Block -->
   7.190 -<div id="block">
   7.191 -	<!-- Navigation -->
   7.192 -	<div id="block_nav">
   7.193 -		<h4><img src="/css/pics/network.png" alt=".png" />Mirrors</h4>
   7.194 -		<div>
   7.195 -EOT;
   7.196 -	
   7.197 -	print <<<EOT
   7.198 -		</div>
   7.199 -		<p>
   7.200 -			<strong>Online tools:</strong>
   7.201 -			<a href="http://pizza.slitaz.org/">Live Builder</a> -
   7.202 -			<a href="http://boot.slitaz.org/">Web Boot</a>
   7.203 -		</p>
   7.204 -	</div>
   7.205 -	<!-- Information/image -->
   7.206 -	<div id="block_info">
   7.207 -		<h4>Welcome to Open Source!</h4>
   7.208 -EOT;
   7.209 -	if (preg_match("/mirror\.slitaz\./",$_SERVER["SERVER_NAME"])) print <<<EOT
   7.210 -		<p>This is the SliTaz GNU/Linux main mirror. The server runs naturally 
   7.211 -		SliTaz (stable) in an lguest virtual machine provided by 
   7.212 -		<a href="http://www.ads-lu.com/">ADS</a>.
   7.213 -		<a href="/info/">Mirror info...</a></p>
   7.214 -EOT;
   7.215 -	print <<<EOT
   7.216 -		<form action="${_SERVER["REQUEST_URI"]}" method="get" style="width: 300px;">
   7.217 -			<p><input type="text" name="f" $fvalue
   7.218 -				style="height: 14px; border-radius: 4px;" /></p>
   7.219 -		</form>
   7.220 -	</div>
   7.221 -</div>
   7.222 -
   7.223 -<div id="lang">
   7.224 -EOT;
   7.225 -
   7.226 -// Mirror list
   7.227 -$mirrors = array();
   7.228 -$fp = @fopen(dirname($_SERVER["SCRIPT_FILENAME"])."/mirrors","r");
   7.229 -if ($fp) {
   7.230 -	while (($line = fgets($fp)) !== false) {
   7.231 -		$line = chop($line);
   7.232 -		$url = parse_url($line);
   7.233 -		if ($_SERVER["SERVER_NAME"] == $url['host']) continue;
   7.234 -		$host = explode('.',$url['host']);
   7.235 -		$mirrors[$host[count($host)-2].".".
   7.236 -		         $host[count($host)-1]] = $line;
   7.237 -	}
   7.238 -}
   7.239 -fclose($fp);
   7.240 -foreach($mirrors as $name => $url) {
   7.241 -	echo "<a href=\"$url$vpath\" title=\"$name mirror\">$name</a>\n";
   7.242 -}
   7.243 -
   7.244 -print <<<EOT
   7.245 -</div>
   7.246 -
   7.247 -<!-- Content -->
   7.248 -<div id="content">
   7.249 -
   7.250 -EOT;
   7.251 -}
   7.252 -else {
   7.253 -
   7.254 -// Print the heading stuff
   7.255 -print "<?xml version='1.0' encoding='$encoding'?>
   7.256 -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.1//EN' 'http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd'>
   7.257 -<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en'>
   7.258 -	<head>
   7.259 -		<title>Index of /" .$vpath. "</title>
   7.260 -";
   7.261 -if ($external_css != '') {
   7.262 -print "	<link rel='stylesheet' type='text/css' href='".$external_css."' />
   7.263 -";
   7.264 -}
   7.265 -else {
   7.266 -print " <style type='text/css'>
   7.267 -		a, a:active {text-decoration: none; color: blue;}
   7.268 -		a:visited {color: #48468F;}
   7.269 -		a:hover, a:focus {text-decoration: underline; color: red;}
   7.270 -		body {background-color: #F5F5F5;}
   7.271 -		h2 {margin-bottom: 12px;}
   7.272 -		table {margin-left: 12px;}
   7.273 -		th, td { font: 90% monospace; text-align: left;}
   7.274 -		th { font-weight: bold; padding-right: 14px; padding-bottom: 3px;}
   7.275 -		td {padding-right: 14px;}
   7.276 -		td.s, th.s {text-align: right;}
   7.277 -		div.list { background-color: white; border-top: 1px solid #646464; border-bottom: 1px solid #646464; padding-top: 10px; padding-bottom: 14px;}
   7.278 -		div.foot { font: 90% monospace; color: #787878; padding-top: 4px;}
   7.279 -		</style>
   7.280 -";
   7.281 -}
   7.282 -print "	</head>
   7.283 -	<body>
   7.284 -	<h2>Index of /" . $vpath ."</h2>
   7.285 -";
   7.286 -}
   7.287 -
   7.288 -print "	<div class='list'>
   7.289 -	<table summary='Directory Listing' cellpadding='0' cellspacing='0'>
   7.290 -";
   7.291 -
   7.292 -function my_is_file($path)	// 2G+ file support
   7.293 -{
   7.294 -	exec("[ -f '".$path."' ]", $tmp, $ret);
   7.295 -	return $ret == 0;
   7.296 -}
   7.297 -
   7.298 -function my_filesize($path)	// 2G+ file support
   7.299 -{
   7.300 -	return rtrim(shell_exec("stat -Lc %s '".$path."'"));
   7.301 -}
   7.302 -
   7.303 -function my_filemtime($path)	// 2G+ file support
   7.304 -{
   7.305 -	return rtrim(shell_exec("stat -Lc %Y '".$path."'"));
   7.306 -}
   7.307 -
   7.308 -function my_filemtimeasc($path)	// 2G+ file support
   7.309 -{
   7.310 -	return rtrim(shell_exec("date -r '".$path."' '+%Y-%b-%d %H:%M:%S'"));
   7.311 -}
   7.312 -
   7.313 -// Get all of the folders and files. 
   7.314 -$folderlist = array();
   7.315 -$filelist = array();
   7.316 -if($handle = @opendir($path)) {
   7.317 -	while(($item = readdir($handle)) !== false) {
   7.318 -		if ($item == "index.php") continue;
   7.319 -		if ($item == "dir-generator.php") continue;
   7.320 -		if (isset($_GET['f'])) {
   7.321 -			$filter = $_GET['f'];
   7.322 -			if (substr($filter,0,1) != '/')
   7.323 -				$filter = '/'.$filter.'/i';
   7.324 -			if (!preg_match($filter,$item)) continue;
   7.325 -		}
   7.326 -		if(is_dir($path.'/'.$item) and $item != '.' and $item != '..') {
   7.327 -			$folderlist[] = array(
   7.328 -				'name' => $item, 
   7.329 -				'size' => 0, 
   7.330 -				'modtime'=> filemtime($path.'/'.$item),
   7.331 -				'modtimeasc'=> my_filemtimeasc($path.'/'.$item),
   7.332 -				'file_type' => "Directory"
   7.333 -			);
   7.334 -		}
   7.335 -		elseif(my_is_file($path.'/'.$item)) {
   7.336 -			if(!$show_hidden_files) {
   7.337 -				if(substr($item, 0, 1) == "." or substr($item, -1) == "~") {
   7.338 -					continue;
   7.339 -				}
   7.340 -			}
   7.341 -			$filelist[] = array(
   7.342 -				'name'=> $item, 
   7.343 -				'size'=> my_filesize($path.'/'.$item), 
   7.344 -				'modtime'=> my_filemtime($path.'/'.$item),
   7.345 -				'modtimeasc'=> my_filemtimeasc($path.'/'.$item),
   7.346 -				'file_type' => get_file_type($path.'/'.$item)
   7.347 -			);
   7.348 -		}
   7.349 -	}
   7.350 -	closedir($handle);
   7.351 -}
   7.352 -
   7.353 -
   7.354 -if(!isset($_GET['s'])) {
   7.355 -	$_GET['s'] = 'name';
   7.356 -}
   7.357 -
   7.358 -// Figure out what to sort files by
   7.359 -$file_order_by = array();
   7.360 -foreach ($filelist as $key=>$row) {
   7.361 -    $file_order_by[$key]  = $row[$_GET['s']];
   7.362 -}
   7.363 -
   7.364 -// Figure out what to sort folders by
   7.365 -$folder_order_by = array();
   7.366 -foreach ($folderlist as $key=>$row) {
   7.367 -    $folder_order_by[$key]  = $row[$_GET['s']];
   7.368 -}
   7.369 -
   7.370 -// Order the files and folders
   7.371 -$sort_type = SORT_ASC;
   7.372 -$order = "&amp;o=d";
   7.373 -if(isset($_GET['o'])) {
   7.374 -	$sort_type = SORT_DESC;
   7.375 -	$order = "";
   7.376 -}
   7.377 -array_multisort($folder_order_by, $sort_type, $folderlist);
   7.378 -array_multisort($file_order_by, $sort_type, $filelist);
   7.379 -
   7.380 -
   7.381 -// Show sort methods
   7.382 -print "<thead><tr>";
   7.383 -
   7.384 -$sort_methods = array();
   7.385 -$sort_methods['name'] = "Name";
   7.386 -$sort_methods['modtime'] = "Last Modified";
   7.387 -$sort_methods['size'] = "Size";
   7.388 -$sort_methods['file_type'] = "Type";
   7.389 -
   7.390 -foreach($sort_methods as $key=>$item) {
   7.391 -	if ($_GET['s'] == $key) $key = "$key$order";
   7.392 -	print "<th class='n'><a href='?s=$key'>$item</a></th>";
   7.393 -}
   7.394 -print "</tr></thead>\n<tbody>\n";
   7.395 -
   7.396 -
   7.397 -
   7.398 -// Parent directory link
   7.399 -if($path != "./") {
   7.400 -	print "<tr><td class='n'><a href='..'>Parent Directory</a>/</td>";
   7.401 -	print "<td class='m'>&nbsp;</td>";
   7.402 -	print "<td class='s'>- &nbsp;</td>";
   7.403 -	print "<td class='t'>Directory</td></tr>\n";
   7.404 -}
   7.405 -
   7.406 -
   7.407 -
   7.408 -// Print folder information
   7.409 -foreach($folderlist as $folder) {
   7.410 -	print "<tr><td class='n'><a href='" . addslashes($folder['name']). "'>" .htmlentities($folder['name']). "</a>/</td>";
   7.411 -	print "<td class='m'>" . $folder['modtimeasc'] . "</td>";
   7.412 -	print "<td class='s'>- &nbsp;</td>";
   7.413 -	print "<td class='t'>" . $folder['file_type']                    . "</td></tr>\n";
   7.414 -}
   7.415 -
   7.416 -
   7.417 -// Print file information
   7.418 -foreach($filelist as $file) {
   7.419 -	print "<tr><td class='n'><a href='" . addslashes($file['name']). "'>" .htmlentities($file['name']). "</a></td>";
   7.420 -	print "<td class='m'>" . $file['modtimeasc'] . "</td>";
   7.421 -	print "<td class='s'>" . format_bytes($file['size'])           . "</td>";
   7.422 -	print "<td class='t'>" . $file['file_type']                      . "</td></tr>\n";
   7.423 -}
   7.424 -
   7.425 -// Print ending stuff
   7.426 -$soft = explode('/',$_SERVER["SERVER_SOFTWARE"]);
   7.427 -$tag = get_conf('server.tag','"','"',$soft[0].' &lt;'.$soft[1].'&gt;');
   7.428 -print "</tbody>
   7.429 -	</table>
   7.430 -	</div>";
   7.431 -if ($slitaz_style) { ?>
   7.432 -
   7.433 -<!-- End of content -->
   7.434 -</div>
   7.435 -
   7.436 -<!-- Footer -->
   7.437 -<div id="footer">
   7.438 -	Copyright &copy; <span class="year"></span>
   7.439 -	<a href="http://www.slitaz.org/">SliTaz</a> - Network:
   7.440 -	<a href="http://scn.slitaz.org/">Community</a>
   7.441 -	<a href="http://doc.slitaz.org/">Doc</a>
   7.442 -	<a href="http://forum.slitaz.org/">Forum</a>
   7.443 -	<a href="http://pkgs.slitaz.org/">Packages</a>
   7.444 -	<a href="http://bugs.slitaz.org">Bugs</a>
   7.445 -	<a href="http://hg.slitaz.org/">Hg</a>
   7.446 -	<p>
   7.447 -		SliTaz @
   7.448 -		<a href="http://twitter.com/slitaz">Twitter</a>
   7.449 -		<a href="http://www.facebook.com/slitaz">Facebook</a>
   7.450 -		<a href="http://distrowatch.com/slitaz">Distrowatch</a>
   7.451 -		<a href="http://en.wikipedia.org/wiki/SliTaz">Wikipedia</a>
   7.452 -		<a href="http://flattr.com/profile/slitaz">Flattr</a>
   7.453 -	</p>
   7.454 -	<p>
   7.455 -		<a href="http://validator.w3.org/check?uri=referer">
   7.456 -			<img src="/css/pics/website/xhtml10.png" 
   7.457 -			     alt="Valid XHTML 1.0" title="Code validé XHTML 1.0"
   7.458 -			     style="width: 80px; height: 15px;" /></a>
   7.459 -	</p>
   7.460 -</div>
   7.461 -
   7.462 -<?php }
   7.463 -else print "
   7.464 -	<form action='".$_SERVER["REQUEST_URI"]."' method='get'>
   7.465 -	<div class='foot'>".$tag."
   7.466 -		<input type='text' name='f'/>
   7.467 -		<!-- <input type='submit' value='Filter' /> -->
   7.468 -	</div>
   7.469 -	</form>
   7.470 -";
   7.471 -print "</body>
   7.472 -	</html>";
   7.473 -?>
     8.1 --- a/mirror-tools/slitaz/mirror/mirrors	Tue Apr 10 22:47:01 2012 +0200
     8.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.3 @@ -1,17 +0,0 @@
     8.4 -http://mirror.slitaz.org/
     8.5 -http://mirror.switch.ch/ftp/mirror/slitaz/
     8.6 -ftp://mirror.switch.ch/mirror/slitaz/
     8.7 -http://www.gtlib.gatech.edu/pub/slitaz/
     8.8 -ftp://ftp.gtlib.gatech.edu/pub/slitaz/
     8.9 -http://download.tuxfamily.org/slitaz/
    8.10 -ftp://download.tuxfamily.org/slitaz/
    8.11 -http://mirror.lupaworld.com/slitaz/
    8.12 -http://slitaz.c3sl.ufpr.br/
    8.13 -ftp://slitaz.c3sl.ufpr.br/slitaz/
    8.14 -http://slitaz.mirror.garr.it/mirrors/slitaz/
    8.15 -ftp://slitaz.mirror.garr.it/mirrors/slitaz/
    8.16 -ftp://ftp.pina.si/slitaz/
    8.17 -http://distro.ibiblio.org/pub/linux/distributions/slitaz/
    8.18 -http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/
    8.19 -ftp://ftp.ch.xemacs.org//pool/2/mirror/slitaz/
    8.20 -http://mirror.clarkson.edu/slitaz/
     9.1 --- a/mirror-tools/slitaz/mirror/pxe/defaults.cfg	Tue Apr 10 22:47:01 2012 +0200
     9.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.3 @@ -1,17 +0,0 @@
     9.4 -default menu.c32
     9.5 -prompt 0
     9.6 -
     9.7 -MENU TITLE Slitaz Web boot                                       http://www.slitaz.org/
     9.8 -ALLOWOPTIONS 0
     9.9 -MENU MARGIN 0
    9.10 -MENU ROWS 17
    9.11 -MENU COLOR BORDER       37;44 #40000000 #00000000 std
    9.12 -MENU COLOR TITLE      1;33;44 #c00090f0 #00000000 std
    9.13 -MENU COLOR SCROLLBAR    37;44 #40000000 #00000000 std
    9.14 -
    9.15 -#MENU COLOR TIMEOUT_MSG 1;33;44 #c00090f0 #00000000 std
    9.16 -#MENU COLOR TIMEOUT       37;40 #80ffffff #00000000 std
    9.17 -MENU TIMEOUTROW 25
    9.18 -MENU AUTOBOOT Start cooking in # second{,s}
    9.19 -timeout 100
    9.20 -TOTALTIMEOUT 9000
    10.1 --- a/mirror-tools/slitaz/mirror/pxe/mkcfg.sh	Tue Apr 10 22:47:01 2012 +0200
    10.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.3 @@ -1,176 +0,0 @@
    10.4 -#!/bin/sh
    10.5 -
    10.6 -#usage:
    10.7 -# copy /boot/isolinux/* <version>
    10.8 -# remove *.cfg
    10.9 -# copy then update /boot/isolinux/isolinux.cfg <version>core.cfg
   10.10 -
   10.11 -cd $(dirname $0)
   10.12 -
   10.13 -# Status functions.
   10.14 -status()
   10.15 -{
   10.16 -	local CHECK=$?
   10.17 -	echo -en "\\033[70G[ "
   10.18 -	if [ $CHECK = 0 ]; then
   10.19 -		echo -en "\\033[1;33mOK"
   10.20 -	else
   10.21 -		echo -en "\\033[1;31mFailed"
   10.22 -	fi
   10.23 -        echo -e "\\033[0;39m ]"
   10.24 -}
   10.25 -
   10.26 -directlinks()
   10.27 -{
   10.28 -	mkdir $1/$2
   10.29 -	ln -s .. $1/$2/$1
   10.30 -	ln -s ../$2.cfg $1/$2/default
   10.31 -	ln -s ../../pxelinux.0 $1/$2/pxelinux.0
   10.32 -	ln -s . $1/$2/pxelinux.cfg
   10.33 -	[ -e $1/boot ] || ln -s ../../boot $1/boot
   10.34 -}
   10.35 -for version in cooking $(ls ../boot | grep 0$) ; do
   10.36 -
   10.37 -[ "$version" = "1.0" ] && continue
   10.38 -echo -n "Building $version"
   10.39 -for i in splash.lss isolinux.msg core.cfg ; do
   10.40 -	[ -s $version/$i ] && continue
   10.41 -	echo -n " $version/$i not found !"
   10.42 -	false
   10.43 -	status
   10.44 -	continue 2
   10.45 -done
   10.46 -if ! grep -q $version/splash.lss $version/isolinux.msg ; then
   10.47 -	echo "WARNING: please update $version/isolinux.msg with $version/splash.lss"
   10.48 -fi
   10.49 -rm -f $version/*-*.cfg
   10.50 -( cd ../boot/$version ; ls rootfs-*.gz 2> /dev/null ) | \
   10.51 -sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
   10.52 -	lowcased=$(echo $flavor | tr [A-Z] [a-z])
   10.53 -	if [ "$lowcased" != "$flavor" ]; then
   10.54 -		echo ""
   10.55 -		echo "Warning : renaming ../boot/$version/rootfs-$flavor.gz to ../boot/$version/rootfs-$lowcased.gz"
   10.56 -		mv ../boot/$version/rootfs-$flavor.gz ../boot/$version/rootfs-$lowcased.gz
   10.57 -		flavor=$lowcased
   10.58 -	fi
   10.59 -    	[ -f $version/$flavor.cfg ] && continue
   10.60 -        cp $version/core.cfg $version/$flavor.cfg
   10.61 -	sed -i -e "s/core-common/$flavor-common/" \
   10.62 -	       -e "s/^label slitaz$/say Using $flavor flavor.\nlabel slitaz/" \
   10.63 -	       -e "s/rootfs.gz/rootfs-$flavor.gz/" $version/$flavor.cfg
   10.64 -	directlinks $version $flavor
   10.65 -done
   10.66 -for flavor in $(cd $version ; ls *.cfg | sed 's/.cfg//') ; do
   10.67 -  echo -n " $flavor"
   10.68 -  cat > $version/$flavor-common.cfg <<EOT
   10.69 -default slitaz
   10.70 -label deCH
   10.71 -	config $version/$flavor-de_CH.cfg
   10.72 -label frCH
   10.73 -	config $version/$flavor-fr_CH.cfg
   10.74 -label reboot
   10.75 -	com32 reboot.c32
   10.76 -
   10.77 -implicit 0	
   10.78 -prompt 1	
   10.79 -timeout 80
   10.80 -F1 $version/help.txt
   10.81 -F2 $version/options.txt
   10.82 -F3 $version/isolinux.msg
   10.83 -F4 $version/display.txt
   10.84 -F5 $version/enhelp.txt
   10.85 -F6 $version/enopts.txt
   10.86 -
   10.87 -EOT
   10.88 -  while read cfg kbd loc ; do
   10.89 -    if [ ! -f $version/$cfg.kbd ]; then
   10.90 -    	echo ""
   10.91 -	echo "Not found: $version/$cfg.kbd"
   10.92 -    fi
   10.93 -    info="Now using $kbd keyboard and $loc locale."
   10.94 -    sed -e "s/^display/kbdmap $version\/$cfg.kbd\ndisplay/" \
   10.95 -        -e "s/^label slitaz$/say $info\nlabel slitaz/" \
   10.96 -        -e "s/gz/gz lang=$loc kmap=$kbd/" \
   10.97 -        < $version/$flavor.cfg > $version/$flavor-$cfg.cfg
   10.98 -    cat >> $version/$flavor-common.cfg <<EOT
   10.99 -label $cfg
  10.100 -	config $version/$flavor-$cfg.cfg
  10.101 -EOT
  10.102 -  done <<EOT
  10.103 -be    be-latin1    fr_FR
  10.104 -br    br-abnt2     pt_PT
  10.105 -ca    cf           fr_FR
  10.106 -de    de-latin1    de_DE
  10.107 -de_CH de_CH-latin1 de_DE
  10.108 -en    uk           C
  10.109 -es    es           es_ES
  10.110 -fi    fi-latin1    fi
  10.111 -fr    fr-latin1    fr_FR
  10.112 -fr_CH fr_CH-latin1 fr_FR
  10.113 -hu    hu           hu
  10.114 -it    it           it_IT
  10.115 -jp    jp106        jp_JP
  10.116 -pt    pt-latin1    pt_PT
  10.117 -ru    ru           ru_RU
  10.118 -us    us           C
  10.119 -EOT
  10.120 -done
  10.121 -status
  10.122 -
  10.123 -done
  10.124 -
  10.125 -echo -n "Building 1.0"
  10.126 -rm -f 1.0/*-*.cfg
  10.127 -( cd ../boot/1.0 ; ls rootfs-*.gz 2> /dev/null ) | \
  10.128 -sed 's/rootfs-\(.*\).gz/\1/' | while read flavor; do
  10.129 -    	[ -f 1.0/$flavor.cfg ] && continue
  10.130 -        cp 1.0/core.cfg 1.0/$flavor.cfg
  10.131 -	sed -i -e "s/core-common/$flavor-common/" \
  10.132 -	       -e "s/rootfs.gz/rootfs-$flavor.gz/" 1.0/$flavor.cfg
  10.133 -	directlinks 1.0 $flavor
  10.134 -done
  10.135 -directlinks 1.0 core
  10.136 -for flavor in $(cd 1.0; ls *.cfg | sed 's/.cfg//') ; do
  10.137 -  echo -n " $flavor"
  10.138 -  cat > 1.0/$flavor-common.cfg <<EOT
  10.139 -default slitaz
  10.140 -
  10.141 -label def
  10.142 -	config 1.0/$flavor.cfg
  10.143 -
  10.144 -label reboot
  10.145 -	com32 reboot.c32
  10.146 -
  10.147 -implicit 0	
  10.148 -prompt 1	
  10.149 -timeout 80
  10.150 -F1 1.0/help.txt
  10.151 -F2 1.0/options.txt
  10.152 -F3 1.0/isolinux.msg
  10.153 -F4 1.0/display.txt
  10.154 -EOT
  10.155 -  while read cfg kbd loc ; do
  10.156 -    if [ ! -f 1.0/$cfg.kbd ]; then
  10.157 -    	echo ""
  10.158 -	echo "Not found: 1.0/$cfg.kbd"
  10.159 -    fi
  10.160 -    sed -e "s/^display/KBDMAP 1.0\/$cfg.kbd\ndisplay/" \
  10.161 -        -e "s/gz/gz lang=$loc kmap=$kbd/" \
  10.162 -        < 1.0/$flavor.cfg > 1.0/$flavor-$cfg.cfg
  10.163 -    cat >> 1.0/$flavor-common.cfg <<EOT
  10.164 -label $cfg
  10.165 -	config 1.0/$flavor-$cfg.cfg
  10.166 -EOT
  10.167 -  done <<EOT
  10.168 -be    be    fr
  10.169 -ca    ca    fr
  10.170 -de_CH fr_CH fr_CH
  10.171 -en    en    en
  10.172 -es    es    en
  10.173 -fr    fr    fr
  10.174 -fr_CH fr_CH fr_CH
  10.175 -it    it    en
  10.176 -us    us    en
  10.177 -EOT
  10.178 -done
  10.179 -status