Thursday, December 22, 2005

BFU = DFU ?


Před časem, myslím na rootu, proběhlo odhalení, že BFU je zkratka ryze českého původu, spáchaná nejspíše redaktory Netmagu blahé paměti. Ale dneska jsem ve Wikipedii narazil na DFU (Dumb Fucking User). Že by BFU byl vlastně jenom překlep?


Wednesday, December 7, 2005

K3B

Jak už jsem psal, K3B nedokáže ověřit zapsaná data, pokud názvy souborů/adresářů obsahují mezinárodní znaky. To je hodně špatný a podle tohoto nového komentáře k bugu se to zřejmě lepšit nebude:


------- Additional Comment #3 From Sebastian Trueg 2005-12-06 20:35 -------
I am only one man on all this and verification does not interest me that much.
That's why I keep moving this bug down the todo list... but I will do it
soon. I promise. :) please close the duplicate bug reports.
Nechtělo se mi tomu věřit, tak jsem se podíval na homepage a skutečně, vývojový tým zásadní aplikace tvoří jenom jeden člověk!




Nenajde se někdo, kdo by to dokázal spravit, vždyť jde jen o to, aby se správně převáděly znaky mezi 2 kódováními, nebo se pletu?




Nabízím 100 Kč formou zaslání na účet tomu, kdo tu chybu opraví.

Wednesday, November 30, 2005

Mandriva 2006 - rozdíl mezi Community a Official

Abych to příště nemusel hledat


Subject: Re: [Expert] Online sources for 2006
Date: středa 30 listopad 2005 20:50
From: Thomas Backlund tmb@mandriva.org
To: expert@mandrivalinux.org
Anne Wilson wrote:
* On Wednesday 30 Nov 2005 14:24, Gary Montalbine wrote:
** Is 2006 community a newer version of 2006 official? As I understand
** the above discussion community can safely be used as an update source
** for 2006 official. Correct?
*
* As I understand it, 2006 Official is the download/CD/DVD version, fully
* supported by Mandriva.  2006 Community has, I believe, updates and
* other packages supported only by the packager - not Mandriva.
2006.0 Official tree (official/2006.0/) is the "Frozen Cooker" from
where the Official ISO's get built.
- the media/main is the only supported part (besides the installer stuff)
- there are more packages here than fits on the DVD's (both in
media/main and even more media/contrib)
2006.0 Official Updates Tree gets the Security Updates for 2006.0
Official Main as per
2006.0 Community tree (devel/12006.0) is 2006.0 Official + 2006.0
Official Updates + ...
- this tree acts as a "Stable tree" for Products to come based on 2006.0
- this also gets other updates/bugfixes that are considered too simple
to go out as a Security Update
- newer versions of some programs are also allowed here as long as _they
don't break_ anything
- here you wont see any packages uploaded that would require many other
packages to be rebuilt,
so for example you wont see the new Firefox 1.5 here, or any of the
libs that is used in half the distro...
- This is the only place (besides Club and Offsite Repos such as SoS,
Thac) where Contributors
can upload bugfixes & security updates for Contrib packages in
media/contrib
* If that is not the case, someone will correct me.  If I am right, then
* it is slightly more risky than Official but a lot less risky than
* Cooker.
*
* Ann
Actually I would say this is the best Release to use as it will provide
a better testbase if more people use it.
And it's not risky, and bugzilla accepts bugreports against if if you
find any, and it will probably be fixed...
--
Regards
Thomas

Saturday, November 26, 2005

Debugování komunikace s klávesnicí

Momentálně si hraju s vylepšováním svojí klávesnice, akorát mi to moc nejde. Už jsem strávil tejdny různým zkoušením (no, nemám na hraní celý dny, proto tolik), až jsem uznal, že je nutný vědět, co se mezi klávesnicí a PC vlastně děje, protože podle teorie to prostě nefungovalo.


Takže jsem vyštrachal obvod MAX232, 5 kondenzátorů a napojil klávesnici na sériový port.

schema


fotka


Šmírovací program jsem obšlehl od sitha. V C totiž vůbec neumím a připadá mi jako totálně nepohodlný a nepřehledný jazyk, takže - vím, že je to napsaný prasácky, ale je to jednoúčelová věc a stačí mi:

#include <stdio.h>
#include <fcntl.h>
#include <termios.h>
#include <sys/ioctl.h>
#include <time.h>
#define SERIAK "/dev/ttyS0"
int openserial ();
void closeserial ();
float mereni ();
int fd;
int
openserial ()   //otevrit seriak
{
if ((fd = open (SERIAK, O_RDWR)) == -1)
{
return 0;
}
return 1;
}
void
closeserial ()   //zavrit seriak
{
close (fd);
}
float
mereni ()   //hlavni fce, mereni napeti
{
int status, hodnota1 = 2, hodnota2 = 3;
while (1!=2)
{
ioctl (fd, TIOCMGET, &status);
hodnota1 = (status & TIOCM_CTS)/TIOCM_CTS; //clock
hodnota2 = (status & TIOCM_RI)/TIOCM_RI; //data
printf ("%i,", hodnota1);
printf ("%i\n", hodnota2);
}
// return (hodnota1);
}
int
main ()
{
if (!openserial ())
{
printf ("Nelze inicializovat port \"s\".", SERIAK);
return 0;
}
mereni();
closeserial ();
return 0;
}

Prostě to vypisuje dvě hodnoty oddělený čárkou, první je stav CLOCK a druhý je stav DATA. Protože PS/2 jede jen na 9600 baudů, stíhá se to krásně:

...
1,0
1,0
1,0
0,0
0,0
0,0
0,0
0,0
0,0
0,0
0,0
0,0
0,0
0,0
0,1
0,1
0,1
...

Update:

A když se to nacpe do OpenOffice, tak se to dá krásně zvizualizovat:


graf



English summary: Spying on the PS/2 keyboard protocol using serial port.


Thursday, November 3, 2005

man-pages-cs release

Release neoficiálních českých manuálových stránek


Jak už jsem tady kdysi dávno avizoval, když mám čas (tj. dost zřídka), aktualizuju české manuálové stránky. Maintainerovi (Milan Keršláger) jsem poslal první updaty někdy v červnu. To mi vůbec neodpověděl. Další várku jsem mu poslal asi před měsícem, odpověděl hned, že se na to podívá, jak bude mít čas. Ale zatím se nic neděje...



Nechci, aby mi to hnilo na disku, tak to házím na web (fork? :-):


http://sweb.cz/tropikhajma/man-pages-cs/index.html
[hajma@localhost man-pages-cs-unofficial-0.20]$ cat NEWS

man-pages-cs-0.16 -> man-pages-cs-0.20



License text was added to the updated manual pages/Do updatovaných manuálových stránek byl doplněn text licence



added/doplněno:

pár linků (vdir.1 -> ls.1, ...)



updated/aktualizováno:

basename.1, cp.1, dd.1, df.1, dircolors.1, dirname.1, du.1, false.1, ghostscript.1, gsbj.1, gsdj.1, gsdj500.1, gslj.1, chgrp.1, chmod.1, chown.1, chroot.1, install.1, intro.1, ln.1, ls.1, mkdir.1, mkfifo.1, mknod.1, mv.1, printenv.1, ps2pdf12.1, ps2pdf13.1, pwd.1, rmdir.1, rm.1, touch.1, true.1, whoami.1, write.1, yes.1

mem.4, ram.4, tty.4, vcs.4, console.4, mouse.4, null.4, intro.4, ttyS.4

