Monday, 28. April 2008, 14:10:31
łatki, conky, gentoo, linux
Ostatnio zaktualizowałem Conky do wersji 1.5.2_pre01107 i ku mojemu przerażeniu znacznie wzrosło jego zużycie pamięci. Co prawda downgrade do 1.5.1 pozwolił pozbyć się tych objawów, ale z ciekawości postanowiłem sprawdzić kto jest winowajcą. Cóż, okazało się, że ktoś zapomniał zwolnić jednej zmiennej w funkcji interface_up. Wyciek pojawia się tylko, jeśli w .conkyrc używamy komendy ${if_up nazwa}. Za każdym razem, kiedy rzeczony interfejs jest podniesiony, program gubi kilkanaście kB pamięci... przy każdym odświeżeniu. Rozwiązanie jest trywialne. Pomogło dopisanie jednej linii kodu. Po stosowny patch swojego autorstwa odsyłam
tutaj.
UPDATE: Łatka została przyjęta przez upstream.
Wednesday, 9. April 2008, 18:41:26
hal, łatki, kde, eject
...
Po ostatniej aktualizacji udeva, którą zrobiłem przy okazji
migracji na OpenRC, zauważyłem w KDE jeden niepokojący objaw. Po kliknięciu prawym przyciskiem na ikonie zamontowanego nośnika i wybraniu "Usuń bezpiecznie" zaczął pojawiać się komunikat, że owszem nośnik odmontowano, ale nie można go wysunąć. Zdziwienie było o tyle większe, że raz już zwalczyłem ten błąd (wtedy pomogło dodanie użytkownika do grupy disk). By oszczędzić drapania się po głowie osobom, które znalazły się w tym samym położeniu, zdradzę jak udało mi się tę wredną pluskwę ubić. Zasadniczo istnieją cztery sposoby, by to zrobić (osobiście polecam ostatni):
1)
Patch na kdeeject. Nakładamy łatkę i KDE zaczyna używać eventów HAL do wysuwania zamiast komendy eject. Aktualnie używam, działa cudownie.
2)
Zmiana parametru w media_safelyremove.desktop. Po tej zmianie KDE zamiast próbować wysunąć nośnik tylko go odmontuje.
3) Innym, ale niezbyt bezpiecznym rozwiązaniem jest ustawienie suid root dla /usr/bin/eject:
chmod u+s /usr/bin/eject
4) Chyba najbardziej eleganckie rozwiązanie. Tworzymy plik /etc/udev/rules.d/51-local.rules i wklejamy tam taką regułkę:
ACTION=="add", SUBSYSTEM=="block", KERNEL=="sd[a-z]*", ATTRS{removable}=="1", MODE="0660", GROUP="plugdev"A skoro już jesteśmy przy temacie KDE, HAL i ejecta, pozwolę sobie wspomnieć o kolejnym bugu, który mnie irytuje, tym razem od nieco dłuższego czasu. Przycisk eject na napędzie dvd wysuwa zamontowaną płytę dopiero po drugim naciśnięciu. Na domiar złego powoduje to restart kded i tracę skróty klawiszowe, co zmusza mnie do uruchomienia khotkeys. Niezbyt fajnie, prawda? Co ciekawe winne okazały się... wpisy od udziałów NFS w fstab. Wygląda na to, że backend HAL w KDE nie przepada za nazwami z dwukropkami. Sytuację rzekomo poprawia
ten patch. Rzekomo, bo u mnie nie zauważyłem zmian. Może do działania wymaga jeszcze jakiejś łatki. W każdym razie, wróble ćwierkają, że w KDE 3.5.9 ten bug został na dobre ubity. Czekam więc na odmaskowanie tej wersji. Tymczasem po prostu zakomentowałem odpowiednie wpisy w fstabie, bo z rzeczonych udziałów korzystam raczej sporadycznie. Nie jest to jednak zbyt ładne rozwiązanie.
EDIT: Dodałem dwa inne sposoby, w tym regułkę udeva.