"/>

Blog

Pętla Augustowska kajakiem

Ponad 100 km trasa, absolutny brak planu i pośpiechu (bo i po co, skoro cały “dobytek” w postaci namiotu i śpiworów mieliśmy zapakowany do kajaka) oraz nieziemskie widoki, które przez idealne lustro wody nie raz wprowadzały błędnik w dziwny stan… I choć zdjęcia z tej kajakowej wyprawy przez Suwlaszczyznę miały trafić wyłącznie do rodzinnych albumów, tak byłoby grzechem nie napisać nic o mieszkańcach tego regionu, których podczas tej wyprawy mieliśmy okazję spotkać na swojej drodze (tak, to ich zapamiętamy bardziej niż widoki). I choć przypadkowych spotkań i rozmów było wiele, tak trzy z nich szczególnie zapadły nam w pamięć.

Pierwsza z nich miała miejsce już drugiego dnia spływu, kiedy po przepłynięciu jeziora Wigry dotarliśmy na Czarną Hańczę. Świadomi tutejszego ‘marketingu’ w postaci Pań sprzedających przepyszne własne wypieki wprost z prowizorycznych mostków do kajaka (btw, czy można to nazwać swim-thru?), zatrzymujemy się na kawałek szarlotki. Ponieważ było już dość późno i na rzece byliśmy już chyba sami, załapaliśmy się jedynie na ostatni kawałek ciasta, ale dwie starsze Panie zaproponowały nam w dodatku pyszną kawę. Początek rozmowy dość typowy – Skąd jesteśmy? Dokąd płyniemy? Czy chcemy się zatrzymać na kawałku pola na nocleg? Po chwili rozmowa zeszła na czysto kajakowe tematy. Jako że nie mieliśmy żadnego planu, jedna z Pań zaproponowała nam kilka wariantów tras i zaczęła opowiadać jak organizowała spływy na Litwie i Łotwie. Po kilku pytaniach o nasz kajak (na całej trasie nie widzieliśmy innego kajaka pneumatycznego), ta sama Pani wyjęła niemal 50-letnią książkę (którą jak wspomniała “znalazła gdzieś na targu” i aktualnie czyta) o systemach rzecznych, zaporach i wyprawach kajakowych w Ameryce Południowej(!), pokazując nam jednocześnie na fotografiach z książki, ówczesne składane kajaki. W powietrzu czuć było ogrom wiedzy i doświadczenia, które przy pierwszym spotkaniu idealnie zamaskował zapach szarlotki. Szok! Niestety kawa w kubku szybko się skończyła, robiło się późno i musieliśmy płynąć dalej.

W kolejnym dniu, po dość długim odcinku spływu, zbliżający się wieczór wymusił na nas poszukiwania nowego miejsca do rozbicia namiotu. Niestety odcinek do którego udało nam się dopłynąć, okazał się najmniej “komercyjnym” – wysoka trzcina po obu stronach rzeki. Pierwszy kawałek płaskiego pola, do którego udało nam się dotrzeć po dłuższej chwili, przywitał nas ogrodzeniem i tabliczką z numerem telefonu właściciela – super, tylko tak od około godziny nie mieliśmy już zasięgu sieci. Płyniemy dalej i dopływamy do kolejnych zabudowań. Po przejściu przez pole natrafiamy na “bohatera nr 2” opowieści. Tutaj nie ma już dłuższego dialogu – na moje pytanie “czy i jeśli tak to gdzie mógłbym się rozbić?” usłyszałem tylko “a rozbij sie Pan gdzie chcesz”, które brzmiało identycznie jak “Hakuna Matata” z Króla Lwa. Zero pytań, zero wymagań. Rozbijamy się więc przy samej rzece i jeszcze tego samego dnia (a właściwie już wieczora) sprawdzamy jej temperaturę.

W kolejnych dniach spotkaliśmy kolejnych przesympatycznych ludzi – choćby Pana, który przy pytaniu o sklep, poinformował nas, że najbliższy jest 2-3km stąd więc pożyczy nam swoje rowery (tak sam od siebie!) – Moni przypadła typowa “koza”, a ja dostałem model niemal dziecięcy (nie jestem pewien czy te koła miały chociaż 24′). Świetne to było uczucie, gdy dojechaliśmy do szlaku Green Velo i mijali nas sami ‘pro’ gracze z wypasionymi rowerami, sakwami i mapnikami. Moim “bohaterem nr 3” nie został jednak ów Pan, ale starsze małżeństwo, które “uratowało” nam ostatni nocleg.

