Editing MADDE/Theme building

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
{{MADDE}}
+
Recently, three source packages that were published in Diablo times was released in their Fremantle versions which I had waited for a long time for. These are:<br>
-
 
+
<br>
-
== Background ==
+
* A source package which generates a theme, [http://maemo.gitorious.org/fremantle-hildon-desktop/hildon-theme-variant-example hildon-theme-variant-example ]<br>
-
 
+
* This is done on the basis of [http://maemo.gitorious.org/fremantle-hildon-desktop/hildon-theme-layout-5 hildon-theme-layout-5] (also published in Maemo5.0 update2 SDK), a package that provides the GTK theming and how to slice and dice a template into the theme elements.<br>
-
Recently, three source packages that were published in Diablo times was released in their Fremantle versions which I had waited for a long time for. These are:
+
* The slicers and dicers and dithers are provided in [http://maemo.gitorious.org/fremantle-hildon-desktop/hildon-theme-tools hildon-theme-tools] (also published in Maemo5.0 update2 SDK).<br>
-
 
+
<br>
-
* A source package which generates a theme, [http://gitorious.org/hildon-theme-example-stskeeps/hildon-theme-example-stskeeps/trees/master]
+
hildon-theme-variant-example is CC BY SA 2.5, hildon-theme-layout-5 is CC BY SA 3.0 and hildon-theme-tools is GPL 2.0 for those who are interested in that.<br>
-
* This is done on the basis of [http://maemo.gitorious.org/fremantle-hildon-desktop/hildon-theme-layout-5 hildon-theme-layout-5] (also published in Maemo5.0 update2 SDK), a package that provides the GTK theming and how to slice and dice a template into the theme elements.
+
<br>
-
* The slicers and dicers and dithers are provided in [http://maemo.gitorious.org/fremantle-hildon-desktop/hildon-theme-tools hildon-theme-tools] (also published in Maemo5.0 update2 SDK).
+
Now, on to what this article is actually about.<br>
-
 
+
<br>
-
hildon-theme-variant-example is CC BY SA 2.5, hildon-theme-layout-5 is CC BY SA 3.0 and hildon-theme-tools is GPL 2.0 for those who are interested in that.
+
What I am going to provide you theme makers of Maemo, is a way to make theme packages similar to how the vendor-provided themes on your device is made. We had this ability in Diablo and now we have it in Fremantle.<br>
-
 
+
<br>
-
== Building a theme ==
+
There was a catch with the Diablo method - it required you installing Maemo SDK, well, under Linux and this isn't always commonly found on graphics designers computers which typically ran Windows or MacOS X.<br>
-
 
+
<br>
-
What I am going to provide you theme makers of Maemo, is a way to make theme packages similar to how the vendor-provided themes on your device is made. We had this ability in Diablo and now we have it in Fremantle.
+
Thus, cross-platform solutions like [ https://garage.maemo.org/projects/thememaker Kontorri's Theme Maker] was made which emulated what these packages described are doing. It made a binary Debian package, which could only be uploaded to Maemo Extras in the non-free section.<br>
-
 
+
<br>
-
There was a catch with the Diablo method - it required you installing Maemo SDK, well, under Linux and this isn't always commonly found on graphics designers computers which typically ran Windows or MacOS X.
+
Normally, developers upload a source package to Maemo Extras and the autobuilder builds it for us.<br>
-
 
+
<br>
-
Thus, cross-platform solutions like [https://garage.maemo.org/projects/thememaker Kontorri's Theme Maker] was made which emulated what these packages described are doing. It made a binary Debian package, which could only be uploaded to Maemo Extras in the non-free section.
+
Now, the ballgame has changed with [http://wiki.maemo.org/MADDE MADDE]. [http://wiki.maemo.org/MADDE MADDE] is a cross-platform Maemo SDK (Linux, Windows, MacOS X), which basically implements just about enough to cross-compile a Qt application. But why is this interesting for theme makers?
-
 
+
<br><br>
-
Normally, developers upload a source package to [[Extras|Maemo Extras]] and the autobuilder builds it for us.
+
I've discovered that it is possible to generate the source package for a theme package within [http://wiki.maemo.org/MADDE MADDE]. What does this mean for your workflow as designers? Let me guide you through a workflow of theme design with the help of MADDE and the Maemo Extras repository.<br>
-
 
+
<br>
-
Now, the ballgame has changed with [[MADDE]]. MADDE is a cross-platform Maemo SDK (Linux, Windows, MacOS X), which basically implements just about enough to cross-compile a Qt application. But why is this interesting for theme makers?
+
Requirements:<br>
-
 
+
<br>
-
I've discovered that it is possible to generate the source package for a theme package within MADDE. What does this mean for your workflow as designers? Let me guide you through a workflow of theme design with the help of MADDE and the Maemo Extras repository.
+
* Install [http://wiki.maemo.org/MADDE MADDE] on your computer - it's a quite big download but it may be useful when you'd like to wander into Qt development as well. In this example I will be referring to paths from Windows MADDE but it should be transferable to your<br>
-
 
+
<br>
-
=== Requirements ===
+
* Something to open tar.gz files, such as [http://www.rarsoft.com/ WinRAR] or similar.<br>
-
 
+
<br>
-
* Install MADDE on your computer - it's a quite big download but it may be useful when you'd like to wander into Qt development as well. In this example I will be referring to paths from Windows MADDE but it should be transferable to your
+
* The garage.maemo.org and Extras upload invitation from http://wiki.maemo.org/Uploading_to_Extras-devel. Currently you will need to set a SSH key (write 'blahblahblah' if this is nonsense to you)<br>
-
 
+
<br>
-
* Something to open tar.gz files, such as [http://www.rarsoft.com/ WinRAR] or similar.
+
* Patience and willingness to learn :)<br>
-
 
+
<br>
-
* The garage.maemo.org and Extras upload invitation from [[Uploading_to_Extras-devel]]. Currently you will need to set a SSH key (write 'blahblahblah' if this is nonsense to you)
+
Workflow when beginning a new theme:<br>
-
 
+
<br>
-
* Patience and willingness to learn :)
+
'''Step 1: Downloading the theme source package template<br>'''
-
 
+
<br>
-
=== Workflow when creating a new theme ===
+
On [http://gitorious.org/hildon-theme-example-stskeeps/hildon-theme-example-stskeeps/commits/master this page] there is a link that is called Download master as tar.gz. What is this? This is a theme template source package which you can customize to your own needs. Unpack the directory inside this into C:\MADDE\0.5\home\your username. Feel free to rename the directory to your intended theme name.<br>
-
 
+
<br>
-
'''Step 1: Downloading the theme source package template'''
+
'''Step 2: Executing MADDE<br>'''
-
 
+
<br>
-
On [http://gitorious.org/hildon-theme-example-stskeeps/hildon-theme-example-stskeeps/commits/master this page] there is a link that is called Download master as tar.gz. What is this? This is a theme template source package which you can customize to your own needs. Unpack the directory inside this into C:\MADDE\0.5\home\your username. Feel free to rename the directory to your intended theme name.
+
In your start menu (or whatever your OS calls it's launcher), there should be MADDE -> MADDE Terminal.<br>
-
 
+
<br>
-
'''Step 2: Executing MADDE'''
+
You will now end up in your 'home directory' in MADDE, which is C:\MADDE\0.5\home\your username. <br>
-
 
+
<br>
-
In your start menu (or whatever your OS calls it's launcher), there should be MADDE -> MADDE Terminal.
+
In there, you can 'cd directory name' where directory name is the name you gave the folder/directory from before.<br>
-
 
+
<br>
-
You will now end up in your 'home directory' in MADDE, which is C:\MADDE\0.5\home\your username.
+
'''Step 3: Customizing the source package template, basics<br>'''<br>
-
 
+
In the folder you should now 'sh try_it_out.sh'. This will ask you a couple of questions. You only have to do this once.<br>
-
In there, you can 'cd directory name' where directory name is the name you gave the folder/directory from before.
+
<br>
-
 
+
It will ask you the following questions:<br>
-
'''Step 3: Customizing the source package template, basics'''
+
<br>
-
 
+
* What should the package name of your theme be? (Example: hildon-theme-example)<br>
-
In the folder you should now 'sh try_it_out.sh'. This will ask you a couple of questions. You only have to do this once.
+
<br>
-
 
+
* What should be theme name be? (Example: My example theme)<br>
-
It will ask you the following questions:
+
<br>
-
 
+
* Who is the maintainer of this theme?<br>
-
* What should the package name of your theme be? (Example: hildon-theme-example)
+
<br>
-
 
+
* What should the directory name be (Example: example)<br>
-
* What should be theme name be? (Example: My example theme)
+
<br>
-
 
+
It will then set up the theme template.<br>
-
* Who is the maintainer of this theme?
+
<br>
-
 
+
'''Step 4: Customize the graphics - the fun step!<br>'''
-
* What should the directory name be (Example: example)
+
<br>
-
 
+
You can see in the directory several interesting places. The primary place for your work is in the template directory. This contains template.svg (SVG version of the basis template) and template.png (PNG version of the template). While it is up to you which one you want to edit, remember to always export template.png from the SVG.<br>
-
It will then set up the theme template.
+
<br>
-
 
+
Similar directories, icons, background images and other things to customize can be found in the applications directory.<br>
-
'''Step 4: Customize the graphics - the fun step!'''
+
<br>
-
 
+
'''Step 5: Building the source package<br>'''<br>
-
You can see in the directory several interesting places. The primary place for your work is in the template directory. This contains template.svg (SVG version of the basis template) and template.png (PNG version of the template). While it is up to you which one you want to edit, remember to always export template.png from the SVG.
+
When you're done customizing, you can finally build your source package. In MADDE, you can do this:<br>
-
 
+
<br>
-
Similar directories, icons, background images and other things to customize can be found in the applications directory.
+
username $ mad dpkg-buildpackage -S -us -uc -d<br>
-
 
+
<br>
-
'''Step 5: Building the source package'''
+
This will generate a .dsc and .tar.gz in the parent directory which you can use in the next step.<br>
-
 
+
<br>
-
When you're done customizing, you can finally build your source package. In MADDE, you can do this:
+
'''Step 6: Uploading to Maemo Extras<br>'''
-
 
+
<br>
-
username $ mad dpkg-buildpackage -S -us -uc -d
+
You can now upload this .dsc and .tar.gz file to Maemo Extras through the [https://garage.maemo.org/extras-assistant/ Maemo Extras Assistant]. The autobuilder will then build the theme package for you and your theme will show up in Extras-devel.<br>
-
 
+
<br>
-
This will generate a .dsc and .tar.gz in the parent directory which you can use in the next step.
+
As a bonus, anyone can base their themes upon yours as they have the 'source code' of your theme (under CC SA BY 2.5 conditions) - something not possible with ThemeMaker.<br>
-
 
+
<br>
-
'''Step 6: Uploading to Maemo Extras'''
+
There are probably more maintaining issues which I hope the real theme makers will explore such as adding new versions to changelogs and such and tell about in their blogs.<br>
-
 
+
<br>
-
You can now upload this .dsc and .tar.gz file to Maemo Extras through the [https://garage.maemo.org/extras-assistant/ Maemo Extras Assistant]. The autobuilder will then build the theme package for you and your theme will show up in [[Extras-devel]].
+
If you have problems with any of the steps, prod me (Stskeeps) on #maemo , irc.freenode.net or comment this post. <br>
-
 
+
-
As a bonus, anyone can base their themes upon yours as they have the 'source code' of your theme (under CC SA BY 2.5 conditions) - something not possible with ThemeMaker.
+
-
 
+
-
There are probably more maintaining issues which I hope the real theme makers will explore such as adding new versions to changelogs and such and tell about in their blogs.
+
-
 
+
-
If you have problems with any of the steps, prod me (Stskeeps) on [[IRC]] in the #maemo channel, irc.freenode.net or comment this post.
+
-
 
+
[[Category:Development]]
[[Category:Development]]

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: