четверг, 21 января 2010 г.

Настройка и калибровка монитора

Владельцам Samsung SyncMaster 971p - репозитории есть пакет gddccontrol который помогает в настройке конкретного этого, а также многих других мониторов.

После установки пакета почитайте раздел "Installation" в справке.

Если у вас видео от NVidia можете не читать - просто выполните эти команды.


sudo modprobe i2c-dev
sudo modprobe rivafb
sudo /sbin/MAKEDEV i2c
sudo chmod a+rw /dev/i2c-*


После этого можете запустить настройку монитора командой gddccontrol

вторник, 19 января 2010 г.

Раздача файлов по HTTP

Быстро раздать файлы текущей папки по HTTP можно с помощью команды


python -m SimpleHTTPServer

Настройка HP LaserJet M1319 MFP (и некоторых других)

Качаем и ставим библиотеку hplip 3.9.12 в бинарном виде

Качаем и ставим к ней плагин hplip-plugin 3.9.12 в бинарном виде

Вот исходная заметка.

После чего создаем SAMBA-принтер HP LaserJet M1319 (но не M1319f!) вручную указывая его адрес в SAMBA-сети в закладке "New Printer" / "Windows Printer via Samba". Аутентификацию задавать не надо.

smb://192.168.xxx.xxx/HPLaserJ

Владельца этого принтера и так все знают :)

понедельник, 18 января 2010 г.

Синхронизация и обмен файлами

В составе убунты уже есть установленный сервис Ubuntu One который бесплатно предоставляет 2GB онлайн для хранения любых персональных файлов, а также автоматическую синхронизацию локальной папки с онлайн-папкой.

PDF принтер

Можно печатать в PDF из любой программы установив пакет cups-pdf

Это удобно, если нужно сохранить текст страничек в браузере или отдать кому-то документ на печать, если драйверов принтера нет.

Звук

Для некоторых звуковых плат (для моей Audigy2, например) необходимо включить определенные режимы и опции аппаратного аудио-кодека чтобы звук появился.

Опциями аудио-кодека можно управлять установив GNOME ALSA Mixer из репозитория.

Внешний вид

Если у вас нормальный десктопный 19'' монитор с разрешением 1280x1024, то лучше уменьшить настройку DPI, которая по умолчанию установлена для ноутбуков - в 96 DPI - иначе шрифты выходят очень крупными.

Зайдите в System/Preferences/Appearance

На закладке Fonts есть кнопка Details.

DPI: 85 (или даже 80)
Smoothing: Subpixel (LCD)
Hinting: Slight

Клиентский JAVA софт

Весь клиентский JAVA софт (IDEA, SmartSVN, AquaFold Datastudio, Vuze) ставим в /opt копируя папки под рутом.

Безопасность

Если вы меняете свой пароль, то также измените его в менеджере ключей.

Запустите Password And Encryption Keys в папке Accessories

Закладка Passwords, правой кнопкой на корне дерева и пункт меню Change Password - иначе он будет у вас все время спрашивать старый пароль.

OpenVPN

Настройка соединения до центра

Нужно поставить пакет network-manager-openvpn, после чего в менеджере сети на закладке "VPN" будет активирована кнопка "Add". Есть одна тонкость, менеджер настроек способен принять незашифрованный приватный ключ, однако в дальнейшем подключиться с помощью него он не сможет. Поэтому если у вас незашифрованный key-ключ, конвертируйте его в зашифрованный pem-ключ.


openssl rsa -des3 -in hostkeyNOPASSWORD.key -out hostkeySECURE.pem


Подробности конвертации есть вот тут.

В диалоге по кнопке Advanced надо выставить опции "Use LZO data compression" и "Use a TCP connection", а также выставить порт подключения.

Также, возможно придется починить NetworkManager

Кроме того, надо указать дополнительный роутинг, на закладке дополнительных настроек IP4.


Destination Gateway Genmask
172.16.50.0 10.240.0.5 255.255.255.0
192.168.2.0 10.240.0.5 255.255.255.0
10.240.0.0 10.240.0.5 255.255.0.0


Там же (в роутинге) включить опции "Ignore automatically obtained rules" и "Use this connection only for resources for its network".

JNI

В убунте некоторые репозиторные JNI-фасады укладываются в /usr/lib/jni

Проблема в том, что виртуальная машина от SUN (про другие не знаю) этот каталог не принимает в расчет при поиске бинарных библиотек. Механизм ldd также не помогает и добавление этой папки в кэш поиска при помощи ldconfig к успеху не приводит. Возможно из соображений безопасности, а возможно SUN JDK просто ничего не знает ни про ldd, ни про /usr/lib/jni.

