вторник, ноября 19, 2024

FreeBSD14 and ThinkPad X1 Carbon Gen9. Brightness with a keyboard

 acpi_ibm(4) provides support for multiple hotkeys on ThinkPad X1 Carbon Gen9, so:

# echo acpi_ibm_load=\"YES\" >> /boot/loader.conf

or it's possible to load that kernel driver on a running system:

# kldload acpi_ibm

Now try to run the following command to see ACPI events:

# cat /var/run/devd.pipe

press brightness up/down keys (those are combined with the F6/F5 keys correspondingly), and see events:

!system=ACPI subsystem=IBM type=\_SB_.PC00.LPCB.EC__.HKEY notify=0x10
!system=ACPI subsystem=IBM type=\_SB_.PC00.LPCB.EC__.HKEY notify=0x11

Moving ahead and creating a configuration file for the devd(8) in /usr/local/etc/devd directory,
let's name it x1cg9.conf:

notify 0 {
        match "system"          "ACPI";
        match "subsystem"       "IBM";
        match "notify"          "0x10";
        action                  "backlight +";
};

notify 0 {
        match "system"          "ACPI";
        match "subsystem"       "IBM";
        match "notify"          "0x11";
        action                  "backlight -";
};

вторник, октября 15, 2024

ThinkPad X1 Carbon Gen9. Important useful sound settings

I've found the following important useful settings for the /boot/device.hints on the FreeBSD forum:

hint.hdaa.0.nid19.config="as=1 seq=0"

hint.hdaa.0.nid20.config="as=1 seq=2"

hint.hdaa.0.nid23.config="as=1 seq=1"

hint.hdaa.0.nid24.config="as=1 seq=2"

hint.hdaa.0.nid26.config="as=1 seq=1"

hint.hdaa.0.nid27.config="as=1 seq=2"

hint.hdaa.0.nid30.config="as=1 seq=1"

hint.hdaa.0.nid33.config="as=1 seq=15 device=Headphones"


i3 and sound control from keyboard on FreeBSD

bindsym XF86AudioRaiseVolume exec --no-startup-id mixer vol=+10% && $refresh_i3status

bindsym XF86AudioLowerVolume exec --no-startup-id mixer vol=-10% && $refresh_i3status

bindsym XF86AudioMute exec --no-startup-id "mixer vol.mute | grep on; [ $? -eq 0 ] && mixer vol.mute=off || mixer vol.mute=on && $refresh_i3status"

bindsym XF86AudioMicMute exec --no-startup-id "mixer mic.mute | grep on; [ $? -eq 0 ] && mixer mic.mute=off || mixer mic.mute=on && $refresh_i3status"



суббота, сентября 21, 2024

OpenBSD ports maintainer cheat sheet

Here's the list of most important commands for an OpenBSD ports maintainer:

  • cd /usr/ports && cvs -z3 up -dP -A
  • doas pkg_add -Dsnap -uU
  • doas sysupgrade -s

and last but not least:

  •  doas vi /etc/myname

пятница, февраля 01, 2013

2012 Annual report


Уважаемые акционеры!

Позвольте представить отчёт о работе фонда за 2012 год.

За прошедший год инвестиционный фонд увеличился в два раза:
  • приток капитала составил 40% от стоимости активов фонда за 2011 год;
  • доходность фонда составила 26% годовых (для сравнения - за аналогичный период рост индекса ММВБ составил 5%).
Объекты инвестирования не претерпели изменений:
  • добыча и переработка нефти;
  • нефтехимическая промышленность;
  • коммуникации;
  • энергетика;
Желаю здоровья и процветания.

суббота, августа 11, 2012

Ministry. Moscow

I like Ministry, industrial metal.  Yesterday my friends and I are visited Ministry's concert in Moscow. Ministry are looks great, but I the sound was not so good.  The review of playlist found Psalm'69, New World Order and, my lovely, Just One Fix. Very good, but sound was too overloaded...

четверг, апреля 26, 2012

Медь. Технический анализ

Рисунок 1. Июньский контракт на медь, NYMEX.  Источник - ino.com 
Контракт на медь, пробивший в первой декаде апреля сего года 200-дневную скользящую среднюю, нашёл поддержку на восходящем тренде сформированном в конце прошлого - начале текущего года и демонстрирует попытку тестирования пробития 200-дневной скользящей снизу вверх.

