Kwi 05 2009

GSoC, blog, czas i parę innych

Kategorie: Debian GSoC Linux Studia Śmietnik Matthew @ 20:12:26

Po długich wahaniach ("eeee, ja się do tego nie nadaję...") postanowiłem wystartować w Google Summer of Code. Jako projekt, na początku, chciałem wybrać stworzenie Macopodobnego docka do KDE (z wykorzystaniem plasmy) ale dopadły mnie owe "długie wahania". Coś mnie podkusiło i przejrzałem jeszcze raz listę organizacji oraz projektów. I tak trafiłem na menedzer pakietów dla Debiana opartego o KDE/Qt. Wysłałem e-mail "wprowadzający" (pomijam już fakt, że na złą grupę oraz to, że niechcący wyraziłem swoje krytyczne zdanie nt. twórczości jednego z zeszłorocznych GSoCera twierdząc, że aptitude-gtk ma tak nieprzyjazny interfejs, że nie da się go używać). Po tygodniu (w sumie to były 3-4 dni, ale trwały jak wieczność) zarywania kolejnych nocy (łączna długość snu przez ten czas: 10 godzin) i opuszczeniu wszystkich ważniejszych zajęć (czyli tych na których były sprawdziany, wejściówki, oceny) muszę powiedzieć, że było warto. :D
Jeżeli nie zdarzy się nic niespodziewanego (czytaj: nie zabraknie slotów dla tego projektu, znajdzie się mentor, nie wpadnę pod samochód na skrzyżowaniu Do studzienki i Traugutta lub nie wygram wielomilionowej fortuny) to można powiedzieć, że jedną nogą jestem już w tegorocznym GSoC.

Także czeka mnie wręcz morderczych 5 miesięcy. Przy okazji wyliczyłem, że normalnie śpiąc, chodząc na zajęcia, pracując i biorąc udział w GSoC zostaje mi jeszcze 20 godzin tygodniowo na inne rzeczy. Nie jest to dużo (biorąc pod uwagę, że każdego dnia trzeba jeszcze trochę poświecić czasu na wstanie z łóżka, zrobienie czegoś do jedzenia czy odpoczynek żeby nie zwariować, o nauce nie wspominając), jednak pokazuje ile tak na prawdę marnuję czasu (na początku myślałem, że w tych wyliczeniach będę grubo na minusie). Ew. jeżeli faktycznie nie będę dawał już rady to zrezygnuję z pracy (nawet rozbijając pieniądze za GSoC na 5 miesięcy wychodzi bardziej korzystnie niż codzienne dreptanie do pracy w celu zmuszania się do kodzenia w Javie, a i ciekawych ludzi się pozna i na DebConf do Hiszpanii wyjedzie).

Postanowiłem zmienić layout jogga. Nie wszystko jeszcze działa i jest zrobione tak jakbym chciał, ale mam nadzieję, że do końca świąt się z tym uporam.
Przy okazji mam w planie zacząć robić wpisy w dwóch językach (po polsku i angielsku) na raz. To będzie straszne doświadczenie (bardziej dla czytających niż dla mnie ;)), gdyż mój angielski całkiem leży, ale mam nadzieję, że może mi to podnieść moje umiejętności.

Lut 17 2009

Numlock zawsze włączony

Kategorie: Linux Techblog Matthew @ 13:30:00

Z racji, że lubię mieć różne dziwne wynalazki (czytaj: fajny sprzęt komputerowy, który jest linuksoodporny) to trzeba się czasem z nimi zmierzyć i doprowadzić do stanu używalności.
Już dość długo mam swoją klawiaturę Logitech MX5500. Ma ona jeden fajny feature. Po wciśnięciu odpowiedniego przycisku klawiatura numeryczna i ekran LCD zamieniają się w prosty kalkulator. Ma to też jedną wadę... brak przycisku numlock. Nie byłoby w tym nic złego gdyby nie fakt, że klawiatura jest bluetoothowa, przez co po przejściu w stan uśpienia ma problemy z reakcją. A tym samym nie reaguje na żądania włączenia numlocka które wymusza KDE. Dodatkowo ustawienia KDE nie działają na terminal, więc po przejściu w tryb tekstowy nie ma szans włączenia klawiatury numerycznej.

Jednak na to wszystko znalazło się rozwiązanie. Programik setleds (który ustawia diody klawiatury) potrafi także ustawiać flagi VT, dzięki czemu można wymusić działanie klawiszy num lock, caps lock i scroll lock. A jak to zrobić (przykład znajduje się w przykładach manuala do setleds):

INITTY/dev/tty[1-8]
for tty in $INITTY; do
   setleds -D +num <$tty
done


Powyższy kod doklejamy sobie do /etc/init.d/rc.local. Reboot systemu i cieszymy się włączonym numlockiem. Dla tych co nie chcą mieć go włączonego na stałe jest opcja -F zamiast -D.

Sty 21 2009

Ograniczenie uploadu w Linuksie

Kategorie: Linux Techblog Matthew @ 22:08:23

Tak dla potomności i żebym o tym nie zapomniał. A może i jeszcze komuś się przyda (takim studentom PG mieszkającym w akademikach :P):

tc qdisc del root dev eth0 2>/dev/null
tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:42 htb rate 1Gbit burst 1mbit
tc class add dev eth0 parent 1:42 classid 1:2 htb rate 54kbps burst 6144
iptables -t mangle -A OUTPUT -d ! 153.19.208.0/20 -m time --timestart 9:55 --timestop 1:05 -j CLASSIFY --set-class 1:2


I od góry:
Czyści kolejkę.
Tworzy nową kolejkę opartą o HTB.
Dodaje klasę ogólną (czyli bez cięcia łącza).
Dodaje podklasę która tnie łącze.
Regułka iptables która przy pomocy utworzonej klasy pilnuje uploadu od 9:55 do 1:05.

Błędy:
1. Nie wiem czemu, ale w przypadku pierwszej klasy można podać rozmiar burst'u w megabitach a w przypadku drugiej w bajtach (burst niby przyjmuje tylko bajty a resztę sam wylicza), bo w kilobajtach już nie działa.
2. W przypadku ściągania z pełną prędkością (dla łącza 100mb/s, bez ograniczania uploadu, faktycznie jest to 100mb/s) następuje krótki okres ściągania 8MB/s, później spada do 3-4, by rosnąć do 5-6, znowu spada do 3-4 i tak w kółko.

Lis 27 2008

64bitowy Flash pod Operą

Kategorie: Linux Techblog Matthew @ 10:25:18

Ściągamy paczkę z nowym flash'em z tej strony. Wypakowujemy poleceniem tar -zxvf libflashplayer-10.0.d20.7.linux-x86_64.so.tar.gz. Przeglądamy plik ~/.opera/pluginpath.ini (cat ~/.opera/pluginpath.ini) i wybieramy lokalizację folderu z pluginami do którego kopiujemy bibliotekę. W moim przypadku jest to /usr/lib/opera/plugins (cp ./libflashplayer.so /usr/lib/opera/plugins). Restartujemy Operę. Działa i nawet jeszcze się nie wysypało. ;]