Приходится при запуске java либо указавать параметр виртуальной машины -Djava.library.path=/usr/lib/jni, либо выставлять переменную окружения LD_LIBRARY_PATH=/usr/lib/jni:$LD_LIBRARY_PATH

И то и другое не очень удобно на девелоперской машине, поскольку приложение может вызываться кучей способов (ide, ant, standalone) и в каждом случае приходится указывать эти параметры.

Выходом может быть размещение символьных ссылок на необходимые библиотеки в тех каталогах, в которых JVM все-таки производит поиск. Наиболее подходящим кандидатом для этого случит каталог бинарных библиотек самой JVM - /usr/lib/jvm/java-6-sun/jre/lib/amd64 (для x86-64)

Расшаривание папок через SMB

Создайте папку ~/shared и в GNOME Nautiluse щелкните на ней правой кнопкой мыши. Откройте диалог свойств папки и выберите закладку share. Щелкните на всех трех чекбоксах и нажмите кнопку "Create share". Убунта сама скачает, установит и запусит демона samba

Впрочем можно поставить его и вручную, установив пакет samba

Установка JDK

В репозитории сейчас лежит jdk6.15


sudo apt-get install sun-java6-jdk


После установки в /etc/environment надо добавить переменные окружения


JAVA_HOME="/usr/lib/jvm/java-6-sun"
JDK_HOME="/usr/lib/jvm/java-6-sun"

PowerDesigner под Ubuntu и Wine

PowerDesigner нормально устанавливается, запускается и работает под Wine. Однако попытки сгенерировать SQL-скрипт приводят к ошибкам в VBScript. Поиск в интернете привел к таким же горемыкам - редактировать можно, а генерировать нельзя.

Полностью доверившись интуитивному бессознательному, после nnn-й попытки я нашел такой гарантированный способ решения проблемы для PowerDesigner 15.1

