суббота, 26 октября 2013 г.

NetBeans и репозиторий Git

Задача - настроить NetBeans на использование вновь созданного репозитория Git.

Создаем в Git новый репозиторий, как это сделать из шела http://mldav.blogspot.com/2011/08/git.html


В NetBeans выполняем - все из контекстного меню проекта (клик правой кнопкой на проекте)

Versioning -> Initialize Git Repository - проверяем путь - ок

Git -> Add   - это добавит все файлы проекта (кроме исключений)

Git -> Commit  - вносим краткое описание изменений - убедится что все файлы включены в коммит

Git -> Remote -> Push
настраиваем
галка в "Specify Git Repository Location"
заполняем "Repository URL"  _сервер_:_репо_.git
Username: gitosis
галка в "Private/Public key"
Private key File - ваш файл с приватным ключом
Next
Далее ставим галки - Master
Finish

В дальнейшем при Push уже заполнять не надо - просто выбираем в поле Select Configured Git Repository Location свой настроенный репо - а если он единственный, то и выбора нет. Сразу жмем Next и т.п.

С созданием разобрались. Теперь что касается работы с репо на новом месте

Team - > Git -> Clone  - заполняем "Repository URL"  _сервер_:_репо_.git и все остальное как в предыдущем случае.
Выбираем Master или что там вам позволено.
Далее указываем Parent Dir и Clone Name
Finish
Ну и затем вам возможно предложат открыть склонированный проект.

Если проект большой - клонировани или первый push может занять длительное время, потом все пойдет веселее.

четверг, 24 октября 2013 г.

Тюнинг NetBeans после установки

Имеем свежий NetBeans 7.4, его конфиг хранится в файле /каталог_установки/etc/netbeans.conf


1. отключаем hinting (сглаживание) шрифтов:
в конфиг в параметр "netbeans_default_options" добавляем
-J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=off


2. включить принудительно английский язык:
в конфиг в параметр "netbeans_default_options" добавляем
--locale en:US

воскресенье, 18 августа 2013 г.

Drupal и Drush

Краткий конспект.

Drush - интерфейс командной строки для управления сайтом на Drupal
Есть в репо Debian.

Запускаем из корневого каталога сайта. Если присутствует мультисайтинг - указываем параметр  -l http://_ваш_домен_

Вывод подробной информации о конкретном модуле - к примеру "captcha"
drush pm-info captcha

Вывод информации о доступных версиях конкретного модуля - к примеру "captcha"
drush pm-releases captcha

Апдейт ядра друпала (внимательно читаем вывод на консоли)
drush up drupal

Вывод списка всех модулей
drush sm

Установка модулей, к примеру - elfinder imce token ckeditor
drush dl elfinder imce token ckeditor

Апдейт базы после установки модулей и обновления версии друпала:
drush updatedb

Примерный алгоритм действий такой - друпал требует обновления ядра и модулей.
0. Бэкапим все и вся.
1. Смотрим какие модули просит обновить друпал.
2. Переводим сайт в режим обслуживания.
3. Переходим в каталог с сайтом. 4. Находим имена требуемых в п.1 модулей в выводе команды drush sm, в скобках указано - т.е. к примеру "0 Point (zeropoint)" - "0 Point" - наименование модуль, а "zeropoint" - имя модуля необходимое в п.5
4. Апдейтим ядро drush up drupal
5. Обновляем модули в соответствии с п.3 drush dl _список_модулей_ (список через пробел)
6. Апдейтим базу drush updatedb
7. Переводим сайт в "боевой" режим.

А вообще читайте здесь по Drush - http://it-patrol.ru/docs/%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0-%D1%81-drush

понедельник, 22 июля 2013 г.

HP ProBook 4535s и сенсорная панель.

Имеем - Touchpad Synaptics

Для активации всех вкусных плюшек сенсорной панели устанавливаем gpointing-device-settings или gsynaptics

 apt-get install gpointing-device-settings

запускаем gpointing-device-settings и выбираем что приглянется

если в гноме, то можно еще вызвать gnome-mouse-properties и в вкладке "тачпад" активировать клик сенсорной панелью.

Хотя не всегда "тачпад" удается активировать клик сенсорной панелью.

По умолчанию часто отключена эта функция. Если тап не заработал, попробуйте из консоли выполнить команды:

synclient TapButton1=1
synclient TapButton2=3

