Re: Multi-laptop naming scheme for build files
On Wed, Mar 14, 2012 at 5:29 PM, Daniel Drake d...@laptop.org wrote: Some work needs to be done before that is possible, but we also need a naming scheme. I think the key considerations for this are: We also need - a stream id - perhaps 2-digit year for the development builds - a custom stream identifier for non OLPC builds I like the idea floated that we could use the same ints as we use for OFW files -- but I am not too attached to it. For development and non-OLPC builds, something like: o112001.zd4 (7 chars) o - OS development build from OLPC 2 - XO-1 following OFW numbering 12 - 12.x.y stream 001 - build nr ni312001.zd4 (8 chars) ni - Nicaragua build - 2 chars for country code :-) 3 - XO-1.5 12 - 12.x.y stream 001 - build nr For official signed OLPC builds, we could switch to this scheme, or stick to the existing one. This scheme forces a bit of structure in the build name, even for custom builds. We actually need this, because when builds get to manufacturing, some custom builds have a local name (such as the Peru build you mentioned) and others just say os7.zd4. Sometimes there are a few os7.zd4 dancing around, and we've worried about confusion at manufacturing. cheers, m -- martin.langh...@gmail.com mar...@laptop.org -- Software Architect - OLPC - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
Why not use the extension to identify the hardware, and the file name part for the software? This is already partially true - .zd2, .zd4, .zd8 refer to hardware configurations. Could as well be 3z4 for a 4 GB XO-1.5, and 5z8 for an 8 GB XO-1.75. - Bert - ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Thu, Mar 15, 2012 at 7:36 AM, Martin Langhoff martin.langh...@gmail.com wrote: We also need - a stream id - perhaps 2-digit year for the development builds - a custom stream identifier for non OLPC builds I'm not personally convinced that these are hard requirements, at least the first one. Our release builds already have unique naming (in terms of build number) because we follow an incrementing scheme - 860 - 874 - 883. But if you think it is worth the complication it is something we could accomodate. The custom stream can already be added at any point in the string by deployments. For development and non-OLPC builds, something like: o112001.zd4 (7 chars) o - OS development build from OLPC 2 - XO-1 following OFW numbering 12 - 12.x.y stream 001 - build nr I kind of like this, but I would position the alphabetic part to separate two of the numbers to make it less cryptic. e.g. 12001o1.zd4 in the above example. This won't provide uniqueness between 12.1.0 build 3 and 12.2.0 build 3, for example, but I don't think we are shooting for perfection in terms of conflict avoidance, right? We will hit 4-digit build numbers at some point, so maybe that should be 0001 above, meaning that only 1 character is left for deployment use. For official signed OLPC builds, we could switch to this scheme, or stick to the existing one. I don't see why we would adopt this for development builds but not signed ones - where we would face again the annoyance of it being possible to have XO-1.5 and XO-1.75 signed releases on the same media. (for development builds you can just rename them or use directories...) Another approach would be to adjust the build tools to make deployment releases use the same number that was used in the OLPC release build. For example, if Peru customises build 883, olpc-os-builder would produce pe883.img (ignoring the requirement of identifying target laptop model just to simplify this point), and deployments would be encouraged to stick to this convention. That way the stream can be identified in a less complicated manner, providing more space for the rest of the information that may need to be included. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Thu, Mar 15, 2012 at 11:06 AM, Daniel Drake d...@laptop.org wrote: I'm not personally convinced that these are hard requirements, at least the first one. Well, we switched streams for arm builds at least once (maybe twice) so in the last ~12 months, there are two os30 for arm builds. Only yesterday I came across a year-old email (or trac update) reporting a problem on the f12 or f13 os30. something we could accomodate. The custom stream can already be added at any point in the string by deployments. So on this point, as you'd be addign support in OOB for this, I want the custom stream name to be part of what you do as a custom deployment, to gently guide them to set it... I kind of like this, but I would position the alphabetic part to separate two of the numbers to make it less cryptic. e.g. 12001o1.zd4 in the above example. Sounds great to me. This won't provide uniqueness between 12.1.0 build 3 and 12.2.0 build 3, for example, but I don't think we are shooting for perfection in terms of conflict avoidance, right? Hmmm. Maybe we can shift our window a bit, and drop the decade to pick up the major release. So 12.1.x == 21, and 12.2 == 22 We will hit 4-digit build numbers at some point Only for official builds, and there we are not following this scheme; and if we do switch to follow this scheme then I expect official builds to follow the numbering sequence. so _if_ we switch official builds to this scheme, I'd expect for example 21098o1.zd4 == last dev build of the 12.1.0 series 21099o1.zd4 == official build , or maybe change o for os so 21100os1.zd4 As we reset the counter on a per-stream basis, it's unlikely we'll do 4 digits. I don't see why we would adopt this for development builds but not signed ones - where we would face again the annoyance of it being possible to have XO-1.5 and XO-1.75 signed releases on the same media. (for development builds you can just rename them or use directories...) Ok - we're in agreement here. Another approach would be to adjust the build tools to make deployment releases use the same number that was used in the OLPC release build. For example, if Peru customises build 883, olpc-os-builder would produce pe883.img (ignoring the requirement of identifying target laptop model just to simplify this point), That definitely needs a build number, because deployments will spin several builds based on 883. I don't like this approach so much. I think the base stream is better than the nominal official base build. For example, it accommodates the early build prepared by Nicaragua for 1.75 mfg. These are awkward conditions that in a perfect world wouldn't happen, but they do, and we're better prepared to handle them looking at the stream... cheers, m -- martin.langh...@gmail.com mar...@laptop.org -- Software Architect - OLPC - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Thu, Mar 15, 2012 at 9:26 AM, Martin Langhoff martin.langh...@gmail.com wrote: Hmmm. Maybe we can shift our window a bit, and drop the decade to pick up the major release. So 12.1.x == 21, and 12.2 == 22 We will hit 4-digit build numbers at some point Only for official builds, and there we are not following this scheme; and if we do switch to follow this scheme then I expect official builds to follow the numbering sequence. so _if_ we switch official builds to this scheme, I'd expect for example 21098o1.zd4 == last dev build of the 12.1.0 series 21099o1.zd4 == official build , or maybe change o for os so 21100os1.zd4 This is feeling horribly cryptic now. But it seems like a solid proposal until 2020, so if you're sure the crypticness is worth the hassle, I think we can go with it. Just to clarify for others, the proposed scheme is: 1. Fourth digit of four-digit year, e.g. 2 in 2012, 3 in 2013 2. Second component of the build stream. For 12.1.0, that's 1. For 12.2.0, thats 2. 3. Three-digit zero-padded build number, e.g. 098 4. An alphabetic 'deployment identifier', max 2 characters if wanting to target FAT media. OLPC will use o, deployments may wish to use their two-letter country code. 5. A numeric code identifying the target laptop model. 1=XO1, 2=XO1.5, 3=XO1.75, etc 6. A '.' 7. The extension (e.g. zd) So 21099o1.img is 12.1.0 build 99 for XO-1, from OLPC. We need to think carefully if there are any considerations in the stable stream of upgrading from build 883 to (e.g.) build 99 (breaking the always-incrementing sequence), and any effects this might have on users. Two things that spring to mind are: - Sugar needs to show the stream (we should have done this a while ago...) - olpc-update command-line syntax may need a little rethink to make things flow well (again something that is pending for a while) but overall I think we're in good shape for picking this up. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Thu, Mar 15, 2012 at 9:26 AM, Martin Langhoff martin.langh...@gmail.com wrote: This won't provide uniqueness between 12.1.0 build 3 and 12.2.0 build 3, for example, but I don't think we are shooting for perfection in terms of conflict avoidance, right? Hmmm. Maybe we can shift our window a bit, and drop the decade to pick up the major release. So 12.1.x == 21, and 12.2 == 22 One imperfection raised here is for point releases. We have been inconsistent in the past with what we do for development builds of point releases - sometimes we have reset to 1, in other cases we have incremented over the development build number of the previous cycle. For 12.1.1 would you reset to build 1 (causing a potential-but-harmless name conflict), or would you continue on from the last build number of 12.1.0? Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Thu, Mar 15, 2012 at 11:55 AM, Daniel Drake d...@laptop.org wrote: For 12.1.1 would you reset to build 1 (causing a potential-but-harmless name conflict), or would you continue on from the last build number of 12.1.0? I'd continue. Agreed is cryptic. We're packing a lot of info in 8 chars. cheers, m -- martin.langh...@gmail.com mar...@laptop.org -- Software Architect - OLPC - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
RE: Multi-laptop naming scheme for build files
1. single-character ID for product type. 'a' for XO-1, 'b' for XO-1.5, 'c' for XO-1.75, ... 2. build number 3. a . 4. extension e.g. 'a900.img' - build 900 copy-nand image for XO-1 'b900.zd4' - build 900 4GB image for XO-1.5 'c900.zd4' - build 900 4GB image for XO-1.75 Thoughts/other ideas? It's a good idea.. simple to remember easy (a, b, c...) Why use the build number? Not is better use the version of Sugar? Ex: os883 is Sugar 0.94.1and you need remember that 883 is 0.94... Only a idea... Regards! Alan ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Wed, Mar 14, 2012 at 10:24:07PM +, Alan Jhonn Aguiar Schwyn wrote: 1. single-character ID for product type. 'a' for XO-1, 'b' for XO-1.5, 'c' for XO-1.75, ... 2. build number 3. a . 4. extension e.g. 'a900.img' - build 900 copy-nand image for XO-1 'b900.zd4' - build 900 4GB image for XO-1.5 'c900.zd4' - build 900 4GB image for XO-1.75 Thoughts/other ideas? It's a good idea.. simple to remember easy (a, b, c...) Why use the build number? Not is better use the version of Sugar? Ex: os883 is Sugar 0.94.1 and you need remember that 883 is 0.94... Only a idea... The build number meaning has become overloaded. I dislike having it exposed. The .au deployment installation method avoids some of this by providing a user interface for installation of builds. I was not involved in the design. They unzip a file onto a USB drive, which contains an OpenFirmware script and the build images. But the design does mean that file names are a non-issue for deployment. We already use 0, 1 and 2 to mean XO-1, XO-1.5, and XO-1.75, so adding another set of letters seems a duplication. -- James Cameron http://quozl.linux.org.au/ ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
Why not use the same prexix as in the firmware: XO-3 = Q5 XO-1.75 = Q4 XO-1.5 = Q3 XO-1 = Q2 Is not better, but value is having a single convention. Gonzalo On Wed, Mar 14, 2012 at 6:29 PM, Daniel Drake d...@laptop.org wrote: Hi, Right now, build files for XO-1.5 and XO-1.75 have the same filename (#11226). There have been a few requests that we move to a naming scheme that has a different filename in this case so that the files can live together on a USB disk and generally not be so easily confused. Some work needs to be done before that is possible, but we also need a naming scheme. I think the key considerations for this are: 1. Future proofing. It should be resilient to the introduction of future products that use the same architecture and disk image format. 2. Short names. OFW only understands 8.3 for FAT. Also, deployments sometimes like to customise the 8 part too e.g. per703-2.img for Peru, and I've seen others putting codes after the osXXX part, e.g. os880j.img. Let's try and leave space for customisation here. 3. Uses only file name (the 8 part), not the extension (the 3 part). This sticks with general computing world conventions and agrees with some olpc-os-builder implementation details which allow the user to customise the name but not extension, where olpc-os-builder can guarantee that output files from different modules do not have conflicting names. Based on this and previous discussions I think we could go with something like: 1. single-character ID for product type. 'a' for XO-1, 'b' for XO-1.5, 'c' for XO-1.75, ... 2. build number 3. a . 4. extension e.g. 'a900.img' - build 900 copy-nand image for XO-1 'b900.zd4' - build 900 4GB image for XO-1.5 'c900.zd4' - build 900 4GB image for XO-1.75 Thoughts/other ideas? Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
What James is referring to is that newer Open Firmware builds *already* know to use 0,1,2 to distinguish signed XO-1, 1.5, 1.75 installation files respectively. The unsigned files still need a scheme to be made distinguishable; but unless we want to change OFW we should stick with what it knows. For example: If fs.zip is not found, an XO-1 will try fs0.zip, an XO-1.5 will try fs1.zip, and an XO-1.75 will try fs2.zip. The same is true with bootfw.zip other files used by XOs when security is enabled. On Wed, Mar 14, 2012 at 7:39 PM, Gonzalo Odiard gonz...@laptop.org wrote: Why not use the same prexix as in the firmware: XO-3 = Q5 XO-1.75 = Q4 XO-1.5 = Q3 XO-1 = Q2 Is not better, but value is having a single convention. Gonzalo On Wed, Mar 14, 2012 at 6:29 PM, Daniel Drake d...@laptop.org wrote: Hi, Right now, build files for XO-1.5 and XO-1.75 have the same filename (#11226). There have been a few requests that we move to a naming scheme that has a different filename in this case so that the files can live together on a USB disk and generally not be so easily confused. Some work needs to be done before that is possible, but we also need a naming scheme. I think the key considerations for this are: 1. Future proofing. It should be resilient to the introduction of future products that use the same architecture and disk image format. 2. Short names. OFW only understands 8.3 for FAT. Also, deployments sometimes like to customise the 8 part too e.g. per703-2.img for Peru, and I've seen others putting codes after the osXXX part, e.g. os880j.img. Let's try and leave space for customisation here. 3. Uses only file name (the 8 part), not the extension (the 3 part). This sticks with general computing world conventions and agrees with some olpc-os-builder implementation details which allow the user to customise the name but not extension, where olpc-os-builder can guarantee that output files from different modules do not have conflicting names. Based on this and previous discussions I think we could go with something like: 1. single-character ID for product type. 'a' for XO-1, 'b' for XO-1.5, 'c' for XO-1.75, ... 2. build number 3. a . 4. extension e.g. 'a900.img' - build 900 copy-nand image for XO-1 'b900.zd4' - build 900 4GB image for XO-1.5 'c900.zd4' - build 900 4GB image for XO-1.75 Thoughts/other ideas? Thanks, Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Wed, Mar 14, 2012 at 5:53 PM, Samuel Greenfeld greenf...@laptop.org wrote: For example: If fs.zip is not found, an XO-1 will try fs0.zip, an XO-1.5 will try fs1.zip, and an XO-1.75 will try fs2.zip. The same is true with bootfw.zip other files used by XOs when security is enabled. Yes, I agree. My thread is about naming of the other file needed for imaging - the .zd file in the XO-1.5/XO-1.75 case. This is not only for unsecure flashing, it is also needed in the secure path. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Wed, Mar 14, 2012 at 5:39 PM, Gonzalo Odiard gonz...@laptop.org wrote: Why not use the same prexix as in the firmware: XO-3 = Q5 XO-1.75 = Q4 XO-1.5 = Q3 XO-1 = Q2 Is not better, but value is having a single convention. It could lead to confusion though - q2something.img (if that's what your suggesting) sounds very much like a firmware file by our current convention. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
May be i2, i3,i4, i5, the id is the number. Gonzalo On Wed, Mar 14, 2012 at 9:02 PM, Daniel Drake d...@laptop.org wrote: On Wed, Mar 14, 2012 at 5:39 PM, Gonzalo Odiard gonz...@laptop.org wrote: Why not use the same prexix as in the firmware: XO-3 = Q5 XO-1.75 = Q4 XO-1.5 = Q3 XO-1 = Q2 Is not better, but value is having a single convention. It could lead to confusion though - q2something.img (if that's what your suggesting) sounds very much like a firmware file by our current convention. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
RE: Multi-laptop naming scheme for build files
And this? o2b883.img that means:o (like a old 'os')2 (for XO 1) b (build)883 the number o for the image.. q for firmware... AlanDate: Wed, 14 Mar 2012 21:14:11 -0300 Subject: Re: Multi-laptop naming scheme for build files From: gonz...@laptop.org To: d...@laptop.org CC: devel@lists.laptop.org May be i2, i3,i4, i5, the id is the number. Gonzalo On Wed, Mar 14, 2012 at 9:02 PM, Daniel Drake d...@laptop.org wrote: On Wed, Mar 14, 2012 at 5:39 PM, Gonzalo Odiard gonz...@laptop.org wrote: Why not use the same prexix as in the firmware: XO-3 = Q5 XO-1.75 = Q4 XO-1.5 = Q3 XO-1 = Q2 Is not better, but value is having a single convention. It could lead to confusion though - q2something.img (if that's what your suggesting) sounds very much like a firmware file by our current convention. Daniel ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
On Wed, Mar 14, 2012 at 06:02:29PM -0600, Daniel Drake wrote: It could lead to confusion though - q2something.img (if that's what your suggesting) sounds very much like a firmware file by our current convention. As the firmware is typically shipped in the operating system, I don't think this confusion would be very likely. -- James Cameron http://quozl.linux.org.au/ ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
Based on this and previous discussions I think we could go with something like: 1. single-character ID for product type. 'a' for XO-1, 'b' for XO-1.5, 'c' for XO-1.75, ... 2. build number 3. a . 4. extension Thoughts/other ideas? I suggest you should allocate at least one additional character for originating organization (or geographical location of issuer). Today we have au___ from Australia, ca___ from Canada, ___dx for Dextrose (South America), etc. mikus ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Multi-laptop naming scheme for build files
qu...@laptop.org said: The build number meaning has become overloaded. I dislike having it exposed. You have to expose something that's unique for each build so you can talk about which versions do/don't have a particular bug or feature. I think a sequential number is about as good as you are going to get. It lets you use before and after. -- These are my opinions, not necessarily my employer's. I hate spam. ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel