Zasilacz w grzybie zdechł był. Żadna sprawa, ale jak dziwnie :D Po kolei. W czwartek wróciłem z pracy, próbuję odpalić grzyba, a tu cisza. WTF?! Klikam raz drugi trzeci, nic tylko diodka na odbiorniku od myszy i klawiatury na chwilę się zapala. Otwarłem obudowę, klikam raz jeszcze, wiatrak na CPU rusza i zatrzymuje się. Czary. Odpiąłem kabel od MB poklikałem podpiąłem go z powrotem, komp ruszył. No to się zdziwiłem ale jak działa to działa nie ma się czym przejmować.
Później wszystko działało bez żadnego problemu i w idle i jak trochę podniosłem poprzeczkę aktualizując to i owo (na żętoo to trochę pracy od grzyba wymaga). Aż tu nagle dziś znów paskuda nie chce jarnąć. Tym razem nic już nie mrugało, na szczęście miałem tu jednego nowego fanlessa od Silverstone kupionego kiedyś w związku z planem (i tylko planem) zbudowania PVR. Pomogło, ale pewnie do końca życia będzie mnie męczyć dlaczego po tym jak się zasilacz skończył jeszcze jakiś czas działał. :D Insza inszość, że nie spodziewałem się po poprzedniej elektrowni, że tak szybko dokona żywota.
Efekt braku wielkiego wiatraka w zasilaczu jest taki, że mam na CPU jeszcze o 2°C więcej, chyba jednak powinienem pomyśleć o lepszym wiatraku, bardziej przystosowanym do tego co tam ostatnio władowałem.
Już starożytni indianie odkryli, że buga najlepiej jest opisać i przeczekać. Wygląda na to, że znów zadziałało. Kombinowałem bezskutecznie kilka dni, aż w końcu pomarudziłem i dziś co prawda ręcznie popchnięty, ale jednak buzz zaimportował moje marudzenie. Ciekawe czy to początek końca czy tylko chwilowe niedopatrzenie i znów się popsuje. :D No ale skoro technika działa to trzeba kuć dalej, bo ostatnio niejako przy okazji zwróciłem uwagę, że najnowszy Firefox potrafi przechować zalogowanie nieproszony. Dziś znalazłem nowe lepsze sposoby na to samo. Pojęcia nie mam tylko, czy ma tak tylko mój egzemplarz czy każdy inny, jeśli każdy to może zbiorę się w sobie i założę buga. W końcu nie pobiją i albo naprawią jeśli to faktycznie błąd, albo oświecą mnie niewiernego na czym ten ficzer polega :D.
Nowy sposób na nie wykasowanie ciasteczka polega na wyłączeniu przeglądarki tak jak robi to 95% użyszkodników komputerów (nie badałem, ale tak sądzę), czyli klikając w guzik z krzyżykiem na dekoracji okna czy jak się toto nazywa.
Przypominam, że Fx poproszony został o kasowanie ciastek przy każdym wyłączeniu:

Dla eksperymentu otwieramy kilka zakładek i logujemy się w różne miejsca (przepiszę tu zawartość kart gdzie właśnie jestem zalogowany, przy okazji zamknę inne): gmail, google reader, picasaweb, bugzilla.mozilla.org, bugs.gentoo.org, intensedebate.
Jak już wszystko jest pootwierane, to zamykamy Fx klikając w krzyżyk w prawym górnym rogu okna (lub gdzie on tam jest jeśli manager okienek jest oskórkowany mniej klasycznie). W tym momencie Fx wydrze ryja, że zamyka się więcej niż ileś tam kart, to chyba jest zgodne z prawdą :D Jak już się wszystko wyłączy to ... odpalamy firefoksa i na stronie startowej klikamy w Przywróć poprzednią sesję
. Efekt?

Pozostaje jeszcze pytanie, czy tym razem Buzz zaimportuje notkę bez ręcznego popychania (poprzez kliknięcie w connected sites
na stronie Buzza), ale na to pytanie nie da się ot tak odpowiedzieć, trzeba wyczekać. :D
Cuda się tu ostatnio dzieją, upierdliwość problemów nie jest wysoka, ale mam w mózgu to coś co powoduje, że chodzę nerwowy jak czegoś nie kumam. Zacząłem się przyglądać temu co i jak dzieje się w tych wszystkich cudach udostępnianych przez gógle kiedy najpierw okazało się, że Google Buzz nabawił się kilku godzinnego laga jeśli chodzi o wyświetlanie zawartości mojego joggera. Lag jak lag, tu jescze sprawę olałem. Później okazało się, że laga można zlikwidować kiedy kliknie się w przegląd podpiętych do buzza serwisów. Przypomniała sobie wówczas paskuda o joggerze i zasysała wpisy z RSS, w końcu przestało działać i to. Z jednej strony właściwie mi to wisi, z drugiej jak wspomniałem drażni nie tyle, że nie działa, a dlatego, że kompletnie nie kumam dlaczego się popsuło i to przecież nie wszystkim tylko najwyraźniej akurat mnie - czyli coś poppsułem ja tylko gdzie?
Przyglądam się więc, a im bardziej się przyglądam tym więcej rzeczy mnie zaskakuje. Oto na przykład okazuje się, że gmail wygląda inaczej pod dwoma różnymi przeglądarkami i to przecież nie dlatego, że firefox nie potrafi. Wygląda inaczej ... bo tak.

Żeby nie było wystarczy przejść do wyszukiwarki i już zarówno epiphany jak i firefox wyświetlają tę samą (nową) wersję UI.

Czary?
Jeśli chodzi o samą aktualizację buzza, to w desperacji przeczytałem nawet instrukcję obsługi i ... niewiele z tego wynika. No bo po pierwsze i najważniejsze działało. Po drugie mam mieć joggera w profilu i mam. Mam mieć go w buzzie i też mam ...

A updateów ostatnio brak, choć kto wie może teraz skoro już marudzę się naprawi. W końcu jak wiemy komputery czasem tak mają, że czekają aż się człowiek zapyta dlaczego coś nie działa i natychmiast działać zaczyna. :D
Tyle o zwykłej magii teraz zagadka magiczno kryminalna :D. Firefox 4 między innymi cudami zyskał w porównaniu z wersją poprzednią coś co się nazywa karta aplikacji
. Nawet to zgrabne i wszystko cacy, ale cuda się dzieją jeśli chodzi o logowanie w usługach google. Obejrzyjmy na początek konfigurację przeglądarki.

Mamy tak:
karta aplikacjiczyli taka specjalna zakładka która zajmuje mniej miejsca, jest wyświetlana z lewej strony i pojawia się na miejscu zaraz po włączeniu przeglądarki, przed stroną startową. No to zalogujmy się na konto, otwórzmy gmaila i Greadera, ustawmy obie jako aplikacje, po czym wyłączamy firefoksa, czyli ... kasujemy ciastka tak? I włączamy go z powrotem.
photosw gmailu. Czyli otwieramy nową zakładkę z picasą i co widzimy?

