Tag: Debian

ldc and libtango-gdc-dev packages for ubuntu/debian in ppa

Dubuntu

Hi, ldc and libtango-gdc-dev are in d language packagers ppa from some time ago now.

Here is the way you can install ldc 🙂 (the same applies for libtango-gdc-dev)

goshawk@earth:~$ sudo apt-key adv –recv-keys –keyserver keyserver.ubuntu.com 0xac6c83ad38a437abfc26a14af273e44ecde3fa2e
[sudo] password for goshawk:
Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –secret-keyring /etc/apt/secring.gpg –trustdb-name /etc/apt/trustdb.gpg –keyring /etc/apt/trusted.gpg –recv-keys –keyserver keyserver.ubuntu.com 0xac6c83ad38a437abfc26a14af273e44ecde3fa2e
gpg: requesting key CDE3FA2E from hkp server keyserver.ubuntu.com
gpg: key CDE3FA2E: public key “Launchpad PPA for D Programming Language Applications Packagers” imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
goshawk@earth:~$ sudo nano /etc/apt/sources.list
goshawk@earth:~$ sudo apt-get update
Hit http://it.archive.ubuntu.com jaunty Release.gpg

[…]

Fetched 78.0kB in 1s (77.0kB/s)
Reading package lists… Done
goshawk@earth:~$ sudo apt-get install ldc
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following extra packages will be installed:
libconfig++6
The following NEW packages will be installed:
ldc libconfig++6
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 7525kB of archives.
After this operation, 32.5MB of additional disk space will be used.
Do you want to continue [Y/n]?
Get:1 http://ppa.launchpad.net jaunty/main libconfig++6 1.3.1-1ubuntu1 [38.8kB]
Get:2 http://ppa.launchpad.net jaunty/main ldc 0.9.1~20090403.dfsg-0ubuntu2 [7486kB]
Fetched 7525kB in 7s (995kB/s)
Selecting previously deselected package libconfig++6.
(Reading database … 120004 files and directories currently installed.)
Unpacking libconfig++6 (from …/libconfig++6_1.3.1-1ubuntu1_amd64.deb) …
Selecting previously deselected package ldc.
Unpacking ldc (from …/ldc_0.9.1~20090403.dfsg-0ubuntu2_amd64.deb) …
Processing triggers for man-db …
Setting up libconfig++6 (1.3.1-1ubuntu1) …

Setting up ldc (0.9.1~20090403.dfsg-0ubuntu2) …
Processing triggers for libc6 …
ldconfig deferred processing now taking place
goshawk@earth:~$

Well, now you have ldc installed.

I just did a d program to fetch the lastest ldc trunk, package it, and put on ppa. I’m testing it in these days, and when my exams will finish (soon 🙂 ) daily packages will be available! 🙂

Bye.

Maemo/Mer on freerunner half ported

freerunner

freerunnermer1

As you can see from the image, Maemo/Mer is running on a freerunner. You can see the blue Mer background, a window to set up username (it’s first boot 🙂 ) and a keyboard that pops up when an editable field is touched. As you can see, the keyboard is not rendered correctly and it does not work but we didn’t touch any source of the GUI ATM and it’s very good that it worked without any modification.

Well, what’s supported until now? It runs a 2.6.28 linux kernel the same which is used in debian, so there is gps, gsm, wireless and bluetooth support but i’m not able to test them ATM until we will not solve the GUI issues. But the project looks ver promising from these early stages 😀 For now Mer is installed in a microsd and it boots thanks to qi. We (primary Carsten V. Munk) also devoped a imager script wich creates a rootfs. Ready rootfs will be available via mer website this website and eshopen when GUI will work too. In the meantime i’ll publish some snapshots of the working rootfs tree, so all the brave people can start playing with the rootfs 🙂

Eshopen, the company i work for, is sponsoring the porting giving a Freerunner to the developer team. In the next few months we will see a lot of changes in the GUI.

But why this project? Why porting Maemo/Mer on the freerunner?

Well, after that Openmoko CEO Sean Moss-Pultz in April 09 said that they will not develop the GTA03, the freerunner successor, due to budget problems, one thing was clear at eshopen: Openmoko will never delop a stable and full working operating system for freerunner. Om is the proof. Even being developed from 2007 it’s not stable enough to be used as an everyday phone. I also never felt confortable with the opkg package manager and i was missing the the wonderful apt-get which is available in debian based systems.

