Hi guys,
last weekend i started to move my main project crossepg from google code to our new repo on github.
When i checked e2openplugins repo i saw all .bb examples but i've a some concerns:
- No SRCREV is provided in any package. It compile the last GIT commit at the time of compilation
- If i recompile my image one week later bitbake doesn't understand what it need to recompile
- The version with the "git commit id" is useful if you need to check the source in the git repo.. but it doesn't permit to understand how many old is the plugin and comparing two version you can't understand what is the newer (you can do it only checking the history on git repo)
Obviously they are only examples.. so i can change it manually as I prefer... but every time i need to update SRCREV and version manually and i'm REALLY REALLY LAZY
In addiction to that many people could find complicate use and maintain that in their images. There is many people who maintain slightly enhanced svn images and not a real customized image.
To solve this i made a python script (attached to the post).
The tar.gz contain:
- e2openplugins-example -> a set of .bb fixed to be used with that script
- e2openplugins.patch -> a patch to fix actual .bb format to the new one
- task-openplugins.bb -> a task to compile all plugins in one shot
- README -> the instructions
- e2openplugins-update.py -> the script
Simply run the script as
python e2openplugins-update.py /output/path/
it download the .bb files from e2openplugins repo.. discover all modules.. download the repo for every module and it check the last commit date, the commit id and the version number (if a file VERSION is provided). After that with some replace add that information inside the .bb files creating a set of .bb with an exact SRCREV SRCDATE SRCVER.
When the plugin will be compiled it look like that: enigma2-plugin-extensions-antilogo_1.0-20110923+git9cdd68-r0_mipsel.ipk
As you can see there is a version and a date.. the git commit id is truncated to only 6 chars. I did that because i retain the file name is more readable. And in association with the date is sufficient to understand the exact source version inside the repo.
What do you think? If it's ok i'll commit that on github. For the script i thought to create a separate repo e2openplugins-script