shells.5, fs.5, ipc.5, procmailrc.5, exports.5, nologin.5, charmap.5, passwd.5, fstab.5, motd.5, services.5, group.5, protocols.5, intro.5, securetty.5, shadow.5, issue.5, environ.5



removed (contained in another package)/odstraněno (vyskytuje se v jiném balíčku):

man.1



removed (does not exist anymore)/odstraněno (již neexistuje):

make-ssh-known-hosts.1





[hajma@localhost man-pages-cs-unofficial-0.20]$ cat TODO
1. Dokončit update sekce 1
2. sekce 7 a 8
3. Zjistit, jak jsou na tom 2+3 s aktuálností - ev. vypustit?
4. Shadow má, zdá se svoje překlady. Zesynchronizovat. Zejména zjistit, jak je to s passwd.5
následující manuálové stránky (1) nepocházejí z man-pages a nejsou ještě zaktualizovány:
priorita (0-3, tj. min-max)
ar.1            binutils        http://ftp.gnu.org/gnu/binutils/binutils-2.16.tar.gz                            1
bzip2.1         bzip2           http://www.bzip.org/1.0.3/bzip2-1.0.3.tar.gz                                    3
cdp.1           cdp             http://www.ibiblio.org/pub/linux/apps/sound/cdrom/curses/cdp-0.33.tgz           0
date.1          coreutils                                                                                       3
dvipdf.1        ghostscript                                                                                     1
echo.1          coreutils                                                                                       1
env.1           coreutils                                                                                       2
eps2eps.1       ghostscript                                                                                     1
expr.1          coreutils                                                                                       2
finger.1        finger          ?? http://ftp.gnu.org/pub/gnu/finger/finger-1.37.tar.gz                         1
font2c.1        ghostscript                                                                                     1
ghostscript.1 = gs.1
grep.1          grep            ftp://ftp.fi.muni.cz/pub/gnu/gnu/grep/grep-2.5.1a.tar.bz2                       3
groups.1        coreutils                                                                                       3
gsbj.1 = gslp.1
gsdj.1 = gslp.1
gsdj500.1 = gslp.1
gslj.1 = gslp.1
gslp.1          ghostscript                                                                                     1
gsnd.1          ghostscript                                                                                     1
gs.1            ghostscript                                                                                     1
id.1            coreutils                                                                                       2
logname.1       coreutils                                                                                       2
lynx.1          lynx            http://lynx.isc.org/current/lynx2.8.5rel.1.tar.bz2                              1
nice.1          coreutils                                                                                       2
nohup.1         coreutils                                                                                       2
pathchk.1       coreutils                                                                                       1
pdf2dsc.1       ghostscript                                                                                     1
pdf2ps.1        ghostscript                                                                                     1
pfbtopfa.1      ghostscript                                                                                     1
pf2afm.1        ghostscript                                                                                     1
printafm.1      ghostscript                                                                                     1
printf.1        coreutils                                                                                       2
ps2ascii.1      ghostscript                                                                                     1
ps2epsi.1       ghostscript                                                                                     1
ps2pdfwr.1      ghostscript                                                                                     1
ps2pdf.1        ghostscript                                                                                     1
ps2pdf12.1@     ghostscript                                                                                     1
ps2pdf13.1@     ghostscript                                                                                     1
ps2ps.1         ghostscript                                                                                     1
saned.1         saned           přesunut do sekce 8
ftp://ftp.sane-project.org/pub/sane/sane-backends-1.0.15/sane-backends-1.0.15.tar.gz
ftp://ftp.sane-project.org/pub/sane/sane-frontends-1.0.13/sane-frontends-1.0.13.tar.gz
scp.1           openssh         ftp://ftp.openbsd.cz/pub/OpenBSD/OpenSSH/portable/openssh-4.0p1.tar.gz          2
sleep.1         coreutils                                                                                       3
ssh-add.1       openssh         ftp://ftp.openbsd.cz/pub/OpenBSD/OpenSSH/portable/openssh-4.0p1.tar.gz          2
ssh-agent.1     openssh         ftp://ftp.openbsd.cz/pub/OpenBSD/OpenSSH/portable/openssh-4.0p1.tar.gz          2
ssh-keygen.1    openssh         ftp://ftp.openbsd.cz/pub/OpenBSD/OpenSSH/portable/openssh-4.0p1.tar.gz          2
ssh.1           openssh         ftp://ftp.openbsd.cz/pub/OpenBSD/OpenSSH/portable/openssh-4.0p1.tar.gz          2
stty.1          coreutils                                                                                       2
su.1            coreutils                                                                                       3
talk.1          talk            ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/netkit-ntalk-0.17.tar.gz     2
tee.1           coreutils                                                                                       3
test.1          coreutils                                                                                       2
top.1           procps          http://procps.sourceforge.net/procps-3.2.5.tar.gz                               3
true.1          coreutils                                                                                       2
tty.1           coreutils                                                                                       2
uname.1         coreutils                                                                                       2
users.1         coreutils                                                                                       2
vdir.1  = ls
wftopfa.1       ghostscript                                                                                     1
wget.1          wget            http://ftp.gnu.org/pub/gnu/wget/wget-1.9.1.tar.gz                               3
who.1           coreutils                                                                                       3
w.1             procps          http://procps.sourceforge.net/procps-3.2.5.tar.gz                               3

Wednesday, November 2, 2005

K3B neumí ověřit zapsaná data

Bohužel to vypadá, že K3B neumí ověřit vypálená data, pokud jsou v cestě háčky a čárky. Bohužel se tím pro mne stává nepoužitelným - zapisovat cokoliv na DVD bez ověření, jestli je to OK, je IMHO docela risk.
Čím pálíte vy?

Tuesday, November 1, 2005

Abych pořád jenom nekritizoval

Dnešní zápisek je taková pochvala...


Takže tady je moje páječka.

páječka

Mám ji už 20 let (ne že bych byl takovej stařec, prostě ji mám odmala) a pořád funguje perfektně. Akorát někdy před 10 lety jsem měnil žárovku. Samozřejmě na pájení některých věcí použít nejde, ale do ruky ji beru celkem často.


Saturday, October 29, 2005

VRAMFS?

Tak mě zas něco napadlo. Mám grafickou kartu s 64 MB paměti. Těch 64 MB se ale určitě využije naplno jenom když běží něco 3D, čili u mě prakticky jednou za měsíc. (Možná taky při přehrávání filmů ..? ... nevim) Takže mám odhadem alespon 50 MB, který se flákají. A jsou lidi, kteří mají grafárnu se 128 nebo 256 MB, tam je to ještě zajímavější. Bylo by možný k té volné paměti nějak přistupovat a třeba do ní swapovat nebo ji mít jako diskovou cache? Určitě už to napadlo někoho přede mnou, ale nepodařilo se mi to vygooglit.

Monday, October 24, 2005

Čtenost blogů

Takže mi to nedalo a udělal jsem si takovou statistiku blogů - nejčtenější zápisky atd.:




Top 20 nejkomentovanějších zápisů


