April 18, 2011
· Filed under Blogging under influence, Eestikeelne, Linux, Povi, Uncategorized
Seekord siis jälle üks rääkimata lugu. Märtsi lõpp kuni aprilli algus käisime Ettevõtluse Arendamise Sihtasutusega USAs, täpsemini Silicon Valleys, Kalifornia osariigis.
Alustada võiks ehk ettevalmistustest – USAsse minekul on kaks varianti, kas biomeetriline pass või traditsiooniline viisa. Biomeetrilist passi sai teha kodakondsus- ja igratsiooni ametis, nüüdsest on KMA liidetud kokku Politsei- ja Piirivalveametiga. Maksma läheb ta umbkaudu 30€, kiirpassi varianti pole mõtet võtta, sest lubatud kuu asemel saab passi kätte paari päevaga ka tavamenetluses. Järgmine samm on ESTA (Electronic System for Travel Authorization) avalduse täitmine, mille eest küsitakse 14 USD ehk umbkaudu 10€. Veider on see et Eestil peaks olema viisavabadus USAga kuid ESTA avaldus näeb väga välja viisa moodi, ärge unustage siis “have you been involved in terrorist activites” juures märkida “no”.
Meie lend läks läbi Munichi/Münheni, Tallinnast sinna lend kestab umbkaudu 2-3 tundi. Peale seda järgnesid piinarikkad 8 tundi oodates ühenduslendu ning kogu lend kulmineerus 12 tunnise transatlantilise lennuga kus jalgu liigutada ega ka magada ei saa sest aknast paistab päike ning me lendame päikesega kaasa. Kui meil on siin hetkel 22:31 õhtul siis neil on seal päeval 12:30, mis tähendab et sinna jõudes on unetsükkel täiesti sassis ja tõenäoliselt ärkad hommikul kell 5 hommikul üles mõttega “okei mis nüüd?”. Moodsas keeles nimetatakse seda nähtust jet lagiks aga see selleks.
Esimesteks päevadeks oli planeeritud O’Reilly korraldatud Web2.0 EXPO kus oli mitmeid huvitavaid seminare ning erinevad startupid oma putkad püsti ajanud kus nad oma nänni jagasid ja maakeeli külastajaid spämmisid. Õhtustel aegadel toimusid konverentsihoones ja kõrval business networking üritused. Astusin ka mina siis korraks oma koorikust välja, networkisin ja tutvustasin Povi ning meie tegemisi. Suhtlusvõimete overclockimise jaoks oli õnneks tasuta õlut!
Peale konverentsi käisime külas Google peamajas, kus meile tegi väikese intro Chris DiBona rääkides Google edulugu avatud lähtekoodiga tarkvara kasutamisest Google infrastruktuuris. Kokkuvõttes oli jutt umbes selline et Oracle andmebaasitarkvara ka kõige soodsama pakkumise juures oleks olnud kordades kallim kui avatud lähtekoodiga tarkvara kohandamine Google vajaduste tarbeks. Teine oluline aspekt oli ka see et Google ei ehitanud oma taristut üles traditsioonilisele kallile serveririistvarale, vaid kasutas odavat PC riistvara ning lahendas kõik sellest tulenevad probleemid tarkvaras. Chris DiBona on muuseas ka üks Google Summer of Code organisaatoritest ja intervjuu temaga leiab GSoC kodulehelt. Sealses Google kontoris on tööl ka neli eestlast.
Sain läbi astutud ka Kalifornia ülikooli Berkeley osakonnast. Sellest ülikoolis on näiteks avastatud 8 keemilist elementi ning Nobeli preemia laureaatidel on tasuta parkimine. Ühiskohtumine oli Stanford ülikooli professori Keith Devliniga kes ühel slaidil tõi välja ka Stanfordi aastase 3 miljardi dollarilise ehk umbkaudu 33 miljardi kroonise eelarve, võrdluseks oli Eesti riigi eelarve aastal 2008 umbkaudu 85 miljardit krooni.
Kokku olime USAs umbkaudu 10 päeva, mille aja jooksul sai päris palju huvitavat nähtud ja kogetud. Kalifornia pole kindlasti stereotüüpne USA, mingil määral ehk sarnane Amsterdamiga kus on palju kohanenud sisserändajaid, ettevõtlus vohab ning kanepi omamine on legaalne.
December 1, 2010
· Filed under Estobuntu, Linux, Povi, Ubuntu

