New version of osso-statusbar-cpu

June 24, 2008 on 7:14 pm | In maemo-hackers, osso-statusbar-cpu | 4 Comments

Been a while since I've blogged nor done anything maemo related. Well, for a change I whipped up a new version of osso-statusbar-cpu. I hadn't built it for chinook previously (although the code would have allowed that) and it was still looking like it belonged to OS2007. I whipped up a new base icon for it (based on the battery icon stretched to bigger square).

I'm not too happy how it turned out, but having approximately zero capabilities in graphics, I decided to let it slip as is. Here's a sneak peek of what it looks like:

Screenshot of osso-statusbar-cpu in action.

The .install file is available as usual.

Vte on maemo can now do bold black

January 17, 2008 on 7:51 pm | In maemo-hackers | No Comments

As someone somewhere pointed out a long ago, the osso-xterm/vte show bold black as black, not as "bright black". I finally fixed this and new vte is now in repos for mistral, bora and chinook. Currently there's no way to pull this via UI (and OS2008 wouldn't allow it anyway) so if you want it, you need to use some apt-magic.

Obligatory updated screen shot:
Maemo vte can now do bold black!

Scratchbox on hardy

January 17, 2008 on 11:13 am | In maemo | 14 Comments

I've been running hardy (the upcoming ubuntu LTS release) for a while now. After a kernel update, I noticed I couldn't build any packages anymore due to configure failing when checking if built binaries could be run. A bit of log reading, the error seemed to be: "mmap: permission denied", hmm.

The configure test there should be fairly trivial, but just to be sure, I made a little test program and compiled it. The compiler works just fine but the produced binary gave the same mmap-error, so it seemed the arm emulation was broken. After stracing the binary a bit, I saw that it tried to do mmap(..., 4096, ...), which failed.

The error appeared after a kernel upgrade, so I tried to find something related to mmap in /proc, and find did give me /proc/sys/vm/mmap_min_addr, which had 65536 in it. Running sudo sh -c 'echo 4096 > /proc/sys/vm/mmap_min_addr' was my first instinct and it did indeed fix the problem -- any larger value and the problem resurfaced.

So, if you're running ubuntu hardy (or linux 2.6.24(?)), you might hit this problem; and lowering the mmap_min_addr should help.

mh-shot-tool update

October 25, 2007 on 4:58 pm | In maemo-hackers | 1 Comment

By popular request, mh-shot-tool now remembers the last selected method (save to disk vs. flickr) and the last save path. Also, an activity indicator was added for image saving/compression, uploading is still missing one though.

Keep your ideas coming, they just might get implemented. 😉

A small update for the lucky ones: mh-shot-tool is available for chinook. Just click on the install link.

Multi-target development for maemo

October 22, 2007 on 1:19 pm | In maemo | 12 Comments

Despite the fact that the maemo sdk "installer script" is the "preferred" way of installing scratchbox and the roostraps, I have never used it. I prefer to have my dpkg aware of the scratchbox. What I do instead, is grab the scratchbox packages with apt and download the rootstraps manually. These instructions are for debian/ubuntu -- on other distros/platforms you're on your own, sorry.

Here's approximately what I do:

> sudo sh -c 'echo "deb http://scratchbox.org/debian apophis main" >> /etc/apt/sources.list' # Use this on i386 systems
> sudo sh -c 'echo "deb http://www.ipi.fi/~pablo/maemo5-sdk_amd64 /" >> /etc/apt/sources.list' # Use this on amd64 systems
> sudo apt-get update
> sudo apt-get install scratchbox-core scratchbox-devkit-cputransp \
scratchbox-devkit-debian scratchbox-devkit-doctools scratchbox-devkit-maemo3 \
scratchbox-libs scratchbox-toolchain-cs2005q3.2-glibc-arm \
scratchbox-toolchain-cs2005q3.2-glibc2.5-arm \
scratchbox-devkit-perl
> sudo apt-get install scratchbox-toolchain-cs2007q3-glibc2.5-arm7 \
scratchbox-devkit-svn scratchbox-devkit-git
 

