LINUX.ORG.RU

Сообщения Dramokl

 

Поиск программы для приблизительной оценки размеров

Форум — General

Добрый день,

пытаюсь найти программу для решения следующей задачи:

есть фотография объекта, известен один из размеров ( например ширина ).

Хочется указав этот размер на фотографии и его реальные значения, осуществлять дальнейшие измерения уже не в пикселях - а в миллиметрах итд.

 

Dramokl
()

Маленький патчик для gnome-terminal

Форум — Desktop

Доброе время суток.

Закончил(вроде) написание костылей для gnome-terminal.
Исходный тред
патч
скрин

Чуть лирики:
- Пробовал использовать GtkHeaderbar - не вышло - фиксированный встроенный layout
- Сделал с использованием GtkFrame, и двумя GtkNotebook - замучился их синхронизовать. DnD так корректно и не заработал
- Итоговый вариант - обнуление titlebar(узкая полоска), дублирование логики управления окном(перетаскивание, максимизация, закрытие)

Перемещено Shaman007 из talks

 ,

Dramokl
()

Сборка livecd в Gentoo

Форум — General

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

Собирать будем из бинарных пакетов

export ACCEPT_KEYWORDS="amd64"
export PORTAGE_BINHOST="ssh://<binhost>/var/binpkgs/"
export ROOT=<где собираем>
Для удобства обслуживания - всё будет происходить под управлением git
mkdir -p $ROOT
git init $ROOT
Далее создаём базовую структуру каталогов и устанавливаем «минимум необходимого
USE="build" emerge --root=$ROOT -O baselayout
MAKEDEV -d $ROOT/dev console hda input ptmx std sd tty
rm -f $ROOT/dev/fd[0-9]*
rm -f $ROOT/dev/sd[a-d][a-z]* $ROOT/dev/sd[e-z]*
rm -f $ROOT/dev/tty[a-zA-Z]*

emerge --root=$ROOT -gK openrc vim bash vixie-cron gpm udev file findutils gawk grep \
                    groff iproute2 man man-pages-ru net-tools pciutils \
                    sed shadow usbutils util-linux which syslog-ng screen nfs-utils openssh wget socat rsync ntp \
                    gcc tar util-linux shadow udev procps psmisc cracklib gzip kbd dhcp