místozápisblogautorkomentářů
1.Jak poznám poslední možnost útěku z republiky?golb vůšoeLLeoš Literák182
2.CzechTek fraškaRobertův bločekRobert Krátký136
3.O devalvaci pravidelKacířské myšlenkyLukáš Jelínek132
4.Linuxař a jeho telefon..andreho_blogAndre Bullock129
5.Sbohem, Darwine...David Nečas (Yeti)126
6.Nerozčilovat seNevěřícíJindřich Plešinger123
7.Gentoo, první pohledZprávy z linuxové frontyHonza "thingwath" Bartoš119
8.Stallman a spol f příštím životeNevěřícíJindřich Plešinger117
9.Místo M$ Office OOjanosh_blogZdeněk Jančík115
10.To jsme se dočkaligolb vůšoeLLeoš Literák114
11.Sraz abíčka?golb vůšoeLLeoš Literák114
12.GPLgate - my proti nám?Kacířské myšlenkyLukáš Jelínek113
13.Jakou stranu tedy volit?uz_mam_taky_blogZdeněk Štěpánek110
14.Preferování blogůBoodOkBoodOk105
15.Instalace Windows vs. LinuxNiobi v SuSEniobi103
16.Někdo mě tu začíná fakt štvátSaljackSaljack100
17.Novela silničního zákonalast_goodbyemirek96
18.V čem se učit programovat?miblogMichal Vyskočil96
19.Programování: Jak začít ?Blog...David Watzke95
20.Gnome vs. KDE právo na výběr?linux_a_jaLukáš Ramlich94




Top 20 nejčtenějších zápisů



U čtenosti jsem počítal jen tzv. dlouhé zápisy, tj. ty na které musí člověk kliknout, aby si je přečetl celé, protože jen tam je jasné, kolik lidí si jej skutečně přečetlo.


místozápisblogautorpřečteno
1.Jak stahovat pisničky a videoklipy z T-Music.czM4r3kMarek Stopka24430
2.Silent Mouse - The Second Encounterhajmahajma8552
3.Převod PDF na textLiNUX ZiNEJan Grmela3169
4.Greasemonkey skript pro Oskaří smskyplathelplathel2375
5.Upgrade na Mandrake 10.1LiNUX ZiNEJan Grmela2238
6.Všechny obrazy CD Mandrakelinux 10.1 OfficialLiNUX ZiNEJan Grmela2230
7.Ubuntu Hoary inštalácia a nastaveniaslobodaStanislav Valasek2141
8.Paskvil: Pohádkový porno příběhRobertův bločekRobert Krátký2120
9.sporitelna me nechce vpustit na CS24uz_mam_taky_blogZdeněk Štěpánek2118
10.(Lidské) OCR Hacklese (updated)David Nečas (Yeti)2016
11.Návrh na online budovanou učebnici Linuxugolb vůšoeLLeoš Literák1887
12.Nový Adobat Reader 7.0PlastiqueVlastimil Ott1870
13.Ach ten Firefox.M4r3kMarek Stopka1837
14.Počítačové díly zdarmaOrwellFilip Korbel1718
15.Acer TravelMate - UbuntuPůlnoční blogIvo Rebenda1675
16.VoipBuster - volání (nejen) po ČR zdarma!Jaderný blogMichal Křenek1634
17.Prodej ČTc.čtvrtletníkKillgore Trout1616
18.Tábory, tábory, tábory ...zápiskyGeBu1595
19.Děti opanovaly internetsem_manasdebil1552
20.Zdrojový kód JXP (aktualizováno!)David Nečas (Yeti)1459


Průměrná čtenost dlouhých zápisů




Dlouhý zápis si v průměru přečte 584 lidí. V top 20 se hodně umisťují bloggeři s pouze jedním nebo dvěma zápisy, které byly dostatečně zajímavé. Udržet stabilně vysokou sledovanost není zřejmě jednoduché a daří se to zejména Yetimu a Janu Grmelovi. Celebrity jsou většinou někde vzadu: Jindřich Plešinger 25. místo, Robert Krátký 27. místo, Vlastimil Ott 65. místo, Leoš Literák 66. místo a grafoman Lukáš Jelínek s 99 dlouhými zápisy až na 108. pozici.




místoautorčtenostpočet zápisů
1.Marek Stopka2447,113
2.Killgore Trout1492,52
3.David Nečas (Yeti)1170,18
4.Jakub Lánský11161
5.Jan Grmela1075,914
6.Karel10531
7.Dan Ohnesorg10352
8.Dušan Ivančo10221
9.hajma1014,617
10.Filip Korbel977,73
11.debil9602
12.Petr Šobáň9221
13.Václav Bobek9071
14.Jaroslav Šmíd891,52
15.Radek Vokál8752
16.user8431
17.Jiří8421
18.Martin Fiala8252
19.Rastislav Stanik818,73
20.Dušan Hokův8165




V případě průměrné komentovanosti dlouhých zápisů je to velmi podobné. Průměrně získá zápis 15 komentářů. Nejvíce jsou komentovány flamebaity málo aktivních uživatelů. Jindřich Plešinger se s průměrnými 43,8 komentáři umístil na pěkném 7. místě. Yeti na 13. pozici. Tabulku nemá ani cenu sem dávat.



Momentálně má seznam.cz nějaký problémy, až přestanou, hodím na web zdrojový data.



Update:Tady to je


Friday, October 21, 2005

Čtenost

Když tak sleduju flame kolem JXP, napadlo mě, že by mohlo být zajímavé sestavit žebříček blogů podle čtenosti. Myslím, že už někdo kdysi dal dohromady nejaktivnější bloggery, to by mohlo být podobné. Top 10 nejčtenějších zápisů, top 10 nejčtenějších bloggerů... Samozřejmě by se musely počítat jen blogy na které se musí kliknout, u těch mikrozápisů je hodnota čtenosti pochybná. Nechcete se toho někdo ujmout? Nějakým skriptíkem by to urřitě šlo zautomatizovat, ne?

Monday, October 3, 2005

Anketa

Napadla mne anketa na téma "Jakou www stránku si denně otevřete jako první?", s možnostmi www.abclinuxu.cz, www.abclinuxu.cz/blog, www.root.cz, www.zive.cz, www.seznam.cz, www.google.com, www.idnes.cz, jinou. Nevynechal jsem nejakou významnou www? Díky.

Tuesday, September 27, 2005

Bug? Tak ho nahlaš!

V blogu Zdeňka Štěpánka vyšel 10.8. zápisek
Povzdech: o bugovitosti KDE
. Zdeněk krásně popsal svůj problém, zanadával na KDE, ale jaksi už zapomněl chybu nahlásit. Abych to napravil, tak jsem chybu 16.8. nahlásil. Vývojář KDE ji ověřil 23.9. a opravena byla včera. Takže - hlaste chyby, funguje to (i když to někdy není hned)!

Sunday, September 25, 2005

Palírna

Rozhodl jsem se koupit si DVD vypalovačku, hlavně kvůli těm GB fotek a filmů (z digitálu), který seděj na disku a čekaj na Generála Failure. Nejdřív jsem se rozhodl pro
NEC 5340A
, ale článek na root.cz mě přesvědčil, abych utratil o pár kaček víc za podporu DVD-RAM. Mým novým favoritem se stala

LG 4163B
, s celkem dobrou

recenzí

na cdr.cz. Rád si ale vždycky přečtu názory opravdových lidí, jenže - je skutečně v lidských silách přečíst
1178 příspěvků
? Přeloženo do lidštiny, co je to za hovada, která z diskuze k recenzovanému výrobku dělají poradnu? To neexistuje něco jako abcwindows.cz? Oh my god...

Sunday, September 11, 2005

Diakritika a slovenština na abclinuxu.cz

Při pročítání diskuze na abclinuxu.cz mi vždycky připadalo, že příspěvky ve slovenštině jsou daleko častěji psány bez diakritiky (Nic proti slovenštině, ale bez háčků a čárek se mi čte daleko hůř). A tak jsem se rozhodl exaktně ověřit, jestli je to tak.