This takes a while to download and install, when it asks for users to add to scratchbox, just choose your user (and whomever might want to do scratchbox development on the box). Onwards:

> sudo wget -O /scratchbox/packages/mistral-armel-rootstrap.tgz \
http://repository.maemo.org/stable/mistral/armel/Maemo_Dev_Platform_v2.0_armel-rootstrap.tgz
> sudo wget -O /scratchbox/packages/bora-armel-rootstrap.tgz \
http://repository.maemo.org/stable/3.0/armel/maemo-sdk-rootstrap_3.0_armel.tgz
> sudo wget -O /scratchbox/packages/chinook-armel-rootstrap.tgz \
http://repository.maemo.org/stable/4.0/armel/maemo-sdk-rootstrap_4.0_armel.tgz
> sudo wget -O /scratchbox/packages/fremantle-armel-rootstrap.tgz \
http://repository.maemo.org/stable/5.0/armel/maemo-sdk-rootstrap_5.0_armel.tgz
 

These take a while too, depending obviously on the thickness of your webtubes. Now all left to do is to create scratchbox targets. Bear in mind, that you might need to re-logon to gain the sbox group, or you may also do:

> su - `whoami`
 

Now onto the rootstrap creation... The mistral and bora use the "glibc" -toolchain and chinook uses the "glibc2.5" -toolchain. First mistral:

> sb-conf st mistral-armel -c cs2005q3.2-glibc-arm \
-d debian-sarge:maemo3-tools:cputransp:doctools:perl:maemo3-debian \
-t qemu-arm-0.8.2-sb2
> sb-conf rs mistral-armel /scratchbox/packages/mistral-armel-rootstrap.tgz
> sb-conf in mistral-armel -c -e -d -F
 

Bora goes pretty much the same, just replace "mistral" with "bora":

> sb-conf st bora-armel -c cs2005q3.2-glibc-arm \
-d debian-sarge:maemo3-tools:cputransp:doctools:perl:maemo3-debian \
-t qemu-arm-0.8.2-sb2
> sb-conf rs bora-armel /scratchbox/packages/bora-armel-rootstrap.tgz
> sb-conf in bora-armel -c -e -d -F
 

Okie, now we have two rootstraps, missing only chinook, it goes like this:

> sb-conf st chinook-armel -c cs2005q3.2-glibc2.5-arm \
-d debian-sarge:maemo3-tools:cputransp:doctools:perl:maemo3-debian \
-t qemu-arm-0.8.2-sb2
> sb-conf rs chinook-armel /scratchbox/packages/chinook-armel-rootstrap.tgz
> sb-conf in chinook-armel -c -e -d -F
 

Now trying also fremantle =)

> sb-conf st fremantle-armel -c cs2007q3-glibc2.5-arm7 \
-d debian-etch:qemu:doctools:svn:git \
-t qemu-arm-sb
> sb-conf rs fremantle-armel /scratchbox/packages/fremantle-armel-rootstrap.tgz
> sb-conf in fremantle-armel -c -e -d -F

Now you should have scratchbox with 3 targets: one for IT2006, one for IT2007 and one for upcoming IT2008.

Additional notes: the "bora" rootstrap is broken, it requires you to either install the "virtual packages" or install the real packages. I prefer the latter and add "deb http://repository.maemo.org gregale free non-free" to /etc/apt/sources.list momentarily and do "apt-get update; fakeroot apt-get -f install".

Now that you have three separate targets for different versions, you can jump from one target to another by doing sb-conf se <version>-armel. These instructions can easily be applied for i386 too, if you need to test your applications: just replace every occurrence of arm or armel with i386, drop the "cputransp" from devkits and omit the "-t qemu-arm-0.8.2-sb2" option.

Update: updated the chinook download url to the 4.0 final instead of the beta. Another: Thanks to Marius for pointing out that the perl devkit needs to be installed before it can be used.