вторник, апреля 24, 2012

Сколько стоит рубль?

Рисунок 1. Сравнительная динамика российского рубля, бразильского реала и индийской рупии.
В последнее время меня всё чаще спрашивают - что будет с рублём? Будет ли новая девальвация и если будет - каковы её ориентиры?

На рисунке представлены три валюты коллег по цеху BRICS (БРЮКИ) - бразильский реал, индийская рупия и российский рубль.  Стоимость юаня приводить не буду, китайское правительство чётко следует своему курсу.  Южно-африканский рэнд найдите для сравнения самостоятельно.

Итак. Почти ровная динамика с мая по август 2011 года. С сентября по октябрь 2011 года для трёх сравниваемых валют отчётливо видно снижение котировок к доллару США. С середины ноября до середины января все три валюты показывали состояние флэт, а потом, вплоть до конца марта 2012 года, плавно снижались.  С марта текущего года реал и рупия демонстрируют снижение к доллару США, тогда как рубль упорно показывает "боковой" тренд.

Как известно, на март пришлись выплаты российских компания по внешним долгам, в апреле добавились выплаты налогов.  Российский фондовый рынок достигнув максимумов 14 марта перешёл в фазу снижения.  ЦБ РФ вливает на рынок деньги, принимая в обеспечение сделок РЕПО не только государственные долговые бумаги, но уже и акции отдельных эмитентов.

На графике отчётливо видно, что динамика рубля отстаёт от коллег, разность величин составляет уже более 10 процентов.

Учитывая все вышеперечисленные факты я оцениваю "справедливый" курс как 32-33 рубля за доллар США.

вторник, марта 20, 2012

Индекс ММВБ и нефть. Технический анализ

MICEX Index, 20.03.2012.
На прошлой неделе индекс ММВБ подошёл к сопротивлению, находящемуся на отметке 1627 пунктов, которая являет собой 61.8% расширение Фибоначчи от максимума апреля 1865,25 и минимума октября 1242,75 прошлого года: 1242,75+(1865,25-1242,75)*0.618=1627.455.  Вчерашний откат от этой линии сопротивления пока укладывается в рамки растущего тренда, сформированного за последние четыре месяца.  Однако, дополнительным стимулом для игры на понижение может являться бэквардация более 50 пунктов июньского фьючерса на индекс РТС: текущее значение индекса - 1725.92 пункта, а стоимость RIM2 - 167410.

Стоимость нефти сорта Brent за последний год. 
Сравнивая график нефти сорта Brent и график индекса ММВБ нетрудно (в очередной раз!) увидеть корреляцию этих двух величин.  Добавлю, что сопротивлением для марки Brent является уровень в 127 долларов за бочку, на этом уровне нефть торговалась в апреле 2011 года. Таким образом, если контракту на Brent не удастся пробить это сопротивление, то можно будет говорить о формировании фигуры "двойная вершина" и последующем развороте рынка.

понедельник, декабря 19, 2011

вторник, ноября 29, 2011

Installing passenger+nginx from FreeBSD ports tree

I found old article explaining how to install passenger with nginx on FreeBSD.  Since 9 of January 2010 after this commit it is very simply.

The first step is install nginx with passenger support module. You may choose stable or development version of nginx.


# cd /usr/ports/www/nginx && make config


Step down, find and choose PASSENGER_MODULE option for third-party passenger module,
press OK button and type


# make build install clean


Next step is install www/rubygem-passenger for nginx.


# cd /usr/ports/www/rubygem-passenger && make config

unselect APACHEPORT, then step down and select NGINXPORT.


# make build install clean

Thats all, installation complete.

Add following line to you /etc/rc.conf:

nginx_enable="YES"


Write following configuration file for nginx, i.e. nginx.conf and put it into /usr/local/etc/nginx directory.




worker_process 1;


events {
    worker_connections 1024;
}


http {
    include          mime.types;
    default_type  application/octet-stream;


    sendfile         on;


    passenger_root  /usr/local/lib/ruby/gems/1.9/gems/passenger-3.0.11;
    passenger_ruby  /usr/local/bin/ruby;
    passenger_default_user www;


    server {
        listen      127.0.0.1:80;
        server_name localhost;


        root /usr/local/lib/ruby/gems/1.9/gems/passenger-3.0.11/test/stub/rack/public;
        passenger_enabled on;
        passenger_use_global_queue on;
    }
}