Our company has been dealing with GNU/Linux based terminal-servers for a while and in Estonia you run into issues with ID-card at some point. Estonian ID-card is a SmartCard which is used to authenticate person online and to give legally valid signature. With terminal-server systems issues arose immediately because PCSC-lite originally didn’t support any network transparency. With few hacks it is possible to do this and that’s what this post is about.
PCSC-lite is a SmartCard framework which allows multiple applications to use multiple cards. Applications use a UNIX domain socket to talk to the process which handles the cards. There also used to be a public shared memory file which was a complete showstopper for LTSP, but after poking the core developer Ludovic it was finally removed. In revision 5373 another important feature for LTSP was implemented, the user can also specify the path to the forementioned UNIX domain socket.
So obviously what you need to do is to run the daemon in the terminal, redirect the UNIX domain socket to the server and tell the application to use that custom path. With version 5 LTSP switched from unencrypted connections to OpenSSH which encapsulates X11 traffic and any other connections between server and terminal. OpenSSH does support redirecting TCP/IP sockets but not UNIX domain sockets altough required code changes are minor.
There was a project called streamlocal, which was basically a bunch of patches for OpenSSH 4.4p1 to allow UNIX domain socket redirecting, I updated the patch and made it available for OpenSSH 4.7p1. After that there were some major rewrites in the OpenSSH core so I didn’t bother porting and I started from scratch to have the bare minimum to make ID-card work. This resulted in hackish rewrites for OpenSSH 5.3p1 and 5.5p1.
LTSP5 uses LDM in the terminal to authenticate SSH connection after which it passes X11 session to the desktop session application on the remote machine. To enable the socket redirection I also needed to modify LDM to inject parameters to SSH client process. This patch is obsolete since LDM now officially reads environment variable LDM_SSHOPTIONS for exactly the same purpose.
There are packages available for Ubuntu 8.04 and Ubuntu 10.04. National Library of Estonia is using them to power their server and 50 VxL terminals. There’s a manual written in Estonian, you can try your luck with Google Translate. There was an article about our solution in Arvutimaailm, again you can try your luck with Google Translate.
PS: OpenSSH is reference implementation of the SSH protocol so incorporation of UNIX domain patches needs protocol standard change first. This could be pushed through Internet Task Engineering Force, so if anyone is willing to lobby them please let me know
October 31, 2010
· Filed under Estobuntu, Linux, Povi, Python, Ubuntu
I got so bored with doing ps aux and manual kill for closing a running KVM instance so I made this little nifty Python script to list all running KVM processes and allow killing them by index number.
Drop the code to /usr/local/bin/lskvm and make it executable:
wget http://pastebin.com/download.php?i=Ah9FRHu2 -O - -q |
sed "s/r//" - > /usr/local/bin/lskvm
chmod +x /usr/local/bin/lskvm
Run the command just by doing:
lskvm
The output will be something like:
# PID MP Used Alloc Executable VNC User Disk
1 3247 2 266MB 256MB qemu-system-x86_64 kvm manpremo.bin
2 6382 4 1GB 1GB qemu-system-x86_64 :1 kvm debian-lenny.bin
3 10336 4 1GB 1GB qemu-system-x86_64 kvm nopidou.bin
Kill: 3
The command prompt will be waiting for the user to enter index here in the first column for a process to be killed. Return or Control-C cancels the prompt.
October 20, 2010
· Filed under Eestikeelne, Estobuntu, Linux, Povi, Python, Ubuntu
Istun bussis, liikvel Tallinnast Tartu poole. Sülearvuti ei kipu seljakotis püsima ja levi jagub selle posti kirjutamiseks ning jääb ka ülearu. Peaaegu kaks nädalat on möödas eelmisest postitusest ja vahepeal on nii mõndagi juhtunud. Kogu aeg on kulunud sellele et tööd leida aga ma pole seda endale raasugi lihtsamaks teinud.
Jaanuaris mina ja mõned sõbrad asutasime ettevõtte nimega Povi Software OÜ. Selle kohta ma siin blogis polegi pikemalt kirjutanud. Povi alguseks võiks mingil määral lugeda 2006 aastat kui mina, Laur ja mõned teised tuttavad kogunesime Viru keskuse neljanda korruse raamatupoes. Üleskutse sai postitatud Pingviini foorumis ning eks sealt asi arenes edasi aeglaselt. Kõigepealt Estobuntu ja siis rakendused Estobuntu ümber. Reaalselt OÜ loomiseni jõudsime 2009 aasta lõpus.
Säärase ettevõte asjade ajamisega on tükk tööd – projektide ja koostööpartnerite otsimine, lepingute sõlmimine, arvete välja kirjutamine ja kõige selle otsa raamatupidamine. Kapitalistliku süsteemi ekspluateeritav tööinimene võib õnnelik olla et ta ei pea kogu selle jamaga tegelema
Hetkel on meil käsil mõned Django/Python projektid ning Estobuntu LTSP-ga seotu. Kui oled andekas tudeng ja otsid praktikakohta kus igapäevaselt kasutusel ainult Vaba Tarkvara siis võiksid meiega kontakti võtta. Väga andekatele lubaks isegi tüki ettevõtte osalusest