A výsledek je takový:

58,2 % příspěvků je psáno s diakritikou, naopak bez diakritiky je jich 39,5 %. Zbývající 2,3 % jsou příspěvky bez textového obsahu, tj. smajlíci, čísla apod.

Česky je napsáno 80,1 % zápisů, slovensky 15,5 %, u zbývajících 4,4 % nelze rozpoznat použitý jazyk.

Jedna třetina (33,0 %) česky psaných zápisů neobsahuje háčky, u slovenštiny jsou to naopak téměř tři čtvrtiny (73,1 %) - z toho vyplývá jednoznačný závěr: Slováci (na abclinuxu.cz) kašlou na diakritiku více než Češi.

graf
Postup:

Využil jsem toho, že diskuze je přístupná přes rozhraní news. Programem slrn-pull jsem stáhnul na disk posledních 10 000 příspěvků. Základní rozdělení na příspěvky s diakritikou a bez diakritiky jsem provedl na základě hlavičky Content-type (tj. ascii/ISO-8859-2) (tj. počítá se jen tělo příspěvku, nikoliv subject; to je logické, protože je jistě spousta případů, kdy bezháčkový člověk odpoví na příspěvek s háčkovaným subjectem). Při té příležitosti jsem z příspěvků odstranil patičky abclinuxu (linky na diskuzi):

#!/bin/bash
adresarcil="/home/hajma/tmp/recode"
adresarzdroj="/var/spool/slrnpull/news/gmane/user-groups/linux/czech"
for soubor in $(ls $adresarzdroj)
do
cat $adresarzdroj/$soubor | formail -x Content-Type | grep us-ascii
if [ $? -eq 0 ]
then
cat $adresarzdroj/$soubor | formail -I "" | sed -r /"^Zobrazit diskusi: http:\/\/www.abclinuxu.cz\/forum\/show\/"\|"^Zobrazit komentar: http:\/\
/www.abclinuxu.cz\/forum\/show\/"/d > $adresarcil/ascii/$soubor
else
cat $adresarzdroj/$soubor | formail -x Content-Type | grep ISO-8859-2
if [ $? -eq 0 ]
then
cat $adresarzdroj/$soubor | formail -I "" | sed -r /"^Zobrazit diskusi: http:\/\/www.abclinuxu.cz\/forum\/show\/"\|"^Zobrazit komentar: http:\
/\/www.abclinuxu.cz\/forum\/show\/"/d | recode l2/qp..l2 > $adresarcil/iso/$soubor
fi
fi
done

Vlastní metoda rozdělení podle jazyka byla jednoduchá: pokud příspěvek obsahuje více českých slov, je český a vice versa.

Pro svůj účel jsem využil český a slovenský slovník MySpell, které jsem ale nejprve musel zbavit pomocných znaků a převést na malá písmena:

#!/bin/bash
adresarcil="/home/hajma/tmp/recode"
adresarzdroj="/usr/share/dict/ooo/"
cat $adresarzdroj/cs_CZ.dic | sed -e s@"\/.*$"@@g | tr '[:upper:]' '[:lower:]' | sort | uniq > $adresarcil/cz.txt
cat $adresarzdroj/sk_SK.dic | sed -e s@"\/.*$"@@g | tr '[:upper:]' '[:lower:]' | sort | uniq > $adresarcil/sk.txt

Z českého slovníku jsem ještě ručně odstranil slovo "a".

Z obou souborů jsem dále odstranil slova, která se vyskytují i ve druhém jazyce:

#!/bin/bash
adresar="/home/hajma/tmp/recode"
for slovo in $(cat $adresar/cz.txt)
do
grep -wq $slovo $adresar/sk.txt
if [ $? -eq 1 ]
then
echo $slovo >> $adresar/cisteceskaslova.txt
fi
done
for slovo in $(cat $adresar/sk.txt)
do
grep -wq $slovo $adresar/cz.txt
if [ $? -eq 1 ]
then
echo $slovo >> $adresar/cisteslovenskaslova.txt
fi
done

Potom jsem bral soubor po souboru, odstranil z nich cokoliv, co nebylo písmeno (díky, Yeti) a vyhledával jednotlivá slova v českém a slovenském slovníku.

