понедельник, 28 мая 2007 г.

SuSE 10.3 alpha 4

Не так давно вышла 4-я alpha-версия грядущей SuSE 10.3. Вот несколько скриншотов, yast наконец-то обрел "Гномовское обличье", и интегрирован в Гномовский Control Cener :)





понедельник, 21 мая 2007 г.

SuSE 10.2: zypper - еще один способ установки пакетов.

Недавно промелькнула новость о том что из грядущей SuSE 10.3 будет удален ZENworks Managment Daemon(zmd). zmd, для большей части обычных пользователей - это та штука которая заставляет глубоко задуматься yast когда вы открываете диалог установки программ :) Для бОльшей же части пользователей наиболее традиционным способом установки программ является установка через соответствующий диалог yast'а. Диалог достаточно удобный и хорошо визуализирует то что вы пытаетесь сделать. Вот только если надо просто поставить xmms, или другую подобную мелочь, такой способ установки превращается в долгий и утомительный :). Вот другой способ для "мелких" установок, с помощью консольной утилиты zypper.
zypper -h выводит короткий хэлп по опциям:

 


Options:
--help, -h Help
--version,-V Output the version number
--verbose,-v Increase verbosity
--terse, -t Terse output for machine consumption
--table-style,-s Table style (integer)
--rug-compatible,-r Turn on rug compatibility
Commands:
help Help
shell, sh Accept multiple commands at once
install, in Install packages or resolvables
remove, rm Remove packages or resolvables
search, se Search for packages matching a pattern
service-list, sl List services aka installation sources
service-add, sa Add a new service
service-delete, sd Delete a service
service-rename, sr Rename a service
refresh, ref Refresh all installation sources
patch-check, pchk Check for patches
patches, pch List patches
list-updates, lu List updates
update, up Update packages
info, if Show full info for packages
patch-info Show full info for patches



На первый взгляд не много, но давайте попробуем установить что-нибудь, например в свежеустановленной SuSE не хватает "нормальной" xine-lib, способной "играть" mp3, и "показывать" все видео. Традиционным решением проблемы является добавление репозиториев от packman и установка соответствующих пакетов из этих репозиториев. За добавление репозитория у zypper отвечает команда "sa". Смотрим хэлп для нее:



beezir:~ # zypper -h sa

service-add [options] URI [alias]

Add a service (installation source) to the system.

Command options:
--repo,-r Read the URL and alias from a file (even remote)
--type,-t Type of repository (YaST, YUM, or Plaindir)
--disabled,-d Add the service as disabled
--no-refresh,-n Do not automatically refresh the metadata



ОК. типа репозитория я не знаю, остальные опции вроде еще более ненужные поэтому делаем просто:



beezir:~ # zypper sa http://packman.mirrors.skynet.be/pub/packman/suse/10.2

Determining http://packman.mirrors.skynet.be/pub/packman/suse/10.2 source type...
http://packman.mirrors.skynet.be/pub/packman/suse/10.2 is type YUM
Do you want to trust key id 45A1D0671ABD1AFB PackMan Project (signing key) fingerprint:F8875B880D518B6B8C530D1345A1D0671ABD1AFB ? [y/n]: y
Import key 45A1D0671ABD1AFB in trusted keyring? [y/n]: y
Added Installation Sources:
[x]* http://packman.mirrors.skynet.be/pub/packman/suse/10.2 (http://packman.mirrors.skynet.be/pub/packman/suse/10.2)


После выяснения типа репозитория zypper задумывается на некоторое время(я так понимаю скачивает список пакетов и прочую мета-информацию), после чего появляются вопросы касательно "доверия" этому источнику установки.

ОК. Репозиторий мы добавили. Теперь надо найти как в нем называется эта самая libxine:


beezir:~ # zypper se xine

Restoring system sources...
Parsing metadata for 20070520-174005...
Parsing metadata for 20070520-174057...
Parsing metadata for http://packman.mirrors.skynet.be/pub/packman/suse/10.2...
Parsing metadata for 20070520-174026...
S | Catalog | Type | Name | Version | Arch
--+--------------------------------------------------------+---------+---------------------------+---------------+-----
i | 20070520-174005 | package | amarok-xine | 1.4.4-28 | i586
i | 20070520-174057 | package | amarok-xine | 1.4.4-28 | i586
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | gxine | 0.5.11-0.pm.0 | i686
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | gxine | 0.5.11-0.pm.0 | i586
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | gxine-browser-plugin | 0.5.11-0.pm.0 | i586
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | gxine-browser-plugin | 0.5.11-0.pm.0 | i686
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | jftpgw-xinetd | 0.13.5-0.pm.1 | i586
| 20070520-174005 | package | kdemultimedia3-video-xine | 3.5.5-30 | i586
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | kdemultimedia3-video-xine | 3.5.5-31.pm.0 | i586
| 20070520-174057 | package | kdemultimedia3-video-xine | 3.5.5-30 | i586
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | libxine1 | 1.1.6-0.pm.0 | i686
| http://packman.mirrors.skynet.be/pub/packman/suse/10.2 | package | libxine1 | 1.1.6-0.pm.0 | i586
....



Выбираем из таблички нужный нам libxine1, и xine-ui, и устанавливаем их.