W przedostatni dzień wyprawy, po przepłynięciu Kanału Augustowskiego z licznymi śluzami oraz Suchej Rzeczki, dotarliśmy na Jezioro Serwy. Zbliżał się wieczór, uciekaliśmy trochę przed burzą, więc sił było już niewiele. Szukając miejsca na rozbicie namiotu, podpytywaliśmy okolicznych wędkarzy, którzy sugerowali nocleg na dziko na jednej z tutejszych wysp. Ta opcja była naszą ostatecznością, ponieważ kolejnego dnia chcieliśmy z samego rana ruszyć po oddalony o 14 km samochód – wizja rannego wodowania kajaka i jego suszenia do nas nie przemawiała. Kręcąc się nieco po jeziorze, podpłynęliśmy do starszego małżeństwa, które siedziało na niewielkiej działeczce. Na pytanie czy znajdziemy w okolicy jakieś pole namiotowe, starsza Pani odpowiedziała z pełną otwartością i lekko wschodnim akcentem “chodźcie tu do nas, będzie weselej”. Ani Monia, ani ja nie wiedzieliśmy co myśleć w tej chwili, ale jakoś automatycznie przystaliśmy na zaproszenie. Starsi Państwo mieli rozstawioną w rogu działki niewielką Niewiadówkę, my swój namiot postawiliśmy tradycyjnie blisko wody, co tym razem poskutkowało dość zimną nocą, ale przepięknym zachodem słońca. Zanim jednak słońce zaszło na dobre, mieliśmy jeszcze okazję poruszyć wiele ciekawych tematów. Najbardziej z tego dnia zapamiętałem jednak moment, kiedy to starsza Pani siedząc przy brzegu jeziora, co chwilę odrywała wzrok od książki, sprawdzając czy Monia nie odpłynęła za daleko od brzegu. Taka czysto bezinteresowna troska.

Night Photography

If you are not willing to see more than is visible, you won’t see anythingRuth Bernhard

“Jesien Linuksowa 2014” – my conference speech

A few days ago, I had the opportunity to give a speech at a “Jesien Linuksowa 2014” conference. “Jesien Linuksowa” (Linux Autumn) is a “[…] social-scientific meeting for enthusiasts of the Free Software and the GNU/Linux that is organized by the management board of the Polish Linux Users Group“. It was also the first opportunity to present new (pre-release) version of my application – “Raspberry Control 2.0

Slides:

Video:

Tizen SDK on non-Ubuntu Linux distributions

Because I’ve been thinking about adding support for Samsung Gear S (thanks to TizenExperts Twitter Competition, I’m one of the lucky GearS owners) to my Raspberry Control app (proof-of-concept video), I had to install Tizen SDK for Wearable on my computer. It is, of course, possible to develop apps without relying on the official Tizen IDE, as long as the application complies with Tizen packaging rules, but installing the whole SDK seems to be a faster and a better solution. The Tizen SDK for Wearable is a comprehensive set of tools for developing Tizen-based Samsung Gear applications. It consists of IDE, Emulator, toolchain, sample code, and documentation. Unfortunately, Tizen SDK can only be run on Windows, Ubuntu, and Mac OS X. But what about other Linux distributions, like Fedora, which I use? So, I’ve started searching for some info about the possibility to run Tizen SDK on different Linux distributions. Instead of answers, I found only more questions (e.g. here [1]) and one tutorial which is no longer available [2]. Based on [2] and addressing the developers’ needs, I prepared a reworked tutorial on how to run Tizen SDK for Wearable on non-Ubuntu Linux distributions.

In this tutorial I will be based on Fedora 21 (x86_64), but this info should be also suitable to yours Linux distributions – minimal requirement is ability to install four packages: debootstrap, expect, webkitgtk and Oracle’s Java – it’s all. So let’s start…

1) Tizen SDK needs Oracle JDK, so first you have to check Java version:

user$ java -version
java version “1.7.0_51”
OpenJDK Runtime Environment (fedora-2.4.5.1.fc20-x86_64 u51-b31)
OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode)

If you use OpenJDK (output like above) you have to install Oracle’s Java and use the update-alternatives tool from java-common package which let you update alternatives. If Oracle Java is your default environment you can just skip steps 2-4.

2) Download Sun/Oracle Java and install jdk-7u60-linux-x64.rpm and jre-7u60-linux-x64.rpm packages:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

rpm -Uvh /path/to/binary/jdk-7u60-linux-x64.rpm
rpm -Uvh /path/to/binary/jre-7u60-linux-x64.rpm

3) Use update-alternatives tool to assign Oracle Java as a default:

alternatives –install /usr/bin/java java /usr/java/latest/jre/bin/java 1
alternatives –install /usr/bin/javaws javaws /usr/java/latest/jre/bin/javaws 1

4) Check the Java version again:

user$ java -version
java version “1.7.0_60”
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)

5) Install expect and webkitgtk packages:

