четвер, 3 грудня 2015 р.

Порты начала декабря: OpenMW, git-lfs, fusefs-lkl

Доброго времени суток.
Хорошее это дело переодически смотреть freshports. За последние пару недель увидел сразу несколько интересных новых портов. Один из них я вообще что называется "джва года ждал"

понеділок, 23 листопада 2015 р.

Немного инсайдов: новый сайт, приватность и python3

Доброго времени суток!
Спешу поделится некоторой инсайдерской информацией о PC-BSD. Сегодня у меня три новости:
  •  новый сайт проекта, 
  • приватность прежде всего
  • утилиты на python
Далее чуть подробнее:

пʼятницю, 20 листопада 2015 р.

pc-power: Прогресс и первые скриншоты

В прошлом посте анонсировал управление питанием. Теперь покажу первые скриншоты того что получается.

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

середу, 18 листопада 2015 р.

Анонс: Управление питанием PC-BSD

Доброго времени суток.
Хочу поделится некоторыми подробностями того что прямо сейчас делаю для PC-BSD, а именно систему управления электропитанием. Планы наполеоновские, как обычно. Кое- что уже сделано и работает.
Надеюсь работа на ноутбуке станет намного более приятной.
Итак...

понеділок, 9 листопада 2015 р.

Несколько новых портов

Доброго времени суток!
Хочу поделится парочкой интересных новых портов. Один из них просто офигенен!

четвер, 29 жовтня 2015 р.

Из pcdm в VirtualBox

Доброго времени суток!
Поделюсь по быстрому одной штукой облегчающей жизнь. У меня на ноутбуке Windows померла сравнительно давно да так и не была поднята заново. Хоть я и не могу полностью без не обходится но мне удобнее ее держать в VirtualBox. В тот момент когда Windows реально нужна мне удобнее запустить виртуальную машину чем перезагружаться.
Так вот. Почему бы при входе в систему не добавить опцию типа "Windows 7" в списке окружений рабочего стола запускающую VirtualBox в полноекранном режиме?

середу, 23 вересня 2015 р.

Привет touchscreen?

Доброго времени суток!
Буду краток: появился новый порт xf86-input-evdev Если меня не подводит мой склероз он должен обеспечить стандартизированную поддержку тач скринов в иксах. К сожалению, у меня нет таких железок, но, возможно, кому- то будет интересно поиграться.
GSoC проект по добавлению поддержки evdev есть на FreeBSD Wiki

четвер, 17 вересня 2015 р.

FreeBSD на ноутбуке. Живем на батарейке.

Доброго времени суток!
С выходом FreeBSD 10.2 (и, соответственно PC-BSD 10.2) на моем ноутбуке наконец-то вроде все заработало как надо. Определился ethernet (не очень и хотелось) и что самое главное заработали нормально режимы сна и управление подсветкой. Соответственно, я озаботился поиском информации о настройках энергопотребления в FreeBSD. Я думаю не секрет что при дефолтных настройках ноутбук с FreeBSD от батареи на живет. Это просто перемещение от розетки к розетке.
Итак...

Системные режимы сна и крышка ноутбука.

Теория...

Спецификация ACPI (Advanced Configuration and Power Interface) выделяет несколько для нас интересных состояний сна системы :
  • S1 - не глубокий сон, процессор и память получают питание. 
  • S3 - Он же "Suspend to RAM" он же "Ждущий режим" или "Standby" или "Sleep" в Windows, он же "Sleep" в OSX. В этом режиме энергию потребляет практически только оперативная память. Ноутбук обычно переходит в этот режим после закрытия крышки и может в нем оставаться без проблем несколько дней.
  • S4 - Он же "Suspend to disk", он же "Спящий режим" или "Hibernation" в Windows, он же "Safe Sleep" в OSX. Все состояние системы сохраняется на жестком диске. При следующей загрузке возможно полное возобновление работы.
  • S5 - Фактически выключение системы, но физически система все еще получает питание и может быть запущена, например по Wake on Lan. Контекст выполнения не сохраняется. Короче, обычное выключенное состояние.
Подробнее смотрите в википедии

... и практика

Проблема  FreeBSD в том что по умолчанию (по крайней мере на моем ноутбуке) закрытие крышки не приводит к смене режима сна вообще. С одной стороны это бывает хорошо. Например, когда я пишу эту заметку у меня открыто соединение ssh с ноутбуком который лежит с закрытой крышкой. Но, в общем случае, такое поведение нужно бы поменять.

