[linux]Szutczki-i-kruczki.pdf

(358 KB) Pobierz
64288711 UNPDF
dla początkujących
Sztuczki i kruczki
Grzegorz Niewęgłowski
Przyspieszenie operacji graicznych w Wine/Cededze
Zaawansowane odpytywanie
bazy RPM
Jakiś czas temu przy porządkowaniu zbi-
orów płyt CD natraiłem na zakurzone
płytki z grami Fallout1/Fallout2 . Teore-
tycznie Cedega/Wine powinny sobie z nimi
bardzo ładnie poradzić (i pamiętam, że w
przeszłości radziły). W praktyce okazało
się, że współczesne wersje strasznie spo-
wolniły na niektórych operacjach graicz-
nych, głównie efektach fade-in/fade-out , do
punktu, w którym gra była niemożliwa.
Szperając w Internecie przekonałem się,
że nie ja jeden mam ten problem, ale nikt
nie umiał zaproponować żadnego roz-
wiązania. Zmienianie wersji Wine/Cedegi
nic nie dawało.
W końcu (nieco przypadkiem) odkry-
łem, że kłopoty powoduje rywaliza-
cja między Cedegą a sterownikiem karty
graicznej ( X.org ) o dostęp do procesora.
Cedega tak agresywnie domagała się pro-
cesora, że zaczynało go brakować dla pod-
systemu graicznego, który blokował się
na niektórych operacjach.
Rozwiązaniem okazało się uruchamia-
nie Cedegi z drastycznie zmniejszonym
priorytetem. Polecenie nice -n 20 cedega
fallout2 sprawiło, że całość zaczęła
w końcu działać z przyzwoitą prędkością.
I nie tylko w moim przypadku przycięcie
apetytu Cedegi/Wine pozwoliło na przy-
spieszenie operacji graicznych.
Paradoksalnie spowolnienie tego emu-
latora potrai przyspieszyć emulację...
Większość użytkowników pakietów RPM
zna wygląd raportów pokazywanych przez
rpm -qi , ale nie zawsze tak rozbudowane
wyniki są potrzebne – czasem potrzebne
są inne, specyiczne informacje. Program
Rpm pozwala na elastyczne układanie za-
pytania (czy też decydowanie o formacie
zwracanych danych). Kluczem są znacz-
niki, których całą listę można zobaczyć po
uruchomieniu rpm --querytags .
Używa się ich w rpm -q --queryformat
(lub w skrócie, rpm -q –qf ), deiniując, jak
mają być układane pola, gdzie mają być
łamane wiersze itp. Można używać wie-
lu poleceń formatujących dopuszczalnych
w składni funkcji printf() , tak samo jak i se-
kwencji kolorujących tekst (aby np. wyróż-
niać optycznie te najistotniejsze elementy
– coś czego brakuje klasycznemu rpm -qi ).
Już prosty przykład pozwala pokazać
elastyczność takiego rozwiązania:
http://www.winehq.org/
http://www.transgaming.com/
Integracja odtwarzacza Last.fm z przeglądarką WWW
Dużą popularnością cieszy się ostatnio
internetowa stacja Last.fm . Wymaga ona
dedykowanego klienta, którego kod jest
na szczęście otwarty i udostępniany na
licencji BSD. Dostępność aplikacji (uży-
wającej Qt4 ) nie jest więc problemem,
ale nieco kłopotliwe może być za to zin-
tegrowanie aplikacji z używanymi przez
tę stację linkami lastfm:// . Należy zdei-
niować nowy protokół i skojarzyć z nim
konkretny program.
W przypadku Opery jest to całkiem
łatwe – wystarczy w zakładce Advanced
dialogu opcji przeglądarki wybrać pozy-
cję Programs i zdeiniować nowy pro-
tokół: “ lastfm ” skojarzony z aplikacją
lastfm-player ”. Od tej pory kliknięcie
na dowolnym “muzycznym odnośniku”
rpm -qa --qf \
'%{NAME}-%{VERSION}-%{RELEASE}:
%{SUMMARY} (%{LICENSE}, %{ARCH})\n'
Deiniowanie nowego protokołu w Mozilli/
Firefoksie
Lub, jeśli istotne są inne informacje: rpm
-qa --qf '%-30{NAME}: %{PACKAGER}\n'.
Jak widać, z pomocą --qf można prze-
iltrować informacje zawarte w bazie RPM
zgodnie z własnymi potrzebami. Zastoso-
wań jest mnóstwo, np. sprawdzenie, jaki
model licencjonowania oprogramowania
jest w danym systemie najpopularniejszy:
rpm -qa --qf '%{LICENSE}\n'|sort|uniq
-c|sort -n.
w ramach stron www.last.fm powinno
odpowiednio uruchamiać program odtwa-
rzający.
W przypadku Firefoksa/Mozilli sprawa
jest nieco bardziej skomplikowana. Ko-
rzystając z adresu about:conig należy
zdeiniować nowy klucz (“ network.pro-
tocol-handler.app.lastfm ”) typu string ,
a jego wartość ustawić na “ lastfm-
player ”.
Oczywiście, w ten sposób można sko-
jarzyć również inne protokoły z aplikacja-
mi docelowymi, np. z komunikatorami
internetowymi.
Linuksowy RAR
W większości popularnych dystrybucji do-
stępny jest tylko unrar (pozwala jedynie
rozpakowywać archiwa .rar ), ale tworzenie
archiwów .rar jest jak najbardziej możliwe,
bez uciekania się do emulatorów systemów
DOS/Windows. Jest to co prawda tylko RAR
(a nie WinRAR ), ale pozwala m.in. na tworze-
nie wieloczęściowych archiwów, co wydaje
się być najczęściej poszukiwaną funkcjo-
nalnością.
http://www.rarlab.com/
Deiniowanie nowego protokołu w Operze
http://www.last.fm/
56 styczeń 2006
64288711.021.png
 
