Jak uruchomić touchpad na Dell Vostro 3360 pod Linuksem

Dell Vostro 3360 to zacny sprzęt, z którego korzystam w pracy, chyba od roku. Trochę żałuję, że nie kupiłem go do domu, ale kupowałem wcześniej, nie byłem jakoś przekonany do 13″, no i cena też trochę wyższa. Okazuje się, że jak najbardziej taki ekran daje radę. W pracy korzystam z wersji z dyskiem SSD i procesorem i5. Na początku było więcej, teraz jest 4,5-5h na baterii, więc wynik bardzo przyzwoity – długie wypady pociągiem, serie spotkań w firmie czy przedłużający sie wypad do kolokacji mu nie straszne i nie ma potrzeby korzystania z zasilacza.

Vostro 3360 daje się zmusić do działania z Linuksem (opis co jak działa może kiedyś popełnię, ale wcześniejsze opisy na potrzeby Linux on laptops nie cieszą się zainteresowaniem, więc motywacja jest nikła), ale nie jest to sprzęt, w którym wszystko działa OOTB. Nawet więcej: dawno nie widziałem sprzętu wymagającej takiej rzeźby w celu uruchomienia Linuksa. Grymasił na wersję kernela, co objawiało się… zwisami systemu (nic ciekawego w logach nie znalazłem). Co ciekawe tylko pod Debianem, kumple pod Ubuntu z IIRC taką samą wersją kernela problemu nie mieli. Na debianowym 3.6 (wówczas z experimental) działało stabilnie, więc tak zostało.

Inne problemy to: touchpad (naciśnięcie obu klawiszy naraz domyślnie nie emuluje naciśnięcia środkowego klawisza, co jest standardowym pod Linuksem – i ukochanym przeze mnie – skrótem do wklej), dźwięk czy karta sieciowa Atheros (o dziwo miedź). Dźwięk z alsą z Wheezy’ego działa IIRC od kopa, więc można uznać problem za załatwiony. Zresztą uruchomienie wszystkich komponentów Vostro 3360 na Linuksie (Debian Wheezy) ładnie opisał Łukasz. Co ciekawe, kernel 3.7 powodował jakieś problemy, ale nie pamiętam, czy chodziło o stabilność, czy może o coś innego.

W każdym razie czasy się trochę zmieniły, 3.6 jakiś taki starawy już. Doszły mnie słuchy, że karta sieciowa powinna działać bez magicznych zabiegów pod kernelem 3.11. Postanowiłem sprawdzić. Faktycznie, wydaje się działać. A system pozostaje stabilny. Pozostał jednak problem z touchpadem, więc postanowiłem zrobić instrukcję dla nowszej wersji kernela i nowszych plików ze strony, bo takie się pojawiły.

Na początek smutna sprawa: kernel 3.11, a dokładniej jego pliki nagłówkowe wymagają gcc w wersji 4.8, a to oznacza wymianę połowy systemu ze względu na zależności. Albo konieczność skompilowania kernela samodzielnie (czego na potrzeby desktopa wieki nie robiłem). Wybrałem bramkę numer dwa.

Wchodzimy na http://www.dahetral.com/public-download/alps-psmouse-dlkm-for-3-2-and-3-5/view i pobieramy plik psmouse-alps-1.3-alt.tbz.

Rozpakowujemy go (w /usr/src)

tar xvjf psmouse-alps-1.3-alt.tbz

Pobieramy debianowe źródło kernela

wajig install linux-source-3.11

I kopiujemy bieżący konfig (zakładam, że mamy uruchomiony kernel 3.11 z Debiana)

cp /boot/config-3.11-2-amd64 /usr/src/linux-source-3.11/.config

Kompilujemy i paczkujemy kernel oraz pliki nagłówkowe

cd /usr/src/linux-source-3.11
make-kpkg --append-to-version=-bpo-rozie --initrd kernel_image
make-kpkg --append-to-version=-bpo-rozie kernel_headers

Instalujemy utworzone pakiety

cd .. && wajig install linux-image-3.11.8-bpo-rozie_3.11.8-bpo-rozie-10.00.Custom_amd64.deb && 
wajig install linux-headers-3.11.8-bpo-rozie_3.11.8-bpo-rozie-10.00.Custom_amd64.deb

Kompilujemy i instalujemy odpowiedni moduł:

cd /usr/src/psmouse-alps-1.3 && ./alps.sh dkms_build_alps

Polecenie to automatycznie powoduje przeładowanie modułu psmouse, więc jeśli nie wystąpiły błędy, to od tej chwili wszystko powinno działać poprawnie, w szczególności naciśnięcie obu przycisków touchpada powinno wklejać zawartość schowka.