Интересующие нас настройки режимов сна делаются через sysctl:
  • hw.acpi.supported_sleep_state (ro) - показывает возможные состояния на Вашей системе. (В моем случае hw.acpi.supported_sleep_state: S3 S4 S5)
  • hw.acpi.power_button_state (r/w) - позволяет указать состояние, в которое система перейдет после нажатия на кнопку питания (обычно S5 - выключено). Возможно значение "NONE" - игнорировать нажатие вообще.
  • hw.acpi.sleep_button_state (r/w) - позволяет указать состояние, в которое система перейдет после нажатия на кнопку (или комбинацию кнопок) Sleep (В моем случае это Fn + F2). Обычно hw.acpi.sleep_button_state=S3. Возможно значение "NONE"
  • hw.acpi.lid_switch_state (r/w)/ Позволяет указать состояние после закрытия крышки. По умолчанию (у меня по крайней мере) значение NONE (т.е. не реагировать вообще). Чтобы добиться от ноутбука ожидаемого засыпания на закрытие крышки нужно поставить S3.
Короче говоря, если у Вас вышеперечисленные  sysctl присутствуют, но ноутбук не засыпает, то можно руками поменять их значения (как минимум sysctl hw.acpi.lid_switch_state=S3), а лучше добавить в /etc/sysctl.conf что- то типа:

hw.acpi.lid_switch_state=S3
hw.acpi.sleep_button_state=S3

К стати, можно попробовать на hw.acpi.sleep_button_state поставить S4 и по кнопке "Сон" ложить систему в "Hibernate"

Подсветка экрана

Если значение sysctl hw.acpi.video.lcd0.active единица- поздравляю, на Вашем ноутбуке поддерживается управление подсветкой экрана.
Возможные значения интенсиваности подсветки можно посмотреть в sysctl hw.acpi.video.lcd0.levels (на сколько я понимаю там всегда значения в процентах, т.е от 0 до 100).
Ну и, наконец, для изменения яркости подсветки нужно изменять hw.acpi.video.lcd0.brightness.
Например (в моем случае) достаточно комфортно работать при 40% яркости:

% sudo sysctl hw.acpi.video.lcd0.brightness=40

PS. Имя lcd0 в sysctl намекает нам что возможно существование и lcd1. Но на практике я не видел управления двумя подсветками.

Если у Вас нет вышеупомянутых переменных и видеоадаптер от Intel попробуйте поставить этот пакет (порт): http://www.freshports.org/graphics/intel-backlight/
В описании порта написано как этим пользоваться.

Состояние батареи и потребляемая мощность
Для того чтобы посмотреть информацию о Вашей батарее можно использовать утилиту acpiconf. У нее есть параметр -iХ для просмотра состояния батареи, где "Х"- номер батареи. В общем случае выглядит это где- то так:

% acpiconf -i0
 

Design capacity:        38006 mWh
Last full capacity:     29289 mWh
Technology:             secondary (rechargeable)
Design voltage:         7400 mV
Capacity (warn):        3796 mWh
Capacity (low):         377 mWh
Low/warn granularity:   377 mWh
Warn/full granularity:  377 mWh
Model number:           X202-51
Serial number:          
Type:                   LIon
OEM info:               ASUSTek
State:                  high
Remaining capacity:     99%
Remaining time:         unknown
Present rate:           0 mW
Present voltage:        7400 mV


Единицами измерения могут быть милливатты (милливатт часы) (в моем случае) или миллиамперы (миллиампер часы). Для пересчета милливатт в миллиамперы нужно милливатты поделить на напряжение питания (Present voltage или Design voltage в милливольтах) и умножить на 1000. Т.е. моя батарея имеет заводскую емкость ~5136 mAh (38006/7400*1000).
На что следует обратить внимание.
  • Remaining capacity - процент заряда батареи
  • Remaining time - прогнозируемое оставшееся время работы от батареи. Если подсоединено питание значение будет unknown.
  •  Present rate - текущее энергопотребление. Меняете яркость подсветки, настройки процессора, отключаете беспроводной адаптер и смотрите как уменьшается энергопотребление. Показывает только при питании от батареи.
  • Last full capacity - Емкость при последнем полном заряде. Как я понимаю, сравнив с Design capacity можно посмотреть степень деградации батареи. В моем случае батарейка уже немного устала :(

 Осталось за кадром

Естественно управление питанием (и энергопотреблением) не ограничивается вышеперечисленным. Я не писал как минимум о режимах сна процессора и о изменении его частоты.  Если Вам интересно- почитайте FreeBSD Wiki на эту тему.