далее можно поставить всё что угодно, по желанию
emerge --root=$ROOT -gK <ваши пакеты>
почистим ненужный мусор
rm -rf $ROOT/var/tmp/*
rm -rf $ROOT/var/cache/*
rm -rf $ROOT/var/db
rm -rf $ROOT/tmp/*
rm -f $ROOT/etc/mtab
touch $ROOT/etc/mtab
rm -rf $ROOT/etc/portage
rm -rf $ROOT/usr/share/doc
rm -rf $ROOT/usr/src/
Далее по стандартному пути, можно сделать chroot, сменить пароль рута, прописать сервисы в автозагрузку,итд.
mount -o bind /dev $ROOT/dev
mount -t proc none $ROOT/proc
chroot $ROOT /bin/bash
<конфигурируем>
umount $ROOT/dev
umount $ROOT/proc
rm $ROOT/root/.bash_history
В сторонке можно нужно собрать ядро. Проще всего сделать это genkernel.Как то так.
rm -f /var/tmp/genkernel/*
genkernel --no-install --all-ramdisk-modules --kerneldir=<path to kernel> --e2fsprogs --disklabel --oldconfig --busybox all --unionfs --menuconfig all
забрать результат работы можно будет в /var/tmp/genkernel/ модули поставим вручную.
cd <kernel source>
INSTALL_MOD_PATH=$ROOT make modules_install
создадим структуру livecd
mkdir -p ./target/boot/grub
cp /var/tmp/genkernel/initramfs* ./target/
cp /var/tmp/genkernel/kernel* ./target/
cp /var/tmp/genkernel/System* ./target/
touch ./target/livecd
создаём конфиг grub2 в ./target/boot/grub/grub.cfg, примерно следующего содержания:
set default="0"
loadfont unicode
set gfxmode=800x600x32
insmod vbe
insmod vga
insmod gfxterm
set locale_dir=$prefix/locale
set lang=ru_RU
insmod gettext

terminal_output gfxterm
set timeout=2

menuentry 'Linux livecd' {
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod ext2
	set root='cd,msdos1'
	echo	'Загружается Linux '
	linux	(cd)/kernel-genkernel root=/dev/ram0 ro real_root=/dev/loop0 looptype=squashfs loop=/root.fs cdroot  video=vesafb:ywrap,mtrr:3 console=tty1 quiet net.ifnames=0
	echo	'Загружается начальный виртуальный диск …'
	initrd	(cd)/initramfs
}
теперь всё упаковываем и собираем итоговый образ.
echo ".git" > exclude.files
mksquashfs $ROOT ./target/root.fs -comp xz -ef exclude.files
grub2-mkrescue -d /usr/lib64/grub/i386-pc/ --modules="boot cat cpuid disk echo font file fshelp gettext gfxmenu gfxterm gfxterm_menu halt help iso9660 linux loopback ls lspci msdospart normal squash4 terminal vbe vga video xzio" -o cdrom.iso ./target

Какие будут замечания и предложения по данному методу?

 ,

Dramokl
()

Принтер HP1010

Форум — Linux-hardware

Доброе время суток, при печати на данном принтере получается оочень тусклый(светлый) отпечаток. Кто сталкивался с подобной проблемой?

hplip-3.14.1 cups-1.7.1

Dramokl
()

Разыскивается axalto\gemalto access client

Форум — Talks

Доброе время суток,

если у кого то завалялся дистрибутив - поделитесь, желательно под 64бита(если таковой вообще был)

 поиски smart card

Dramokl
()

Fn как модификатор

Форум — Linux-hardware

Доброе время суток.

Есть потребность на ноутбуке задействовать клавишу Fn, как модификатор для PageUp\PageDown.

хочу получить примерно следующее: Fn + PageDown = Home Fn + PageUp = End

xev видит её как XF86WakeUp (code 151) Единственное что настораживает при зажатие клавиши - сообщения посылаются непрерывно. Если использовать «стандартные» модификаторы, например Control - при зажатие формируется единовременное событие.

Пробовал правила для xmodmap из примеров - ничего не помогло.

Можно ли добиться такого поведения?

 

Dramokl
()

VFIO проброс pci устройств

Форум — General

Доброе время суток.

Просмотрел вот эту презентацию от RedHat,http://www.linux-kvm.org/wiki/images/b/b4/2012-forum-VFIO.pdf, где описываются все преимущества VFIO.

Но не совсем понятны формулировки на 11-13 страницах слайда.

У vt-d есть «встроенное» ограничение - нелизя пробрасывать отдельные устройства за мостами, и все опыты с xen, vmware, предыдущими версиями qemu это подтвердили - пробрасывается только весь мост целиком.

Преодолевает ли VFIO это ограничение или нет?

 , ,

Dramokl
()

libreoffice и горячие клавиши

Форум — Desktop

Добрый время суток.

Хочу поделиться небольшой историей успеха. Некоторые пользователи (например GNOME 3.8 - пишу из горящего танка ) столкнулись с тем что в Gnome, начиная с версии 3.6 перестали работать горячие клавиши в libreoffice. Прямо или косвенно это связано с миграцией на ibus.

Что надо проделать(на примере gentoo):

1.Проверить что ibus собран с gtk3 и просто gtk

2.Так же установить ibus-m17n и ibus-table

3.В настройках раскладки, взамен раскладки «Русская» добавить «русский (kdb (m17n))»

После этого всё должно заработать как и раньше.

Надеюсь это поможет.

p.s. Так же после этих манипуляция заработали кирилические хоткеи в Eclipse, да бы не проводить подобные манипуляции http://savdalion.blogspot.ru/2011/10/eclipse.html

 , ,

Dramokl
()

Обновление до Gnome 3.8

Форум — Desktop

Доброе время суток.

Пару дней назад с Gnome 3.8 сняли hardmask и он попал в ~. По зависимостям он предлагает снести udev и поставить systemd.

В баг-трекере уже не первый месяц обсуждается отучение Gnome от systemd - стоит ли этого ждать ? Или Поставить systemd в фоне, а продолжить использование openrc?

 ,

Dramokl
()

pulseaudio 4.0

Форум — Talks

http://www.freedesktop.org/wiki/Software/PulseAudio/Notes/4.0/

Кратко:

- быстрее

- лучше

- гибче

Dramokl
()

Smartcard key storage

Форум — General

Доброе время суток.

Появилось желание хранить ssh-ключ на смарт-карте. Под руками есть JavaCard Cyberflex 64K.

Долгие попытки прогрузить туда апплет не дали результата.

Поделитесь опытом. Стоит ли с этим возится или проще купить другую/новую смарт-карту?

Dramokl
()

не работает проброшенная видео-карта после перезагрузки DomU

Форум — Linux-hardware

Доброе время суток.

Настроил проброс нескольких pci устройств в DomU(на базе Windows), в частности видео-адаптера amd radeon hd7750.

После первой загрузки всё заработало корректно - после ребута видео адаптер не работает.

В логах xen ничего интересного не нашёл.

Гугл выдаёт противоречивую информацию, всё сводится к тому что надо принудительно переинициализировать устройство...D0-D3 итд.

Различные операции через sysfs не привели к результату.

по разныцм темам видел некоторые «истории успеха».

Собственно вопрос - возможно ли такую комбинацию заставить работать на базе xen 4.2? У кого то получилось заставить работать подобные схемы?(исключаю использование Quadro, Firepro...)

 

Dramokl
()

kvm и macvtap

Форум — General

Доброе время суток.

Настраиваю простое виртуальное окружение qemu-kvm. Для гостевых систем использую macvtap для прямой связи с сетевыми интерфейсами хоста. Возникла задача фильтрации трафика гостевой системы, при прохождение через хост.

Вот тут то и возник вопрос - ни в iptables ни в ebtables я не вижу пакетов гостевой системы(исследовал через добавление правила -j LOG в разных таблицах).

Осуществима ли такая фильтрация и как?.

Dramokl
()

OpenWrt и L2TP

Форум — General

Доброе время суток.

Имеется роутер, одной популярной фирмы, где дефолтная прошивка отвратительного качества.
Она была успешно заменена на OpenWRT(сейчас r28057), в общем всё работало чудесно и замечательно. Был настроен openl2tp для тогда ещё Корбины, в последствии Beeline. Работало стабильно год а то и больше. Но тут началась пора смена тарифов - и тут собственно начались чудеса. Сессия l2tp рвалась, не всегда с первого раза устанавливалась и.т.д.
Как временное решение, почитав форумы Билайна, стал использовать xl2tp. Всё стабильно работает - проблем нет. Кроме одной, довольно досадной - интернет работает не в полную силу - скорость ниже на треть, заявленной по тарифу.
Причину я вижу или в некорректной конфигурации xl2tp, либо в том что роутеру не хватает мощности для обслуживания такого потока данных.
Если каким то чудом установить соединение через openl2tp(1 раз из 10 это удаётся) - то скорость достигает заявленной в тарифе.

После введения в проблему вопросы:
1.Реально ли заставить работать xl2tp с потоком в 30Mbit на dir-825(интересует личный опыт)?
2.Можно ли настроить стабильную работу openl2tp?

Ниже содержание конфигов:
Для xl2tp:
# cat /etc/ppp/options.xl2tpd
debug
logfile /var/log/ppp.log
unit 0
remotename L2TP
ipparam beeline
connect /bin/true
mru 1460
mru 1460
noauth
nodeflate
nobsdcomp
persist
maxfail 0
defaultroute
replacedefaultroute
asyncmap 0xa0000
novj
nomp
nopcomp
noaccomp
lcp-echo-failure 10
lcp-echo-interval 60

# cat /etc/xl2tpd/xl2tpd.conf
[global]
access control = yes
auth file = /etc/ppp/chap-secrets

[lac beeline]
lns = tp.internet.beeline.ru
redial = yes
redial timeout = 10
require chap = yes
require authentication = no
name = *********
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
require pap = no
autodial = yes
tunnel rws = 8
tx bps = 100000000
rx bps = 100000000

# cat /etc/hosts
127.0.0.1 localhost
85.21.0.255 tp.internet.beeline.ru

Для openl2tp используется вот этот скрипт:
http://bazaar.launchpad.net/~rye/ junk/openwrt-openl2tp/view/head:/lib/networ...

Если необходима дополнительная информация - запрашивайте.

Dramokl
()

pidgin 2.8.0

Форум — Talks

На главной ещё нет, но уже список изменений обновили:

http://developer.pidgin.im/wiki/ChangeLog

хоть и 2.8 - ничего нового и интересного для себя не увидел.

Dramokl
()

Ремаппинг бедблоков

Форум — General

На внешнем харде появились бедблоки - что привело к соответствующим затруднениям. попытался их устранить

1. badblocks -b 4096 -s /dev/sdb1 -o result.badblock
2. fsck.reiserfs --rebuild-tree -B result.badblock /dev/sdb1
и вот тут произошло непонятное....несмотря на список бадблоков - перестроение дерева валится с ошибкой ввода/вывода......
а так как процесс уже пошёл ФС пришла в негодность....

Что можно принять для её восстановление.


p.s. Глупо было делать бекапы на внешний хард...
так что к вопросу о бекапирование данных - это они и были.

Dramokl
()

[задачка]Разграничение доступа

Форум — Talks

Есть S серверов, для запуска каждого из них необходимо предъявить Q ключей, при этом Qs ключей(из предъявленных) необходимо оставить в сервере, для корректного его функционирования. За серверы отвечает P рабочих,у каждого Qp ключей.При запуске сервера как минимум должно присутствовать Pq<=P рабочих.

Определить распределение ключей между рабочими.

Dramokl
()

pidgin 2.7.0

Форум — Talks

Судя по http://developer.pidgin.im/roadmap , разработка 2.7.0 завершена.
Кто нить знает когда будет официально объявлено о релизе?
судя по тикетам - довольно интересный будет релиз

Dramokl
()

[pidgin][надёжно]keyring\wallet

Форум — Talks

Недавно был пост о том что пароли хранятся в открытом виде:

libpurple # diff -rup account.c_orig account.c
--- account.c_orig   2010-01-15 13:57:27.000000000 +0300
+++ account.c   2010-01-15 16:36:38.000000000 +0300
@@ -41,11 +41,25 @@
#include «util.h»
#include «xmlnode.h»

+#include <gnome-keyring.h>
+
typedef struct
{
   PurpleConnectionErrorInfo *current_error;
} PurpleAccountPrivate;

+
+GnomeKeyringPasswordSchema pidgin_schema = {
+   GNOME_KEYRING_ITEM_GENERIC_SECRET,
+ {
+      { «pidgin account», GNOME_KEYRING_ATTRIBUTE_TYPE_STRING },
+      { NULL, 0 }
+ },
+   NULL,
+   NULL,
+   NULL
+};
+
#define PURPLE_ACCOUNT_GET_PRIVATE(account) \
   ((PurpleAccountPrivate *) (account->priv))

@@ -377,9 +391,18 @@ account_to_xmlnode(PurpleAccount *accoun

   if (purple_account_get_remember_password(account) &&
      ((tmp = purple_account_get_password(account)) != NULL))
-   {
-      child = xmlnode_new_child(node, «password»);
-      xmlnode_insert_data(child, tmp, -1);
+   {   
+      if (purple_account_get_use_wallet(account))
+      {
+         child = xmlnode_new_child(node, «wallet»);
+         xmlnode_insert_data(child, «1», -1);
+         gnome_keyring_store_password_sync(&pidgin_schema,NULL,purple_account_get_username(account),tmp,«pidgin account»,purple_account_get_username(account),NULL);
+      }
+      else
+      {
+         child = xmlnode_new_child(node, «password»);
+         xmlnode_insert_data(child, tmp, -1);
+      }
   }

   if ((tmp = purple_account_get_alias(account)) != NULL)
@@ -804,6 +827,9 @@ parse_account(xmlnode *node)
   char *protocol_id = NULL;
   char *name = NULL;
   char *data;
+
+   char *passwd;

   child = xmlnode_get_child(node, «protocol»);
   if (child != NULL)
@@ -832,12 +858,43 @@ parse_account(xmlnode *node)
   g_free(protocol_id);

   /* Read the password */