UPDATE: Prawdopodobnie da się prościej, o ile się nie jest ślepym. Wystarczy do sources.list dodać obsługę backportów dla Wheezy’ego:

deb http://http.debian.net/debian wheezy-backports main contrib non-free

i dostępne staną się kernele linux-image-3.11*… Cóż, kto nie ma w głowie, ma w… kompilatorze. Inna sprawa (i moje usprawiedliwienie!) to fakt, że nie tylko nikt nie zwrócił na to uwagi w komentarzach, ale nawet dwie osoby korzystają z mojego kernela.

UPDATE2: Wygląda na to, że od wersji 3.13 kernela nie potrzeba takich zabiegów. Przed chwilą zainstalowałem z debianowych backportów 3.13.5-1~bpo70+1 i… touchpad działa od kopa, bez kompilacji czegokolwiek.

Raspberry Pi uruchomione (testowo)

Pisałem, że nie kupię Raspberry Pi, więc jak uruchomione? Ano nie kupiłem, ale mam. Dostawali je wszyscy uczestnicy konferencji Atmosphere. Skoro leży i się kurzy, to warto przynajmniej spróbować uruchomić. Tym bardziej, że lubię maszynki z ARM i lubię Linuksa.

W związku z rozgardiaszem okołoprzeprowadzkowym, leżało i czekało znacznie dłużej, niż wypada. A to nie chciało mi się bawić na starym lokum, a to zaginęło gdzieś w kartonach, a to ważniejsze rzeczy do zrobienia. W końcu zdecydowałem się i kupiłem zasilanie (hub USB Unitek Y-206P – goły zasilacz kosztuje podobnie, a więcej portów USB i tak się przyda) i przymierzyłem obudowę z papieru (nie zdecyduję się, może ew. z grubszego kartonu spróbuję jeszcze; ciekawa lista obudów różnej maści dla Raspberry Pi jest tutaj). Okazało się, że wszystko fajnie, ale brakuje mi kabla USB oraz… karty SD. Chociaż jakieś microSD przecież kupiłem, specjalnie do Raspberry Pi, na wakacjach!

W końcu zebrałem się do szybkiego uruchomienia, pożyczyłem kabel od telefonu (ave standaryzacja!), a karta mikroSD i przejściówka się znalazły. Oczywiście karta inna, niż kupiona, ale mniejsza z tym.

Raspberry Pi

Źródło: http://blogs.it.ox.ac.uk/nexus/2012/03/09/raspberry-pi/

Jako dystrybucję wybrałem Raspbiana. W końcu dedykowany dla RPi i oparty na Debianie. Wiele złego mógłbym o nim napisać[1], ale pokrótce: dają obrazy na kartę min. 4GB, co uważam za grube nieporozumienie, bo podstawowy system spokojnie powinien wejść na 1 GB, a na ciut większą kartę to z luzami. Kolejna sprawa: domyślne IP i logowanie do systemu. Może jestem ślepy, ale nie znalazłem danych do logowania podczas lektury instrukcji[2]. W FAQ też nie. Dla pamięci: użytkownik pi, hasło raspberry, a Raspberry Pi z zainstalowanym Raspbianem pobiera domyślnie adres IP z DHCP. Kolejne drobiazgi: w /etc/fstab # a swapfile is not a swap partition, so no using swapon|off from here on, use  dphys-swapfile swap[on|off]  for that, po czym okazało się, że /sbin/dphys-swapfile: POSIX shell script, ASCII text executable. Nie przepadam za taką automatyzacją.

W każdym razie uruchomiłem, wygląda, że działa. Hub USB Unitek Y-206P daje radę z RPi (tylko jedno połączenie z portu USB w hubie do gniazda z zasilaniem Raspberry Pi). W sumie śmieszna konstrukcja, ale ktoś polecał do RPi. Maleństwo w metalowej obudowie, z badziewnym srebrzeniem. Zasilacz 2A, ale na całego huba. Nie sprawdzałem multimetrem, ale czuję, że olewa standardy i daje ile może na poszczególne porty. W sumie o to chodziło. 😉

Potem wszedłem na kanał IRC dedykowany Raspbianowi, by zgłosić bugi i… zaczął się hardcore. Ale o tym to już innym razem napiszę.

[1] I napiszę niebawem, bo poziom porażki zasługuje na oddzielny wpis.

[2] Jestem ślepy, przy pobieraniu obrazu dane do logowania są podane. Spodziewałbym się jednak tego typu informacji raczej w FAQ i/lub release notes. A najbardziej w README.