Это активирует клик левой кнопки по одиночному касанию, и правой по касанию двумя пальцами. Если заработало, имеет их добавить в "автозагрузку" десктопа. Т.е. к примеру поместить в файл ~/.config/autostart/synaptics.desktop следующие строки

    [Desktop Entry]
    Name=Tapping
    Exec=/path/to/script/synaptics.sh   -- ваш путь
    Terminal=false
    Type=Application
    Categories=
    Hidden=true

Затем создать скрипт в /path/to/script/synaptics.sh вида

#!/bin/bash
synclient TapButton1=1 TapButton2=3

и не забыть его сделать исполняемым. А в случае с XFCE необходимо активировать эту автозагрузку или создать ее средствами DE.


Еще момент, если до этого вы настроили запуск драйвера мыши с параметром imps вроде этого modprobe psmouse proto=imps

то все вкусные плюшки сенсорной панели будут недоступны. Для этого надо убрать принудительный выбор протокола imps. После этого набор настроек значительно расширится.

воскресенье, 21 июля 2013 г.

mjpg-streamer и ошибка Unable to set format: Invalid argument и 501: Not Implemented!

Имеем usb видеокамеру UVC (USB video class).
Zoneminder по умолчанию не поддерживает работу с этим стандартом. Как вариант - натравить на камеру mjpg-streamer (пакет для Debian в номер версии содержит буквы, что приводит в негодование dpkg - лечится распаковкой, правкой версии и запаковкой пакета)

При запуске обычной командой
mjpg_streamer -i "input_uvc.so" -o "output_http.so"
имеем ошибку
Unable to set format: Invalid argument

а все потому, что камера вещает не в MJPG, а в YUY2, т.е. надо добавить параметр -y

mjpg_streamer -i "input_uvc.so -y" -o "output_http.so"

И далее из браузер вызываем
http://localhost:8080

и получаем

501: Not Implemented! no www-folder configured

Опять же, необходимо модифицировать урл и сделать его вида

http://localhost:8080/?action=stream

Ну и теперь это значение можно использовать в Zoneminder

четверг, 27 июня 2013 г.

Pulseaudio и скачущая громкость.

Проблема простая - играет фоновая музыка и тут, к примеру, приходит сообщение и psi проигрывает звуковое уведомление. Как результат - громкость фоновой музыки меняется на время проигрывания уведомления. Мелочь, но раздражает.

Один из вариантов - отключить в pulseaudio подстройку громкости.
В файле /etc/pulseaudio/daemon.conf
раскомментировать опцию и изменить значение:

flat-volumes = no

Затем рестартовать pulseaudio

пятница, 21 июня 2013 г.

Debian 7/8 (64бита) и Skype

Новая редакция давнего сообщения - кое-что изменилось в лучшую сторону, май 2015

Для установки на amd64 надо включить Multi-Arch:

# dpkg --add-architecture i386
# apt-get update

затем качаем i386 пакет Skype для Debian и установливаем его:

# wget -O skype-install.deb http://www.skype.com/go/getskype-linux-deb
# dpkg -i skype-install.deb

Если потребуется, установим требуемые зависимости:

# apt-get -f install

-------------------------------------------------------------------------------------
Старая редакция.

Ненавижу skype и все жду не дождусь, когда народ начнет пользоваться нормальным SIP. Но огромное количество "хомячков" и слабопродвинутых менеджеров пользуются отсталыми технологиями, с некоторых пор приобретенных Мелкософтом, отчего оно стало еще хуже.

Все, высказался!

Теперь по делу - ставим skype с их странички - Dynamic версию, на данный момент это skype-4.2.0.11.tar.bz2.
Распакаовываем, запускаем ./skype и получаем сплошной ... ну в общем не запускается оно. Всякого рода ошибки:

skype error while loading shared libraries libasound.so.2 No such file or directory

и т.п. и т.д. - мелкомягкие не могут выпустить полноценную 64битную версию этого поделия, да они ничего нормальное не могут сделать. пора уже привыкнуть.

Действуем примерно так:

sudo dpkg --add-architecture i386
sudo aptitude install lib32asound2
sudo aptitude install libxss1:i386
sudo aptitude install libxv1:i386
sudo aptitude install libqt4-webkit:i386
sudo aptitude install libqt4-dbus:i386

Ну и дальше запускаем и "наслаждаемся" отвратительным качеством связи и прочими "приятностями".