beezir:~ # zypper in libxine1 xine-ui
Restoring system sources...
Parsing metadata for 20070520-174005...
Parsing metadata for 20070520-174057...
Parsing metadata for http://packman.mirrors.skynet.be/pub/packman/suse/10.2...
Parsing metadata for 20070520-174026...
Parsing RPM database...
Summary:
[S1:1][package]DirectFB-0.9.25-29.i586
[S3:0][package]libcaca-0.9_0.99.beta11-0.pm.0.i586
[S3:0][package]libxine1-1.1.6-0.pm.0.i686
[S3:0][package]xine-ui-0.99.5-0.pm.0.i686
[S0:0][package]xine-lib-1.1.2-39.i586
Continue? [y/n] y
Downloading: [S1:1][package]DirectFB-0.9.25-29.i586, 765.6 K(3.0 M unpacked)
Installing: [S1:1][package]DirectFB-0.9.25-29.i586
Downloading: [S3:0][package]libcaca-0.9_0.99.beta11-0.pm.0.i586, 302.5 K(1.1 M unpacked)
Installing: [S3:0][package]libcaca-0.9_0.99.beta11-0.pm.0.i586
Downloading: [S3:0][package]libxine1-1.1.6-0.pm.0.i686, 9.8 M(23.2 M unpacked)
Installing: [S3:0][package]libxine1-1.1.6-0.pm.0.i686
Downloading: [S3:0][package]xine-ui-0.99.5-0.pm.0.i686, 2.1 M(4.5 M unpacked)
Installing: [S3:0][package]xine-ui-0.99.5-0.pm.0.i686



Вот примерно так, все достаточно просто. Не смотря на что все это выполняется с присущей SuSE-шному пакетному менеджменту медлительностью, но все-равно быстрее, чем, скажем, если это делать через yast :).

Вот так в очередной раз забрел в СуСЕ :-)

среда, 2 мая 2007 г.

fluxbox & xinitrc. some new tips.

Fluxbox

Вот недавно узнал из чтения тамошней wiki - достаточно полезная штука "переназначать" некоторые дефолтные установки тем. Для чего это надо? - В темах для fluxbox часто используется шрифты в которых нет места русским символам. Соответственно включаем - и видим на месте русских букв нечто не читаемое. Хорошо если локаль для fluxbox'а какая-нить en_US.UTF-8, как у меня и проблема прежде всего касается кривых заголовков окон firefox'a, и др. программ которые хотят выставлять русские буквы в заголовок. Вот ежели вообще весь интерфейс по русски(а fluxbox русифицирован практически полностью) - вот тогда откровенно неудобно. :) Другой возможной причиной может быть желание закрепить намертво размер некоторых элементов - например панельки, например потому что значки нарисованы для 16x16 и хочется чтобы так и было. Да и вообще неинтересно заново привыкать к слишком большим, или к слишком мелким элементам.

Ок. Теперь собсно как это делается. В ~/.fluxbox/init есть параметр
session.styleOverlay: ~/.fluxbox/overlay
задает имя файла в котором будут "переназначения" устанавливаться.
Формат файла такой же как у файла тем, поэтому можно просто скопировать нужные константы из уже работающей темы, например вот так вот:

menu.frame.font: arial-9:
menu.title.font: arial-10:bold
toolbar.clock.font: arial-9:bold
toolbar.workspace.font: arial-10:bold
toolbar.iconbar.focused.font: arial-8:bold
toolbar.iconbar.unfocused.font: arial-8
window.font: arial-8


для установки шрифтов. Правда, не стоит устанавливать слишком много - иначе смысл установки новой темы потеряется :)

.xinitrc

В последнее время заинтересовался wmii, dwm и иже с ними. Не скажу что готов прямо сейчас бросится в пучину неперекрывающихся окон и табов, но когда нужно расшвырять окна исходя из конкретных заданий, и иметь возможность быстро переключатся между заданиями + когда не нужно видеть список окон, но хочется видеть максимально все окна и быстро перескакивать между ними(= фокус следует за мышкой - то что эта приятность по дефолту - приятно удивило). О чем это я.

Я тут уже описывал свой startup-файл для fluxbox'а, из которого фактически запускается все что должно быть запущено со стартом WM. С появлением "альтернативного" WM хотелось бы чтобы часть программ запускалась и в нем - поэтому переносим настройки из ~/.fluxbox/startup в ~/.xinitrc (напоминаю что по некоторым причинам есть еще файл ~/.xsession из которого просто вызывается ~/.xinitrc):

Первая часть вполне стандартна:

#!/bin/bash
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $

#X-settings:
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# merge in defaults and keymaps

if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi

if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi

if [ -f $userresources ]; then
xrdb -merge $userresources
fi

if [ -F $usermodmap ]; then
xmodmap $usermodmap
fi


Далее как раз то о чем мы говорили:

#выбираем WM:
#wm=/home/diesel/my/programs/dwm/bin/dwm
#wm=wmii
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
wm=/usr/bin/fluxbox
$wm &
wmpid=$!

{
#wallpaper:
# /usr/bin/feh --bg-scale /home/diesel/.fluxbox/backgrounds/33.jpg &
/usr/bin/feh --bg-scale /home/diesel/wallpapers/digo.ws_green_wallpapers_0052.jpg &
wait $!
#Если запускается fluxbox мы хотим чтобы с ним запускался torsmo и xxkb:
if [ $wm == '/usr/bin/fluxbox' ]; then
/home/diesel/bin/torsmo &
# gaim &
xxkb &
fi
#а вот тачпад хочется блокировать не зависимо от используемого WM :-).
/usr/bin/syndaemon -i 10 -d &
} &
wait $wmpid