UPDATE: Okazuje się, że nie tylko dają obraz dla SD o wielkości 4 GB, z włączonym domyślnie swapem, ale ext4 przychodzi z włączonym journalingiem. Na obrazie dedykowanym dla nośnika flash. Z rozmowy na IRC – won’t fix, it’s not a bug, it’s a feature. I ma chronić przed uszkodzeniami systemu plików przy zanikach zasilania. Trochę mi słabo.

Ochłodzenie zaskakuje kolej, czyli nieszczęścia jeżdżą parami

Jak co roku, ochłodzenie zaskoczyło kolej. Pisałem kiedyś, że PKP to skrót od Polskie Koleje Popsute i co się przez te cztery lata zmieniło? No, trochę się zmieniło… Na dworcu stoi sobie mój pociąg (EIC, jeśli ma znaczenie, nie pośpiech, bo jednak i czas przejazdu, i godziny przejazdu lepsze), przed nim konduktor w jakimś nowym gustownym uniformie. Czekam na kumpla.

Kumpel przychodzi, zabieramy się do wsiadania do wagonu. I tu niespodzianka. Na drzwiach wejściowych wagonu karteczka wagon niedostępny dla podróżnych. Ciemno i pusto w całym wagonie. Podchodzimy do konduktora i pytamy, co w tej sytuacji. Ano konduktor stwierdza uprzejmie, że mamy klapnąć sobie w pierwszej klasie. Lekko obawiałem się przesiadek, ale w końcu mają numerowane miejsca i bilety, a pierwszy postój w Warszawie Zachodniej, więc niechaj i tak będzie.

Pierwsza klasa – hell yeah, jest różnica. Cztery miejsca w przedziale, szafka na kurtki/płaszcze, stół. Prądu nie sprawdzałem (w drugiej różnie z tym bywa), ale rozważę w służbowych wyjazdach, bo wygląda, że da się normalnie i wygodnie popracować, a dopłata nie jest zabójcza.

Wkrótce przyszła kelnerka (stewardessa?) z napojami (kawa!) i prasą (przywilej pierwszej klasy). Zapowiedziała też, że być może wkrótce włączą ogrzewanie, bo jest jakiś problem. Zdaje się, że tylko w naszym wagonie. Nie żeby było jakoś specjalnie zimno, ale OK, mamy połowę listopada i temperatura szału nie czyni, więc wypadałoby, żeby ogrzewanie działało.

Jakieś dwie godziny później przyszła po raz drugi i stwierdziła, że ponieważ ogrzewania nie ma, to możemy wziąć drugi napój na rozgrzewkę. Co prawda uważam, że w kwestii podniesienia temperatury więcej dałoby wyłączenie nadmuchu chłodnego powietrza, ale OK, kawa się przyda. Zimno specjalnie nie było, chociaż rozważałem wyciągnięcie swetra z szafy.

Notki by nie było, gdyby nie powrót, znowu EIC. Po pociągu krążyli ludzie, którzy pytali, czy są wolne miejsca. Lekko dziwne, bo przecież są miejscówki. Okazało się, że kolejny skład ma nieogrzewane wagony…

W każdym razie jest lepiej, bo pociągi jeżdżą. Co prawda zrobienie 25 minut opóźnienia na odcinku Warszawa Wschodnia – Warszawa Centralna wymaga IMO pewnego wysiłku, ale jeżdżą. Nieogrzewane, ale przecież do wiosny niedaleko.

NFM: Wypady 6-21 to nie jest to, co tygrysy lubią najbardziej. Ale czasem inaczej się nie da.

11 listopada w Poznaniu a flagi

Poniżej dwa zdjęcia, zrobione przeze mnie dziś około południa w Poznaniu, nieopodal Zamku, trasa orszaku i ogólnie reprezentacyjna strona. Po kliknięciu w zdjęcie otwiera się pełna wersja (dostępne wkrótce, na razie Blox się zbiesił i nie pozwala na wczytanie większych plików). Zadanie: policz flagi (polskie).

Poznań flagi św. Marcin 1

Źródło: fot. własna

Poznań flagi św. Marcin 2

Źródło: fot. własna

Tymczasem (źródło: poznan.pl):

W poniedziałek, 11 listopada 2013 r., obchodzić będziemy 95. rocznicę odzyskania przez Polskę niepodległości. Zwracam się z apelem do mieszkańców Poznania i instytucji o udekorowanie budynków flagami państwowymi i czynny udział w uroczystych obchodach Narodowego Święta Niepodległości.
Ryszard Grobelny
Prezydent Miasta Poznania