Testing flog blog automatic updates

October 22, 2007 on 12:07 pm | In geeky | No Comments

This post should appear briefly in my facebook profile. 😉

Leetle hildon-1/chinook migration things

October 21, 2007 on 12:55 pm | In maemo | 1 Comment

Most of "my" applications are now chinook ready, at least in the svn. However, I prefer to keep them compatible with mistral and bora, so I need to do little quirks. Let's investigate osso-xterm's modifications for example.

What was previously known as hildon-libs, is now hildon-1, so we need to tell configure.ac about this. Before the change, I had:

PKG_CHECK_MODULES(HILDON, hildon-libs >= 0.12.0)
AC_SUBST(HILDON_CFLAGS)
AC_SUBST(HILDON_LIBS)
 

Now, as we need to also check for hildon-1, and due to the fact that we need to know it in source as the include paths have changed, it goes like this:

PKG_CHECK_MODULES(HILDON, hildon-1 >= 0.9.9, \
                  AC_DEFINE(HILDON, 1, [Version of hildon libraries]), \
                  [AC_DEFINE(HILDON, 0, [Version of hildon libraries]) \
                  PKG_CHECK_MODULES(HILDON_LIBS, hildon-libs >= 0.12.0)])
AC_SUBST(HILDON_CFLAGS)
AC_SUBST(HILDON_LIBS)
 

In code, I do the following:

#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#if HILDON == 1
# include <hildon/hildon-window.h>
#else
# include <hildon-widgets/hildon-window.h>
#endif
 

There are also some real changes, but with this I get to compile stuff and get warnings/errors for the other stuff that has changed. Those I've, again, separated with #if HILDON == 1.

For projects that don't use autotools, I use this kind of stuff:

mh_shot_tool_CFLAGS += $(shell if pkg-config hildon-1 --exists; then \
         pkg-config hildon-1 --cflags; echo -DHILDON=1; \
         elif pkg-config hildon-libs --exists; then \
         pkg-config hildon-libs --cflags; echo -DHILDON=0; \
         else pkg-config gtk+-2.0 --cflags; fi)
 

Edit: thanks to Loïc for pointing out, the AC_SUBSTs aren't actually needed, PKG_CHECK_MODULES already does that. You may omit them and it will still work.

mh-shot-tool and timed capture

October 16, 2007 on 10:13 pm | In maemo, maemo-hackers | 1 Comment

A blog post suggested that mh-shot-tool should have the ability to snap timed screenshots. Trying not to let the audience down, I added a "re-grab with <n> second delay" functionality. Just refresh the catalogues and check for updates. Install file available as usual.

Now you can do things like this:
shot-2007-10-16-18-30-13

New php package for maemo

October 16, 2007 on 8:55 pm | In maemo, maemo-hackers | 15 Comments

Piotras requested a php package with phpize and php-config, so I decided to change the packaging and add a -dev package. After a couple of tries I also added -pear and -cli package. I also upgraded to newest upstream (5.2.4) and the fastcgi-binary had changed name, so I needed to upgrade the packages once more. If you happened to hit this gap, upgrade the packages to get it working.

Had some spare time, so I upgraded the nginx package to newest upstream (0.5.32) too. Both packages available as .install files: nginx and php5.

maemo-hackers maintenance

July 23, 2007 on 11:10 am | In maemo-hackers | No Comments

The maemo-hackers website had been untouched for too long, so I decided to break it. First I upgraded trac to 0.10.4. This seemed to break the svn repeatedly, but quick googling suggested to change to fsfs-backend, and indeed, no more breakages.

Then I got and crazy idea, maybe akismet could be used to check tickets/comments for spam, like in wordpress. Seemed it wasn't so crazy after all, SpamFilter did just this (and more). Now I'm waiting for it to catch it's first spam!

Also, the few "lucky" ones with accounts, password changing is now possible from the "My account" -page.

« Previous PageNext Page »

Powered by WordPress.
Entries and comments feeds. Valid XHTML and CSS. ^Top^