January 25, 2012

Vala : Writing a simple singleton in vala

Here’s some more information on the Singleton design pattern from wikipedia

class Foo {
Foo () {}
static Foo instance;

public Foo get () {
if (instance == null) {
instance = new Foo ();
}
return instance;
}
}

December 1, 2011

Vala : example for writing archives using libarchive

I only found one example of how to use libarchive in Vala. Example for reading archives using libarchive

I am trying to make the code to write an archives in Vala using libarchive. I have translated from C to Vala. http://code.google.com/p/libarchive/wiki/ManPageArchiveWrite3

/* write-archive.vala
 *
 * Copyright (C) 2011  Aji Kisworo Mukti <adzy@di.blankon.in>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.

 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 *
 */
using Archive;
using Posix;
using GLib;

private const int BUFFER_SIZE = 4096;

void main (string[] args) {
	var archive = new Write ();
	var buffer = new uint8[BUFFER_SIZE];

	archive.set_compression_compress ();
	archive.set_format_ar_bsd ();

	if (archive.open_filename ("archive.ar") != Result.OK) {
		GLib.stderr.printf ("%s\n", archive.error_string ());
	}

	var entry = new Entry ();
	entry.set_pathname ("METADATA");
	Posix.Stat st;
	Posix.stat ("METADATA", out st);
	entry.copy_stat (st);
	entry.set_size (st.st_size);

	if (archive.write_header (entry) != Result.OK) {
		GLib.stderr.printf ("%s\n", archive.error_string ());
	}

	// write the file
	var file = File.new_for_path ("METADATA");
	var reader = file.read ();
	var len = reader.read (buffer);
	while(len > 0)
	{
		archive.write_data(buffer, len);
		len = reader.read (buffer);
	}

	if (archive.finish_entry () != Result.OK) {
		GLib.stderr.printf ("%s\n", archive.error_string ());
	}

	// close the archive
	if (archive.close () != Result.OK) {
		GLib.stderr.printf ("%s\n", archive.error_string ());
	}
}

 


Tell me about the problems and questions about my code :)

BlankOn dan Debian

Kedatangan salah seorang Pengembang Debian ke indonesia tidak dilewatkan oleh pengembang BlankOn. Saya berkesempatan mendapat kunjungan di Jogja. Jonas Smedegaard, beliau membawa misi Debian Pure Blend

Singkat cerita saya punya kesempatan untuk menyampaikan apa yang akan dilakukan Proyek Pengembangan BlankOn dengan Debian. http://www.slideshare.net/mdamt/blankon-dan-debian

Jonas cukup terkejut dengan apa yang saya paparkan, dia sangat senang karena BlankOn sadar bahwa dengan menggunakan Debian, BlankOn akan mempunyai banyak ruang gerak untuk berkonsentrasi mengembangkan distribusi dalam banyak hal.

Satu hal yang jonas tekankan, “BlankOn bukan hanya mengembangkan distribusi untuk lokal, tetapi juga untuk berkontribusi ke pengembangan Debian.”

 

 

 

 

October 6, 2011

BlankOn Panel : Isu pembaharuan mockup

September 24, 2011

Briptu Norman Goes Open Source

Catatan : Sebelum membaca artikel ini anda harus sudah paham saya menyindir siapa.

Apa kaitan antara Briptu Norman dan Open Source … ? Baik-baik saja …

Harusnya anda sudah mulai merasa aneh. Pertanyaan yang benar untuk jawaban “Baik-baik saja” adalah pertanyaan yang menanyakan keadaan seperti “Bagaimana”.

Benar, Briptu Norman dalam keadaan baik demikan juga halnya dengan Open Source.

Nah loh, sudah salah ngaku benar. Kata “Demikian juga halnya” membuat kata di sebelah kiri dan kanannya sejajar, walaupun tidak ada kaitannya.

Belakangan ini Briptu Norman – anggota satuan Brimob Polda Gorontalo – membuat berita lagi dengan rencana pengunduran dirinya dari kepolisian. Briptu Norman menjadi tenar sejak bulan April lalu saat video lipsingYouTube-nya beredar luas.

Rajin nonton infotaiment ini pasti pengembangnya.

Hal ini diungkapkan saat acara Promosi Produk Telematika di Balikpapan yang diselenggarakan oleh Kementerian Perindustrian dimana didemokan cuplikan film animasi Briptu Norman.

Dalam hal mengutip pernyataan seseorang, harus di sertakan Nama (umur). Contoh “Hal ini diungkapkan oleh Aji (32) saat acara Promosi Produk Telematika di Balikpapan yang di selenggarakan oleh Kementrian Perindustrian …. “. Hal ini penting, karena menyangkut kepastian dari kabar tersebut. Lalu kalau seperti diatas, apakah pasti? Entahlah…hanya beliau dan Tuhan yang tau…

Animasi … ?!!! Ya, betul. Karakter Briptu Norman akan hadir dalam bentuk animasi dan rencananya akan mulai ditayangkan di TV nasional pada awal tahun 2012.

Kata siapa?

Mengenal Software Open Source Blender 3D

Jika Anda ingin mendapatkan Blender ……… , yaitu dengan cara memesan Buku Panduan … dimana didalamnya sudah disertakan DVD ….

Dan inti dari semua tulisan di atas adalah promosi ini.

Kesimpulan :

Saya tidak benci dengan produk ini, cuman yang saya sesalkan “cara” untuk mengenalkannya terlalu “anarkis“. Jangan sampai publik dikecewakan dan merasa dibohongi, karena akan berimbas pada Gerakan menuju Open Source sendiri. Kalau untuk mendapatkan untung sesaat saya kurang tau.

Anda sebenarnya dapat memasang Software Blender 3D di BlankOn, Ubuntu, dan distribusi Linux lain.

~ Atine’ Resik, Tumindake’ Becik, Uripe’ Bakal Apik ~