Zastanawiam się, czy mieszkańcy Poznania mają tak w poważaniu Prezydenta AKA władzę, święto AKA uroczystości państwowe, czy może wolą  świętować imieniny ulicy, a od zadym typu warszawskiego się odciąć?

UPDATE Tak, to tylko jedno miejsce. I było tam wyjątkowo mało, ale nadal – na pozostałych ulicach wyglądało to bardzo podobnie. A kojarzę (patrz komentarz), że inne święta wyglądają w Poznaniu zupełnie inaczej.

Koniec konta w dyndns.com

Usługa dyndns w dyndns.com – czyli chyba najpopularniejszego dyndns w ogóle; pamiętam, że nawet w niektórych routerach w swoim czasie był wbudowany i to w firmware producenta – od dawna zmierzała do tego, by być płatną. A to skończyły się rejestracje nowych darmowych kont, a to wprowadzono wymóg korzystania z kont, a to – ostatecznie – wymóg logowania się przez WWW raz na miesiąc.

Ponieważ aż cały miesiąc na zalogowanie był, to stwierdziłem, że zawsze zdążę. Tym bardziej, że przysyłali powiadomienia parę dni wcześniej. I wystarczyło kliknąć linka. Więc nawet nie ustawiłem crona, który sam by się logował – w końcu link taki wygodny… O koncie płatnym nie myślałem – 15 dolców na rok to trochę dużo jak za „zamień zmienne IP na coś możliwego do zapamiętania”. Jakąś dotację co łaska (np. via Flattr) pewnie bym rzucił, ale tak z góry narzucona opłata – niekoniecznie, tym bardziej, że mogę sobie odpalić własny zastępnik w jakieś 30 minut. No ale nie lubię takich rzeźb i wolę coś, co jest wspierane szerzej i ma już infrastrukturę.

Dziś stwierdziłem, że nie mogę się zalogować. Błąd rozwiązywania nazwy. Hm, bywa, może awaria. Potem coś mnie tknęło. Sprawdziłem maile. Tak jest. 30.10 dostałem przypomnienie. Oczywiście zostało oznaczone jako spam przez providera poczty, w programie pocztowym, a pewnie i podświadomie angielski tytuł sklasyfikowałem jako spam.

W każdym razie nie mam już konta na dyndns.com. W zamian wybrałem no-ip.com. Też zasłużony w temacie serwis, też zdaje się był na routerach SOHO wspierany. I też mocno zmierzający w stronę komercji, ale nie przejmuję się – rejestracja tego typu serwisu plus setup to dosłownie 5 minut. No i w końcu uruchomiłem też dyndns na moim OpenWrt.

Niezbyt łatwo znaleźć przykłady konfiguracji ddclient dla no-ip.com (choć jest trywialna, a protokół noip wbudowany), więc:

cat /etc/ddclient.conf
pid=/var/run/ddclient.pid
protocol=noip
use=if, if=ppp0
login=login
password=haslo
domena.no-ip.biz

Wersja dla Dockstara z PPPoE, publiczny IP na ppp0.

PS Wpisu by nie było, ale ładnie wpisuje się w trend „używałem tego od lat, a teraz zamknęli„.

UPDATE Z tym ddclientt to pochwaliłem za wcześnie. Nie tylko nadal występuje coś, co miało miejsce od dawna, czyli obecność wiszących procesów ddclient, ale – co gorsza – przyrastają w zastraszającym tempie. Load 30 na biednym routerku był dziś za ich przyczyną. Ledwo zdołałem ubić. Sam ddclient okazał się skryptem w Perlu (przychodzi mi na myśl taki rozwinięty smsender.pl), a rozwiązanie jest proste – nie korzystam już z demonizacji, tylko wywołuję co 10 minut z crona. Okazało się, że ma jakiś problem z cache, a konkretnie z odczytem wartości z niego. Rozwiązanie wygląda tak (po wyłączeniu demonizacji w /etc/default/ddclient):

*/10 * * * * /bin/rm /var/cache/ddclient/ddclient.cache; /usr/sbin/ddclient -quiet > /dev/null

Wiem, dirty hack. Ostatnio mam niestety tendencję do tego. Przyznam, że myślałem w pierwszej chwili o cyklicznym killowaniu procesów ddclient.

UPDATE: Wygląda, że albo z tym wyłączaniem usług to ściema, albo coś im nie poszło – dostaję kolejne maile z linkami, których kliknięcie aktywuje konto. Nie sprawdzałem działania, ale wygląda, że mogę dodawać kolejne hosty i normalnie dalej korzystać za free. Raczej ciekawostka, bom już przeniesiony.