There are some alternatives to OM operating system, but most of them are based on OpenEmbedded (the same as OM) and others, like debian, seems to bring a full working desktop into a mobile phone. Android looks promising but it is not “open enough” (about it you can see the slides of my talk in Politecnico di Milano University for the Neomeeting), instead, the Openmoko community choose the Freerunner to have a 360° openness.

Maemo/Mer seems an answer to a full working and well supported operating system for any open mobile device. To understand more why Maemo/Mer is so open, more than any other operating system for mobile devices is this image:

As you can see it’s a full debian system with Hildon as GUI. It’s a key point cuz you have quite the same environment (if you use ubuntu) of your desktop pc in your mobile phone. You also have access to all the debian applications already packaged and ready to use. In this kind of environment developing an application will be very easy and you can share your applications via a debian repository.

But there is a field in which Maemo/Mer lacks and the Openmoko community developed a good solution: the phone stack. Maemo/Mer borns to be used into tablet pc like nokia n810, not phones, so it does not have any application to make calls. In the other hand the Openmoko community developed the fso framework (frameworkd and so on) which works thanks a standard, dbus, which is already in Maemo/Mer by default. The experimental applicazion to make calls via fso is called zhone and it’s already packaged for debian. As you can see it will be a good field in which Memo/Mer community and Openmoko community could join forces and help eachoter to develop the next generation free operating system for mobile devices.

What to do next?

  1. Make GUI work
  2. apt-get install fso-frameworkd zhone
  3. Test that all works
  4. Release stable image

Do you believe in this project and you want to help? Just contact me at vincenzo.ampolo[AT]gmail.com 🙂

Ldc: debian and ubuntu packages for x86 and x86_64 (amd64)

D

UPDATE:

To install the package on ubuntu, you need to install the libconfig++6 package from debian.

We are working to put ldc on debian and ubuntu.

In the meantime packages for x86 and x86_64 are ready and can be freely downloaded, you just need to install them and you can start compiling any source like in this example:

goshawk@earth:~/Documents/Projects/MOTU/ldc/d1/ldc$ sudo dpkg -i  ldc_0.9.1~20090403.dfsg-1_amd64.deb
Selecting previously deselected package ldc.
(Reading database … 236469 files and directories currently installed.)
Unpacking ldc (from ldc_0.9.1~20090403.dfsg-1_amd64.deb) …
Setting up ldc (0.9.1~20090403.dfsg-1) …
Processing triggers for man-db …
goshawk@earth:~/Documents/Projects/MOTU/ldc/d1/ldc$ cd
goshawk@earth:~$

goshawk@earth:~$ cat test.d
import  tango.io.Console;

void    main()
{
Cout(“Hello, World”).newline;
}

goshawk@earth:~$ ldc test.d
goshawk@earth:~$ ./test
Hello, World
goshawk@earth:~$

🙂

The ldc d programming language compiler package sees the light

D

Hi,

Yesterday i talked about ldc. Well. today i talk about it again 🙂

Does this make you understand something?

goshawk@earth:~/Documents/Projects/MOTU/ldc/d1$ sudo dpkg -i ldc_0.9-1_amd64.deb
Selecting previously deselected package ldc.
(Reading database ... 210660 files and directories currently installed.)
Unpacking ldc (from ldc_0.9-1_amd64.deb) ...
Setting up ldc (0.9-1) ...
goshawk@earth:~/Documents/Projects/MOTU/ldc/d1$ cd
goshawk@earth:~$ cat test.d
import  tango.io.Console;

void    main()
{
   Cout("Hello, World").newline;
}

goshawk@earth:~$ ldc test.d
goshawk@earth:~$ ./test
Hello, World
goshawk@earth:~$

As you already understood, a first ldc package for debian and ubuntu has been compiled. It compiles ldc, then the tango runtime and tango library which is the default library in ldc.

It stores the tango library in /usr/include/d/ldc/libtango, and the tango runtime in usr/lib/libtango-base-ldc.a and the tango user library in /usr/lib/libtango-user-ldc.a

At the moment the problems with this packages are:

  1. I need a stable ldc release, the package builds revision 1179
  2. W: ldc: binary-without-manpage usr/bin/ldc, i need to create/find a manpage for the compiler
  3. Pester a debian maintainer or a ubuntu MOTU to include ldc in the official repository

Ldc D compiler debian/ubuntu package

D

It’s two days that i’m spending time in my passion. The D programming language.