1. Устанавливаем самый свежий wine (у меня сейчас 1.1.36).
2. Качаем winetricks (http://wiki.winehq.org/winetricks) и даем ему права на исполнение.
3. Стираем ~/.wine на всякий случай (если есть)
4. Запускаем winetricks и устанавливаем модули corefonts, fontssmooth-rgb, tahoma, vb6run, wsh56js, wsh56vb
5. Устанавливаем PowerDesigner ("wine PowerDesigner15.exe")
6. Запускаем winetricks опять и устанавливаем модули native_mdac, native_oleaut32
7. Заходим в настройки Wine и на закладке Applications выбираем исполняемый файл pdshell15.exe, после чего устанавливаем для него версию Windows NT 4.0
8. Лицензии и прочее по вкусу - кто на что богат.

Почему именно так и как это работает - объяснить не смогу все равно.

Если вы где-то запутались, что-то пошло не так или что-то просто не нравится, можете запросто снести директорию ~/.wine и начинать все сначала с шага #3.

Запускать PowerDesigner теперь можно с помощью команды

wine start "c:\\Program Files\\Sybase\\PowerDesigner 15\\pdshell15.exe"


Вроде пока все работает и генерируется.

В PowerDesigner не отрисовываются незадоченные тулбары и панели, и не таскаются уже задоченые инструментальные панельки - поэтому постарайтесь поставить ключевую панель "Palette" сразу на нужное место. Иначе придется тасовать их через "Customize..."

Еще один момент. Поскольку настройка PowerDesigner столь специфична - было бы неплохо защитить его от других WINE-приложений, а другие приложения защитить от специфичных настроек PowerDesigner. Для этого можно использовать профили Wine.

Переименовываем директорию "~/.wine" в "~/.wine-powerdesigner", а также создаем скрипт "~/bin/wine-powerdesigner" с помощью которого и будем запускать PowerDesigner

#!/bin/bash

export WINEPREFIX=~/.wine-powerdesigner

wine start "c:\\Program Files\\Sybase\\PowerDesigner 15\\pdshell15.exe"


Таким же образом можно изолировать друг от друга и другие приложения со специфичными настройками.

JAVA разработка

ANT как общесистемное средство сборки лучше поставить из репозитория.

Tomcat, JBOSS, Terracotta и прочие девелоперские приложения лучше выкачивать вручную в виде tar.gz и распаковывать куда-нибудь в районе ~/java/tools

Трюк с PowerDesigner

При генерации SQL-скрипта PowerDesigner запоминает и сохраняет последнее расположение и имя генерируемого файла в самой PDM-модели. Все попытки объяснить ему, что запоминать и использовать нужно путь относительный, а не абсолютный проваливались - даже если указать путь относительный PowerDesigner сразу преобразует его в абсолютный. Это очень неудобно, поскольку PDM файл редактируется на двух разных виртуальных или реальных машинах где путь к проекту выглядит по-разному.

Выход - открыть PDM файл в текстовом редакторе, найти поле GenPathName и вручную вписать туда нужный относительный путь.

Размер терминального окна

Размер терминального окна можно увеличить указав в ярлыке параметр --geometry=140x50

Репозитории

Ручное скачивание и установка deb-пакетов - неправославно.

Православно - настроить репозиторий и устанавливать пакеты из них, поскольку таким образом вы будете автоматически получать обновления.

Зайдите в управление исходными репозиториями System / Administration / Software Sources и на первой закладке Ubuntu Software четыре верхних чекбокса (все кроме Source) для доступа к дополнительным репозиториям.

Также есть и дополнительные репозитории, который поддерживаются не Canonical, а сторонними людьми. Актуальные на данный момент дополнительные репозитории:

https://launchpad.net/~ubuntu-mozilla-daily/+archive/ppa - Ежедневные билды Firefox 3.6 и Thunderbird 3.0 (бета-версии там тоже есть) - но собраны без антиалиасинга

https://launchpad.net/~zyv/+archive/ppa - Свежий Midnight Commander (пакет mc)

https://help.ubuntu.com/community/Medibuntu - Медиа-кодеки и прочее (пакет non-free-codecs)


http://www.virtualbox.org/wiki/Linux_Downloads
- Свежий VirtualBox (пакет virtualbox-3.1)

http://www.winehq.org/download/deb - Свежий Wine (пакет wine1.2)

http://wiki.debian.org/skype - Skype 32-разрядный

TrueCrypt, Skype-amd64, java-окружение ставится вручную

Очень много (практически все) того, что нужно для жизни есть в стандартном репозитории. Если чего-то в репозитории нет - то значит это что-то вам и не нужно.

Tomcat/APR

Установка jni-фасада для APR


sudo apt-get install libtcnative-1

Замена TortoiseSVN

Под Windows есть TortoiseSVN - очень крут и интегрируется в Explorer. Последнее меня всегда раздражало, поскольку мне это не очень нужно.

Из всех поделий под Ubuntu - мой выбор SmartSVN. По умолчанию (после установки) он страшен, как сама смерть. Но изменение конфига ~/.smartsvn/6.5/smartsvn.properties приводит его в божеский вид.


# Here you define system properties for SmartSVN.
#
# On Windows by default the Windows look and feel is used.
# To use the platform independent look and feel, uncomment the next line.
# smartsvn.lookAndFeel.usePlatformIndependent=false

#
# To not show a splash screen at startup, uncomment the next line.
smartsvn.splashScreen.show=false

#
# If you see strange effects in the user interface, e.g. unregular dotted
# focus indicators, especially on large x-coordinates (> 1200 pixels),
# uncomment following line. According to
# http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6801614
# this should work around this problem.
#sun.java2d.d3d=false

smartsvn.ui.font=Arial
smartsvn.ui.fontsize=12


Да, и не забудьте поставить сам subversion


sudo apt-get install subversion



Ключевой момент в комфортном использовании svn, да и любой VCS вообще - правильная и педантичная настройка всех игноров.

Midnight Commander

Удивительно, но mc не так убог как кажется. Вот список клавиатурных сокращений с которым жизнь становится гораздо проще.

http://www.midnight-commander.org/wiki/ru/doc/filePanels/hotkeys

Глюк IDEA

Есть очень неприятный глюк (даже если и IDEA и JDK новые) - в браузере проекта двойной щелчок работает через раз, что раздражает дико.

Проблема описана вот тут
http://www.rsdn.ru/forum/java/3198674.flat.aspx#3198674
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5076635

Там же описан workaround

Лично я прописал вот эти команды сразу в ~/.profile

Содержимое .Xdefaults


*.multiClickTime: 500


В файл ~/.profile добавляем


# Fix swing double-click bug
# See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5076635
xrdb -merge ~/.Xdefaults


Делаем логаут и заходим заново

Резолвинг DNS

По умолчанию в Ubuntu 9.10 не совсем правильно настроен резолвинг доменных имен из-за чего приложения не видят локальные домены *.local, хотя nslookup при этом работает прекрасно.

Проблема в том, что из-за настроек по умолчанию, резолвинг доменов .local даже не доходит до DNS.

Откройте /etc/nsswitch.conf любым редактором с правами администратора и используйте вот такую настройку вместо имеющейся у вас.


hosts: files dns mdns4_minimal [NOTFOUND=return] mdns4


Есть мнение, что резолвер mdns4 можно вообще удалить.