Venerdì, 04 Luglio 2008
|
ciaran
Ciarán's free software notes
about:
yesterdayslinks
|
|
Giovedì, 03 Luglio 2008
|
Stian Rødven Eide
FSCONS 2008
about:
award
free software
fscons
|
Nominations for the Nordic Free Software Award 2008
The Nordic Free Software Award is given to Nordic citizens, projects or organizations that have made a prominent contribution to the advancement of Free Software. Nominations for the Free Nordic Software Award 2008 can be submitted at http://fscons.org/award/nominate/ until September 1st. The jury consists of representatives associated with the Free Software Movement in the various Nordic countries.
|
ciaran
Ciarán's free software notes
about:
emacs
|
Using and writing Emacs 22 input methods
Emacs 21 had a
generic function called iso-accents-mode for writing âççéntèd
çhàrâçtërs, but that was removed in Emacs 22. It took me a while, but
I found the replacement was to use set-input-method, and then select
whichever language you want to be able to type the accented characters
of.
The default keybinding for set-input-method is not very convenient
(C-x RET C-\), and I almost always use the same
input method, so I put this small helper function in
my .emacs and bound it to an easy key sequence:
(defun ciaran-toggle-french-input-method ()
"toggle between French and no input method"
(interactive)
(if (string= current-input-method "french-alt-postfix")
(set-input-method nil)
(set-input-method "french-alt-postfix")))
(global-set-key [?\C-c ?.] 'ciaran-toggle-french-input-method)
Sometimes I need Dutch characters, but the
"dutch" input method contains some completely
unnecessary conversion sequences which make it frustrating to use.
And sometimes I want the "á" character so I can write my
name properly. So what do I do if I want a personalised input method?
About modifying input methods,
the Emacs
Lisp Reference Manual just says "How to define input
methods is not yet documented in this manual". So I went to
the Emacs page on
sv.gnu.org, checked out a CVS copy of the emacs source, grepped
around, and found that the Dutch input is defined in the file
/emacs/leim/quail/latin-alt.el.
Looking inside, it's not so complicated.
Here's a minimalist example of what you could put in your .emacs to
create your own very basic input method:
(quail-define-package
"ciarans-chars" "MYlanguage" "MY" t
"Ciaran's personal input method defining only the
conversion sequence he wants
" nil t nil nil nil nil nil nil nil nil t)
(quail-define-rules
("\"a" ?ä) ;; LATIN SMALL LETTER A WITH DIAERESIS
;; remember to comment your code, if you like :-)
("\"e" ?ë) ;; LATIN SMALL LETTER E WITH DIAERESIS
("a'" ?á) ;; LATIN SMALL LETTER A WITH GRAVE
)
For more information on those two quail-* functions, you
can get help in the usual way with C-h f and then
type the name of the function at the prompt. If you want to test the
above code, just paste those two code snippets into an Emacs buffer
and run M-x eval-last-sexp after each. Then you can
select the "ciarans-chars" input method, and you can read
about the input method by pressing C-h I and typing
"ciarans-chars" at the prompt.
You will also see that, like with the existing input methods, when
you type the first character of what could be a conversion sequence
(in the above example, this is just " or 'a'), you will see in
the minibuffer which characters could follow it to cause both
characters to be converted into another character. So
with ciarans-chars, when you type "
the minibuffer will display: "[ae].
Looking at the source in /emacs/leim/quail/latin-alt.el
should give you ideas for what other conversion sequences you'd use,
and the other files in that directory contain the conversion code
for more complex alphabets.
Me, I'll make a minimal input method for the characters I use from
French, Dutch, plus the Irish a-fada "á". I filed a bug
report about the current Dutch input method, but seeing how
uncomplicated it is, I might be able to fix it and submit a patch
now.
--
Ciarán O'Riordan,
Support free software: Join FSFE's
Fellowship
|
Mercoledì, 02 Luglio 2008
|
gerloff
blog
about:
config
freesoftware
mutt
|
Better living with mutt
During a chat about the pros and cons of gmail, a colleague told me that he especially likes how gmail inserts your sent messages into the same thread as the one you're replying to. The idea that a webmailer should be more useable than my beloved mutt simply didn't fit my view of the world. I'm allergic to webmail. A bit of web search soon brought me this nugget for insertion into my .muttrc: set record = "^"
Got it from here, and it works like a charm. You'll need mutt version > 1.5.10 or the current_folders patch.
I'm probably the last person on earth to find out about this. Bye bye, "sent" folder.
|
Lunedì, 30 Giugno 2008
|
ciaran
Ciarán's free software notes
|
OpenStreetMap is doing great
I was impressed recently by the progress
of OpenStreetMap (OSM).
The maps of most big cities (in Europe at least) are already very
complete,
e.g. Dublin
and Brussels.
Many smaller cities and cities in less developed countries are still
in need of work, but the current status clearly proves that the
project's aims are practical.
Why is having freely reusable maps important? For one thing, they
can be used by other community projects such as Wikipedia. Another
advantage is that rather than trying to make it difficult to copy
their data (like the corporate map providers do), the OSM website
provides lots of features
to export their maps.
(If you want to link to an OSM map instead of exporting an image,
use the "Permalink" link in the bottom right-hand corner.)
When you export an image from OSM, there's no copyright notice or
attribution info (which seems like a mistake to me), so when you use
OSM maps, consider adding a link or some text to tell people where
you got the map from.
The current licence used for the mapping data is
the Creative
Commons by-sa-2.0 licence. There are constant discussions about
changing the licence - not because people disagree with the ideals
of that licence, but because there is debate among legal experts as
to whether that licence is valid for mapping data and would work
worldwide. For people intrested in that sort of thing, there's
a very good summary
written by Richard Fairhurst in January 2008.
To get involved, there's info on
their Beginner's
Guide. You might also find an existing OSM group in your area by checking
the Mapping projects
page on their wiki. I've recently borrowed a GPS handset, so I'm hoping to
be able to post more info in the future about how it all works.
On
the Event
Calendar on their wiki, there's a list of upcoming events
including their annual
conference which will take place in Limerick, Ireland on the
weekend of July 12th and 13th.
According to their software
licensing policy
and
the FAQ,
all OSM software
is free
software, using the GNU GPL by default.
In other news, the OpenMoko Neo Freerunner is heading for large scale
production. I've heard it's far from being ready for daily use, and
you should be comfortable with installing and upgrading software.
So this version is mostly for hackers, but if you're interested in
mobile phones powered by free software, OpenMoko is the free-est
available.
There's a group
discount when people in one region order 10 phones. Because it
has built-in GPS and all the software is free software, I'm hoping
it will increase the number of OpenStreetMap contributors.
--
Ciarán O'Riordan,
Support free software: Join FSFE's
Fellowship
|
Sabato, 28 Giugno 2008
|
Robert Schuster
Weblog
about:
guitar
|
She got me again
Looking carefully at the posts from GNU Classpath members you realize that a lot of them play an instrument. Years ago I took (acoustic) guitar lessons but did not continue this after moving. One thing that bothered me over the years is that when I heard a nice song and started finding out how the (guitar) melody is played either I was not skilled enough or it just does not sound good on the acoustic guitar. Three weeks ago I put and end to this situation and decided to take guitar lessons again. This time I will learn to play the electric guitar which I think is the instrument I like more. I am a big fan of indie rock and brit pop music. Listening to Johnossi and the Blood Red Shoes as well as visiting the Immergut festival (where both bands played) certainly had a great impact on my latest decision. Just one note: If deep in your mind the idea that one day you start learning to play an instrument is buried, do not wait any longer and start learning today! I think the worst thing that can happen is that you realize that you have a little bit of talent since this means you wasted time and could have started earlier ...
After a week of practicing the pick I got with OpenMoko's Neo1973 broke :-)

Will try harder!
|
Robert Schuster
Weblog
about:
cacao
freifunk
gdb
midpath
|
Offline days, online days
Last week was critical. Due to some problems with our Freifunk mesh network I was offline for some days. Well, not really offline. If I urgently needed Internet connection I had to take my girlfriend's laptop (mine is still unable to deal with ad-hoc mode), walk to the Traveplatz park and start the OLSR daemon. Still this does not really help updating the various SVN, Mercurial and Monotone repositories on my desktop computer. :-) On the other hand I worked on the JIT Cache which is thanks to Twisti and Andreas Krall, now my diploma thesis topic. I wanted to fix the issues it had before LinuxTag and was successfull doing so: The JIT Cache is now working on ARM! What massively helped me achieving this goal was the good old GNU Debugger. It cannot tell you when you forgot to flush the system's instruction and data caches (this was the final issue) but for everything else GDB was just great. Being an (x86) assembler addict in my young years I really enjoyed single stepping through JIT compiled code and watching the codegenerator emiting machine instructions. I find it interesting to see how working on the Cacao virtual machine brings two of my otherwise quite unrelated interests together: Namely playing around with assembler stuff and working with a high-level programming language like Java. :-) On related news: I committed MIDPath 0.3RC1 recipes to OpenEmbedded. These provide a fully configured and correctly set up installation of MIDPath. That means if your repo contains the binaries (I hope OpenMoko adopts those quickly) you just need to tell your package manager to install 'midpath' and that will install all of the mandatory packages and provides a suitable configuration (screen size, button mapping, GUI/sound provider, ...) that lets you start MIDlets right through MIDPath's SuiteManager. Hint: Install 'midpath-demos' instead and you get everything from above plus a bunch of demo midlets to try out the platform. MIDPath 0.3RC1 still has some rough edges but it is definitely maturing well. I hope that with the recipes more people will get to know about it.
|
Martedì, 24 Giugno 2008
|
shane
Communicating freely
about:
developers
KDE
support
|
Be nice to developers
Adriaan from KDE - the man I personally
blame for all bugs ever encountered in programs written in the C++
language [1] - has written a
blog post suggesting that it's a good
idea not to send abusive emails to Free Software developers who don't
offer professional support services at zero cost for their code.
He has got a point. While the low
barriers of access and hierarchy in Free Software often provide easy
access to the developer in question, the developer's personal
provision of support is likely to receive a far lower priority than
development work. This is hardly surprising.
Few people expect to speak directly
with the developer of a proprietary application when the application
misbehaves. Support is instead provided by a department inside the
production company or an accredited partner. Free Software takes
this abstraction a little further. One of the key innovations in
this paradigm is that third parties can provide professional top tier
support regardless of their relationship with the original developer
of the application.
It is important to remember that the
word "Free" in Free Software does not refer to the software
having zero cost either in production or in adoption. It refers
solely to the freedoms the software offers everyone who receives a
copy.
There is a cost of production, delivery
and support with Free Software. This cost may include personnel
hours, hardware and electricity on the production side and it may
include training, integration and maintenance on the support side.
Such cost calculations do not disappear because Free Software offers
more freedom than proprietary software.
Free Software is often developed by
people and organisations who offset their cost of production because
they get something else in return. What they receive may be kudos,
the ability to play with other people's innovations or a solution
delivered to users. The situation and cost benefit analysis differs
for each individual or organisation.
In the post delivery of a solution
different dynamics are at play. A developer who creates a technology
with a cost offset might not wish to also offer service level
agreements to users. It might just not fit into their reason for
making the software or it might have too high a cost.
Everyone can get the code, everyone can
distribute it, everyone can offer support for it. It's more flexible
and encourages more competition over delivery of solutions. Those
solutions can be technical, integrative or support based.
Many developers are happy to answer
some questions and even respond to requests for features, but it's
not reasonable to expect that they are obliged to do so. We should
be nice and bear in mind that we have no entitlement when it comes to
obtaining support unless the creator has promised such support
explicitly.
[1] KDE is written in C++. There is a
connection.
|
Lunedì, 23 Giugno 2008
|
ciaran
Ciarán's free software notes
about:
emacs
|
Launching your favourite editor in Firefox
After a bit of tweaking, I'm now happily using the
the It's
All Text! plugin to let me to edit webpage text boxes with
Emacs. It also works with other text editors. [UPDATE: Actually, my browser is Iceweasel, not Firefox. See the Mozilla software rebranding article on Wikipedia, and the IceCat project]
To configure it, go to
Tools->It's All Text!->Preferences in Firefox's menu
bar. In the editor field, when I added some command line options to
make Emacs start quickly, it gave me the error "Unable to open
your editor". So I made a "quickmacs.sh" file and
told It's All Text that that that was my editor. In quickmacs.sh, I
put:
#!/bin/sh
gnome-terminal -t "QM $1" -e "emacs -nw -Q --load ~/software/tb.el $1"
The second "$1" is essential. I want Emacs in non-gui
mode, so it has to be launched by a terminal program because It's All Text! doesn't
run the given editor command in a terminal. tb.el is a a cut down version
of my emacs.el. It just contains the
minimal convenience settings I want for editing textboxes:
(transient-mark-mode t)
(show-paren-mode t)
(menu-bar-mode 0)
(defun ciaran-turn-on-french-input-method ()
"set the input method to French"
(interactive)
(set-input-method "french-alt-postfix"))
(global-set-key [?\C-c ?.] 'ciaran-turn-on-french-input-method)
(longlines-mode t)
There were two other interesting plugins. The first
is EmbeddedEditor
0.1, but you have to make an account and log in if you want to
download it, so I ignored it. The second
is Firemacs,
but that's adding some Emacs features to Firefox - I prefer to have
a full Emacs.
--
Ciarán O'Riordan,
Support free software: Join FSFE's
Fellowship
|
gerloff
blog
about:
data loss weekly
germany
ouch
privacy
|
Data Loss Weekly, Germany
Germany has always prided itself on being a nation of engineers. So it's not surprising that unlike the British, who prefer to leave their confidential data on trains or lose it in the post, Germans opt for the technologically more advanced solution of making it available online to all comers (DE):
Bei Einwohnermeldeämtern in Deutschland ist es nach einem Bericht des ARD-Magazins "Report München"
zu einer schweren Panne gekommen: Den Recherchen zufolge waren die
Daten von Bürgern aus rund 200 Städten und Gemeinden über Jahre hinweg
frei im Internet zugänglich.
Die verantwortliche Softwarefirma habe die Zugangscodes auf ihrer eigenen Homepage veröffentlicht, berichtete das Magazin vorab. Die Passwörter seien erst am vergangenen Freitag geändert worden.<<>><>>
Markus has proposed publishing a magazine called "Data Loss Quarterly", and is looking for contributors.
|
gerloff
blog
about:
ubuntu rant xorg complaint
|
Why did you castrate xserver-xorg?!
Though it's Monday morning and I have lots of work on my desk, I'm looking back at a very frustrating weekend. I decided to do reinstall my desktop machine, moving it from Debian Etch to Ubuntu Hardy. My laptop is running Ubuntu, and administering one system is hassle enough for me. The initial install went without a hitch. After the obligatory reboot, the login screen came up, and I saw that the resolution was too low - 800x600 instead of the 1280x1024. Well, that's a familiar issue - X has a hard job to do, and isn't particularly good at autodetecting everything. Still surprising, since both graphics card and monitor are fairly garden-variety stuff: An Nvidia GeForce 6100, and a Samsung SyncMaster 710n. So what does one do in this case? Right: $ sudo dpkg-reconfigure xserver-xorg
That used to be the height of technical complexity for me, short of editing /etc/xorg.conf, where the syntax is slightly less user-friendly than that of procmail (quite a feat, if you ask me). But on my new hardy system, this command only let me configure the keyboard, which was working fine, thank you very much. The options for configuring video had disappeared. Hours of web search, driver installation, configuration etc. followed. I wouldn't have minded spending a sunny Sunday with my family instead.
So I found this thread on launchpad, which was already running from here to Beijing with people complaining about the newly powerless xserver-xorg. Turns out that at Canonical, they've taken away the most common text-based way of making your video card run, and replaced it with a half-baked GTK application called displayconfig-gtk. This app reminds me of the people who deal with complaints at the German railways company: it looks friendly, but does absolutely nothing useful.
There's also a small problem here for people who are even less lucky than me. If you can't start your graphical environment, a GTK application is not much use.
Another tool is xrandr, which I can't find any information about other than that it's fairly beta. This seems to be the program that is supposed to do the autoconfiguration, but doesn't do it right. The Ubuntu Xorg maintainer responded quickly:
displayconfig-gtk is a user interactive method for configuring xorg.conf. Like dpkg-reconfigure it also often produces invalid configurations. We recommend using the autoconfiguration approach, and if that does not work for some reason, please report it as a bug. This way we can roll out a true fix for everyone. <rant> Dear Ubuntu folks, so far you've done an excellent job at giving us a GNU/Linux distro that was both newbie-friendly and highly configurable. So what have you been drinking that gave you the idea of taking away a tool that worked fairly ok, and replacing it with several that don't work at all? And how is it a sensible idea to tell people who complain that autoconfiguration doesn't work for them to please use the autoconfiguration method? </rant> Your answers in the comments, please. Thanks.
|
Sabato, 21 Giugno 2008
|
mk
Weblog
about:
EU
non-free software
open standards
|
|
Venerdì, 20 Giugno 2008
|
ciaran
Ciarán's free software notes
|
Wikimedia board vote 2008 ends midnight Sunday
Elections for one community seat on
Wikipedia's nine-person Board of Trustees will close at midnight
on June 21st. I'm eligible to vote, and, for reasons I'll discuss
next week, I have a sudden interest in communiy voting.
The criteria for eligibility to vote are that you have a certain
number of edits to a Wikimedia project. Almost 2.5k votes have been
cast so far.
I don't know any of the 15 candidates, so I had to draw up some
criteria.
The candidate
statements were only a minor source of information. What's
important for me in a candidate? I wrote everyone's name on a page
and made notes about them on three criteria.
- Activity levels on Wikimedia projects. Unless someone has been
active in contributing to Wikimedia projects, it would be difficult
for them to know the issues that affect the editing community. So
they should have at least a few thousand edits.
- Language abilities, for two reasons. First is that while the
English Wikipedia is very good, the quality quickly drops when you
read the smaller Wikipedias. So I think there should be more focus
on the non-English Wikipedias. Second, because there are so many
Wikipedia's, coordination is necessary. To be a good coordinator
among projects of many different languages, it helps to be
multilingual. Judging someone's language abilities is hard, but I
think being able to contribute paragraphs of text in a language is a
very good criteria for being "capable". So I mostly
ignored what language abilities the candidates claimed in their statements, and instead
judged their language abilities based on how much they have
contributed to non-English Wikipedias.
- Responses to questions. 50+ questions were put to the candidates.
I didn't have time to read all their answers, and I found that most
answers didn't give me much to base a decision on. But, there was
one candidate that I quickly flagged as obnoxious, and two
candidates that I flagged as insufficiently interested (since they
didn't answer most questions), and for some of the candidates I put
a number beside them if an answer impressed me.
The four candidates that I favour are, in no particular order:
It's interesting to note that all 15 candidates are male, and almost
all are from Europe or North America. Voting ends midnight Sunday June 21st.
UPDATE June 30th: the results are online. I'm very happy to see that Ting Chen won. 3019 votes were cast.
--
Ciarán O'Riordan,
Support free software: Join FSFE's
Fellowship
|
Giovedì, 19 Giugno 2008
|
mk
Weblog
about:
Fun
|
[DE] Computerexperten
Ein Bekannter hatte das Problem, dass er mit seinem Computer (mit einem unfreien Betriebsystem) keine DSL-Internetverbindung mehr herstellen konnte (direkt angeschlossen ohne Router). Auf einer Party meinte jemand zu ihm, dass er Computerexperte sei und es ihm reparieren könnte.
Ich bekam das ganze erst mit, als er den Computer wieder hatte und 250 EUR dafür bezahlt hatte. Das einzige, was er zu seinem 2 Jahre alten Rechner bekam war eine Rechnung. Die "Rechnung" sah wie folgt aus (Rechtschreibung und Zeichensetzung sind orginalgetreu übernommen, Orginalschrift war MS-Comic-Scan):
Am Computer war defekt:
1 das Modem war direkt auf dem Mainboard
drauf sitzt das für den Internetzugang ist
war hinten wo das Internetkabel rein kommt
waren die zacken verbogen /teilweise abgebrochen
also wurde das Modem und ein Mainboard ausgetauscht
Mainboard ist Pentium 4
2.Auf der Festplatte haben Komponenten gefehlt
das führte zu Systemfehlern dadurch konnte kein neues
Betriebssystem Installiert werden da es immer
während des Installieren zum Abbruch Kamm
also wurde eine Samsung Festplatte mit 40 GB eingebaut
3. Betriebssystem mit Windows XP
4. Service Pack 2
5. diverse Treiber ( Ton,Modem,Mainbord)
Softwaer :
6. Tune-up
7. VLC Media Player für Dateiformate
die der Mediaplayer nicht abspielen kann
8. die Fotos wurden kopiert und auf dem Computer
mit einem Ordner wieder angelegt
Tja, lachen oder heulen? Ich glaub ich bin für lachen, weil das ist gesünder ;) Ach ja, der Bekannte konnte danach wieder ins Internet... aber ich habe die Vermutung, dass da unbekannte Mächte ihre Hände im Spiel haben.
|
mk
Weblog
about:
Development
Free Software
Free Software Initiatives
Money
Sustainable Software
|
|
Lunedì, 16 Giugno 2008
|
shane
Communicating freely
about:
KDE 4
|
KDE 4: Shane's conclusion (a little late)
I planned to spend one week with KDE 4. In the end, I didn't do that. I'm three weeks into this trial and KDE 4 has been my default desktop for fourteen days. I guess that says a lot.
Sure, there are some rough edges that need to be smoothed out and there are some quirks that need adjusting. However, all of the flaws are minor bugs rather than problems with the realisation of the new desktop. There was certainly nothing that prevented me from reaching my productivity goals. In practice, KDE 4 today works well enough for me to run a large legal network on a day-to-day operational basis.
Let's do a quick verdict of the good and the bad.
THE DARK SIDE OF THE FORCE:
A representative example of existing bugs would be that the Dolphin file manager randomly throws up errors when opening files. They look like this: "KLauncher could not be reached via D-Bus, error when calling start_service_by_desktop_path: empty" These errors sound worse than they are. The files in question actually opened correctly.
Other bugs can be found in some KDE 4 applications. I found the newest version of KATE to be unstable when word-wrapping at 80 characters. It occasionally crashes while reformatting line breaks, at least on my machine. Kword and I also had a couple of disagreements when editing complex documents. I mentioned this in a previous blog post.
RESULT: I grumble, but there's more stuff I like than I dislike.
THE BRIGHT SIDE OF THE FORCE:
However, niggles aside, KDE 4 is something special. It improves the desktop through engineering, it is well-designed and it is fast. This is one of the rare occasions when people are making an exciting new technology that actually works. While it is still in development and is currently best suited for hackers and experienced users, there is a lot of potential already visible when it comes to considering home users.
KDE 4 is slick, fast and a lot of fun. It's nice to be able to say that about a computing experience. I believe that it has the potential to mature into one of the most significant Free Software desktops.
RESULT: KDE 4 rocks.
If you want to try KDE 4 you will have to be prepared for one thing; the developers have not yet written the documentation for things like the Plasma desktop. Not to worry. Below you can find Shane's really quick overview of how to use Plasma. This was entirely stolen from Sebastian's helpful email explaining the basics of the system to me.
An overview of Plasma
There are three important concepts to keep in mind when using Plasma, the KDE 4 desktop technology:
- In Plasma you have Plasmoids. These are widgets you can add to the desktop.
- You also have Containers
- The Plasmoids can live in Containers
Using the Plasma desktop- Plasmoids can be put into Containers like the panel or the can float freely on the desktop.
- The top right corner of the desktop holds the Toolbox. There you can choose to add widgets or lock the desktop.
- If you add widgets you can drag Plasmoids into either the panel let them float freely on the desktop.
- If you lock the desktop the applet controls will be hidden and the desktop will become immutable.
- You will want to keep the desktop locked most of the time.
Advanced features- Press CTRL+F12 to bring all active widgets to the front of your screen. This is similar to a "show desktop" feature.
- If you have "Desktop effects" enabled then pressing:
- CTRL+F8 produces a full-screen pager effect
- CTRL+F9 produces an expose effect for the current desktop
- CTRL+F10 produces an expose effect for all desktops
Icons on the Desktop- In KDE 4.0 there is very little support for icons on the desktop.
- In KDE 4.1 there is a folder view Plasmoid that provides more interaction with the icons. It is similar to a file manager or traditional desktop.
- You can choose a folder or network resource to be displayed on the desktop through this new Plasmoid.
|
Giovedì, 12 Giugno 2008
|
mk
Weblog
about:
distributions
GNU
guidelines
philosophy
|
|
Venerdì, 06 Giugno 2008
|
Robert Schuster
Weblog
about:
jalimo
openembedded
openmoko
phoneme
|
OpenMoko FreeRunner entered mass production
Yeah, its true. The OpenMoko gals & guys finally fixed manufacturing issues and the first free (as in Freedom) mobile phone hardware is produced as you read this sentence. Great isn't it? Just in time for this I finished the first bit of work to get PhoneME Advanced compiled in OpenEmbedded. This means that soon no one wanting that runtime on their device needs to fumble with its intimidating build system. It will not be possible to provide recipes which allow setting all the countless configuration options but I will write the recipes in a way that you can easily derive the variant you want on your hardware. If you look at the building instructions for PhoneME you will see that they contain a lot of annoying steps: Getting a GNU toolchain, patch some header files, set configuration options, point variables to a bunch of tools (javac, java, javah and so on). In contrast if you have a working OpenEmbedded environment all you need to do is enter: bitbake phoneme-advanced-foundation and this will not only give you that unhandy ZIP file the built produces. No, you get a package of any flavour (IPK, DEB and RPM) plus another one containing the unstripped 'cvm' executable. Sweet isn't it?
Here kind of a proof that I really got this working (on OpenMoko Freerunner): root@om-gta02:~# java-cdc -version Product: phoneME Advanced (phoneme_advanced_mr2-b73) Profile: Foundation Profile Specification 1.1 JVM: CVM phoneme_advanced_mr2-b73 (interpreter loop)
BeanShell (I still like it!) runs out of the box: java-cdc -cp bsh.jar bsh.Interpreter BeanShell 2.0b4 - by Pat Niemeyer (pat@pat.net) bsh % print(System.getProperties()); { java.library.builtin.net=yes, sun.boot.library.path=/usr/lib/jvm/phoneme-advanced-foundation/lib, java.vm.version=phoneme_advanced_mr2-b73, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=:, java.vm.name=CVM, file.encoding.pkg=sun.io, java.vm.specification.name=Java Virtual Machine Specification, user.dir=/home/root, os.arch=armv4tl, microedition.encoding=ISO-8859-1, java.io.tmpdir=/tmp, line.separator= , java.vm.specification.vendor=Sun Microsystems Inc., microedition.profiles=, java.awt.fonts=, os.name=Linux, java.library.builtin.zip=yes, java.library.path=/usr/lib/jvm/phoneme-advanced-foundation/lib, microedition.platform=j2me, java.specification.name=Foundation Profile Specification, java.class.version=47.0, sun.misc.product=phoneME Advanced, os.version=2.6.24, user.home=/home/root, user.timezone=, file.encoding=ISO8859_1, java.specification.version=1.1, java.class.path=bsh.jar, microedition.locale=en_US, user.name=root, java.vm.specification.version=1.0, java.home=/usr/lib/jvm/phoneme-advanced-foundation, user.language=en, java.specification.vendor=Sun Microsystems Inc., java.vm.info=interpreter loop, java.version=phoneme_advanced_mr2-b73, java.ext.dirs=, sun.boot.class.path=/usr/lib/jvm/phoneme-advanced-foundation/lib/foundation.jar, java.library.builtin.math=yes, microedition.commports=/dev/ttyS0, java.vendor=Sun Microsystems Inc., file.separator=/, microedition.configuration=CLDC-1.1, sun.io.unicode.encoding=UnicodeLittle, sun.cpu.endian=little, user.region=US, sun.cpu.isalist= }
It is running interpreted only and with the most basic class library ("foundation" profile) but still it is a start.
|