Well, from two months a new compiler is raising in the community talks. This compiler is ldc, is based on llvm and from the dmd frontend which is used as a main frontend to implement the D specifications.

As i said some time ago, one of the things that makes D incomplete is a full free software compiler. Well. Ldc could be the answer. I started packaging ldc for debian and ubuntu creating a branch or revision 1179 from the ldc hg repository. As a standard library i used tango at its early release 0.99.8. The sources of my work are on launchpad.net and they include a full working tree, already with a debian directory in it.

There are still some things to fix which i’ve reported to the d-language-packagers group with the above mail:

Hi.

In these days i worked in packaging ldc.

In the launchpad bzr of the group you can already find a revision which
compiles quite good. This is the content of the package:

goshawk@earth:~/Documents/Projects/MOTU/ldc/d1$ dpkg -c  ldc_0.9-1_amd64.deb
drwxr-xr-x root/root         0 2009-03-30 20:35 ./
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/sbin/
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/bin/
-rwxr-xr-x root/root       721 2009-03-30 20:32 ./usr/bin/ldc.conf
-rwxr-xr-x root/root       305 2009-03-30 20:32 ./usr/bin/ldc.rebuild.conf
-rwxr-xr-x root/root  12266952 2009-03-30 20:35 ./usr/bin/ldc
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/lib/
-rw-r–r– root/root    742780 2009-03-30 20:35 ./usr/lib/libtango-base-ldc.a
-rw-r–r– root/root   7084206 2009-03-30 20:35 ./usr/lib/libtango-user-ldc.a
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/share/
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2009-03-30 20:35 ./usr/share/doc/ldc/
-rw-r–r– root/root       279 2009-03-30 02:33 ./usr/share/doc/ldc/readme.txt
-rw-r–r– root/root      2304 2009-03-30 02:33
./usr/share/doc/ldc/CMakeLists.txt.gz
-rw-r–r– root/root     14815 2009-03-30 02:07 ./usr/share/doc/ldc/copyright
-rw-r–r– root/root       154 2009-03-30 17:56
./usr/share/doc/ldc/changelog.Debian.gz

As you can see, all the .conf should be moved in /etc/.  Arthur, do you think
that putting them in /etc/ldc/ is the better choice?

What’s missed to make ldc working away from the building environment is
explained by the ldc config file:

default:
{
// ‘switches’ holds array of string that are appends to the command line
// arguments before they are parsed.
switches = [
“-I/home/goshawk/Documents/Projects/MOTU/ldc/d1/ldc-0.9/obj-x86_64-
linux-gnu/runtime/../tango”,
“-I/home/goshawk/Documents/Projects/MOTU/ldc/d1/ldc-0.9/obj-x86_64-
linux-gnu/runtime/../tango/lib/common”,
“-L-L/usr/lib”,
“-d-version=Tango”,
“-defaultlib=tango-base-ldc”,
“-L-ltango-user-ldc”,
“-debuglib=tango-base-ldc”
];
};

The missing point is the tango library that should be compiled for ldc IMHO.
I think that the best solution is to provide a libtango-ldc and libtango-ldc-
dev package to contain the .a and the .di files used by ldc.

Any comment or suggestions about it?

Best Regards.

See you.

If you have any suggestion about it, just comment on this post 🙂

Let’s see what happens in the next days, if you want to contribute, join the the d-language-packagers group and send me a comment! 🙂

Maemo/Mer on Freerunner

ubuntu

These informations are not updated, please see Mer/Maemo on Freerunner half ported.

Hi all,

One month ago i spoke about the ability to put and Ubuntu into the Freerunner mobile phone. Well after a little bit of research, it pointed out that Ubuntu is compiled for armv5 while Freerunner is armv4, so Ubuntu is not compatible with the Freerunner.

Debian instead, the rock in which ubuntu is built in, is compiled for armv4 in the armel version. So a full debian operating system in the Freerunner is possible as the debian Freerunner port demostrates. But debian Freerunner port is not famous for his UI, which is ugly and unusable.

After a deep research i came into the Maemo project and expecially in it’s 100% Free implementation called Mer. I started contacting the developers and i found a very active team. I’m now working with them to provide a Freerunner that runs Mer to sell at eshopen. In the last days we (well, primary
Carsten Munk) reached in building all the gtk and hildon framework for debian armel. So we should be albe to have Mer into a Freerunner in one month more.

Let’s see what will happen. 🙂

%d bloggers like this: