User:Ronan: Difference between revisions
PaulEggleton (talk | contribs) (De-spam (again!)) |
|||
(35 intermediate revisions by 12 users not shown) | |||
Line 20: | Line 20: | ||
This section is my wiki for idea i'd like to work to improve my openembedded | This section is my wiki for idea i'd like to work to improve my openembedded | ||
Some are perhaps really bad ideas ( not enough searsh ), or already exists , let me know. | Some are perhaps really bad ideas ( not enough searsh ), or already exists , let me know. | ||
== better logs reports == | |||
i missed important error compiling lost of software | |||
* http://opensource.bolloretelecom.eu/projects/oestats/wiki/oestats | |||
* should we use logging python module ? | |||
== bugzilla integration == | == bugzilla integration == | ||
Line 28: | Line 34: | ||
bitbake -bugz mozilla | bitbake -bugz mozilla | ||
cf http://code.google.com/p/pybugz/source/browse/trunk/README?r=28 | cf : | ||
* seppuku.bbclass | |||
* http://code.google.com/p/pybugz/source/browse/trunk/README?r=28 | |||
== reduce image size method == | == reduce image size method == | ||
Line 42: | Line 50: | ||
i should also try some code inspector ( to check code duplication etc to advise programmer where place could be saved ). | i should also try some code inspector ( to check code duplication etc to advise programmer where place could be saved ). | ||
Some Steiner stuff on fusil could be useful. | Some Steiner stuff on fusil could be useful. | ||
* /usr/include , /usr/share/, /usr/src ... .debug directory should be tested first. | |||
== report tool == | == report tool == | ||
Line 49: | Line 59: | ||
* baobab ... | * baobab ... | ||
[http://www.reportlab.org/rl_toolkit.html reportlab] | perharps [http://www.reportlab.org/rl_toolkit.html reportlab] APPS for oestats. Look http://docs.djangoproject.com/en/dev/howto/outputting-pdf/ ( example works pretty well). | ||
== netboot images == | == netboot images == | ||
Line 62: | Line 72: | ||
opkg, bitbake etc | opkg, bitbake etc | ||
* using | * using [http://fusil.hachoir.org fusil] ( fuzzing report ) , | ||
i made the recipe see [http://bugs.openembedded.net/show_bug.cgi?id=4495 bug 4495] | i made the recipe see [http://bugs.openembedded.net/show_bug.cgi?id=4495 bug 4495] | ||
look success story at http://fusil.hachoir.org/trac/wiki/CrashList | look success story at http://fusil.hachoir.org/trac/wiki/CrashList | ||
= more documentation = | === more documentation === | ||
==== bitbake documentation ==== | |||
I started bitbake developer documentation here : [[Bitbake]] | |||
TODO : | |||
* provide documentations about how to make better code in bitbake | |||
* pydoc , doctest , unittest , pyunit , pylint... | |||
* byte compiling bbclass , what is done by cache ? | |||
* http://lists.idyll.org/listinfo/testing-in-python | |||
* categories for /classes : qa,pkg,build,doc,... | |||
==== bbclass documentation ==== | |||
* should this features be implemented as a bbclass or in bitbake core library ? | |||
* authors and contact in bbclass ! some of its need to be rewrite due to changes in python => 2.4 , we should detects them | |||
and add to a TODO-featuring tracker. | |||
* force to provide documentation as a policy | |||
=== test quality of a recipe === | |||
= | |||
= | |||
* (all ?) field well filled | |||
SRC_URI tarball contains no P/PV/PN => dangerous | * SRC_URI tarball contains no P/PV/PN => dangerous | ||
* no SRCREV fixed , PV = "x.y.z+svnr${SRCREV}" : | |||
perharps allow in a pending branch and auto-apply in the stable one. | |||
http://projects.linuxtogo.org/pipermail/openembedded-devel/2007-July/002639.html | |||
* are SRC_URI fetchable ? we can fix it automagically changing SRC_URI for our MIRROR | |||
* initscript without INITSCRIPT mecanism ( we need , for each new mecanism, write a recipe test and documentation ) | |||
* do_install with cp cmd instead of install | |||
* warns on RPROVIDES | |||
* recipe modification without upgrade the PR | |||
cf : http://handhelds.org/~zecke/bitbake-qa-0.1.tar.bz2 | cf : http://handhelds.org/~zecke/bitbake-qa-0.1.tar.bz2 | ||
Line 85: | Line 114: | ||
== OpenEmbedded showcase == | == OpenEmbedded showcase == | ||
We should promote OE projects (not only fic & o-hand.com stuffs) | |||
== target web interface == | == target web interface == | ||
Line 95: | Line 124: | ||
* start a new one from scratch ? ( pylons based for example ). | * start a new one from scratch ? ( pylons based for example ). | ||
== | == delivery/release class == | ||
Produce a report on a delivery. | |||
Tool that give good report are often | Tool that give good report are often appreciated ( there is something to show ). | ||
Managers/ | Managers/customers/developers can keep useful and pretty traces of their projects. | ||
* log/tag revision of each versioned tree ( that are not in distro/src-revs ) ( mtn status / svn info / -> rev-history , | * log/tag revision of each versioned tree ( that are not in distro/src-revs ) ( mtn status / svn info / -> rev-history , delivery-info ) | ||
* show software update | * show software update | ||
* show infos on bugs ( closed/news etc ) as a changelog | * show infos on bugs ( closed/news etc ) as a changelog | ||
* show stats about image and packets ( boabab etc ) | * show stats about image and packets ( boabab etc ) | ||
* show copyrights , | * show copyrights , licenses ... | ||
== emulator/qemu tasks == | == emulator/qemu tasks == | ||
Line 130: | Line 159: | ||
using script ( crazy ) or common variables ( completely crazy ). | using script ( crazy ) or common variables ( completely crazy ). | ||
== use git facilities == | |||
=== locate bug when upgrading oe === | |||
something like : | |||
git bisect start | |||
git bisect bad | |||
ops = rec_ops(BB_CMD) | |||
if [ $? -eq 0 ] | |||
git bisect bad | |||
undo_ops(ops) | |||
else | |||
git bisect good | |||
fi | |||
* if bug is a non-version fixed package , fix version and continue | |||
* make a report | |||
* cf http://www.miximum.fr/methodes-et-outils/79-debusquer-une-regression-avec-git-bisect ( fr ) | |||
== IDE integration == | |||
http://community.buglabs.net/kgilmer/posts/3-OpenEmbedded-Tools-for-Eclipse | |||
= Centers of interest related to openembedded = | = Centers of interest related to openembedded = | ||
* Industrial applications ( automation , robotic ) see http://objects.reprap.org/wiki/User:Ronan | |||
* [http://www.gnome.org/press/releases/gmae.html Gnome Mobile] | * [http://www.gnome.org/press/releases/gmae.html Gnome Mobile] | ||
* [ | * [http://www.rushessay.com/prices.php buy essay] | ||
http://zecke.blogspot.com/2006/10/softwareengineering-and-qa-for-free.html http://projects.linuxtogo.org/pipermail/openembedded-devel/2006-September/000323.html | http://zecke.blogspot.com/2006/10/softwareengineering-and-qa-for-free.html http://projects.linuxtogo.org/pipermail/openembedded-devel/2006-September/000323.html |
Latest revision as of 16:27, 7 May 2014
I'm more a Software architect. Sometimes it's hard to explain what you should do in the enterprise. I work on improve this state of thing.
OpenEmbedded Experience
2006 - 2007 : Paper-book project
Prototype for paper-book
- http://scourge.fr/mathdesc/images/pb/PB-1.JPG
- http://scourge.fr/mathdesc/images/pb/PB-2.JPG
- http://scourge.fr/mathdesc/images/pb/PB-3.JPG
2007 - 2008 : Nao
Soon some information about it.
Wishlist
This section is my wiki for idea i'd like to work to improve my openembedded Some are perhaps really bad ideas ( not enough searsh ), or already exists , let me know.
better logs reports
i missed important error compiling lost of software
- http://opensource.bolloretelecom.eu/projects/oestats/wiki/oestats
- should we use logging python module ?
bugzilla integration
if ( OE_WARN_BUG == 1 ) checkbug(${PN})
bitbake -bugz mozilla
cf :
- seppuku.bbclass
- http://code.google.com/p/pybugz/source/browse/trunk/README?r=28
reduce image size method
Reduce image size using remote lsof session on target to check useless files , packages ( blame useless dependency ) ... diff with $ROOTFS and eventually try them by size.
#REMOTE_METHODE = "ssh 192.168.0.1" REMOTE_METHODE = "tty /dev/USBtty1" bitbake -lsof-session mycustom-image.bb
http://www.ibm.com/developerworks/linux/library/l-inotify.html
i should also try some code inspector ( to check code duplication etc to advise programmer where place could be saved ). Some Steiner stuff on fusil could be useful.
- /usr/include , /usr/share/, /usr/src ... .debug directory should be tested first.
report tool
print beautiful documentation on the distro/packages/whatever.
- template design
- baobab ...
perharps reportlab APPS for oestats. Look http://docs.djangoproject.com/en/dev/howto/outputting-pdf/ ( example works pretty well).
netboot images
mkelf-linux kernel-image [ramdiskimage] keywords : initramdisk
some QA ideas
fuzzing our softwares
opkg, bitbake etc
- using fusil ( fuzzing report ) ,
i made the recipe see bug 4495 look success story at http://fusil.hachoir.org/trac/wiki/CrashList
more documentation
bitbake documentation
I started bitbake developer documentation here : Bitbake TODO :
- provide documentations about how to make better code in bitbake
- pydoc , doctest , unittest , pyunit , pylint...
- byte compiling bbclass , what is done by cache ?
- http://lists.idyll.org/listinfo/testing-in-python
- categories for /classes : qa,pkg,build,doc,...
bbclass documentation
- should this features be implemented as a bbclass or in bitbake core library ?
- authors and contact in bbclass ! some of its need to be rewrite due to changes in python => 2.4 , we should detects them
and add to a TODO-featuring tracker.
- force to provide documentation as a policy
test quality of a recipe
- (all ?) field well filled
- SRC_URI tarball contains no P/PV/PN => dangerous
- no SRCREV fixed , PV = "x.y.z+svnr${SRCREV}" :
perharps allow in a pending branch and auto-apply in the stable one. http://projects.linuxtogo.org/pipermail/openembedded-devel/2007-July/002639.html
- are SRC_URI fetchable ? we can fix it automagically changing SRC_URI for our MIRROR
- initscript without INITSCRIPT mecanism ( we need , for each new mecanism, write a recipe test and documentation )
- do_install with cp cmd instead of install
- warns on RPROVIDES
- recipe modification without upgrade the PR
cf : http://handhelds.org/~zecke/bitbake-qa-0.1.tar.bz2
common & easy script encapsulation
OpenEmbedded showcase
We should promote OE projects (not only fic & o-hand.com stuffs)
target web interface
- port Webif to OE
my bug report on this : WIP
- libopkg client support ( via http://packagekit.org/ ? )
- start a new one from scratch ? ( pylons based for example ).
delivery/release class
Produce a report on a delivery. Tool that give good report are often appreciated ( there is something to show ). Managers/customers/developers can keep useful and pretty traces of their projects.
- log/tag revision of each versioned tree ( that are not in distro/src-revs ) ( mtn status / svn info / -> rev-history , delivery-info )
- show software update
- show infos on bugs ( closed/news etc ) as a changelog
- show stats about image and packets ( boabab etc )
- show copyrights , licenses ...
emulator/qemu tasks
some tasks that could be used for tests and debug.
- image is bootable ? ( ca be call in testsuite of task that build the img )
- test first boot
- upgrade not failed ? ( print the guilty )
- broken linkage ? ( can be call in testsuite of sanity.bbclass )
provides some methods
- build image
- launch with adapted parameter according to a qemu-machine conf
- NFS etc
see poky anjuta plugin and poky qemu scripts.
coreboot integration
- some recipes for utils
- use openembedded instead of buildrom ( yes another build system :/ )
Gentoo ebuild compatibility
using script ( crazy ) or common variables ( completely crazy ).
use git facilities
locate bug when upgrading oe
something like :
git bisect start git bisect bad ops = rec_ops(BB_CMD) if [ $? -eq 0 ] git bisect bad undo_ops(ops) else git bisect good fi
- if bug is a non-version fixed package , fix version and continue
- make a report
- cf http://www.miximum.fr/methodes-et-outils/79-debusquer-une-regression-avec-git-bisect ( fr )
IDE integration
http://community.buglabs.net/kgilmer/posts/3-OpenEmbedded-Tools-for-Eclipse
- Industrial applications ( automation , robotic ) see http://objects.reprap.org/wiki/User:Ronan
- Gnome Mobile
- buy essay
http://zecke.blogspot.com/2006/10/softwareengineering-and-qa-for-free.html http://projects.linuxtogo.org/pipermail/openembedded-devel/2006-September/000323.html