#!/bin/bash
adresar="/home/hajma/tmp/recode/iso"
for soubor in $(ls $adresar)
do
cz=0
sk=0
for slovo in $(cat $adresar/$soubor | sed 's/[^[:alpha:]]\+/\n/g' | sed 's/^[ \t]*//;s/[ \t]*$//' | sed '/^
$/d' | tr '[:upper:]' '[:lower:]')
do
#echo $slovo
grep -wq -e $slovo /home/hajma/tmp/recode/cisteceskaslova.txt
if [ $? -eq 0 ]
then
cz=$((cz+1))
fi
grep -wq -e $slovo /home/hajma/tmp/recode/cisteslovenskaslova.txt
if [ $? -eq 0 ]
then
sk=$((sk+1))
fi
done
if [ $cz -gt $sk ]
then
cp $adresar/$soubor /home/hajma/tmp/recode/diacz
elif [ $cz -lt $sk ]
then
cp $adresar/$soubor /home/hajma/tmp/recode/diask
elif [ $cz -eq 0 ]
then
cp $adresar/$soubor /home/hajma/tmp/recode/dianeznamo
else
cp $adresar/$soubor /home/hajma/tmp/recode/diaczsk
fi
done
Update: Zapomněl jsem doplnit, že podobně se to udělá i pro příspěvky bez diakritiky (převod slovníků na bezháčkové probíhá pomocí recode takto:
cat $adresarcil/cz.txt | recode -f l2..flat | sort | uniq > czbezhacku.txt

Wednesday, September 7, 2005

Občas to vyjde

Někdy se mi stane, že překonám lenost a webmasterům stránek, které mi ve FF dělají potíže, napíšu.


Onehdá jsem napsal toto:
Dear Sir or Madam,

I'm a regular user of the www.*******.com site. Apparently, there is something wrong in the way mime headers are (or are not?) sent to browser, when downloading (pdf) files, which causes www browsers following the WWW Consorcium standards (i.e. Mozilla Firefox) to wrongly identify the file type as application/octet-stream, so that the downloaded file must be renamed manually. (perhaps see the w3c note: http://www.w3.org/2001/tag/2002/0129-mime).
I assure you that this is a very annoying behaviour and believe it can be fixed without major efforts.

Best Regards

****** ******

a dneska, zhruba po měsíci, mi přišla odpověď:

Dear Sir,

We have modified the www.******.com site to be compatible with Firefox. Let us know if you meet any other trouble.

Best regards.

***** *****

Saturday, August 13, 2005

kmail

Ach jo, pořád jsem si říkal, že je to moje chyba, že to neumím nastavit, ale vono ne, mám čekat na KDE 4 nebo si najít něco jinýho?

Tuesday, August 9, 2005

Zas nic

Už jsem sem dlouho nic nenapsal, nějak není čas, a to tak, že vůbec na nic, teda možná je, jenom se snažím dělat deset věcí naráz a navíc se vždycky objeví nějaký zádrhel.


Jako třeba teďka, hraju si s projektem, který zahrnuje určité úpravy standardní AT klávesnice (detaily zatím neřeknu, ale je to super věc), takže se mi podařilo najít na netu dva projekty, který dohromady dají to, co chci, strávil jsem tejden čtením katalogovýho listu mikrokontroleru 16f84a a chápáním, jak se dělá v asssembleru, postavil jsem si programátor a když jsem se po pár pokusech dostal k smysluplnýmu kódu, tak ten programátor prostě přestal fungovat.
Podezřívám z toho nějakou změnu, co proběhla v Cookeru, protože se objevily i problémy s digitálem, konečně na tom programátoru není co spálit a sériovej port je snad docela jištěnej. Takže teďka zase budu zjišťovat co by mělo jak kde bejt, aby to fungovalo nebo na kus disku nainstalím LE2005 nebo jiný distro.

update - jo a taky mi už asi tejden sem tam ustřelí myš, že prej lost synchronization, to bude asi někde v kernelu...

Thursday, June 23, 2005

Víc bajtů za stejný peníze 2

K původnímu skriptu (optimalizace stahování updatů MDV Cooker pomocí rsync) jsem si připsal pár řádků, který mi řeknou, kolik se přeneslo, jaká je celková velikost stažených souborů a kolik mi tedy ten skript ušetřil.

Asi by se to dalo napsat líp, ale aspoň to funguje:



...
#toto je soucet velikosti vsech nove stazenych souboru
soucet=0
for i in `cat log | tr [:cntrl:] \\\n | grep "% of" | awk 'BEGIN { FS = "100%" } ; { print $1 }'`;
do
soucet=$(($soucet+$i))
done
stazeno=`grep received log | grep sent | awk 'BEGIN { FS = " " } ; { print $2+$5 }'`
echo "Celková velikost stažených souborů:" $soucet "("`echo "scale=2; $soucet/1024/1024" | bc -l` "MB)"
echo "Skutečně přenesená data:" $stazeno "("`echo "scale=2; $stazeno/1024/1024" | bc -l` "MB)"
echo "celková úspora:" `echo "scale=2; 100*($soucet-$stazeno)/$soucet" | bc -l` "%"

A výsledky? Třeba dneska - aktualizace Cookeru po 1 dni:

Celková velikost stažených souborů: 246449423 (235.03 MB)

Skutečně přenesená data: 129177273 (123.19 MB)

celková úspora: 47.58 %


Pokud přibylo jen pár balíčků, je to ještě výraznější, protože soubory hdlist* se rsyncují daleko lépe:

Celková velikost stažených souborů: 153375846 (146.27 MB)

Skutečně přenesená data: 21332579 (20.34 MB)
celková úspora: 86.09 %

Thursday, June 16, 2005

Stopařův průvodce po ubohosti Douglase Adamse

Tak jsme dneska zašli na Stopaře... Pokud uvažujete o shlédnutí tohoto titulu a máte to štěstí, že jste ho ještě neviděli, zajděte raději na COKOLIV JINÉHO, zvlášť jestli jste četli knihu. A ten chlap se ani nestyděl podepsat pod scénář ...

Monday, June 13, 2005

Fivefox

Mně doposud neznámý www browser Mozilla Fivefox se znaží zapůsobit sponzoringem Pandy červené, známé pod jménem hunho (firefox). Pět lišek je halt víc jak jedna.

P.S.: Jak často chodíte do ZOO?



fivefox

Friday, June 3, 2005

Wednesday, June 1, 2005

Víc bajtů za stejný peníze (a vice versa)

V Mandrivě 2006 už má prý fungovat deltarpm ze SUSE - tj. stahovat se budou moct diffy balíčků, takže úspory objemu stažených dat budou aspoň 50 %. Ale šetřit se dá už teď.


Na desktopu mi běží Cooker, který se mi aktualizuje pomocí rsync v cronu (mám na disku mirror). Když jsem začal používat rsync, všiml jsem si, že některé soubory se stahují jakoby rychleji, např takový hdlist.cz kolikrát i megabajty za sekundu, přestože moje připojení je řádově jinde. Je to tím, že rsync umožňuje v rámci možností přenášet změny mezi souborem lokálním a souborem na serveru (pokud to server podporuje).

Normálně toho při stahování balíčků nevyužijete, protože se názvy souborů liší jiným číslem verze. Proto jsem si napsal skriptík, který zjistí, které balíčky byly updatovány. Tyto balíčky (ty staré) přejmenuje, dá jim název aktuální verze balíčku. A potom teprve se spustí mirrorování.

Dneska jsem provedl srovnávací pokus. Nejprve jsem vyrobil kopii adresáře, ve kterém je mirror Cookeru. Potom jsem nad originálem spustil klasický úplný mirroring (vynechal jsem soubory končící na .cz, u nich se rozdíly stahují i tak) a poté nad kopií svůj přejmenovávací skript:


klasika:

sent 21 997 bytes received 173 203 233 bytes 37 401.54 bytes/sec



s přejmenováním:

sent 364 139 bytes received 127 506 709 bytes 37 882.05 bytes/sec


1/3 úspora zdarma!




Toto je onen testovací skript, je v něm samozřejmě ještě pár nadbytečnejch věcí, ale jako proof of concept to snad stačí.

#!/bin/bash
root_path="/mnt/mdk/Mandrakelinux-devel/cooker2"
/usr/bin/rsync -avvn --delete-after mandrake.contactel.cz::Mandrakelinux-devel/cooker/i586/ $root_path | grep -v "is uptodate" | grep .rpm$ > seznamrpm
for deleted in $(grep deleting seznamrpm)
do
if [ "$deleted" != "deleting" ]
then
stary_soubor=$root_path/$deleted
deleted_base=`/bin/basename "$deleted"`
deleted_dir=`/usr/bin/dirname "$deleted"`
package_name=`echo $deleted_base | awk 'BEGIN { FS = "-[^-]+-[^-]+rpm$" } ; { print $1 }'`
novy_soubor=$root_path/`grep -v deleting seznamrpm | grep "$deleted_dir/$package_name-[^-]\+-[^-]\+rpm$"`
echo $stary_soubor
echo $novy_soubor
mv -f $stary_soubor $novy_soubor
fi
done
/usr/bin/rsync -avv --delete-after --progress --partial --exclude='*.cz' mandrake.contactel.cz::Mandrakelinux-devel/cooker/i586/ $root_path > log

a pro úplnost klasický rsync, který jsem používal doteď:

/usr/bin/rsync -avv --progress --delete-after --partial --exclude='*.cz' mandrake.contactel.cz::Mandrakelinux-devel/cooker/i586/ /mnt/mdk/Mandrakelinux-devel/cooker >> log

Sunday, May 22, 2005

zase man-pages-cs

Tak po delší pauze jsem obětoval sobotu a vrhnul se na update sekce 1. Jeden by nevěřil, kolik fičur se v programech během 5 let může objevit :-)


V sekci 1 je toho nechutně moc, takže jsem začal stránkama, který se vyskytujou v balíčku man-pages-2.0.1. Zatím jsem tak ve 3/4. Ten zbytek bude asi brutální ...

Takže tu teď mám:




cp.1

dd.1

df.1

dircolors.1

du.1

chgrp.1

chmod.1

chown.1

install.1

ln.1

ls.1

mkdir.1

mkfifo.1



Celý je to
tady.

Celý to má zpizděný kódování, protože netuším jak donutit man2html k vytvoření UTF-8 html a sweb.cz je IMHO mizernej krám.

Wednesday, May 18, 2005

německej spam

Někdo už to tady zmiňoval, ty ***vy spammerský posílají nějaký fašistický články či co. A největší prča je, že mi teďka přicházej jako nedoručený. Ty **jzli je posílaj pod mou pracovní adresou a jak tak koukám, tak na adresy, který jsou cca v mojí pracovní oblasti. Adresáti jsou sice generovaný náhodně, ale až se trefěj ... :-(

Tuesday, May 17, 2005

Není to tak špatný

Tak jsem se dneska zúčastnil jedný schůzky, kde jsem se dozvěděl, že během asi roku se přejde ze stávajícího řešení předávání dat na webový rozhraní.
Nejsem žádnej militantní OSS aktivista, ale stejně jsem tomu týpkovi na konci řekl, že doufám, že to nebude IE only. A on na to, že rozhodně ne, že už jsou poučený. Současná aplikace byla totiž napsaná pro Access 97 a funguje jenom s ním, dokonce ani s Access 2000 ne. Takže to bude OpenSource a poběží na linuxovým serveru.
Není to fajn?

Sunday, May 15, 2005

T230 podruhé

Tak se mi to nepodařilo spravit, i když jsem zlikvidoval konektor. Doufal jsem, že chyba (zkrat) je tam, ale to jsem se asi pletl :-( Mobil si prostě pořád myslí, že je k němu připojený handsfree. Nakonec jsem k němu jako nouzovku přidělal sluchátko (s vlastním reproduktorkem si to nerozumí, asi je tam jiná impedance či co), aspoň něco než pořídíme něco vodotěsnýho :-)


t230 se sluchatkem

Tuesday, May 10, 2005

T230

Malej si rád hraje s T230 mojí ženy. Bohužel jeho hry jsou pořád tak trochu slintací, což nědělá dobře jemné asijské elektronice, a tak se telefon jednoho dne odmlčel, resp. přestal fungovat zvuk.


Bylo mi jasné, že s takovým nánosem měděnky nemáme stejně na reklamaci šanci :-), takže jsem ho otevřel, odšrouboval 4 viditelné šroubky a přemýšlel co dál. Nakonec jsem zjistil, že zbývající půlkryt se otevře tak, že se uprostřed lehce zapáčí (cca 1 mm nahoru a pak vytlačit dopředu).

paceni
Tak se objevily další dva šroubky, ale pořád to ještě nebylo všechno. Poslední spoj je totiž lepený, je potřeba odlepit bílou folii, která přidržuje základní desku.

odlepeni

koroze
Vzal jsem teda líh (isopropylalkohol by byl lepší, vím) a vatičky a likvidoval měděnku. Měděnka je teď sice pryč, ale s mobilem je to pořád stejný. Mám podezření na konektor, kterým se připojuje handsfree, takže ho za chvilku asi zlikviduju...

Friday, May 6, 2005

man-pages-cs: update in progress

RTFM je sice hezký, ale dost lidí, co mají s něčím problém, angličtinu moc nee, takže si nainstalujou český manuálový stránky. (anebo s A problém nemají, akorát ty man-pages-cs mají holt nainstalovaný a lokální verzi man upřednostňuje)




Problém je v tom, že ty český man-pages jsou starý minimálně pět let...

Takže jsem se rozhodl zkusit je zaktualizovat. Zatím mám hotovou sekci 4 a 5 (správně, protože tam je jich míň :-).



Tuesday, April 19, 2005

Cooker@official - Tlustý klient hautů

Občas mám doma pracovní notebook a hraju si na něm s linuxem. Asi nejvíc používám live distribuci Slax (upravená 4.2, pětka má bohužel mouchy). Teď se mi navíc povedlo rozchodit bootování ze sítě, a tak už nejsem omezený na live distra. Zkouším si novinky v Cookeru, zatímco na hlavním stroji brouzdá žena po netu v MDK 10.1 (a na harddisku notebooku nebyl změněn jediný bit).




Tlustý klient?

Tlustý klient bootuje ze serveru a data má na serveru uskladněná, ale výpočetní sílu používá svoji.
Narozdíl od tenkého klienta, který v podstatě jen zobrazuje to, co mu server posílá.
Jelikož oba stroje mají srovnatelný výkon (Athlon 1800, 512 RAM x Celeron 1700, 256 RAM), připadlo mi použití tenkého klienta jako plýtvání zdroji.




Jak na to?
Nejprve jsem zkoušel použít průvodce drakTermServ od Mandraku, ale ten předpokládá, že se nasdílí celý / serveru, kam se pomocí ClusterNFS dá i zapisovat. To se mi podařilo celkem bez problémů zprovoznit, ale jen do chvíle, kdy jsem chtěl i na klientovi zprovoznit 3D akceleraci grafiky a totálně se v tom zamotal (nVidia server x ATI klient). Navíc jsem chtěl vyzkoušet i jinou distribuci. Proto jsem drakTermServ spolu s ClusterNFS zavrhl a zkoušel to jinak.

Na opuštěný oddíl hda6 (který se od nějaké doby mountuje jako /mnt/gentoo ;-)) jsem nainstaloval Mandriva Cooker. V něm jsem nainstaloval drakTermServ a nechal jsem vytvořit obraz pro bootování ze sítě. V adresáři /var/lib/tftpboot se tedy vytvořily soubory boot-3c59x.2.6.11-6mdk.nbi a initrd-3c59x.2.6.11-6mdk.img. Ale nefungovaly - z několika důvodů.