Save configuration file and start nginx.


# /usr/local/etc/rc.d/nginx start


Here is simple request and the answer from your RoR server:

$ telnet 127.0.0.1 80
GET / HTTP/1.0


HTTP/1.1 200 OK
Content-Type: text/html
Connection: close
Status: 200
X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 3.0.11
Server: nginx/1.0.10 + Phusion Passenger 3.0.11 (mod_rails/mod_rack)


hello worldConnection close by foreign host.



Also, after successfull start nginx and first request you may find following porcesses.



% ps auxww | grep -i passenger
root       72784   0,0  0,1  28112   2932  ??  Is   12:25      0:00,01 PassengerWatchdog
root       72786   0,0  0,1  51704   5224  ??  I    12:25      0:00,04 PassengerHelperAgent
root       72790   0,0  0,2  51924   9764  ??  I    12:25      0:00,06 ruby: Passenger spawn server (ruby)
nobody     72791   0,0  0,1  32476   4500  ??  I    12:25      0:00,01 PassengerLoggingAgent
www        72807   0,0  0,3  56040  11124  ??  I    12:26      0:00,03 ruby: Passenger ApplicationSpawner: /usr/local/lib/ruby/gems/1.9/gems/passenger-3.0.11/test/stub/rack (ruby)
www        72809   0,0  0,3  56064  11180  ??  I    12:26      0:00,00 ruby: Rack: /usr/local/lib/ruby/gems/1.9/gems/passenger-3.0.11/test/stub/rack (ruby)





четверг, ноября 03, 2011

FreeBSD9 & ThinkPad X1. Видеокарта

Как я уже писал ранее, текущий релиз не поддерживает свежатину от Intel из коробки.  Однако, существует проект под эгидой FreeBSD Foundation, который позволит в ближайшем будущем воспользоваться всеми благами цивилизации: Константин Белоусов продолжает точить ядро FreeBSD.

Я установил текущий патч для 9.0-RC1 и пересобрал ядро.

Перефразируя известных писателей и лично от себя хочется добавить:
- Пилите, Костя, пилите!

FreeBSD9 & ThinkPad X1. Камера

В лаптопе есть HD-камера.


% more /var/run/dmesg.boot | grep ugen | grep Chicony
ugen0.5: <Chicony Electronics Co., Ltd.> at usbus0

Устанавливаем порт multimedia/webcam, который установит multimedia/cuse4bsd. Ганс Петтер Селаски потрудился на славу: загрузка cuse4bsd.ko, рестарт /etc/rc.d/devd, и pwcview показывает автопортрет. 
Добавим пару строк конфигурации:
# echo "webcamd_enable=\"YES\"" >> /etc/rc.conf
# echo "cuse4bsd_load=\"YES\"" >> /boot/loader.conf

Изменяем разрешения для /dev/video0, на, не побоюсь этого слова, 666, добавляем себя в группу webcamd, перезапускаем skype. Всё работает!    

вторник, ноября 01, 2011

FreeBSD9 & ThinkPad X1. Продолжение

Собрано изрядно облегчённое ядро, практически все драйверы загружаются модулями.
Это было сделано с двумя целями: опробовать suspend/resume; снижение энергопотребления и увеличения срока мобильности. Вторая задача внятно описана Александром Мотиным в документе Tuning Power Consumption.

Тривиальный патч для поддержки ACPI модуля acpi_ibm(4).
--- /sys/dev/acpi_support/acpi_ibm.c.orig       2011-10-31 20:39:06.000000000 +0400
+++ /sys/dev/acpi_support/acpi_ibm.c    2011-10-31 20:39:54.000000000 +0400
@@ -290,7 +298,7 @@
 DRIVER_MODULE(acpi_ibm, acpi, acpi_ibm_driver, acpi_ibm_devclass,
              0, 0);
 MODULE_DEPEND(acpi_ibm, acpi, 1, 1, 1);
