Studium Szaleństwa

na granicy potępienia

Archive for the ‘Linux/Unix’ Category

Alsa zamiast PulseAudio i klawiatura?

Posted by samaelszafran under Linux/Unix

No, PulseAudio (syf instalowany w najnowszym ubuntu, do dźwięku) ssie. Naprawdę, problemów z nim od cholery – wszyscy doradzają przesiadkę na Alsę – no to ja opiszę krok po kroku jak to zrobić tak, żeby dodatkowo działało jeszcze podgłaszanie/ściszanie z klawiatury ;)

1. Wywalamy Pulse, instalujemy Alse

# aptitude remove pulseaudio
# aptitude install esound

2. Robimy kopie zapasowe, tak na wszelki wypadek

# cp /etc/X11/Xsession.d/70pulseaudio /etc/X11/Xsession.d/70pulseaudio.back && rm /etc/X11/Xsession.d/70pulseaudio

3. Nie ma apletu do dźwięku! Co teraz?

Instalujemy te dwie paczki:

http://resonance.org/~josh/gnome-applets_2.28.0-0unofficial1_i386.deb

http://resonance.org/~josh/gnome-applets-data_2.28.0-0unofficial1_all.deb

I dodajemy regulator głośności jako applet do panelu.

4. Klawiatura

No, moja ulubiona część. Zakładam, że amixer jest już w systemie.

Otwieramy: System → Preferencje → Skróty Klawiszowe

Klikamy na dodaj – podajemy następujące parametry.

nazwa polecenie
ALSA VOLUME UP amixer set PCM 5%+
ALSA VOLUME DOWN amixer set PCM 5%-
ALSA MUTE Przejdź do pkt. 5

5. Wyciszanie

Niestety, nie znalazłem w amixerze prostego sposobu na wyciszenie dźwięku. Tzn tak: można zrobić ‘amixer set PCM mute’, ale wtedy żeby go włączyć spowrotem trzeba nieco innego polecenia użyć (amixer set PCM unmute). To trochę niewygodne, bo nie da się tego w prosty sposób przypisać pod klawisz.

Napisałem własny skrypt, który należy wrzucić do /usr/bin, nadać mu uprawnienia 755, stworzyć plik /var/alsastate i jego podać, jako polecenie do klawisza wyciszania. Skrypt korzysta z języka TCL. Sam skrypt:

#!/usr/bin/env tclsh
set statefile "/var/alsastate"
proc checkstate { } {
	global statefile
	set fd [open $statefile r]
	set state [read $fd]
	close $fd
	return $state
}

proc setstate { to } {
        global statefile
        set fd [open $statefile w]
        puts $fd $to
        close $fd
}

if {[checkstate] == 1} {
	puts stdout "muted!"
	exec amixer set PCM mute
	setstate 0
} else {
	puts stdout "not muted!"
        exec amixer set PCM unmute
	setstate 1
}

I rzeczy które potrzebujemy do jego odpalenia:

# aptitude install tclsh
# touch /var/alsastate

No – i to na tyle. Przypominam, użytkownik musi mieć uprawnienia do zapisu /var/alsastate, oraz że mój skrypt musi mieć uprawnienia +x.

Czyli mały poradnik – skoro mi się udało to się tym podzielę.

Nie tylko inkscape, ale większość aplikacji z opcją przejścia w tryb pełnoekranowy, “miga” przy najechaniu na cokolwiek myszką, gdy mamy włączone efekty compiza. Jakie na to lekarstwo? Okazuje się że o wiele lepsze niż fallback do metacity:

Otwieramy menedżera compiz, poleceniem:

ccsm

Wchodzimy w Opcje Ogólne i odznaczamy kwadracik przy opcji “cofnij przekierowanie okien pełnoekranowych“. Co prawda odbija się to odrobinkę na wydajności, ale skoro używamy compiza to raczej mamy sprzęt który sobie da z tym rade :-)

UnrealIRCd 3.2 – kanaly a unicode.

Posted by samaelszafran under IRC, Linux/Unix

To dzisiaj na moim blogu osoby niezainteresowane tematyką informatyczną się ponudzą.

Dzisiaj, drogie dzieci (tjaaa…) opowiem wam o zjawisku kanałów zawierających znaki unicode w swoich nazwach. Ale o co chodzi?

‘Znaczki’ o które mi chodzi to różne specjalne znaki, typu:  €, ث, ©, ñ, á. Oczywiście na serwerach opartych o unreala można dołączyć na kanały zawierające takie znaki w nazwach, nawet je rejestrować w serwisach. Nie powinno tak być.

Dlaczego?

Kodowanie. Każdy może mieć inne kodowanie, przez co nie wszystkie znaki wyświetlane są poprawnie. Przykładowo:

użytkownik dołączył do kanału #€, jego zestaw znaków to unicode UTF-8. Ja, korzystając z ISO-8859-2 widzę to jako #EUR. Próbując dołączyć do tego kanału, dołączam na #EUR, nie na #€.

Nawet jeśli mam UTF-8, ktoś może użyć innego kodowania, przez co nie będe w stanie prawidłowo dołączyć na ten kanał.

Zakładając że tworzy się tam jakiś ddosnet, dochodzi do łamania prawa, lub łamania regulaminu sieci, nie jestem w stanie jako administrator tego sprawdzić (no bo jak mogę kontrolować kanał nie mogąc do niego dołączyć?).

Read the rest of this entry »

Subscribe to Studium Szaleństwa