Protože síťová karta v notebooku je od firmy 3COM a poněkud nekompatibilní, bylo potřeba upravit zaváděcí obraz utilitou imggen:


cd /var/lib/tftpboot/

mv boot-3c59x.2.6.11-6mdk.nbi boot-3c59x.2.6.11-6mdk.nbi.new

./imggen -a boot-3c59x.2.6.11-6mdk.nbi.new boot-3c59x.2.6.11-6mdk.nbi

rm -f boot-3c59x.2.6.11-6mdk.nbi.new

Další problém byl s initrd. Předně neobsahoval modul mii, na kterém je závislý modul 3c59x a potom předpokládá, že NFS server poskytuje adresář /. Určitě by bylo lepší upravit jen initrd, každopádně já jsem postupoval cestou poněkud jinou. Věděl jsem, že drakTermServ volá příkaz


mknbi-set -v -k /boot/vmlinuz-2.6.11-6mdk -r 3c59x

mknbi-set jsem našel v /usr/bin a zjistil, že je to ve skutečnosti skript, který zase v jednom místě volá další skript mkinitrd-net. A ten jsem upravil k obrazu svému - přidal modul mii:


# seems we've moved nfs into the kernel now

if [ -d "/lib/modules/$kernel_ver/kernel/fs/nfs" ]; then

modules="mii $modules sunrpc lockd nfs" # Always require nfs for nfs mount

fi

Potom jsem ještě zašel do /usr/lib/mkinitrd-net/initrd-skel/, kde se nachází vzorové soubory pro tvorbu initrd a změnil v souboru udhcpc-post natvrdo adresář pro mount NFS na /mnt/gentoo.
Teď jsem tedy znovu spustil příkaz



mknbi-set -v -k /boot/vmlinuz-2.6.11-6mdk -r 3c59x


a Cookera vypnul a nabootoval zpět do Official. Tam jsem překopíroval boot a initrd z /mnt/mdk/var/lib/tftpboot do /var/lib/tftpboot.

Od předchozího pokusu mi v systému zůstal nakonfigurovaný tftp, dhcp a NFS server, v jejichž konfigurácích stačilo udělat drobné změny, aby si odpovídaly verze kernelu a tak podobně.
Jako poslední jsem upravil soubor /etc/fstab u klienta (ve skutečnosti tedy /mnt/gentoo/etc/fstab):


192.168.1.1:/mnt/gentoo / nfs rsize=1024,wsize=1024,noac,nolock,intr 0 0