-static char    *ibm_ids[] = {"IBM0068", NULL};
+static char    *ibm_ids[] = {"IBM0068", "LEN0068", NULL};

 static void
 ibm_led(void *softc, int onoff)

После применения патча, пересборки acpi_ibm.ko и последующей загрузки модуля получаем:


acpi_ibm0: on acpi0

Режим сна (suspend) S3 частично не работает: система просыпается и доступна по сети, но не включается экран.

пятница, октября 28, 2011

FreeBSD9 & ThinkPad X1. Начало

Начало.

После сдохшего рабочего ноутбука я купил себе ThinkPad X1. Конечно, туда надо было сразу установить FreeBSD. Сказано - сделано.  GPART-вариант не встал даже после прошивки последней версией BIOSа 1.27 (кстати, Ubuntu Linux 11.10 тоже не смог встать из-за невозможности установить grub в /dev/sda). Установил FreeBSD-9.0-RC1 в MBR-варианте.

Чем дальше в лес - тем толще партизаны.

Какой UNIX не любит Xов?

# pkg_add -r xorg

после инсталляции запускаем:

# Xorg -configure


Автоконфигурация X Window System указала на возможность использовать только драйвер vesa.
Ужасно.

Коллеги по цеху подсказывают - есть новейшая разработка, Intel GPU.

# mkdir /usr/src
# mkdir /etc/csup
# cat /usr/share/examples/cvsup/stable-supfile | grep -v ^# | sed 's/RELENG_8/RELENG_9/g; s/CHANGE_THIS/cvsup2.ru/g' > /etc/csup/stable-supfile
# cd /usr/src
# csup -g -L 2 /etc/csup/stable-supfile


Забираем патч 10.3, патчим и собираем ядро.


# cd /usr/src && patch -p1 < all.10.3.patch
# make KERNCONF=GENERIC buildkernel installkernel


Попутно ставим subversion-1.7 и качаем xorg-dev:


# svn co https://trillian.chruetertee.ch/svn/ports/branches/xorg-dev


Устанавливаем свежие иксы.
Новое ядро установлено.

Добавляем в /etc/rc.conf полезных демонов:


hald_enable="YES"
dbus_enable="YES"

и конфигурацию:


% cat /usr/local/etc/hal/fdi/policy/x11-input.fdi


<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
 <device>
  <match key="info.capabilities" contains="input.keyboard">
   <merge key="input.x11_options.XkbRules" type="string">xorg</merge>
   <merge key="input.x11_options.XkbModel" type="string">pc105</merge>
   <merge key="input.x11_options.XkbVariant" type="string">winkeys</merge>
   <merge key="input.x11_options.XkbOptions" type="string">terminate:ctrl_alt_bksp,grp:ctrl_shift_toggle,grp_led:scroll</merge>
   <merge key="input.x11_options.XkbLayout" type="string">us,ru</merge>
  </match>
 </device>
</deviceinfo>


Заканчиваем:

# reboot



четверг, сентября 29, 2011

Нефть. Технический анализ

Контракт на нефть Brent.
Контракт на нефть марки Brent продолжает движение вниз в полугодовом диапазоне и демонстрирует фигуру смертельный крест (быстрая 50-дневная скользящая средняя пересекает сверху вниз медленную 200-дневную скользящую).

пятница, сентября 23, 2011

Медь. Технический анализ

Ноябрьский фьючерсный контракт на медь (NYMEX).
Ноябрьский контракт на медь снизился более чем на 15%, как и было написано ранее.

четверг, сентября 22, 2011

Медь. Технический анализ

Фьючерс на медь, ноябрь 2011.
Опережающий индикатор фьючерсный контракт на медь снизился на 10%.  Ранее я писал о возможности такого движения. 200-дневная скользящая начинает показывать на downtrend.

вторник, сентября 20, 2011

Нефть. Технический анализ

Движение цены нефти сорта Брент в канале. 
Нефть сорта Брент торгуется в канале шириной $15-17. На графике видно:

  • цена после достижения локального максимума $116.39 (верхней границы канала) снижается и двигается к нижней границе;
  • цена находится ниже двух скользящих;
Более того: быстрая (50-дневная, синяя линия) и медленная (200-дневная, красная) скользящие средние готовы показаться фигуру смертельный крест.

NetBSD 11.0-RC5