-   child = xmlnode_get_child(node, «password»);
+   child = xmlnode_get_child(node, «wallet»);
   if ((child != NULL) && ((data = xmlnode_get_data(child)) != NULL))
   {
-      purple_account_set_remember_password(ret, TRUE);
-      purple_account_set_password(ret, data);
-      g_free(data);
+      if (strcmp(data,«1») == 0)
+      {
+      /* enabled waallet password storage */
+         purple_account_set_use_wallet(ret, TRUE);
+         if (gnome_keyring_find_password_sync(&pidgin_schema,&passwd,«pidgin account»,purple_account_get_username(ret),NULL) == GNOME_KEYRING_RESULT_OK)
+         {
+            purple_account_set_remember_password(ret, TRUE);
+            purple_account_set_password(ret, passwd);
+            gnome_keyring_free_password(passwd);
+         }
+      }
+      else
+    {
+         purple_account_set_use_wallet(ret, FALSE);
+         g_free(data);
+         child = xmlnode_get_child(node, «password»);
+         if ((child != NULL) && ((data = xmlnode_get_data(child)) != NULL))
+         {
+            purple_account_set_remember_password(ret, TRUE);
+            purple_account_set_password(ret, data);
+            g_free(data);
+         }
+      }
+   }
+   else
+   {   
+      purple_account_set_use_wallet(ret, FALSE);
+      child = xmlnode_get_child(node, «password»);
+      if ((child != NULL) && ((data = xmlnode_get_data(child)) != NULL))
+      {
+         purple_account_set_remember_password(ret, TRUE);
+         purple_account_set_password(ret, data);
+         g_free(data);
+      }
   }

   /* Read the alias */