Teď už jen připojit notebook kabelem, v biosu upřednostnit boot ze sítě et voila!
Mandriva sice při detekci nového hardwaru chvilku přemýšlela, ale všechno si bez problému našla a za chvilku jsem byl v KDE.

Jediné, co mi ještě chybělo byl swap, protože 256 MB RAM opravdu není mnoho. Swapovat přes NFS je prý nebezpečná záležitost, takže jsem použil NBD (Network Block Device) od Pavla Machka.
Vytvořil jsem soubor do kterého bude klient swapovat:


dd if=/dev/zero of=ntbswapfile bs=1048576 count=512

su

mkswap ntbswapfile

Stáhnul jsem a zkompiloval zdrojáky a na serveru spustil server:


nbd-server 9000 /home/hajma/ntbswapfile

(zvláštní je, že dokumentace uvádí volbu -l soubor, kde v souboru je seznam IP, ze kterých lze přistupovat na server, ale při použití této volby program zdechne)
a na klientovi klienta:


modprobe nbd

nbd-client 192.168.1.1 9000 /dev/nbd0

(klient má ještě volbu -swap, která je vyloženě dělaná na swapování, ovšem vyžaduje úpravu jádra. S tím si budu hrát jindy, zatím se mi to nehryže)
A zapnul swapování:



swapon /dev/nbd0

Teď jenom nastavit, aby se síťovka odpojovala až po odpojení fs a nastavit přístup na web a je to.

Update: Stačilo z /etc/rc.d/rc0.d (potažmo rc6.d) vyhodit linky K..nfslock, K..netfs a K..network

Wednesday, April 6, 2005

deltarpm

Posledních pár dní jsem přemýšlel nad vytvářením diffů mezi jednotlivými rpm balíčky pro případ updatů a hrál jsem si s bdiff a bsdiff.
Najednou koukám, že v MDK Cookeru už to je.
Snad se to uchytí a místo 150MB updatů KDE budu stahovat třeba jenom 1/3...



Dobrá práce, MDK!


Monday, April 4, 2005

Spořka's not dead!

Přestěhovali jsme se, tak jsem zašel do spořky změnit si adresu...


Já: Dobrý den

Paní: Dobrý den, jak Vám mohu pomoci?

Já: No, ehm, přestěhoval jsem se, takže bych chtěl změnit adresu na posílání výpisů a tak ...

...předávám občanku a platební kartu jako identifikaci (takovej ten papírek s číslem účtu, co mi vždycky nacpou, zahazuju, nemám rád nabobtnalou dokladovku), diktuju novou adresu

Já: ehm, když jsem se stěhoval minule, tak mi pořád ještě chodily nějaký výpisy, teď mi je donesl člověk, co tam bydlí, asi to bude kvůli týhle kartě, kterou mám ještě od vás, můžete na to juknout?

Paní: Nojo, je tam ulice ..., tak to taky změníme?

Já: Nojo...

Já: No a eště prosímvás změňte tu adresu na zasílání pinů a tak...

Paní: Klik, klik

...(pár podpisů)...
Já: Jo, a je ještě nutný si nechat posílat ty výpisy? Je to docela mrhání peněz (mejch)...

Paní: No, prý někdy letos by to mohlo bejt zrušitelný, optejte se průběžně...

Já: Tak, jo, díky, naschle

Paní: nashledanou

Ale ten inetbanking maj fakt dobrej a že nemám IE mi taktně naznačej jenom na začátku a potom to není vůbec poznat ;-)

Wednesday, March 23, 2005

Silent Mouse - The Second Encounter

Having used my silenced rodent for nearly 1/2 year at home, I finally decided to get rid of the clicking noise at work too and here's the how-to. Some people wanted me to translate the original article, but I guess it's better to start afresh with a revised and simplified approach.


I'm not going repeat reasons for silencing mice, if you want to do it, you probably know why. If you don't know why, then just assume there are people who hate the clicking sound.


Equipment needed:
a Genius Netscroll+ mouse - my original object of experimentation
genius
or other type, such as my Dell scroll mouse (seems to be a Logitech)
dell
(these two have been proven to work)
cross-point screwdriver
soldering iron
tin-lead solder
rosin or flux
sharp knife
2 cm of thin insulated wire (2 pcs) (only if necessary)


1. Disassemble the mouse. Now you can see the three switches that make more than 90 % of the noise (the 10 % are made up by resonance in the plastic body - I tried to fill it with some silencing material, but got no audible difference).

genius-insidedell-inside

Take a look at the switches, they must look more or less like this one:
switch

My method is only possible with this type of switch, if you see other type in your mouse you'll probably have to invent something else. This is the case of middle button of Dell mouse (green circle above).


2. Take notes on the position of white switch buttons. This step is probably unnecessary, as this seems to be always marked on the pcb's.



3. Carefully solder out the two outer switches. In my first attempt I silenced also the middle switch, which turned to be a bad solution. The switch became too sensitive and could be triggered by mere scrolling. I use the middle button rarely, so I left it noisy in the end; but if you do use the middle button often and therefore wish to hush it too, try it, you have been warned.