su -c ‘yum install -y expect webkitgtk’

6) Download Install Manager and SKD Image from tizen.org site:

Tizen SDK for Wearable 1.0.0

For 64-bit systems:

wget http://cdn.download.tizen.org/sdk/Wearable/InstallManager/1.0.0/tizen-wearable-sdk-2.2.159_ubuntu-64.bin
wget http://cdn.download.tizen.org/sdk/Wearable/sdk-images/1.0.0/tizen-wearable-sdk-image-TizenSDKW_1.0.0-ubuntu64.zip

For 32-bit systems:

wget http://cdn.download.tizen.org/sdk/Wearable/InstallManager/1.0.0/tizen-wearable-sdk-2.2.159_ubuntu-32.bin
wget http://cdn.download.tizen.org/sdk/Wearable/sdk-images/1.0.0/tizen-wearable-sdk-image-TizenSDKW_1.0.0-ubuntu32.zip

7) Run installer:

Tizen SDK for Wearable:

chmod +x tizen-wearable-sdk-2.2.159_ubuntu(32 | 64).bin
./tizen-wearable-sdk-2.2.159_ubuntu(32 | 64).bin

blog_tizensdk_1

8) Prepare debootstraped Ubuntu:

After installation we can’t just simply run Tizen IDE or Tizen Emulator because they are linked against libraries which are not available on your system. The quickest solution to provide all libraries in proper version, to run whole Tizen IDE without any problems, is prepare minimal Ubuntu distribution (such solution maybe is not the best one, but has two big cons – is a simple and less intrusive). Getting and installing debootstrap is very easy:

su
yum install -y debootstrap
mkdir /srv/ubuntu
export PATH=$PATH:/sbin
debootstrap –arch=amd64 precise /srv/ubuntu http://archive.ubuntu.com/ubuntu/

Info that “Base system installed successfully” is telling you that you can go to step 9.

9) Now new minimal Ubuntu install is ready, so let’s make it “more usable“:

cd /srv/
mount /dev –bind ubuntu/dev
mount /dev/shm –bind ubuntu/dev/shm
mount /dev/pts –bind ubuntu/dev/pts
mount /sys –bind ubuntu/sys
mount /proc –bind ubuntu/proc
mount /home –bind ubuntu/home
mount /tmp –bind ubuntu/tmp
ln -s /proc/mounts ubuntu/etc/mtab

10) Chroot into your newly created minimal Ubuntu install:

chroot ubuntu /bin/bash

11) Add your user to chroot environment

useradd -s /bin/bash -u

12) Setup locales

export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
dpkg-reconfigure locales

13) Install all packages which are necessary to run Tizen SDK in debootrstrapped Ubuntu:

perl -pi -e ‘s/main/main universe/’ /etc/apt/sources.list
apt-get update
apt-get install -y qemu-kvm binutils-multiarch debhelper fakeroot realpath gettext procps xsltproc libdbus-1-3 liblua5.1-0 libexif12 libcurl3 expect libsdl-gfx1.2-4 python-software-properties zip libgnome2-0 libudev-dev libpython2.7 qemu-user-static libxcb-render-util0 libxcb-randr0 libxcb-xfixes0 libxcb-sync0 libxcb-icccm4 libxcb-keysyms1 libxcb-image0 libv4l-0 gnome-terminal dconf
add-apt-repository -y ppa:webupd8team/java
apt-get update
apt-get install -y oracle-java7-installer libgtk2.0-0 libxtst6 xdg-user-dirs xdg-utils unzip libwebkitgtk-1.0-0 chromium-browser

14) Now you are ready to run Tizen IDE and Tizen Emulator:

Tizen IDE

su
cd /home//tizen-wearable-sdk/ide
./startup.sh

Tizen Emulator

su
cd /home//tizen-wearable-sdk/tools/emulator/bin
./emulator-manager

01

After rebooting computer you will be have to repeat steps 9, 10 and 14, so I suggest you prepare “own launcher” with schroot command to run Tizen IDE like other application in your system – I’m too lazy to do this :)

Footnotes:

For more information about the Gear App Development, please visit Samsung Developers site: http://developer.samsung.com/samsung-gear

  • [1] https://developer.tizen.org/forums/sdk-ide/why-only-ubuntu-and-windows

  • [2] https://www.nixuopen.org/blog/2012/5/trying-tizen-sdk-10-on-64-bit-fedora-16

Lukasz Skalski Embedded Software Engineer
Hi, I'm Lukasz Skalski and I'm open source enthusiast and guy who lives and breathes all things related to IT - especially Linux and embedded systems. Have a look around, check out my Resume and Portfolio to catch up some of my projects. Please feel free to contact me. Let's work together and make something great!
Send