@@ -2890,3 +2947,21 @@ purple_accounts_uninit(void)
   purple_signals_disconnect_by_handle(handle);
   purple_signals_unregister_by_instance(handle);
}
+
+void
+purple_account_set_use_wallet(PurpleAccount *account, gboolean value)
+{
+   g_return_if_fail(account != NULL);
+
+   account->use_wallet = value;
+
+   schedule_accounts_save();
+}
+
+gboolean
+purple_account_get_use_wallet(const PurpleAccount *account)
+{
+   g_return_val_if_fail(account != NULL, FALSE);
+
+   return account->use_wallet;
+}

libpurple # diff -rup account.h_orig account.h
--- account.h_orig   2010-01-15 14:15:48.000000000 +0300
+++ account.h   2010-01-15 15:19:47.000000000 +0300
@@ -119,6 +119,7 @@ struct _PurpleAccount
   char *buddy_icon_path; /**< The buddy icon's non-cached path. */

   gboolean remember_pass; /**< Remember the password. */
+   gboolean use_wallet;

   char *protocol_id; /**< The ID of the protocol. */

@@ -1058,6 +1059,17 @@ void purple_accounts_uninit(void);

/*@}*/

+
+/**************************************************************************/
+/** @name Wallet Subsystem */
+/**************************************************************************/
+/*@{*/
+
+void purple_account_set_use_wallet(PurpleAccount *account, gboolean value);
+gboolean purple_account_get_use_wallet(const PurpleAccount *account);
+
+/*@}*/
+
#ifdef __cplusplus
}
#endif

 

Dramokl
()

[alsa]Conexant CX20561 (Hermosa)

Форум — Desktop

Имеется ноутбук lenovo ideapad y430 со звуковой системой 2.1,т.е. два фронтальных спикера плюс сабвуфер в дне. Используется intel-hda кодек CX20561. Всё нормально воспроизводиться и играет. Но есть очень неприятная проблема - при подключение наушников - сабвуфер не отключается! И продолжает играть.

Используется ядерная alsa из 2.6.30.

Поиск в гугле не привёл к решению данной проблемы( натыкался на противоположный вопрос - как заставить сабвуфер работать).

Странное "решение" проблемы было найдено совершенно недавно, после того как в дуал бут был поставлен виндовс - в нём сабвуфер не работает,НО после того как осуществляется перезагрузка в linux - сабвуфер перестает работать и тут =)

А теперь собственно вопрос:
1.Если какой то корректный способ отключить сабвуфер в linux? Или это является недоработкой/баком конкретного модуля alsa?
2.Если это бага/недоработка - то ктонить может посоветовать утилиты(направление действий) что бы отследить что там делает звуковой драйвер в windows, и как то перенести это потом в модуль alsa

 

Dramokl
()

RSS подписка на новые темы