4. Open the switch by carefully lifting the legs (perhaps there's better word for it) on its sides.
opening-switch
It's wiser to put the switch upside down beforehand, so that the tiny white plastic button won't fall out. It's not a serious problem if you manage to break the legs - just glue the parts together afterwards - or forget it completely and take the risk of mouse malfunction in extreme conditions (e.g. earthquake).



5. Turn the switch cover by 180 degrees and join it with base again.

before: before after: after

What is the purpose? This way the point where the button touches the spring is shifted and somehow the spring now moves gradually rather than at once.
The switch lids of the Dell mouse were a bit different, there wasn't enough room to fit the switch after rotation, so I had to make more space with hot solder gun.



6. Solder the switches back to the PCB. They have to be in the same position as in point 2 - if the button was in front, it has to be in front again...



7. In case where only two pins are connected to the circuit (Genius), the pins of the switches are now reversed. To fix it, just connect the outer pins with a piece of wire. (note that this is an old photo, the middle button is no longer silenced and there's no wire there now)
propojky-genius
With other type of mouse double check the schematics on how the pins are used.

The Dell mouse has both outer pins grounded, so there's nothing left to do.
dell-pcb



8. Reassemble the mouse and enjoy.


You can check recorded sound of clicking before and after. FYI, the sounds are of the Genius mouse, but trust me, the other one is dead silent too, I was just too lazy to record it.

Side notes:
The disadvantage is, that the actual clicking is perhaps not as distiguishable or maybe accurate (no audio feedback in fact), but it's just a matter of getting used to. Other ways I have tried consisted of shortening the distance the spring has to travel, but the noise reduction gained was not satisfactory for me..
Also the mouse buttons are now more sensitive, so you'll get a few false clicks in the first couple of days, before you learn how to handle it.


Monday, March 14, 2005

Moje biosféra

Biosféra je v podstatě takový malý soběstačný svět s uzavřeným koloběhem živin.



Kdysi dávno jsem narazil na stránky, které popisují, jak si takovou biosféru vyrobit doma. Nemůže se to samozřejmě vyrovnat profíkům, ale největší radost má člověk stejně z toho, co si vyrobí sám ;-).



Takže jsem asi před půl rokem vzal litrovou sklenici, naplnil ji vodou, naházel do ní vláknité řasy, které se mi zrovna v tu dobu přemnožily v akvárku, zavřel to pevně víčkem a postavil za okno.



Bohužel jsem si v průběhu nedělal žádnou dokumentaci. Řasy prošly vývojem, nejprve plavaly nahoře, nadnášeny bublinkami kyslíku, pak se uklidnily a zatím sedí dole, patrně se drží několika kamínků, které tam jsou. S řasami se do biosféry dostali i šneci okružáci. Adaptace na nové prostředí měla své oběti, 8 spáchalo protestní sebevraždu vylezením z vody (jejich prázdné ulity jsou vidět v hrdle láhve na jedné z fotek). V současnosti prolézají řasy dva jedinci.. Občas se vodou mihne ještě blíže neidentifikovatelný plankton, asi buchanka, i když už jsem ho vlastně dlouho neviděl ...



Mluvím o té láhvi vlevo, ta vpravo je čerstvě založený pokus se sladkovodními řasami v mořské vodě, který momentálně nevypadá moc dobře.



biosféra1



biosféra2



biosféra-detail


Řasy rostou z živin ve vodě (plus sluneční světlo, samozřejmě), šneci žerou řasy, bakterie rozkládají šnečí hovínka na živiny, a tak pořád dokola ...

Wednesday, March 9, 2005

Serious Sam - The First Encounter

Taková střílečka co funguje i v linuxu


V jednom nejmenovaném obchodě s levnými knihami jsem si nedávno koupil za cenu cca jedné bagety CD ROM se hrou Serious Sam - First Encounter. Protože bylo na obalu uvedeno, že hra frčí v OpenGL, měl jsem celkem slušnou naději, že se mi ji pod linuxem podaří rozchodit. A skutečně, zagooglení stylem "serious sam first encounter linux" mě zavedlo na stránku http://www.seriouszone.com. (v době umístění tohoto zápisu na web nefunkční, nevím proč)


Celkem je potřeba stáhnout 4 soubory - první binárku a 3 patche: ssam-tfe-lnx-beta1a.run, ssamtfe-beta1b.sh.bin, ssamtfe-beta2.sh.bin, ssamtfe-beta3.sh.bin

Patche se musejí aplikovat všechny, protože teprve poslední patch ruší časové omezení pro používání hry (prý ho zavedli proto, aby je lidi neotravovali s dotazy na staré vývojové verze).


K instalaci potřebuje instalátor originální CD, při hře už naštěstí není potřeba a není teda nutný prohledávat šuplíky.

Smysl hry je zcela originální - postřílet všechny zrůdy, najít 4 elementy a záchránit civilizaci. Hrdina je za tímto účelem teleportován do starého Egypta, který se jen hemží balíčky s brokovnicemi, samopaly, RPG ... a příslušnými zrůdami.
Pozitivní je, že vzhledem ke stáří hry si můžu i se svou GeForce4MX440SE nastavit velké rozlišení s maximálními detaily a pořád se to hýbe docela rychle ;-).


Pozn.: Na obalu je napsáno Special edition - 7 z 15 levelů, bude to teda asi trochu osekaná verze. Jak je to ve skutečnosti zjistím, až se mi podaří prostřílet přes ty žáby...





serious1


serious2


serious3


serious4


serious5

Thursday, February 17, 2005

Tuxové v Rakousku

V Rakousku už pouštějí tučňáky i do vlaků a lodí...


BTW nemám tučňáky rád, je jich moc...

tuxi

Friday, February 11, 2005

GPRS přes IrDA na MDK 10.1, Alcatel OT535 a Asus A7V8X

Od lamy pro lamy. Jak jsem to zprovoznil s Oskarem.



Motherboard A7V8X vlastní konektor na IrDA, takže si šikovnější kutil může za pár korun IrDA port vyrobit - viz zde:
http://www.infraredport.com


Funkčnost zapojení se dá zjistit i bez jakéhokoliv softwaru, stačí se na čočky portu dívat při startování počítače přes displej digitálního foťáku - ten infračervené světlo vidí:

infra
Mandrake je na všechno v podstatě připravenej, takže není potřeba kompilovat kernely a tak, ale stačí si nainstalovat irda-utils. V souboru
/etc/sysconfig/irda
jsem ještě musel změnit port, na kterém očekává systém infra zařízení

IRDA=yes
DEVICE=/dev/ttyS1
#DONGLE=actisys+
DISCOVERY=yes


Potom už stačilo spustit IrDA

# /etc/init.d/irda start


a když jsem spustil
# irdadump
, tak jsem viděl, jak si spolu telefon a PC krásně povídají.
22:20:45.039136 xid:cmd 7fc4a198 > ffffffff S=6 s=5 (14)
22:20:45.129124 xid:cmd 7fc4a198 > ffffffff S=6 s=* hajma hint=0400 [ Computer ] (21)
22:20:47.588754 xid:cmd 7fc4a198 > ffffffff S=6 s=0 (14)
22:20:47.678734 xid:cmd 7fc4a198 > ffffffff S=6 s=1 (14)
22:20:47.768727 xid:cmd 7fc4a198 > ffffffff S=6 s=2 (14)
22:20:47.858708 xid:cmd 7fc4a198 > ffffffff S=6 s=3 (14)
22:20:47.948693 xid:cmd 7fc4a198 > ffffffff S=6 s=4 (14)
22:20:48.038680 xid:cmd 7fc4a198 > ffffffff S=6 s=5 (14)
22:20:48.127169 xid:rsp 7fc4a198 < bde98e7c S=6 s=5 ALCATEL OT535 hint=b125 [ PnP Modem Fax Telephony IrCOMM IrOBEX ] (30)
22:20:48.128666 xid:cmd 7fc4a198 > ffffffff S=6 s=* hajma hint=0400 [ Computer ] (21)

Potom ještě nahrát pár modulů (jsou potřeba, nezkoumám proč...):
# modprobe ircomm
# modprobe ircomm-tty

a jdeme nastavit kppp:

Zařízení mám nastavený jako /dev/ircomm1, řízení toku žádné, ukončení řádky CR, rychlost spojení 57600 (asi by bylo lepší nastavit 115200)

V záložce modem mám vypnuto čekání na vyzváněcí tón a jako příkazy modemu toto:
nastavení kppp
jinak všechno na defaultních hodnotách.
Vytáčené telefonní číslo je
*99***1#
a ověření je nastaveno jako "Pomocí skriptu".
Telefon musí bejt samozřejmě taky nastavenej, ale to se u Oskara dá udělat posláním SMS z jejich webu.
Snad jsem na nic nezapomněl, mě to funguje...

Friday, January 7, 2005

Co s myškou ...

Pořád na mě z poličky smutně kouká stará rozkuchaná sériová myška, který jsem zničil mikrospínače, když jsem zkoušel, jak se dá ztišit zvuk klikání.

Tak mě napadlo, že jestli budu mít někdy čas, náladu, nástroje, materiál a tak, zkusím z ní udělat meteorologickou stanici ;-)

Anemometr udělám tak, že vrtulku protáknu tím kolečkem co přerušuje prostor mezi fotodiodou a infraledkou. Teploměr by mohl bejt jednoduchej obvod z termistoru a 555, kterej bude simulovat klikání tlačítka. No a jako soft postačí ovladač myši ;-)))

Tuesday, January 4, 2005

Jenom takovej malej titulek

Malej článeček, nic moc velkýho, prostě jenom testík.

Wireless Tools - překlad man pages

Začal jsem překládat manuálový stránky k Wireless Tools.

Hotovo je tak 95 %, i když u některejch termínů ještě nevím.

Překlady jsou umístěný spolu s originálama na

http://sweb.cz/tropikhajma/index.html




Jakýkoliv připomínky apod. vítám v diskuzi zde