64288711.022.png 64288711.023.png 64288711.001.png 64288711.002.png 64288711.003.png 64288711.004.png 64288711.005.png 64288711.006.png 64288711.007.png 64288711.008.png 64288711.009.png 64288711.010.png
 
sztuczki i kruczki
dla początkujących
Uniwersalny zarządca pakietów – Smart
Jeśli szukasz wygodnego narzędzia do
zarządzania pakietami zainstalowany-
mi w systemie, to być może powinieneś
zainteresować się Smartem . Narzędzie
to jest interesujące z kilku względów
– przede wszystkim jest w sporym stop-
niu niezależne od architektury systemu
pakietów. Smart potrai współpracować
z systemami opartymi na pakietach .rpm ,
.deb i .tgz (Slackware), a jednocześnie
wspiera szeroką paletę zdalnych repo-
zytoriów – urpmi, apt-deb, apt-rpm, Red
Carpet ... i to tylko te najpopularniejsze.
Narzędzie to jest więc wysoce przeno-
śne, co jest wielką zaletą dla osób opieku-
jących się różnymi dystrybucjami – zaso-
bami oprogramowania SUSE, Mandrivy,
FC, Debiana czy Slackware można stero-
wać używając pojedynczego znajomego
interfejsu.
Oprócz uniwersalności programu, auto-
rzy Smarta szczycą się również wyraino-
wanymi algorytmami śledzenia zależności,
które mają w “inteligentny” sposób rozwią-
zywać konlikty między pakietami, wykry-
wać niespełnione/zerwane zależności oraz
pozwalać naprawiać usterki systemu.
Sam Smart oferuje trzy główne tryby
pracy. Uruchomiony przez smart --shell
pracuje w interaktywnym trybie teksto-
wym, udostępniając konsolę pozwalają-
cą wyszukiwać, instalować, odpytywać
i usuwać pakiety. Tryb ten nie jest tak
rozbudowany jak Poldek z PLD , ale uła-
twia złożone wyszukiwania pakietów czy
instalowanie oprogramowania w kilku
krokach.
Obok trybu interaktywnego, Smart
pozwala też używać się w uproszczony
sposób – jeśli trzeba tylko zainstalować
GIMP-a, to smart install gimp powinien
zrobić co należy.
Mi najbardziej przypadł do gustu
trzeci tryb, smart --gui , uruchamiają-
cy (jak można odgadnąć) Smarta z inter-
fejsem graicznym. Zaletą interfejsu jest
jego prostota – przykładowo, Synaptic
był dla mnie dużo trudniejszy do opa-
nowania.
Mimo tej prostoty, Smart ma spory
zestaw cech, które bardzo ułatwiają życie.
W elegancki sposób radzi sobie np. z wie-
loma różnymi repozytoriami. Może mieć
np. podłączone równocześnie repozyto-
ria ze “stabilnymi” pakietami, z pakie-
tami “rozwojowymi” oraz jeszcze jakieś
prywatne zasoby, a nie spowoduje to żad-
nych problemów. Dzięki systemowi prio-
rytetów można w szerokim stopniu stero-
wać tym, które wersje pakietów (z jakich
źródeł) mają pierwszeństwo (np. aby lib-
freetype2 z Penguin Liberation Front miała
Smart bez przeszkód łączy zasoby
z różnych repozytoriów
pierwszeństwo przed pakietem dystry-
bucyjnym, albo aby GIMP był aktualizo-
wany tylko w ramach pakietów z gałęzi
“stabilnej”); można również łatwo zablo-
kować konkretną wersję pakietu tak, aby
Smart nie próbował jej nigdy usuwać/
aktualizować. Elastyczny system deinio-
wania repozytoriów lustrzanych jest rów-
nież przydatny, a pobieranie kilku paczek
równocześnie pozwala optymalnie wyko-
rzystać przepustowość łącza i przyspie-
szyć proces instalacji. Polecam, bo jest to
jeden z niewielu programów, które mimo
prostoty obsługi oferują też sporo zaawan-
sowanych opcji dla tych bardziej wymaga-
jących użytkowników.
http://labix.org/smart/
Matroska – niedoceniony format multimedialny
Jeśli zajmujesz się obróbką nagrań ilmo-
wych i szukasz odpowiedniego formatu
“pojemnika” dla nich, to może pora prze-
konać się do Matroski ( .mkv )? Jak powszech-
nie wiadomo, popularne AVI jest dalekie od
ideału – już samo dodawanie alternatywnej
ścieżki dźwiękowej jest kłopotliwe, a takie
rzeczy jak wymienne ścieżki z napisami cał-
kiem niemożliwe.
Od pewnego czasu rozwiązaniem są
pojemniki Ogg Media ( .ogm ), ale warto
zerknąć i na Matroskę . Poprawia ona
część niedostatków formatu .ogm , czyli
przede wszystkim znacznie zmniejsza
liczbę odczytów potrzebnych, aby wyko-
nać seek (przeskok indeksu odtwarzania),
co pozwala na płynniejsze przesuwanie
w przypadku nośników optycznych. Ma
nieco mniejszy narzut wielkości i jasno
zdeiniowane kodowania ścieżek z napi-
sami. A co najważniejsze dla użytkowni-
ka Linuksa, możliwe jest nie tylko łatwe
odtwarzanie, ale i tworzenie. W pakie-
cie Mkvtoolnix znajdują się wszystkie
potrzebne narzędzia, przede wszystkim
mkvmerge (wzorowany, również skła-
dniowo, na ogmmerge z Ogmtools ) oraz
mmg (graiczna nakładka na mkvmerge ,
pozwalająca “wyklikać” wszystkie usta-
wienia składanych ścieżek).
http://www.bunkus.org/videotools/mkvtoolnix/
Automatyczne wylogowanie z shella
Jednym z lepszych nawyków jest zamy-
kanie wszystkich instancji powłoki przy
opuszczaniu stanowiska, zwłaszcza, gdy
są to powłoki działające na prawach
roota. Łatwo przeoczyć jakieś okien-
ko, gdy jest ono tylko jednym z dziesią-
tek xtermów na ekranie. Pomocne może
być tu ustawianie zmiennej środowisko-
wej $TMOUT . Decyduje ona o czasie bez-
czynności, po którym powłoka automa-
tycznie się wyłączy. Ustawienie export
TMOUT=240 w ~/.bashrc ustanowi czte-
rominutowy (240 sekund) okres ocze-
kiwania. Jeśli w tym czasie użytkownik
nie naciśnie żadnego klawisza, powło-
ka zakończy działanie. Jest to szczegól-
nie przydatne na koncie superużytkow-
nika oraz kontach, do których ma się
zdalny dostęp.
Poza wylogowywaniem można także
automatycznie blokować ekran
www.lpmagazine.org
57
 
64288711.011.png 64288711.012.png 64288711.013.png 64288711.014.png 64288711.015.png 64288711.016.png 64288711.017.png 64288711.018.png 64288711.019.png 64288711.020.png
Zgłoś jeśli naruszono regulamin