P.S. и оно таки периодически падает, пишет - аварийный останов.

Еще вариант:
apt-get install libasound2-plugins:i386 libqtwebkit4:i386 libqtdbus4:i386 libasound2-plugins:i386 libxv1:i386 libxss1:i386


четверг, 20 июня 2013 г.

Debian 6 и sources.list

Итак, имеем на сервере Debian 6, притом, что вышел Debian 7 и соответственно изменились источники пакетов.
На официальном сайте указано, что нынче пакеты для шестой версии находятся в http://archive.debian.org
Различного рода online генераторы sources.list подтверждают эту версию оптимистично выводя что-то вроде:

deb http://archive.debian.org/debian oldstable main contrib non-free

Увы, нет там ничего подобно, во всяком случае на момент публикации этой заметки.

А вот тут есть:

deb  http://ftp.debian.org/debian oldstable main contrib non-free

вторник, 11 июня 2013 г.

NetBeans и ошибка "Cannot find java. Please use the --jdkhome switch."

Если при запуске NetBeans получаем вывод в консоли "Cannot find java. Please use the --jdkhome switch.", значит надо поправить пути в конфиге

~/netbeans-7.3/etc/netbeans.conf

изменяем параметр  netbeans_jdkhome на правильный, к примеру:

netbeans_jdkhome="/usr/lib/jvm/jdk_curren"

суббота, 1 июня 2013 г.

Автозагрузка правил iptables и Debian

В общем, еще один из способов подгрузить при старте правила файрвола

Ставим пакет iptables-persistent

Установится скрипт /etc/init.d/iptables-persistent, который и будет восстанавливать правила после запуска системы.
Так же предложат сохранить уже имеющиеся правила.
Правила теперь находятся в /etc/iptables/rules
после тестирования правил, сохраняем их

iptables-save > /etc/iptables/rules.v4

И не забыть еще в /etc/sysctl.conf раскомментировать строку
net.ipv4.ip_forward=1

либо где-то в автозагрузку пихать придется строку вида
echo 1 > /proc/sys/net/ipv4/ip_forward

Манипуляция с маршрутами и route

Удалить маршрут(шлюз) по умолчанию:

route del default

Добавление маршрута(шлюза) по умолчани:

route add default gw 192.168.0.1

или 

route add -net 0.0.0.0 gw 192.168.0.1

Очистка конфига от комментариев

grep -v ^# _file_name_ | grep -v ^$ | grep -v ';'

jabber сервер Prosody и Debian

Установка из репо как обычно:

aptitude install prosody

Конфиг у него в /etc/prosody/prosody.cfg.lua:
прописываем свой VirtualHost "example.com" и комментируем ("--") строку

--      enabled = false -- Remove this line to enable this host
что бы активировать хост.

Добавляем админа:

admins = {"admin@example.com"}

Для создания групп используется модуль "groups" (по умолчанию отключен в конфиге)
Создаем файл для групп в формате:

[Group1]
sdasd@example.com
sdssd@example.com

[+Group2]
asdf@example.com=Some body
zxcv@example.com=Cris

При этом пользователи из группы Group2 будут видны всем, а пользователи из группы Group1 будут видны только внутри этой группы.
Знак "+" как раз на это и влияет.

Сохраняем как /etc/prosody/sharedgroup.txt, и в конфигурационном файле указываем где он находится:

modules_enabled = {
....
"groups"; -- Shared roster support
....
}
groups_file = "/etc/prosody/sharedgroup.txt"

рестартим Prosody:
prosodyctl restart


Добавление пользователя:
интерактивное:
prosodyctl adduser xxx@example.com
запросит пароль и его повтор

пакетное:
prosodyctl register login domain password
удобно в скрпитах и т.п.

Настраиваем хранение данных в mysql
ставим нужный модуль
aptitude install lua-dbi-mysql

Создаем базу и права на нее (не забудьте везде поставить Ваш пароль)
mysql> GRANT ALL ON prosody.* TO 'prosody'@'localhost' IDENTIFIED BY 'password';
mysql> CREATE DATABASE prosody;

Раскомментируем строку
storage = "sql"
и раскомментируем и отредактируем соотв. источник sql

sql = { driver = "MySQL", database = "prosody", username = "prosody", password = "password", host = "localhost" }

рестартим Prosody:
prosodyctl restart

