vala-terminal for Maemo
Download deb.
Command Line Terminal. It is written in Vala programming-language.
Vala produces c-code, which is then compiled binary form, so vala
doesn't add any runtime requirements/dependeries.
Features:
* Narrow toolbar
* Tabs
* Scrollbar
* Toolbar can be oriented horizontaly or vertically
* Zooming (Fontsize changing)
* Paste selected text (not really clipboard)
* handles -e parameter, like xterm and konsole in KDE (e.g. you can use it to start console applications with desktop-files: vala-terminal -e nano /etc/hosts)
Usage
Buttons in toolbar are loaded from Systems stock, so they can look different than in screenshots.
Buttons left to rigth (top to bottom):
* New - Open new tab
* Del - Close current tab
* + - Zoom in (raise font size)
* - - Zoom out (lower font size)
* Paste - Paste selected text (can be from another tab, not in another application)
* <- - Go previous tab
* -> - Go next tab
* [1/2] - Current tab / Total number of tabs
* Circle-arrow - Flips the toolbar to vertical (and vertical to horizontal)
Upstream
http://git.freesmartphone.org/?p=vala-terminal.git
Project page on garage.maemo.org
https://garage.maemo.org/projects/vala-terminal/
How it is builded
Building script:.
#
#Script, which use some files and downloads something and then
#compiles all with scratchbox2 enviroment
#and package them in deb-package
#
#needed files
#this
#starting_vertical_fix.patch
#maemo_spesific.patch
#config.h
#control
#Additionally you need valac 0.5.6 on your host computer, it is easy as:
#wget http://download.gnome.org/sources/vala/0.5/vala-0.5.6.tar.bz2
#tar -xvf vala-0.5.6.tar.bz2
#cd vala-0.5.6
#./configure
#make
#make install
#fetch the sources
git clone git://git.freesmartphone.org/vala-terminal.git
mv vala-terminal work #or cp -r vala-terminal work
cd work
patch -p0 < ../maemo_spesific.patch
#compile vala -> C-code
cd src
valac -C --pkg vte --save-temps mainwindow.vala terminal.vala
cd ..
cp ../config.h .
#tarvitaan config.h
sb2 -e gcc -DHAVE_CONFIG_H -I. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -include config.h -g -O2 -MT src/terminal.o -MD -MP -MF $depbase.Po -c -o src/terminal.o src/terminal.c
sb2 -e gcc -DHAVE_CONFIG_H -I. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -include config.h -g -O2 -MT src/mainwindow.o -MD -MP -MF $depbase.Po -c -o src/mainwindow.o src/mainwindow.c
sb2 -e gcc -g -O2 -o vala-terminal src/terminal.o src/mainwindow.o -lvte /usr/lib/libgtk-x11-2.0.so /usr/lib/libpangoxft-1.0.so /usr/lib/libpangox-1.0.so -lX11 /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so /usr/lib/libgdk_pixbuf-2.0.so -lm /usr/lib/libpangocairo-1.0.so /usr/lib/libcairo.so /usr/lib/libpangoft2-1.0.so -lXft /usr/lib/libfreetype.so -lz -lfontconfig /usr/lib/libpango-1.0.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so -ldl /usr/lib/libglib-2.0.so
#file vala-terminal
#vala-terminal: ELF 32-bit LSB executable, ARM, version 1 (SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), not stripped
sb2 -e strip vala-terminal
##preparing for packaging
#binary (we want make vala-terminal named folder, so rename binary temporary)
mv vala-terminal vala.bin
mkdir -p vala-terminal/usr/bin
cp vala.bin vala-terminal/usr/bin/vala-terminal
#icon
mkdir -p vala-terminal/usr/share/pixmaps
cp data/vala-terminal.png vala-terminal/usr/share/pixmaps/
#desktop-file
mkdir -p vala-terminal/usr/share/applications
cp data/vala-terminal.desktop vala-terminal/usr/share/applications/
#Control-files
mkdir vala-terminal/CONTROL
cp ../control vala-terminal/CONTROL/control
#now we are ready to build package
fakeroot ../build-deb-package.sh vala-terminal
And all necessary files:
control
config.h
maemo_spesific.patch
build-deb-package.sh
Note
Tested on n810 (Diablo and MER)
Contact
aapo(dot)rantalainen(at)gmail(dot)com