No to teraz obstawiamy, pojawi się w buzz streamie czy nie? Jeśli się pojawi to będę musiał się upić, żeby choć próbować załapać co się dzieje. :D
Nie tak dawno po serwisach newsowych w jakiś sposób związanych z FLOSS przetoczyły się informacje o tym, że administracja w szkoplandii po udanej migracji na wolne oprogramowanie właśnie przytłoczona jakimiś bliżej nie zidentyfikowanymi problemami migruje z powrotem na oprogramowanie własnościowe.
Z tej okazji zdenerwowany MacSlow (i zapewne gazylion innych ale tego akurat przyuważyłem) wysmażył na blogu rant German foreign office goes back to Windows - rant. Gdzie między innymi:
From reading summaries on the real reasons, it apparently came down to drivers (for printers and scanners), which they probably bought at Lidl or Aldi (german discount-chains), instead of spending a minute or two on the web researching what devices are properly supported.A ponieważ akurat mniej więcej w tym czasie zdechł u mnie w firmie wysłużony fax od Panasonica mam garść własnych doświadczeń.
Fax jest konieczny do pracy, ale drukarka też by się przydała. No to może żeby nie marnować miejsca jakiś mały wielofunkcyjny kombajnik? Nie jestem administracja publiczna tylko normalny ZU 2.0
myślę, że sobie poradzę.
Na stronie HP odnajduję urządzenie z zadowalającymi parametrami i rozsądną ceną: HP LaserJet Pro M1212nf. Obsługiwane OS?
Windows® 7; Windows Vista®; Microsoft® Windows® XP, Server 2003, Server 2008; Mac OS X v10.4, v10.5, v10.6; Linux (patrz http://www.hplip.net). W systemach Microsoft® Windows® Server 2003 i Server 2008 można dodać tylko sterowniki druku i skanowania.jest ok, ale sprawdzamy dalej na stronie hplip: hplip: HP LaserJet Professional m1212nf Multifunction Printer.
Minimum HPLIP version: 3.10.4Nadal ok, ale jakiś plugin, lista wspieranych dystrybucji... Ok nie chcemy się wpierdzielić jak jakiś lamer z niemieckiej administracji trzeba dopytać.
Support level: Full (See note11.)
Recommended?: Yes (See note15.)
This printer REQUIRES a downloadable driver plug-in. Use hp-setup to install the printer, and to download and install the plug-in. In general, required driver plugins are required for printing support. Driver plug-ins are released under a proprietary (non-open) license and are not part of the HPLIP tarball release.
11) For a definition of Support Levels, please refer to this KB article.
15) "Recommended" means that the printer is fully supported in HPLIP and is recommended for use on your Linux system. For information of what "fully supported" means, see this KB article.
No to kupiłem drukarkę. Chwilę to trwało zanim zadziałała bo się ten durny plugin nie chciał zainstalować, pewnie coś robiłem źle. Anyway drukarka zainstalowana, skaner działa (jeden i drugi), drukarka działa, faksowanie z komputera się zainstalowało (nie testowałem więc nie napiszę tu, że działa ale wierzę, że tak). Oczywiście powyższe nie wskazuje na powód dla którego dziś tu spamuję... ;-)
Głównym zadaniem urządzenia jest bycie faksem. To jedyna rzecz której od niego oczekuję na co dzień to żeby odebrał fax jeśli ktoś do niego zadzwoni i żebym ja mógł odebrać fax dla siebie. I tu małe wyjaśnienie. Odebrać fax czyli ja dzwonię do kogoś, mówię cześć to ja prześlij mi dokument, ktoś wysyła ja odbieram. To się bodaj polling nazywa i tak jest obsługiwane przez HP M1212nfgoogle: m1212nf polling
I tu zaczęły się schody ...
Procedura z mojej strony jest zawsze taka sama, linia telefoniczna jak to linia też się raczej nie zmienia codziennie. Na dodatek po drugiej stronie połączenia jest cały czas to samo jedno urządzenie. Połączenie wygląda następująco:
Wysłać z szyby?i d*.*. Można sobie klikać w kółko
wróći znów zielony przycisk faxu, nic nie daje. Jak się małpa uprze to nic jej nie przekona.
Wygląda to wszystko tak jak gdyby drukarka HP próbowała zgadnąć co chciałby zrobić użyszkodnik ale słabo jej to zgadywanie wychodzi. No to wziąłem się za siebie i napisałem do supportu.
Od jakiegoś czasu sobie z tym supportem korespondujemy. Dostałem masę mało sensownych porad, kilka próśb o wykonanie testów (w tym próby wysłania faksu na numer w HP Polska - tak jak gdybym kiedykolwiek uważał, że mam kłopot z wysyłaniem dokumentów). Generalnie z tej całej korespondencji nic nie wynika, poza ostatnim wnioskiem z przed kilku dni. Być może konieczna jest aktualizacja firmware. Można ją wykonać samemu ... z komputera z zainstalowanym Windows. Z urządzenia z linuskiem się nie da.
I tak to jest z linuksem w firmie, nawet jeśli nie ma się drukarek z Lidla kupionych bez zastanowienia.
A Babcia mówiła, nie aktualizować niczego zaraz po wydaniu, dać innym miesiąc, niech się u nich wypierdziela, co się odwlecze to nie uciecze. Ale wariat nie, tyle czasu pieścili się z tym firefoksem, ostatnio wywalał się gdzieś w okolicy 0.9 co się może stać ... ano może np. to:
wariat@mickey ~ $ firefox
PluralForm.jsm: Index #2 of 'Firebug's log limit has been reached. 0 entry not shown.;Firebug's log limit has been reached. 0 entries not shown.' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
PluralForm.jsm: Index #2 of '0 Total Firebug;0 Total Firebugs' for value 0 is invalid -- plural rule #9; called by $STRP
Running global cleanup code from study base classes.
*** glibc detected *** firefox: free(): invalid next size (fast): 0x0000000001e96190 ***
======= Backtrace: =========
/lib/libc.so.6(+0x72b56)[0x7ffc80783b56]
/lib/libc.so.6(cfree+0x6c)[0x7ffc8078890c]
//usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.260.19.36(+0x8bb)[0x7ffc756e18bb]
======= Memory map: ========
00400000-0040b000 r-xp 00000000 08:03 2015513 /usr/lib64/firefox/firefox
0060a000-0060b000 r--p 0000a000 08:03 2015513 /usr/lib64/firefox/firefox
0060b000-0060c000 rw-p 0000b000 08:03 2015513 /usr/lib64/firefox/firefox
00827000-02a8e000 rw-p 00000000 00:00 0 [heap]
7ffc44000000-7ffc44306000 rw-p 00000000 00:00 0
7ffc44306000-7ffc48000000 ---p 00000000 00:00 0
7ffc49784000-7ffc497a4000 rwxp 00000000 00:00 0
7ffc497a4000-7ffc497a6000 r--p 00000000 08:04 41682260 /home/wariat/.mozilla/firefox/jft23qdq.default/TestPilotExperimentFiles/base_classes.jar
7ffc497a6000-7ffc497c6000 rwxp 00000000 00:00 0
7ffc497c6000-7ffc497c9000 r--p 00000000 08:04 41681756 /home/wariat/.mozilla/firefox/jft23qdq.default/TestPilotExperimentFiles/week_life.jar
7ffc497c9000-7ffc497e9000 rwxp 00000000 00:00 0
7ffc497e9000-7ffc497ea000 r--p 00000000 08:04 41686995 /home/wariat/.mozilla/firefox/jft23qdq.default/TestPilotExperimentFiles/basic-survey.jar
7ffc497ea000-7ffc4980a000 rwxp 00000000 00:00 0
7ffc4980a000-7ffc49c0a000 rw-p 00000000 00:00 0
7ffc49c0a000-7ffc49d4b000 rwxp 00000000 00:00 0
blablabla
No dobra generalnie nic się nie stało, tylko trzeba będzie gazylion haseł wpisać na nowo (i w większości przypadków pewnie ustalić na nowo bo kto by pamiętał którędy po klawiaturze szedł kot generujący hasła).
No to skoro już zostałem filmowcem i nawet wykombinowałem, że kolejna superprodukcja to powinno być coś co dzieje się naprawdę wolno trzeba było się zabrać za robotę. Plan z fotografowaniem kwiatka nawet mi się podoba, ale zaraz przychodzi myśl, że to wszystko tak po prostu się nie uda. Żeby robić zdjęcia trzeba mieć światło, światło jest w dzień. Można fotografować kwiatek raz dziennie w południe, ale wtedy co? 30 klatek po miesiącu, nah.
Trzeba światła, sztucznego ... przez miesiąc lub dwa i żeby nikt nie wyłączył? Nah. I tak dochodzimy do projektu jupitery :D Kompletnie się na tym nie znam, pewnie coś poważnie spierdzieliłem, ale ... działa :D.
Plan jest prosty, kilka okrutnie silnych LEDów oświetla aktora na czas zrobienia zdjęcia, fotki trzaskane są co godzinę lub dwie, czyli z prędkością 12 lub 24 klatki na dzień (360 lub 720 klatek na miesiąc), odtwarzane z prędkością 12fps. Powinno dać radę tak na oko.
Router będzie budził kompa 5 minut przed pełną godziną, cron uruchomi zestaw małp ... ma szanse prawda? Jako aktor wstępnie został wybrany Krokus, podobno małe szanse, ale może się udać, że nie zdechnie po przeniesieniu z dworu do mieszkania.
Pozostało wykombinowanie oświetlenia... nie za bardzo wiedziałem jak się za to zabrać, więc zacząłem od odpowiedzi na proste pytanie. Czym mi to by było najwygodniej włączać? I wyszło, że najłatwiej jest zapalać i gasić RTS w serialu. Powstał potwór który działa choć chyba nie powinien. I tu mam kłopot, bo kompletnie się na tym nie znam ale coś jest nie tak. Schemat potwora wygląda tak:
I to działa... choć nie powinno chyba. Już tłumaczę może jakaś dobra dusza mnie oświeci (jak ten jupiter ;-). RTS może być podniesiony albo nie. Podniesiony daje +7V (w mojej wersji adaptera USB <> RS232), nie podniesiony ma tam -7V. I jedno i drugie powinno zamknąć przekaźnik (taki tam mam: Coto 9007-12-00), powinno prawda?
Żeby było z sensem jak się wydaje po drodze między RTS, a wyjściem diody zamontowanej równolegle do cewki przekaźnika powinna być jeszcze jedna dioda, która +7V przepuści, ale -7V już nie. Tylko jak ona tam jest to nie działa, a jak jej nie ma to tak.
Mam taką teorię (mówiłem, że się nie znam, więc mam własne teorie tam gdzie inni mają wiedzę), że kiedy RTS jest zdjęty i zapodaje -7V to prąd ma wybór, albo poleci przez cewkę gdzie napotka opór 1kohm albo sobie przeleci przez równolegle podpiętą diodę bez żadnych przeszkód. A skoro tak się da to za mało prądu płynie przez cewkę i się nie zamyka. Ma to jakiś sens?
Ale to nie rozwiązuje problemu z niedziałaniem
kiedy na miejscu jest ta druga dioda która -7V zamyka po stronie seriala i nie puszcza. Może być tak, że sama dioda pobiera wystarczająco dużo prądu, żeby zabrakło go na zamknięcie cewki? Z RS232 pociągnąć za dużo nie można to jest jasne, nigdy się toto do zasilania niczego nie nadawało, może wydajność ledwo starcza na zamknięcie przekaźnika i cokolwiek po drodze to o jedno cokolwiek za dużo. Takie mam małe przemyślenia. Mam też dużą wątpliwość wyrażoną zdaniem, kiedy i czemu zrobię kuku mostkując tak bezczelnie RTS do masy via dioda kiedy światło jest wyłączone, czyli przez 99% czasu kiedy włączony jest komputer.
No ale najważniejsze, że działa mam więc platformę zdjęciową z reflektorami
Zaawansowaną wariacką elektronikę (no co! :D)
Przygotowane to to jest na więcej niż trzy lampy, ale te trzy wystarczą a i tak potrzebują razem coś koło 1A, więcej chyba nie powinienem puszczać przez ten przekaźnik.
Teraz wystarczy tylko:
stty -F /dev/ttyUSB0 crtsctsi świeci
stty -F /dev/ttyUSB0 -crtsctsi zgaśnie. Jednym słowem studio praktycznie gotowe, czas zabrać się za dostrojenie nowego zestawu małp do obsługi aparatu i klaps (a później albo klops, albo będę dziękował hackerowi na gali po rozdaniu przyszłorocznych oscarów ;-).
Javowy symulator układu jest rewelacyjny :D Zabawka w sam raz dla wariata. układ włącznika z kompletem diod.
Tak sobie powolutku migruję z prawie zjaranego Coyote (a jak wiedzą wszystkie dzieci prawie robi piwo) na grzyba, który skazany miał być na stanie w nieskończoność w offlinie ale mu się los odmienił. I natrafiłem na małą zagwozdkę.
Chciałem jarnąć obok Firefoksa z Coyote, żeby zgarnąć skrypto-zakładki i kilka haseł, miało być łatwo i jest w sumie łatwo ale mogłoby być łatwiej. Mogłoby?
No bo jak zrobić tak:
wariat@mickey ~ $ ssh -Y 192.168.1.100 wariatkowo speaking ... who's on line? Last login: Fri Feb 11 20:28:10 CET 2011 from 192.168.1.2 on pts/0 WLCM coyote@wariatkowo here wariat@coyote ~ $ echo $DISPLAY localhost:10.0 wariat@coyote ~ $ firefoxto się jarnie Fx i jest git tylko ... jeśli na mickey'u był włączony Fx to odpali się kolejne okno Fx z mickeya, trzeba tego lokalnego wyłączyć i wtedy jest to o co chodziło, czyli odpala się Firefox z coyote'a.
UPDATE:
I znów się okazuje, że Lazy Web rządzi. Dzięki skolima! Magia brzmi:
$ firefox -no-remote
Ponieważ ostatnio zmieniło się to jak pracuję stary i wyglądający na autentyczny złom, choć jednak działający laptok stoi od kilku miesięcy nie ruszany na biurku. Czyli stał się desktopem, jakoś mi to nie przeszkadza, więc prostym wnioskiem było, że trzeba się przesiąść na prawdziwy desktop który od 3 lat stoi obok nie włączany, a ma znacznie więcej poweru
. Jarnąłem Mickeya, odpalił się, mnie się morda uśmiechnęła jak zobaczyłem stary dekstop i zaraz mina mi zrzedła. Nie ma netu. WTF!?
Kable, są. Idiodka na routerze ... O.o. nie świeci tylko sobie błyska czasem jak gdyby ją kompletnie pogięło. No nic, inny kabel. To samo, inne gniazdko w routerze to samo. Krótko, WiFi jest, wired nie śmiga, ale ... no jak nie śmiga jak przez cały czas od lat wpięta jest drukarka i cały czas działa. No to zamieniamy miejscami (w routerze). Drukarka działa, komputer nie. :/ No to może kompyter? Wpiąłem kablem eeePC Nelki, nic. Wpiąłem mojego laptopa nic. Wszystkie się na raz nie popsuły, szczególnie, że eee jest nówka sztuka.
Na tym zakończyłem, bo kiedy zaczynałem zabawę było już grubo po północy, poszedłem spać, ale jestem co najmniej wygłupiony. Nie powiem, że to przecież nie możliwe bo widziałem co widziałem, nie miałbym problemu gdyby drukarka nie działała, ale działa no to jak?! Any ideas? To nie ma pewnie większego znaczenia, ale router to Linksys cośtam cośtam 325N.
Update w treści nie w komentarzu, żeby się kopia na Buzzie zaktualizowała, to w końcu kolejny kawałek the lazy web
;-).
Jedna rzecz mi przychodzi do głowy (siedzę w pracy 10km od feralnego routera i myślę :D) tylko nie wiem czy to ma jakikolwiek sens. Drukarka jak sądzę ma kartę 10Mbps, każdy komputer więcej, 100 lub 1000Mbps. Czy to możliwe żeby elektronika w routerze zjarała się w ten sposób, że działa tylko na 10Mbps? Zjarała w sensie nie wiem, ugotowanych kondensatorów czy coś.
Generalnie z komputerami to jest tak, że jak coś jest popsute to zostaje takim tylko tak długo aż ktoś się wystarczająco nie wkurzy i nie naprawi. I obojętnie czy chodzi o płytę DVD/Blueray/czy inną książkę popsutą DRMem czy po prostu zwykły dziwny błąd, prędzej czy później ktoś taki się znajdzie.
Od jakiegoś czasu ginęły komentarze w Google Buzz. Najpierw sporadycznie, później częściej w końcu dość masowo. Potrafiło wyciąć cały wątek, nikt nie wiedział gdzie. Aż w końcu trafiło na jednego co miał słabsze nerwy i sprawdził.
Wczoraj Przemysław Rumik opublikował analizę i Sposób na znikające komentarze w Buzzie.
Jest działa, w pierwszym odruchu próbowałem po prostu bookmarklet przenieść do skryptu Greasemonkey. Kombinowałem z 45 minut i w końcu wkurzyłem się i poszedłem spać.
Przed południem olałem sprawę. W końcu zamiast udawać, że jest się góglem i robi wszystko tak jak oni tam wymyślili wystarczy popsuć góglowe CSSy i po robocie.
Buzz not spam userjs
// ==UserScript==
// @name Buzz Spam links
// @namespace FooBar
// @include https://mail.google.com/mail/*
// ==/UserScript==
( function(){
var CSS = <str><![CDATA[
@namespace url( http://www.w3.org/1999/xhtml );
.zl { display: block !important; } /* wyświetl zbanowany komentarz */
.I0 { display: inline !important; } /* wyświetl guziki techniczne */
]]></str>.toString();
GM_addStyle( CSS );
})();
Efekt:
Napierdzielałem się tu kiedyś z pokręconego sposobu wymiany żarówek w Smarcie, wymagającego zastosowania techniki ginekologicznej. Pośmiałem się, no ale w końcu auto małe (nawet na osiedlowej myjni brali za umycie Smarka pół ceny) jakoś musieli sobie poradzić, więc 100% zrozumienia. Nie wpadli, że można by łatwiej, a może to tylko mi się wydaje, że dałoby się łatwiej. Kto to wie...
Ale wczoraj stało się, strzeliła żarówka w Subaru. Duże auto, podobno bardzo przemyślana i dopracowana konstrukcja. Nic w Foresterze nie jest przypadkowe, bo wszystko jest wynikiem lat doświadczeń i pracy tysięcy najlepszych inżynierów.
W drodze z roboty wpadłem na stację kupić żarówkę, wjechałem do garażu podniosłem maskę i ... o kurde ...
W Foresterze (2007) aby wymienić żarówkę lewego reflektora trzeba ... wyjąć akumulator. Tysiącom inżynierów gratulujemy pomysłu! :D
Tak wiem, czasy mamy takie, że większość tzw. Zwykłych Użytkowników
nie potrafi odróżnić suwmiarki od klucza francuskiego, ale są jeszcze tacy którzy wstydzą się pojechać do ASO w celu wymiany żarówki. Nie ma to tamto, musiało się wydać.
No dobra zrobiło się zbyt ekscytująco (zbyt łatwo wygląda), żeby odkładać w nieskończoność. Choroba została oswojona. Wiadomo już, że specyfiki które mają leczyć DRMozę działają - mmazur sprawdził, ja chcę się tylko przekonać czy działa też via wine - mimo, że wiem, że działa bo ktoś w komentarzu u mmazura się pochwalił.
Niby cały czas mam gdzieś tu na boku qemu, ale na moim starym kompie wirtualny PCet to udręka jest raczej. Przy okazji okazało się, że niewiele trudniej można sobie poradzić z innymi chorobami na jakie cierpią ebooki, instrukcje zebrali w jednym miejscu autorzy serwisu eksiążki.org Systemy DRM – przegląd, skuteczność rozwiązań jak widać, a mówi się, że pieniądze nie leżą na ulicy
, z punktu widzenia właścicieli systemów DRM chyba jednak leżą.
Na początek przygotujemy szpital, nie chodzi przecież o to, żeby nawtykać jakichś śmieci to czyściutkiego profilu wine gdzie zainstalowałem ADE.
$ cp -r ~/.wine-Adobebook/ ~/.wine-ADEcrypt
$ export WINEPREFIX="/home/wariat/.wine-ADEcrypt"
$ wget http://pastie.org/pastes/1030386/download -O ineptkey-5.0.pyw
$ wget http://pastebin.com/download.php?i=kuKMXXsC -O ineptpdf-8.4.42.pyw
$ wget http://www.python.org/ftp/python/2.7/python-2.7.msi
$ wget http://www.voidspace.org.uk/downloads/pycrypto-2.1.0.win32-py2.7.zip
$ unzip pycrypto-2.1.0.win32-py2.7.zip
$ wine msiexec /i python-2.7.msi
$ wine pycrypto-2.1.0.win32-py2.7.exe
Gdyby cokolwiek wymagało wyjaśnienia w co szczerze wątpię. Najpierw skopiowałem profil .wine-Adobebook gdzie zainstalowany jest Adobe Digital Editions jako .wine-ADEcrypt. Później ten nowy ustawiłem jako domyślny (w tym otwartym terminalu oczywiście). Następnie pobrałem z netu wszystko co podobno jest potrzebne, czyli windzianą wersję Pythona 2.7, moduł PyCrypto do niego i sam skrypt pobierający klucz deszyfrujący z ADE, oraz ineptpdf czyli szczepionkę dla plików PDF z linku znalezionego w podlinkowanym wyżej artykule z eksiążki.org.
Ostatnie dwa wiersze to oczywiście instalacja obu wyżej wymienionych paczek z Pythonem. Od tego momentu profil .wine-ADEcrypt to profil .wine-Adobebook wzbogacony o Pythona.
Mam nadzieję, że tym razem zanim ktoś powie, że to skomplikowane (cześć Paweł :-) zauważy, że 90% powyższego da się zrobić tak, że zamiast literek w konsoli potrzebne będą obrazki w co i kiedy kliknąć, albo nawet i nie to ;-).
Kiedy już wszystko jest pobrane trzeba włączyć jeden skrypt.
$ wine ~/.wine-ADEcrypt/dosdevices/c\:/Python27/python.exe ineptkey-5.0.pyw
A później drugi skrypt
$ wine ~/.wine-ADEcrypt/dosdevices/c\:/Python27/python.exe ineptpdf-8.4.42.pyw
Tam wskazujemy chorego i miejsce gdzie ma się znaleźć zdrowa kopia pacjenta klikamy Decrypt
i ...
$ evince Zdrowa\ Gorzka\ czekolada.pdf
... już.
Strasznie jestem ciekaw ile kosztuje obsługa DRM (patrząc od strony wydawcy) czyli o ile tańsze mogłyby być książki przyjazne dla użytkowników lub o ile więcej można by zapłacić ich autorom.
Bo przecież nawet jeśli przyjąć - co nie jest prawdą moim zdaniem - że wielu tzw. ZU by nie potrafiło, to pewnie za chwilę ktoś wyciągnie ku nim rękę i zmontuje klikalną wersję wszystkiego (o ile już nie zmontował). A jeśli jeszcze zauważyć, że przecież są ludzie którzy - z nieznanych mi pobudek - ciężko pracują skanując papierowe książki aby je wrzucić na jakieś torrenty to ... cóż, spodziewałem się, że procedura jest wykonalna przy odrobinie zacięcia, przez myśl mi nie przeszło, że sprowadza się do bezmyślnego klikania w instalatory i skrypty (pod Windows™ chyba nie używa się wine ;-)
Przechodzę chyba szybciej do punktu drugiego i wybieram czytnik dla siebie. Książki z DRM da się obsłużyć bez windowsów! :-)
Od jakiegoś czasu - bardzo powoli zaczynam się zastanawiać nad zakupem e-book readera. Bardzo powoli bo na razie wciąż nie bardzo jest co na takiej zabawce czytać, a można założyć, że im później kupi się urządzenie tym będzie ono tańsze i/lub lepsze niż to co w danym momencie dostępne jest na rynku. No ale reader jest po to, żeby czytać, a to że dostępne jest niewiele to nie znaczy, że nic.
Pomyślałem, że trzeba zobaczyć co z zakażonym DRM ebookiem da się zrobić nie posiadając windowsa. Potrzebny był mi też plik testowy do readera jak już w końcu pójdę go oglądać w sklepie. I tak doszło do tego, że trochę na chybił trafił wybrałem i kupiłem książkę na (w ?) virtualo. Wersja PDF zakażona DRMosis Adobensis.
Sklep już kiedy kupowałem (ale zanim zapłaciłem) lojalnie poinformował mnie, że jeśli chodzi o czytanie tego co mam zamiar kupić to mogę sobie te moje linuksy wsadzić, pozwoliłem sobie tę przemiłą sugestię zignorować - ale miło, że ostrzegają!
Po zakupie książka trafiła w serwisie do działu Moja Biblioteka
gdzie znalazłem link do pobrania pliku. No to pobrałem...
wariat@coyote ~/Desktop/ebook $ ls -l Gorzka*
-rw-r--r-- 1 wariat wariat 1826 10-21 22:46 Gorzka czekolada.acsm