Prosody сам создаст нужные таблицы в базе и т.п. Единственный момент, если пользователей уже создавали и регистрировали в "локальном" хранилище, их нужно либо экспортировать в mysql, либо завести по новой.



вторник, 16 апреля 2013 г.

NetBeans, Andorid и логи эмулятора.

Если при отладке приложения в эмуляторе нет вывода логов, то их можно просто открыть из меню Window -> Output -> ADB Log

вторник, 9 апреля 2013 г.

NetBeans, Android и загрузка apk

Свеже установленный NetBeans и плагин к нему для Android работает, и даже запускает созданный эмулятор. Да только приложение туда не загружает.

А все потому, но нужно запустить adb в качестве сервера, иначе NetBeans просто не сможет установить ваше приложние в эмуляторе. Т.е. при попытке выполнить приложение откроется эмулятор, а приложения там нет.
Запускается так
_путь_к_SDK_Android_/platform-tools/adb start-server

Netbeans и Android SDK

Подробной инструкции здесь нет, скорее краткий конспект.
Основная информация взята здесь http://forums.netbeans.org/post-143696.html правда в ней урл на плагин устарел.

***
Придется обновить NetBeans до версии не ниже 7.2 (собирался давно это сделать, но теперь придется обязательно). Берем тут https://netbeans.org/downloads/
На текущий момент доступна версия 7.3  -- netbeans-7.3-linux.sh
запускаем инсталлятор
sh netbeans-7.3-linux.sh
Достаточно крупное обновление версии, так что проще переустановить.

Попутно инсталятор пожаловался на слегка устаревшую версию JDK.
Свежие версии традиционно тут http://www.oracle.com/technetwork/java/javase/downloads/index.html
Как поставить в Debian http://mldav.blogspot.com/2012/02/debian-java-sun-jdk7.html


***
Качаем сам Android SDK  http://developer.android.com/sdk/index.html
Теперь (2014.01) SDK находится в разделе "USE AN EXISTING IDE"

для Linux это будет что-то вроде android-sdk_.....-linux.tgz
распаковываем и запускаем ./tools/android

В Tools выбираем  "Android SDK Platform-tools" и так же отмечаем нужные API. Жмем "Install xx packages"

отмечаем согласие с лицензиями "Accept License" и жмем "Install"



В прежние времена на 64битной системе утилита adb откзалась запускаться и выдала что-то вроде:
./adb: error while loading shared libraries: libncurses.so.5
для ее запуска понадобились два пакета "32битных" : lib32ncurses5 и lib32stdc++6
Создаем новый эмулятор - идем в  Tools -> Manag AVDs...  -> New
и заполняем все необходимые поля - версия API, размер SD карты. Имеет смысл выбрать Snapshot - быстрее будет грузиться из "снимка" системы.
Тут же можем и протестировать эмулятор кликнув "Statr", имеет смысл задать чекбокс "Launch from snapshot" - загрузка из снапшота и "Save to snapshot", затем при следующих стартах галку в "Save to snapshot" снять, дабы не портить готовый снапшот.

 ======================
 ***
Плагин для NetBeans
Tools->Plugins->Settings  - там добавляем новый источник обновлений плагинов - жмем кнопку "Add" и добавляем URL http://nbandroid.org/release72/updates/updates.xml

Описание проекта плагина - http://www.nbandroid.org/p/installation.html
Затем переходим на вкладку "Avalable Plugins", находим в списке "Android" отмечаем чекбокс и жмем кнопку "Install". Соглашаемся с лицензией и смиряемся с тем, что плагины не подписаны, т.е. жмем "Continue".
Так же можно установить плагин NBAndroid Extenstions, правда потребуется подписка от http://www.nbandroid.org

Укажем путь к android-sdk
Tools -> Options -> Miscellaneous -> Android 

Попробуем создать новый проект:
File -> New -> Android -> Android Project  
Обращая внимание на забавное предупреждение "Package name must have at least two parts (Android Bug)"
И еще не забыть добавить импорт
import ваш_пакет.R;
и пересобрать проект - clean and build
или без импорта сразу попробовать пересобрать.
В параметре Run поменять вызов активити

И важно не забыть запустить adb в качестве сервера, иначе NetBeans просто не сможет установить ваше приложние в эмуляторе. Т.е. при попытке выполнить приложение откроется эмулятор, а приложения там нет.
Запускается так
_путь_к_SDK_Android_/platform-tools/adb start-server