Jak na książkę to trochę mało to to waży... w środku trochę śmieci które pozwoliłem sobie zamazać na obrazku bo to w końcu moja książka (w sensie egzemplarz) i nikt bez mojej zgody mi jej na makulaturę wynosił nie będzie! :D
Jest tam groźnie wyglądający tag <expiration /> I coś co wygląda jak bezpośredni link do zakażonego PDF'a no to ... pobieramy oczywiście bez żadnej nadziei na sukces :D
wariat@coyote ~/Desktop/ebook $ wget http://adobe.virtualo.pl/media/cf BLA BLA BLA 207.pdf -O Gorzka\ czekolada.pdf
--2010-10-21 23:06:07-- http://adobe.virtualo.pl/media/cf BLA BLA BLA 207.pdf
Translacja adobe.virtualo.pl... 94.23.225.21
Łączenie się z adobe.virtualo.pl|94.23.225.21|:80... połączono.
Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK
Długość: 1896677 (1,8M) [application/pdf]
Zapis do: `Gorzka czekolada.pdf'
100%[===================================================================================================>] 1.896.677 115K/s w 16s
2010-10-21 23:06:23 (116 KB/s) - zapisano `Gorzka czekolada.pdf' [1896677/1896677]
Chorego PDFa tak po prostu otworzyć się nie da (no przecież ostrzegali). Ale nie mogłem nie spróbować.
Na początek chodzi o samo otwarcie ebooka na komputerze. Wymagany jest do tego niejaki Adobe Digital Editions którego oczywiście w wersji na Linuksa nie ma (a wersja dla windy dostępna jest do pobrania po kliknięciu installation Technote), Wersji na lin nie ma ale jest wine.
$ export WINEPREFIX="/home/wariat/.wine-Adobebook"
$ winecfg
$ wine AdobeDigitalEditions-1.7.2.exe
Dalej, dalej instalatorze gadgeta. Program się za chwilę uruchomi informując, że teraz trzeba się zarejestrować w niejakim Adobe ID. Pojęcia nie mam czy trzeba podać ten sam email co w sklepie, czy można dowolny ale ponieważ wokół czai się całe zUo wielkich korporacji na wszelki wypadek podałem ten sam (prawie fake) adres. Dalej bez pudła. Przeciągnięcie na ADE pliku Gorzka czekolada.acsm z virtualo pozwoliło pobrać książkę i można czytać
I wydawałoby się, że to nadal nic, ale jeśli dobrze rozumiem mogę teraz ten pobrany przez ADE plik PDF ("~/My Digital Editions/Gorzka czekolada.pdf") podłożyć do Calibre i co prawda tam go nie przeczytam, ale będę mógł przesłać go na urządzenie (ebook reader) i wszystko będzie działało. (Calibre FAQ: How do I use purchased epub books). Tu pozostaje problem, czy ADE jarnięty pod wine pozwoli na uznanie
czytnika ale jest nadzieja, a Nadzieja prababką hackera więc szansa istnieje.
No dobrze, ale co gdybyśmy chcieli plik z DRMosis Adobensis wyleczyć? Jedno co wiemy na pewno o systemach DRM to, że są nieskuteczne w co najmniej takim samym stopniu jak upierdliwe. Można nawet zaryzykować stwierdzenie, że im większa upierdliwość tym mniejsza skuteczność (bo większe ciśnienie, żeby się draństwa pozbyć) ale to zupełnie inna bajka.
Chcemy więc leczyć, a żeby wyleczyć trzeba mieć lekarstwo. Czasy mamy takie, że jak człowiek czegoś nie wie to sprawdza w wikipedii, a tam w sekcji References artykułu o ADE wiele obiecujący link: Circumventing Adobe ADEPT DRM for EPUB. No to chyba jesteśmy w domu. Co prawda PDF to nie EPUB ale jak jest lekarstwo na jedno to pewnie obok zaraz jest i na drugie.
I tu miał być ciąg dalszy eksperymentów, odkładany i odkładany aż do wczoraj kiedy ukazał się artykuł mmazura mmazur: Kindle i obchodzenie zabezpieczeń Babci Jagódki już praktycznie wiem, że się da, a skoro ciśnienie do eksperymentów miałem słabe - i klikałem powyższe z pięć tygodni (z czego tak naprawdę godzinę) to dokończę pewnie tylko dla własnej pamięci - później :D.
Generalnie samo leczenie jak widać u mmazura jakichś poważnych czarów nie wymaga, pewnie za chwilę pojawi się też automat który poprosi tylko o podanie nazwy pliku wynikowego i go zapisze - a przy odrobinie szczęscia ów automat też da się jarnąć pod wine. Na ten moment tak czy siak, zaklęcia są gotowe wystarczy odpalić po kolei:
Czy warto w ogóle zabierać się za leczenie plików? Uważam, że tak. Po pierwsze plik wyleczony jest łatwiejszy w obsłudze, bo po prostu działa. No i nie ma ryzyka, że nasza cyfrowa biblioteczka zostanie zniknięta
jak któregoś dnia księgarnia, czy sam Adobe uzna, że zwija biznes razem z zakupionymi przez użyszkodników książkami. Bo jak mówiłem nikt mi moich książek bez mojej wiedzy na makulaturę wynosił nie będzie!
Warto też pamiętać o przywróceniu standardowych możliwości dokumentu elektronicznego jak na przykład copy/paste fragmentów. Nie żeby codzień wszyscy pisali recenzje książek, ale nie po to wymyślono ebooki, żeby się nie dało.
Człowiek jak się nudzi to mu różne pomysły do głowy przychodzą. No i trafiło tak, że jeden wariat wpadł na pomysł, że trzeba zobaczyć czy to na prawdę takie trudne wypluć napis na STDOUT w niejakim Brainfucku. Po pierwsze trzeba wiedzieć jak to to działa, spojrzenie do Wikipedia: Brainfuck i wychodzi, że banał. Z odpalaniem też nie ma problemu, bo od czego serwisy jak Ideone.
I już było się czym bawić różnej maści „hello worldami”, wszystkie działały (pierwsze wrażenie nie było mylne, banał jak nic, każdy kto próbował sam wie) ale sam kod się zmieniał z pierwotnego który był gigantyczny do ostatecznego, gdzie odkryto na nowo koł^W pętlę.
No tak tylko to zabawa na 45 minut, a później już nie bardzo jest po co, bo co najwyżej można zmieniać mechanicznie tekst do wyświetlenia, a to już nudne. W kolejnej iteracji...
wariat wymyślił, że skoro to takie proste aka mechaniczne, to zamiast wracać do nudy (a RSSy w czytniku się nie zdążyły napełnić) trzeba sobie wyperlować skrypt który na wejściu dostanie coś we wspólnym, a na wyjściu zapoda w wersji cudacznej. Taki skrypt ma tę zaletę, że może zająć dowolnie dużo czasu, bo zawsze coś można poprawić, albo w tym jak działa, albo w tym co wywala, żeby ładniej wyglądało. I tak dzień (nudna część dnia) upłynął. Na koniec trzeba było, jakoś to genialne dzieło nazwać, bo b-2.pl to nazwa fajna, ale mało mówiąca, tuż przed zamknięciem komputera wydano zatem komendę:
$ mv b-1.pl Brainf\*\*k-1.pl
$ mv b-2.pl Brainf\*\*k-2.pl
I do domu, do hackera. Ten po jakimś czasie poszedł spać, a my dochodzimy do finału bo oto...
O ile ponowne otwarcie skryptu w gedit w celu dokonania ostatecznych poprawek nie stanowiło problemu, o tyle próba uruchomienia paskudy zwijała terminal. Ten zdychał kiedy proszono go o autouzupełnienie nazwy skryptu z gwiazdką w nazwie. Już chciałem otwierać buga na GNOME bugzilla ale dla pewności jeszcze pingnąłem smoka, bo on ma zawsze najnowsze wersje wszystkiego więc jest dobrym testem na bugi wykryte ale nie wiadomo czy już nie poprawione. Dzięki temu genialnemu w swej prostocie posunięciu okazało się, że bug i owszem jest, ale nie w gnome-terminal, a w bashu, który zwija się z SIGSEGV w opisanym powyżej przypadku. Kto nie wierzy sam może sprawdzić:
cartoon@ratajczaka /tmp $ bash
cartoon@ratajczaka /tmp $ PS1="(new) ${PS1}"
(new) cartoon@ratajczaka /tmp $ touch test\*1
(new) cartoon@ratajczaka /tmp $ touch test\*2
(new) cartoon@ratajczaka /tmp $ chmod +x test*
(new) cartoon@ratajczaka /tmp $ ls test*
test*1 test*2
(new) cartoon@ratajczaka /tmp $ ./test\*Segmentation fault
cartoon@ratajczaka /tmp $
Bug więc poszedł, ale w kierunku bash-bug ML. Poszedł o 22:17: bash killed by filecompletion feature if filename(s) contain '*' character, jednocześnie Smoku założył błąd w bubuntowym Launchapadzie. Na poprawkę długo nie trzeba było czekać. Prymitywny patch leczący kłopota pojawił się na liście dyskusyjnej 10 minut wcześniej bo o 22:07: Re: bash killed by filecompletion... (PATCH) (no dobra 6 stref czasowych dalej to było :D). Patch prymitywny ale działa.
A jaki jest morał z tej historii? Nie ma morału, ale są dwa wnioski:
Od przed świętami tak się jakoś porobiło (nieafjnei się porobiło, ale to nie na temat), że mieszkamy kątem u mojej mamy. No i na miejscu jest mój prat który jest japkowy do przesady. iTelefon iKomputer iDysk zewnętrzny iHuk wie co jeszcze. Przyjechałem oczywiście z moim laptokiem, ale nie wziąłem klawiatury tylko wytargałem od młodego iKlawiaturę.
Mały powątpiewał nie wiedzieć czemu, ale nic nie mówił, ja nie powątpiewałem bo w końcu klawiatura pod USB to klawiatura pod USB, podpiąłem i oczywiście działa jak powinno, choć Alt wsadzili tak samo debilnie jak Toshiba w moim laptoku. Gupi pomysł ojjjj gupi! :D
Ale jest śmiesznie. Wczoraj wieczorem młody kliknął był na „Play/Pause” i raczył wyrazić zdziwienie, że zatrzymało totema (kliknął pewnie, żeby wyszydzić ale zręcznie ukrył ;-). Sprawdził później cuda od „głośniej/ciszej i jaśniej/ciemniej”, jak łatwo się domyślić też działało bo czemu by nie.
Ale na prawdę śmiesznie zrobiło się dziś. Mój stary lapcio nie ma sinozębego, więc żeby podpiąć myszkę wtykam hińskeigo BT dongla w USB. A że w tej iKlawiaturze jest wbudowany hub USB. to wetknąłem go tym razem w nią właśnie. Przechodzi mały i ...
- Tej działa Ci w tej klawiaturze USB?„U mnie” oznacza na iKomputer Pro za tysiąc pięćset sto dziewięćset, z najnowocześniejszym iDzikim kotem, więc pozwoliłem sobie byłem prychnąć lekko, bo szczerze mówiąc zostałem zaskoczony.
- A czemu by miało nie działać?
- A nie wiem, bo u mnie nie działa
Anyway, klawiatura całkiem git choć na pierwszy look nie wygląda. Jedno o czym zapomnieli to insert którego nie ma wcale, bo pewnie już prawie nikt nie używa, ja też zwykle nie ale są sytuacje kiedy mi gościa brakuje. Choć tu na uchodźstwie spokojnie przetrwam i bez inserta.
Jest jeden powód dla którego dostarczanie wiadomości na maila na serwerze gógla, jeśli rozmówca mówił coś kiedy nas już nie było offline jest do pupy. Albo może raczej jeden na prawdę poważny powód ... wygląda tak:
These messages were sent while you were offline.MSPANC!
16:55 Kantor: [To jest część zaszyfrowanej wiadomości. Jeżeli widzisz tą wiadomość, oznacza to, że coś poszło źle.] ([This is part of an encrypted session. If you see this message, something went wrong.])
Tego jeszcze w kinach nie grali. Jest sobie pędrak, a na nim dwie partycje:
# fdisk -l /dev/sda
Disk /dev/sda: 2063 MB, 2063597056 bytes
255 heads, 63 sectors/track, 250 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00042b5b
Device Boot Start End Blocks Id System
/dev/sda1 * 1 32 257008+ 14 Hidden FAT16 <32M
/dev/sda2 33 250 1751085 b W95 FAT32
Pierwsza to bootowalna partycja z gentoo minimal CD, druga wykorzystywana normalnie. Na obu FAT, na pierwszej bo tak wyszło, na drugiej, bo istnieje ryzyko, że trzeba będzie wetknąć pędraka w jakieś windziane komputery.
Ma sens na razie? No to tak chodzę z tym pędrakiem w takiej konfiguracji już jakieś 3 miesiące, aż tu nagle przyszła potzreba wetknąć go właśnie w taki windziany komputer. I aż mi oczy na wierzch wylazły gdy się okazało, że windows (XP) zamontował tylko pierwszą partycję.
Śmieszniejsze, że jakiś volume manager (chyba volume manager - nie pamiętam co tam było napisane, ale rclick na My Computer -> Manage -> i tam takie coś gdzie widać partycje) pokazuje, ze partycja owszem jest i nawet jest „fine” i można ją sformatować, to będzie pusta wtedy :D.
Opcja „mount to NTFS folder” (czy jakoś tak), mówi, że mam spadać, opcja „assign drive letter” (...) każe zrestartować komputer, co nie ma wpływu na nic, bo później dalej niedziała.
I tu pytanie do mojego drogiego Lazy Web: Jak do cholery zrobić pędraka z dwoma partycjami, żeby dzialał jak ma w tych windowsach, gdzie podobno wszystko działa tak po prostu?
Czy może jedyny sposób to dać jako /dev/sda1 partycję która ma być pędrakiem, a jako /dev/sda2 tę bootowalną i zakładać, że windows tak jak teraz zamontuje po wetknięciu pędraka pierwszą partycję.
Trzeba było podpiąć internat do firmy i akurat tak wyszło, że nasza ukochana (no a jak :D) telek.*acja dodawała do umowy coś co śmieli nazwać „nawigacją GPS”. Wiele sobie po tej zabawce nie obiecywałem, ale lepsza kiepska nawigacja, niż drukarka kompletnie do niczego right?
Jakiś czas temu przyszła, ale nie miałem czasu odwiedzić biura, a później wakacje i dorwałem się do Larka dopiero dziś. Pierwsze wrażenie nawet pozytywne - tak pewnie dlatego, że spodziewałem się kompletnego szmelcu - co prawda ekran malutki, mapa taka sobie i w standardzie tylko .pl ale nie jest źle.
Dłuższy czas kombinowałem jak podłączyć toto do komputera więc ku pamięci:
1. Jajko:
Device Drivers --->
[*] USB support --->
<M> USB Serial Converter support --->
<M> USB PocketPC PDA Driver
[*] Network device support --->
<M> PPP (point-to-point protocol) support
<M> PPP support for async serial ports
2. SynCE
# echo "app-pda/synce serial" >> /etc/portage/package.use
# emerge -avD synce
3. I generalnie już, podłączyć, pozwolić działać HALowi i jeśli w obszarze powiadamiania nie pojawi się ikonka synce-trayicon trzeba ją jarnąć Programy/Akcesoria/SynCE.
Połączenie jest kiepskie i nie widać wszystkiego (bo chyba windows CE nie ma tak, że ma pierdyliard katalogów i wszystkie puste), ale działa.
Nie spełniony co prawda zostaje plan wykonania tą drogą pełnego backupu urządzenia na wypadek jakiejś awarii, ale cóż nie można mieć wszystkiego.
Teraz czekam, aż przyjdzie zamówiona na Alledrogo karta SD (pewnie okaże się niedobra, bo już po zamówieniu doczytałem, że SD != SDHC) i przyjdzie czas na eksperymenty z Navit. Przez skórę czuję, że nie będzie łatwo, ale zobaczymy. Przydałby się też jakiś daemon zapisujący trackloga, nieśmiało liczę, że coś samo wpadnie mi w ręce.
Jeszcze tytułem uzupełnienia. Recenzję zabawki wraz z garścią linków dotyczących Lark 35.6 można przeczytać tutaj: blog.0x1fff.com:LARK 35.6 subiektywne porady i recenzja.
Trudno o protokole LogIt powiedzieć, że jest popularny. Używany jest w kilku GPS loggerach (z których pierwszym był szwajcarski LogIt), czy jakiś czas temu ulubiony odbiornik zawodników GPS: MLR SP24XC. Kto i kiedy wymyślił protokół nie mam pojęcia. Ale obstawiam Szwajcara który zaprojektował LogIt'a i zastanawiam się co on wtedy pił.
Pamiętam jak sam namawiałem Muzzyego aby w MuzzyLoggeRrze wykorzystał istniejący protokół bo będzie łatwiej. Dziś tego żałuję... przyjżałem się protokołowi z bliska.
O co chodzi? Chodzi o to, że nie można było tego bardziej spieprzyć. Mówimy o małym urządzeniu z procesorkiem, które odbiera z GPS dane, zapisuje tracklog w swojej pamięci której jest duuużo i później pozwala go odczytać za pomocą komputera. To trywialne jak się wydaje zadanie LogIt skomplikował do niemożliwości.
Zacznijmy od sumy kontrolnej. Dane NMEA z GPS zawierają sumę kontrolną (1 bajt obliczany jako xor wszystkich znaków w wierszu pomiędzy znakami $ i *), GPS logger musi (powinien) umieć ją obliczać aby sprawdzić czy odebrane dane nie są uszkodzone. Potrafi obliczyć, żeby sprawdzić ale ... nie nie warto wykorzystać tej samej funkcji ponownie. Protokół LogIt przewiduje dodatkowo:
Pobieramy dane z loggera. Logger rozmawia do nas stringami różnej długości, transmisję pakietu danych kończy windzianym końcem linii [CR] [LF]. Kłopot polega na tym, że dane przesyłane w paczce są danymi binarnymi nic więc nie gwarantuje, że po drodze nie pojawi się wspomniany koniec linii, nie będący końcem linii.
Ba mamy nawet gwarancję, że się pojawi jeśli loga będzie więcej niż trochę bo już na samym początku paczki mamy jej numer, dwa bajty czyli jeśli nie gdzie indziej na bank wywali się na paczce przesyłającej trackpoint numer 3338.
Ale zaraz, żeby zacząć pobierać dane trzeba przekazać loggerowi komendę rozpoczęcia transmisji - logiczne. Transmisja może odbywać się z prędkościami: 4800, 19200, 38400, 57600 i 115200 bps. Przy czym do loggera rozmawiamy zawsze z prędkością 4800bps. Transmisja może wyglądać tak:
Pomijam już kłopoty po zapisaniu danych w innej ćwiartce świata. Dane zapisane w Australii wymagają zmiany algorytmu, dane zapisane na granicy S/N czy E/W prawdopodobnie są nie do odczytania, bo wymagają na raz dwóch algorytmów.
Nie wiem, nie znam się na elektronice, ale wydawało mi się, że jeśli mamy malutkie urządzenie z malutką pamięcią na program to powinno się przynajmniej algorytm wymyślić optymalny. Czyli np. użyć jednej znanej sumy kontrolnej do potwierdzenia prawidłowej transmisji we wszystkich kierunkach.
Być może mam też dziwne wyobrażenie o sprzęcie, ale mój pierwszy modem gdzieś pod koniec lat 80tych dopowiadał komputerowi z dokładnie taką samą prędkością z jaką rozmawiał do niego ów komputer. Wtedy się dawało a teraz nie?
Pewnie okażę się nudziarzem kiedy zauważę, że po to ktoś kiedyś wprowadził kontrolę transmisji za pomocą sygnałów RTS/CTS żeby można było wygodnie odczytywać dowolnie duże paczki danych z dowolnie wysoką prędkością i nie martwić się, że się na coś nie zdąży.
Czy to naprawdę takie trudne zadanie zmontować kawałek elektroniki który działałby jak wyżej? Czy to aż taki problem oprogramować go tak aby transmisja miała "ręce i nogi"? Wierzyć mi się nie chce...
No to się wyżaliłem... Wracam do pobierania tracków z MuzzyLoggeRa ... trzeba zaktualizować OpenStreetMap ;-).
W Smarku strzeliła żarówka w przednim reflektorze. Zdarza się najlepszym żarówkom, a że Mamusia siedzi w domu z Hackerem to Tatuś korzysta i parkuje przed pracą w miejscach gdzie teoretycznie zaparkować się nie da.
W drodze z pracy kupiłem H4, jeszcze na stacji obejrzałem okolice przedniego reflektora ... nie na to musi być jakiś knyf
pomyślałem i pojechałem do domu.
Gdzie jest instrukcja od autka? No jest. Wersja europejska (mało obrazków), lokalizacja: FR-fr ... nic nie kumam, ale przynajmniej żarówkę kupiłem na pewno dobrą. Do auta, i znów oglądam, i tak i siak, sięgam. No da się, ale przecież nikt nie wymyśliłby, że to tak... Zapytajmy Gógla.
Heh ... to jednak tak, przez otworek wielkości ręki i na ślepo. O tak: Changing the headlight bulbs. Udało się, no bo jak się miało nie udać, ale kto to kurde wymyślił?! :D Swoją drogą życzę powodzenia jeśli nie wymieniało się żarówek samochodowych wcześniej w normalnych (bardziej komfortowych) warunkach i nie do końca wie się jak zapiąć zamki na żarówce H4.
No to się wyżaliłem :D
Obiecywałeś wariat, że będziesz robił backupy i co? I co @#$%^ się pytam?!
W zeszły czwartek zdarzyły się trzy rzeczy. Pozbyłem się iShit'a, zamówiłem sobie nowe szkło do aparatu: Canon EF 24-70mm f/2.8L USM i padł mi dysk w Coyote.
Zaczęło się nagle, komputer się zawiesił. Niektórzy powiedzą zdarza się
, ale ja nie jestem przekonany. Faktem jest, że wisiało. Nie działała nawet ikonka od killowania
. Wariat przypomniał sobie stare czasy, nacisnął i przytrzymał przycisk power
. Po chwili ekran zgasł, a po ponownym uruchomieniu i załadowaniu kernela ekran zaśmieciło coś co ewidentnie wskazywało na kłopot z dyskiem i wyglądało mniej więcej tak:
ide: failed opcode was: unknown
hda: task_out_intr: status=0x51 {DriveReady SeekComplete Error}
hda: task_out_intr: error=0x10 {SectorIdNotFound} LBAsect=28306658, high=1, low=11529442, sector=28306658
Pierwszą reakcją była oczywiście panika. AAAaaaa moje pliki. Zdjęcia młodego, Nelka mnie zabije! Najnowszy CartoonManager - o ja pierdzielę. Najgorsze było to, że zamknięty w pracy nie mogłem próbować niczego i jedyne co mogłem to właśnie zastanawiać się co straciłem. Pewne było to, że dysk jest dead, trzeba kupić nowy. Po powrocie do domu pobrałem Gentoo Minimal CD, odpaliłem Coyote'a i ... powiedziało, że chce montować /dev/hdaN i wisi. Fajne kurka liveCD :D.
Na drugi ogień poszło SystemRescueCd. Tu odpalanie nie nastręczyło problemów, jako bonus X'y z Window Makerem i desktopem przywołującym wspomnienia systemu ATARI i wczesnych lat dziewięćdziesiątych ubiegłego stulecia. No ale działa, więc nie marudzimy.
Próba zamontowania partycji:
root@sysresccd /root % mount /dev/sda4 /mnt/dysk
mount: wrong fs type, bad option, bad superblock on /dev/sda4,
missing codepage or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
No to sprawdźmy:
root@sysresccd /root % reiserfsck /dev/sda4
(...)
Trans replayed: mountid 930, transid 2069652, desc 6111, len 1, commit 6113, next trans offset 6096
Reiserfs journal '/dev/sda4' in blocks [18..8211]: 471 transactions replayed
Checking internal tree..finished
Comparing bitmaps..finished
Checking Semantic tree:
finished
No corruptions found
There are on the filesystem:
Leaves 127300
Internal nodes 871
Directories 47170
Other files 479462
Data block pointers 11509351 (82 of them are zero)
Safe links 0
###########
reiserfsck finished at Sat Jan 26 15:16:35 2008
###########
Fajnie, wszystko ok, tylko nie działa. Znaczy co? Znaczy badsektory. Wsadziłem nowy dysk w pożyczoną od Nelki obudowę USB o zastraszającym nominalnym transferze danych 480kbps, odpaliłem kopiowanie i poszedłem w długą. Zakończyło się tak:
root@sysresccd /root % ddrescue -r 10 -v -d /dev/sda4 /dev/sdb4 root_backupLog
About to copy 65530 MBytes from /dev/sda4 to /dev/sdb4
Starting positions: infile = 0 B, outfile = 0 B
Copy block size: 128 hard blocks
Hard block size: 512 bytes
Max_retries: 10
Direct: yes Sparse: no Split: yes Truncate: no
Press Ctrl-C to interrupt
Initial status (read from logfile)
rescued: 0 B, errsize: 0 B, errors: 0
Current status
rescued: 65530 MB, errsize: 512 B, current rate: 0 B/s
ipos: 3265 MB, errors: 1, average rate: 3108 kB/s
opos: 3265 MB
Finished
% cat root_backupLog
# Rescue Logfile. Created by GNU ddrescue version 1.6
# current_pos current_status
0xC2A97E00 +
# pos size status
0x00000000 0xC2A97E00 +
0xC2A97E00 0x00000200 -
0xC2A98000 0xE7F473E00 +
Jakie wnioski? Zdechł JEDEN sektor. A właściwie jeden znaczący sektor, trafiło tak, że unieruchomiło cały system plików. I tu pojawia się pytanie czy reiserFS aka killerFS ;-) się na prawdę nadaje do użytku skoro generalnie z badsektorami radzi sobie świetnie (ogółem na patycji badblocks wykrył 62 popsute sektory), ale jedno pechowe trafienie znika partycję
bez żadnego ostrzeżenia.
Ktoś może powiedzieć, że powinienem od razu odpalić reiserfsck --rebuild-tree, --rebuild-sb. Jasne ale ... jaką miałbym gwarancję, że po tej operacji nie znajdę wszystkiego w /lost+found
? No a tego chciałem uniknąć.
Skopiowana partycja montowała się poprawnie, zostało więc tylko podpięcie dysku do Mickeya, gdzie znalazłem 50GB miejsca, przekopiowanie plików do archiwów tar.bz2, i po założeniu docelowych partycji na nowym dysku operacja odwrotna. Napisać łatwo, ale razem z lagami pomiędzy pakowaniem jednego a drugiego katalogu (no przecież nie siedziałem tam 24/24 gapiąc się czy już) trwało to jakieś 2,5 dnia :D.
W tej chwili Coyote śmiga już z nowego hardziela, system działa jak działał (łącznie ze świrującym audio którym nie mam czasu się zająć), pliki (prywatne i systemowe) są tam gdzie je zostawiłem, ale co schudłem i posiwiałem to moje. Partycje nadal reiserFS, choć poważnie zastanawiam się nad przejściem na ext3. Pytanie tylko czy w podobnej sytuacji (ultra pechowe trafienie badblockiem) nie da identycznych efektów?
FireBug to narzędzie którego przedstawiać nie trzeba. Wszyscy wiedzą, że przydaje się często. Większość też ma świadomość, że ma ono wpływ na wydajność Firefoksa więc jak nie potrzebne to lepiej wyłączyć. No a jak się włączy to czasami zapomina wyłączyć, bo przecież nie chodzi o to, żeby głupi extension przejął władzę nad użyszkodnikiem ;-).
Takoż włączony i przez zapomnienie nie wyłączony FireBug był świadkiem kiedy wariat otworzył swoją pocztę i zobaczył to:
i zaczął się (wariat) zastanawiać, czy skoro oni wiedzą, że mam uruchomiony FB to czy wiedzą też jakie inne rozszerzenia mam włączone i skąd wiedzą?! Hej czy naprawdę istnieje sposób na wykrycie adBlocka? Bo dotychczas wystarczyło dodać do adBlocka regułkę filtrującą skrypt sprawdzający obecność adBlocka...Google patrzy i notuje, ale na poważnie zastanawiam się skąd oni wiedzą i z tym pytaniem zwracam się do Ciebie drogi LazyWeb ;-)
Kiedy wczoraj kładłem się spać pobierały się glibce, dziś - nie powiem - trochę się zdziwiłem kiedy zobaczyłem sieczkę w stylu:
wariat@coyote ~/Media/Audio $ ls -l
razem 5
drwxr-xr-x 3 wariat wariat 72 V 2 20:44 Ayo
drwxr-xr-x 4 wariat users 120 X 27 2005 Happysad
drwxr-xr-x 3 wariat wariat 72 IV 29 22:47 Hedningarna
drwxr-xr-x 4 wariat users 112 XII 24 2006 Jacek Kaczmarski
drwxr-xr-x 47 wariat wariat 4864 X 11 16:52 jamendo.com
drwxr-xr-x 4 wariat wariat 112 IV 25 20:56 Loituma
drwxr-xr-x 2 wariat wariat 576 X 10 10:56 Radiohead - In Rainbows
drwxr-xr-x 3 wariat users 96 II 5 2007 Raz Dwa Trzy
drwxr-xr-x 8 wariat wariat 384 IV 26 22:21 The Wedding Present
drwxr-xr-x 3 wariat wariat 72 III 2 2007 T.Love
drwxr-xr-x 3 wariat users 88 I 24 2007 Tri Yann
drwxr-xr-x 4 wariat users 104 X 11 2006 Zespol_Reprezentacyjny
Nie no, nie mam nic przeciw liczbom rzymskim, ba nawet sexy to wygląda, tylko na Bogów trzeba było zastanowić się gdzie to będzie stosowane i dlaczego wcześniej skróty nazw miesięcy miały zawsze 3 znaki.
Różne rzeczy już widziałem, ale ...
coyote ~ # screen -r
Suddenly the Dungeon collapses!! - You die...
jego kurka szczęście, że w środku kompilował ekiga, a nie jakieś glibce na przykład ;-)
Koleżance mamy popsuł się internet
, cóż było robić, trzeba pojechać. Na początek wywiad:
Nic, takiego się nie działo, wszystko było ok i nagle internetu nie ma. A w innych komputerach jest ok.
Od dłuższego czasu nie mam kontaktów z windowsami, ale bez przesady, damy radę. Włączam pacjenta, loguje się, sieć jest ale nie działa. IP ustawione na stałe, DNSy i cuda ok, wszystko tak jak na stojącym obok innym laptopie (córki), tylko tam funguje jak trzeba. WTF?! Efekt jest taki jak gdyby router filtrował MAC adres kompa. Sprawdźmy - admin/admin :D - ale nie filtry i cuda wyłączone. Podłączam gościa bezpośrednio kablem do routera i ... działa jak złoto, odłączam, łączy się, łączy i ... jak się połączy to i tak nie działa.
Kosmos jakiś, musiałem się poddać, bo trzeba było wracać do domu podtopić młodego, ale spokoju mi to chyba nie da. Ok to się wyżaliłem, idę googlać :D
Mówią nigdy nie wierz statystyce, której sam nie sfałszowałeś ... i mają rację. :D Zrobił wariat sync'a morda się drze bo spać się chce, no ale dużo tego nie ma to może... przynajmniej miałem czas opróżnić Google Readera z szeroko rozumianej zawartości. Alllle ossso chozi? A o to:
coyote ~ # emerge -pvuD world | genlop -pt
(...)
Estimated update time: 7 minutes.
coyote ~ # time emerge -vuD world
>>> No outdated packages were found on your system.
* GNU info directory index is up-to-date.
(blah, blah, śmieciu, śmieciu, blah, blah, blah)
real 20m45.232s
user 5m16.068s
sys 1m41.102s
Powiem szczerze, nie kumam o co mu biega, bo skoro nie chce mieć starych paczek:
coyote ~ # emerge -a --depclean
>>> These are the packages that would be unmerged:
virtual/jdk
selected: 1.5.0
protected: none
omitted: 1.6.0
dev-java/sun-jre-bin
selected: 1.6.0.02
protected: none
omitted: none
virtual/jre
selected: 1.5.0
protected: none
omitted: 1.6.0
dev-java/sun-jdk
selected: 1.5.0.12
protected: none
omitted: 1.6.0-r2
>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.
Would you like to unmerge these packages? [Yes/No]
To po kiego grzyba zaraz po tym jak je wywali chce je wciągać spowrotem?
# emerge -avuND world
These are the packages that would be merged, in order:
Calculating world dependencies... done!
[ebuild NS ] dev-java/sun-jdk-1.5.0.12 USE="X alsa nsplugin -doc -examples -jce" 0 kB
[ebuild NS ] virtual/jdk-1.5.0 0 kB
[ebuild NS ] virtual/jre-1.5.0 0 kB
[ebuild N ] dev-java/sun-jre-bin-1.6.0.02 USE="X alsa nsplugin" 0 kB
Total: 4 packages (1 new, 3 in new slots), Size of downloads: 0 kB
Would you like to merge these packages? [Yes/No]
Ja tam się nigdy z Java za bardzo nie lubiłem, czyżby rzeczona Java się pokapowała i mnie też teraz nie lubi? :D
W związku ze zbliżającym się dużym wydarzeniem przyspieszyliśmy ostro z remontem mieszkania, czego skutkiem jest to, że mieszkamy już u siebie i ... jesteśmy offline. No prawie bo po kilku godzinach nierównej walki działa połączenie po GPRS via Bluetooth. Oczywiście jak to u mnie nie działa tak jak bym chciał i jak mogłoby działać, ale o tym innym razem.
Tak czy siak trzeba się do sieci podłączyć i tu zaczynają się schody, dylematy i co tylko.
Do wyboru jest właściwie telekomuna i ... telekomuna, łącze od Netii via kabel od telekomuny niby też jest rozwiązaniem ale jakoś boję się, że gdyby coś to jedni będą zwalać na drugich, a ja będę offline. W pierwszym odruchu myślałem tylko o DSL bo stałe IP wygodna sprawa, tylko ... 250kbps za 96zł/miesiąc, 500kbps za 108zł/miesiąc. Drogo i na dodatek powoli. Długo przy tej opcji obstawałem, ale ostatecznie uległem sile argumentów i zdecydowałem się na neostradę, 1Mbps w neo za 56zł na miesiąc jest do wytrzymania. I już byłem zadowolony z dokonanego wyboru kiedy pojawił się naprawdę trudny do przeskoczenia problem. Modem... jaki modem wybrać, bo mają pięć Innymi słowy... I need help folks!. Dostępne są następujące możliwości:
Kolejny problem (już jak będzie sieć) z którym przyjdzie mi się zmierzyć do DynDNS, i tu będę szukał podpowiedzi co do tego gdzie u kogo załatwić. Chodzi mi o przekierowanie mojej własnej domeny, nie aliasa do domeny usługodawcy, tak żeby działało https?|s?ftp|pop3|smtp|imap|ssh|xmpp ... a najlepiej, żeby wszystko działało ;-). I pewnie następne dylematy w przyszłości. Ale na ten teraz jest pytanie. Czy wybór modemu ma jakieś znaczenie i jeśli tak to który.
Cztery dni (jasne, że nie całe :D) trwała wojenka wariat vs Windows on qemu. Efekty wciąż takie jak na początku, czyli wszystko niby działa, ale nie do końca i to wystarczy, Windows się instaluje, ale nie zakłada konta użytkownika, przez co nie można się zalogować. Próba zalogowania się w trybie awaryjnym na konto Administrator z pustym hasłem daje rezultat w postaci "krytyczny wyjątek, explorer.exe czy wysłać informację o awarii?" - oczywiście nie omieszkałem wysłać, a co :D.
Ale jest przełom! I ostatecznie działa!
Po pierwsze wychodzi na to, że kqemu jest nie do końca opcjonalny, bo bez niego nie daje rady. Dlaczego? Trudno powiedzieć obserwacje ostatnich dni wskazują, że nie wszystkie pliki są kopiowane z płyty instalacyjnej. Użycie modułu kqemu problem zdaje się rozwiązywać, być może bez tego wsparcia virtualny PC ma za mało pary aby podołac instalce windows :D.
Poza tym uświadomiłem sobie, że instaluję Microsoft Windows, a nie jakieś bele co, podjąłem więc specjalne środki ostrożności przypominające mi czasy małego Atari, magnetofonu Kasprzak z adapterem do Atari SIO i sytuację wczytywania gry Gauntlet (cała kaseta C-60, po jednej stronie gra, po drugiej poziomy) - bokiem kompletnie nie pamiętam o czym była ta gra, ale to, że aby zagrać trzeba było poczekać pół godziny chodząc po pokoju na palcach wystarczyło, aby mój porypany mózg zakodował nazwę :D.
Tak więc:
# echo 1024 > /proc/sys/dev/rtc/max-user-freq
# modprobe -v kqemu
insmod /lib/modules/2.6.20-gentoo-r8/misc/kqemu.ko major=0
$ qemu-img create -f qcow2 winda.img 4G
Formating 'winda.img', fmt=qcow2, size=4194304 kB
$ qemu -cdrom /dev/hdc -hda winda.img -boot d -localtime -no-reboot
$ cp winda.img winda-stage1.img
$ qemu -cdrom /dev/hdc -hda winda.img -boot c -localtime -no-reboot
$ cp winda.img winda-stage2.img
Pozostało ostatnie uruchomienie (część która nie działała), gdzie założymy konto użyszkodnika i takie cuda.
$ qemu -cdrom /dev/hdc -hda winda.img -boot c -localtime -no-reboot
Sprawdzamy czy sieć działa (powinna) pingując adres 10.0.2.2 ( można też włączyć eksplozjator internetu, dają go w komplecie ;-) ), jeśli odpowiada, wszystko powinno być ok i można kliknąć w kluczyki od Aktywacji windows.
Po zakończeniu aktualizacji Windows, a przed zainstalowaniem czegokolwiek warto zrobić kolejną kopię obrazu dysku, co znacznie skróci czas w przypadku konieczności wykonania format c:/
.
Co dalej? Myślę, że po aktualizacji systemu warto zabrać się za odpalenie sieci w wposób bardziej normalny, tak aby zasoby wirtualnego PCta było widać po Sambie w systemie właściwym i tyle.
Na koniec tymczasowy skrypt startowy, jeśli okaże się ostatecznie, że Windows na qemu spełnia pokładane w nim nadzieje, zrobi się to porządnie, a do tego czasu niech jest trochę dziwnie.
start-win.sh
#!/bin/bash
lsmod | grep kqemu || su -c "modprobe -v kqemu"
if [ -z $(grep 1024 /proc/sys/dev/rtc/max-user-freq) ]
then
su -c "echo 1024 > /proc/sys/dev/rtc/max-user-freq"
fi
qemu -m 256 -hda winda.img -boot c -localtime -no-reboot
i jeszcze kilka obrazków.
P.S. W komentarzu do poprzedniego wpisu Michał Górny zwraca uwagę na to, że istnieje już od jakiegoś czasu eselect-compiler zastępujący gcc-config w zadaniu zmiany aktualnie używanej wersji gcc. Istnieje i można użyć, ale jest jak na razie wciąż zamaskowany, czyli nie przewidziany do użytku dla ZU. Ale oczywiście można, choć eselect uprości zadanie w sposób raczej nieznaczny, a w przyszłości należy liczyć, że qemu będzie się kompilowało na nowym gcc, lub przynajmniej ebuild sam zajmie się kombinowaniem.
P.S.2 TrackBack jako PingBack? Da się?
Od dłuższego czasu chciałem się przyjrzeć qemu i postawić gdzieś windowsa który może się przydać jak się skrypty w firmie wysypią lub zaczną wymagać poprawek. Co mnie powstrzymywało to konieczność kompilowania qemu za pomocą starego gcc-3.3.6. Plan był taki, że spróbuję, jak będę naprawdę potrzebował windy, lub kiedy w końcu cudactwo zacznie się kompilować nowym gcc.
Stało się jeszcze inaczej (i dobrze, bo na razie winda nie chce współpracować), upgradeowałem Sun java do wersji 1.6, który również kompilować się chce tylko starym gcc (co za świat :D). Java problem załatwia sama (przełącza się na stare gcc i z powrotem na nowe po kompilacji), z qemu trzeba ręcznie.
No bo to tak:
coyote ~ # emerge -avD qemu
* qemu requires gcc-3 in order to build and work correctly
* please compile it switching to gcc-3.
* We are aware that qemu can guess a gcc-3 but this feature
* could be harmful.
Czemu się dziwimy (ebuild od java jakoś umie sam), ale się nie poddajemy i przełączamy gcc.
coyote ~ # gcc-config -l
[1] i686-pc-linux-gnu-3.3.6
[2] i686-pc-linux-gnu-4.1.2 *
coyote ~ # gcc-config i686-pc-linux-gnu-3.3.6
* Switching native-compiler to i686-pc-linux-gnu-3.3.6 ...
>>> Regenerating /etc/ld.so.cache... [ ok ]
* If you intend to use the gcc from the new profile in an already
* running shell, please remember to do:
* # source /etc/profile
coyote ~ # source /etc/profile
i mergujemy raz jeszcze, po czym przywracamy domyślne (nowe) gcc
coyote ~ # -avD qemu
coyote ~ # gcc-config -l
[1] i686-pc-linux-gnu-3.3.6 *
[2] i686-pc-linux-gnu-4.1.2
coyote ~ # gcc-config i686-pc-linux-gnu-4.1.2
* Switching native-compiler to i686-pc-linux-gnu-4.1.2 ...
>>> Regenerating /etc/ld.so.cache... [ ok ]
* If you intend to use the gcc from the new profile in an already
* running shell, please remember to do:
* # source /etc/profile
coyote ~ # source /etc/profile
coyote ~ # gcc-config -l
[1] i686-pc-linux-gnu-3.3.6
[2] i686-pc-linux-gnu-4.1.2 *
Trzeba to przetestować!
najłatwiej jakimś LiveCD, i najlepiej żeby to LiveCD było małe, tak małe jak Damn Small Linux.
$ qemu -cdrom dsl-3.3.iso -boot d -smp 2 -m 512
I co teraz, siedzę w firmie, jak to przetestować? Zciągnąłem z netu Damn Small Linux
$ qemu -cdrom dsl-3.3.iso -boot d -smp 2 -m 512
i już po chwili banan zaczyna się pojawiać na gębie bo zaczęło wykrywać sprzęt i wreszcie na desktopie pojawił się ... drugi desktop, progsy śmigają, net działa ... nie powinno być źle. Trzeba poczytać manual i zmontować hardziela dla windy.



No tak, tylko nie wziąłem poprawki, że windows to windows jest i nawet jeśli google podaje tylko instrukcje jak, które to zresztą instrukcje nie wykraczają zresztą poza "włącz i zadziała" to nie znaczy, że będzie ok.
W skrócie, instalka działa, instaluje się wszystko (koszmarnie wolno), ale z jakiegoś powodu nie jest zakładane (instalator nie pyta nawet)konto użytkownika, przez co po ostatnim restarcie Virtualnego grzyba winda niby jest, ale jej nie ma, bo nie działa.
Tak czy siak, jak widać na przykładzie Damn Small Linux sam emulator sprawdza się, świetnie, pobrałem z netu instalkę Ubuntu 7.05 Frywolny Fulmar i pewnie eksperymentalnie i jego postawię na udawanym kompie. Tyle, że jeśli to cudo ma mi się do czegokolwiek przydać to właśnie do jarnięcia windy... cuż, nikt nie mówił, że będzie łatwo, czyli ciąg dalszy nastąpi :D