]> Sergey Matveev's repositories - stargrave-blog.git/log
stargrave-blog.git
3 years agobaredo redo
Sergey Matveev [Mon, 10 Jan 2022 11:16:08 +0000 (14:16 +0300)]
baredo redo

https://github.com/gotroyb127/baredo
Автор этого проекта прислал мне его на ревью, узнать моё мнение.
Реализация redo на Си, только с тремя основными командами
(redo/-ifchange/-ifcreate). Кроме неатомарного обновления файла
зависимостей в целом мне всё понравилось. Даже мои большие проекты
с полусотней не-только-shell целей собираются. Нет распараллеливания.
Проверка только ctime-а для определения свежести целей. Но этот проект
выглядит куда вменяемее чем redo-c, в котором сломали "пустые" цели:
https://github.com/leahneukirchen/redo-c/pull/2
https://github.com/leahneukirchen/redo-c/issues/22 (без объяснения
причин не собираются восстанавливать).

3 years agoМинималистичный xorg.conf
Sergey Matveev [Sun, 9 Jan 2022 20:01:28 +0000 (23:01 +0300)]
Минималистичный xorg.conf

Решил поубирать всё что можно из xorg.conf, который я наверное уже лет
десять таскаю с собой сквозь всевозможные дистрибутивы. Оказалось что
оно даже и пустое будет работать, ничего лишнего, судя по журналу, не
подгружая. Единственное что я оставил:

    Section "Device"
            Identifier "Card0"
            Driver "intel"
    EndSection

так как переключение драйвера точно требовалось. Ещё помню что
обязательно нужно было указать Option "AutoAddDevices" "false" в
ServerLayout, но... я забыл для чего, в блоге нет, без этой опции
пока проблем никаких не наблюдаю. Может быть это связано с Logitech
трэкболом было, где задавался mapping некоторых его клавиш в moused
демоне и Xorg не должен был самостоятельно чего-то лишнего делать?
Но переключение языков делается теперь через setxkbmap (прежде в
xorg.conf задавалось). Для трэкбола не нужно никакого mapping-а, ибо
у него и так колесо прокрутки родное имеется. В итоге и выродились
секции с устройствами ввода.

3 years agoГруппа Obscura была названа в честь Obscura альбома
Sergey Matveev [Sun, 9 Jan 2022 16:57:02 +0000 (19:57 +0300)]
Группа Obscura была названа в честь Obscura альбома

https://en.wikipedia.org/wiki/Obscura_(band)
https://en.wikipedia.org/wiki/Obscura_(album)
https://www.youtube.com/watch?v=RCT8-Yzkzbs
Для меня слово "Obscura" ассоциируется только с альбомом Gorguts.
Поэтому когда я видел название группы, то терялся -- ведь не на том
месте название то стоит в названии директорий.

    Since its release, Obscura has come to be regarded as one of the
    most important albums in the technical death metal genre, and as
    "one of the most complex and technical records in the genre...

Папа у меня не признаётся что впечатлён этим творением, но я его один
раз застукал, придя домой, что он сидел и слушал этот альбом.

3 years agoУзнаю гроулящих вокалистов
Sergey Matveev [Sun, 9 Jan 2022 16:28:57 +0000 (19:28 +0300)]
Узнаю гроулящих вокалистов

За последние годы заметил что узнаю приглашённых вокалистов на всяком
black и death метале. Я понятия не имею есть ли там кто в трэке, но
чувствую что кто-то знакомый появился. Захожу на Encyclopaedia Metallum
и оказываюсь прав. Вот у этого не сильно, вроде бы, выделяющийся гроул:
https://www.metal-archives.com/artists/Spiros_Antoniou/1630
(вокалист Septicflesh), но даже на трэке Aborted узнаётся. Да и не
только гроулящих, но и какого-нибудь Ihsahn-а ни с кем не спутаешь.

3 years agorirc IRC клиент
Sergey Matveev [Sun, 9 Jan 2022 07:50:30 +0000 (10:50 +0300)]
rirc IRC клиент

https://rcr.io/rirc/
http://www.git.stargrave.org/?p=rirc.git;a=commitdiff;h=85d77d07a201e6d712e06501494e6a7e3c633271
Попробовал rirc клиент IRC. Написан на Си, очень лёгок, полноэкранный
TUI, поддерживает всякие SASL, TLS и даже некоторые IRCv3 возможности.
Никаких конфигов. Связаться с Libera.Chat можно без проблем.

Как минимум не хватает перехода на "alerted" канал, да и просто список
каналов у меня не влезает по горизонтали (Mattermost на работе состоит
из не одного десятка каналов). Плюс нет сохранения журнала.

Из коробки оно правда не собралось у меня и пришлось сделать небольшой
патчик со всякими отсутствующими include-ами и define-ами.

3 years agoПропущенные запятые в Python
Sergey Matveev [Sat, 8 Jan 2022 17:48:53 +0000 (20:48 +0300)]
Пропущенные запятые в Python

https://www.opennet.ru/opennews/art.shtml?num=56470
Вечный источник проблем в этом языке! Пример того, как свобода
самовыражения куда больше бед приносит. Конечно, если бы всё было
покрыто тестами досконально, то и проблем бы не было, но зачем на
пустом месте давать такую простую возможность обосраться? Ведь все
эти запятые действительно плохо видны на экране. Настраивать
редактор на их яркую подсветку?

3 years agoСессии в Vim
Sergey Matveev [Sat, 8 Jan 2022 16:13:25 +0000 (19:13 +0300)]
Сессии в Vim

С прошлого года стал гораздо чаще использовать сессии. View у меня
автоматически сохраняются и загружаются через autocmd. Но view отвечает
только за одно окно. А если хочется сохранить и полностью всё их
расположение и открытые буферы, то тут только сессии помогут. Даже не
потому что компьютер хочется выключить, а например перезапустить vim
из-за обновления какого-нибудь LSP сервера или его конфигурации.

:mks -- и в текущей директории (у меня это, как правило, корень проекта)
будет создан Session.vim. vim -S -- его автоматом загрузит. Я не парюсь
со всеми этими именами файлов, ибо у меня бывает только одна сессия на
проект.

Сессии появились ещё в версии 5.2, но видел что многие даже не
подозревают о таком встроенном функционале, используя костыльные плагины.

3 years agorecoll и индексация man-страниц
Sergey Matveev [Sat, 8 Jan 2022 12:22:04 +0000 (15:22 +0300)]
recoll и индексация man-страниц

http://www.git.stargrave.org/?p=dotfiles.git;a=commitdiff;h=471b572cc7f6814bc8d37d0e5585ac67d9fe954a
Захотел документацию по одной из секций xorg.conf-а.
rcl man ServerLayout (86e4d33cf2ae7459838f041f534382a3ef23ee18): и
ничего не выдаёт! Какой же толк от всего этого если он не находит
банальщины?

Выяснилось что типы файлов он определяет корректно: text/troff, но они
не индексируются, так как неизвестно какой из процессоров roff-макросов
необходимо применять. В штатной поставке есть mimemap файл для явного
указания что файлы в /usr/share/man являются text/x-man, для которых уже
явно вызывается groff с man-процессором.

Добавив этот mapping для всех директорий man-ов (которых с десяток),
проблема решается, всё прекрасно начинается искаться. Прежде, при
проверке работоспособности, я, похоже, давал поиск по man-ам
оказывающимся в /usr/share/man.

3 years agoYggdrasil на FreeBSD
Sergey Matveev [Sat, 8 Jan 2022 12:10:50 +0000 (15:10 +0300)]
Yggdrasil на FreeBSD

В рассылке NNCP напомнили о существовании Yggdrasil. Решил посмотреть
работает ли эта штука и можно ли подключится к его глобальной сети.
Собирается на FreeBSD 12.0 без проблем, но совершенно отказывается
работать с TUN интерфейсами. Помню что когда игрался с Wireguard, то
тоже столкнулся с этим. Yggdrasil использует исходный код Wireguard для
работы с TUN-интерфейсами как-раз. Проблема в том, что они стали
использовать системные вызовы появившиеся как минимум в FreeBSD 12.1.

У меня есть директория с рабочим Wireguard-ом, стоящем на коммите до
несовместимых изменений работы с TUN-ом. Работоспособность Yggdrasil
в итоге восстанавливается простой командой:
    echo "replace golang.zx2c4.com/wireguard => /home/stargrave/work/wireguard-go"
        >> yggdrasil-go-0.4.2/go.mod

Взял какой-то российский публичный peer, подключился, разрешил firewall
на tun0 интерфейс, зашёл через эту overlay сеть на домашнюю страницу
проекта. Так что всё работает, не упало. cjdns при подключении к
Hyperboria редко выживал.

3 years agoКиану то прав о NFT
Sergey Matveev [Sat, 8 Jan 2022 09:50:22 +0000 (12:50 +0300)]
Киану то прав о NFT

Киану Ривз был прав (5203ade13973b991b29ea3a6b2b969be82c3c6a7) о том,
что NFT можно подменить/подделать, что Мокси и продемонстрировал и его
NFT даже удалили в 2a9b8bec6c707f0ec3b445056daa9807b1206a35.

3 years agoMoxie о Web3
Sergey Matveev [Sat, 8 Jan 2022 08:59:47 +0000 (11:59 +0300)]
Moxie о Web3

https://moxie.org/2022/01/07/web3-first-impressions.html
Спустя шесть лет простоя, у Мокси появилась запись в его блоге о Web3.

Он не раз уже рассказывал чем хороши централизованные системы --
безусловно его доводы верны, как и мне было очевидно что эффективность
распределённых и децентрализованных систем, их QoS, всегда будет ниже в
целом из-за overhead-ов и всех сложностей. Он прав что люди не хотят
запускать у себя ничего, хотя почти у каждого в штанах мощнейшая железка
с относительно постоянным доступом в Интернет и Unix-подобной ОС. Но я
при своём мнении, что это в любом случае неприемлемо и с этим нельзя
мириться.

Он был удивлён что де-факто все клиенты blockchain-ов вообще то не
работают с этими blockchain-ами "напрямую" -- они не реплицируют
состояние, не делают криптографические проверки. Они просто общаются с
посредниками, всего с (де-факто) двумя посредниками-серверами, которые
отдают данные без какой-либо аутентификации или подписи. Какой смысл в
blockchain если, собственно, проверку никто не производит? Это вопрос к
последователям всей этой брехни.

Клиент который он использовал, делал запросы на совершенно не связанные
между собой платформы, переиспользуя TLS сессию, фактически связывая
метаинформацией всё что происходит.

Если что-то попало в blockchain, то его оттуда же уже не достать? Мокси
сделал NFT, но в итоге его оттуда "удалили". Как же так? Да потому что
никто из клиентов не делает никакой валидации ответов (от пары
централизованных платформ). И де-факто все смотрят не в blockchain, а в
централизованную платформу. Всякие правила отчислений вшиты не в
blockchain-ы с их умными контрактами, а в API и софт централизованных
платформ. Говоришь что у тебя есть NFT, он же зарегистрирован в
blockchain? А клиент платформы на смартфоне говорит что нету. И никуда
ты не денешься после этого, ведь у миллионов пользователей сказано что
нету у тебя ничего. Вот она децентрализация!

Что для меня было открытием, так это то, что оказывается NFT не делает
hash commitment. Я был полностью уверен что в blockchain помещается хэш.
Везде написано что помещается URL, но я не ожидал что без хэша.

В итоге, пишет Мокси, люди, имеющие дела со всеми этими NFT, совершенно
не заботятся о распределённом доверии, а только о том, где их деньги. В
итоге, уже сейчас на практике, всё это превратилось просто банально в
web-сайт для покупки и продажи JPEG-ов, используя дебетовую карточку. Не
больше, ни меньше. Это просто сайт магазин, использующий обычные
банковские карты для оплаты. Ничего де-факто из web3, blockchain не
остаётся на практике. Но запустить такой магазин они просто не могли,
так как рынок требует чтобы было модно, ново, молодёжно, с блокчейном
внутри (хотя он там просто лишен).

3 years agoМигающий курсор
Sergey Matveev [Fri, 7 Jan 2022 08:36:06 +0000 (11:36 +0300)]
Мигающий курсор

https://habr.com/ru/company/skillfactory/blog/599535/
https://st.suckless.org/patches/blinking_cursor/
В этом году я стал использовать патч с мигающим курсором в терминале.
И тоже по причине описанное в статье -- понимать где он находится.

3 years agoWeb3
Sergey Matveev [Thu, 6 Jan 2022 19:20:42 +0000 (22:20 +0300)]
Web3

https://thedorkweb.substack.com/p/the-weirdness-beyond-web3-bullshit
https://jlelse.blog/links/2021/12/web0
https://elliott.computer/pages/web0.html
https://ar.al/2022/01/06/the-web0-manifesto-a-technical-review/
https://blog.wesleyac.com/posts/web3-centralized
https://jlelse.blog/micro/2021/11/brave-web3
https://invisibleup.com//articles/38/
https://soatok.blog/2021/10/19/against-web3-and-faux-decentralization/
В ленте новостей замечаю много статьей замечающих об огромной куче
статей про Web3.

Собственно ничего нового в них не отмечают, всё очевидные факты: Web2
это коммерциализация Интернета, превращение WWW из распределённой
системы документов в систему скачиваемых автозапускаемых программ (ну
всё это дерьмо типа CSS и JavaScript) на всё более централизованных
ресурсах (соцсети). Web2 создан корпорациями для корпораций, для
сплошной торговли, слежки и рекламы.

Ну а Web3 это штука вовсю использующая блокчейны -- настолько дурная
тема, что даже детальнее что-то читать по этому поводу не хочется.
Где-то видел статью с наблюдением того, что популяризаторы "Web3" --
люди имеющие криптовалюту, поэтому им нужно вовлекать и привлекать людей
в этот шабаш.

Поражает насколько часто используют они слово "децентрализованный". Прям
как какой-нибудь Дуров лепечущий про безопасность своего Telegram.

3 years agoapcupsd
Sergey Matveev [Thu, 6 Jan 2022 16:22:05 +0000 (19:22 +0300)]
apcupsd

Впервые решил использовать демона для мониторинга ИБП. Хотя может быть
раньше и пробовал, но ничего не вышло из-за какой-нибудь проприетарщины.
Сейчас у меня APC ИБП появился. Установил apcupsd из портов, указал в
конфиге что нужно использовать USB -- бесперебойник видит, все параметры
показывает, из коробки делает и wall и выключение системы. Всё оказалось
тривиальным.

3 years agoПокатушки
Sergey Matveev [Thu, 6 Jan 2022 15:19:03 +0000 (18:19 +0300)]
Покатушки

На днях с родителями ездил в Сергиев-Посад. Погуляли там по Лавре,
съездили в Радонеж. Выбирались ещё в центр Москвы, на Красную площадь.
Народу тьма, всякие ярмарки. Сегодня ездил на ИБП и на ВДНХ народу
как-будто ещё больше чем в центре. Выбирались специально вечером, чтобы
кучу подсветки красивой лицезреть.

3 years agoTurboBoost и ИБП
Sergey Matveev [Wed, 5 Jan 2022 20:04:38 +0000 (23:04 +0300)]
TurboBoost и ИБП

В 69e98cc610789604ae6a02ae38586135a803d38c начал использовать TurboBoost.
Но даже банальный startx заставит процессор разогнаться настолько, что ИБП
сразу вырубается. Не проверял хватает ли ИБП одного на NUC, но совместно
с ненагруженными серверами -- вообще не тянет. Так что в любом случае
придётся приобретать ещё один бесперебойник.

3 years agoministat
Sergey Matveev [Tue, 4 Jan 2022 12:36:12 +0000 (15:36 +0300)]
ministat

https://klarasystems.com/articles/freebsd-tcp-performance-system-controls/
В FreeBSD много где встречал красивых ASCII графиков наподобие:

    $ ministat -s -w 60 iguana chameleon
    x iguana
    + chameleon
    +------------------------------------------------------------+
    |x      *  x            *      +              + x           +|
    | |________M______A_______________|                          |
    |             |________________M__A___________________|      |
    +------------------------------------------------------------+
        N        Min        Max     Median        Avg       Stddev
    x   7         50        750        200        300    238.04761
    +   5        150        930        500        540    299.08193
    No difference proven at 95.0% confidence

Делаются штатной ministat утилитой из коробки.

    #/bin/sh
    for size in 65k 1m ; do
      for x in 3 10 20 40 ; do
        sudo sysctl net.inet.tcp.initcwnd_segments=${x};
        for y in $(jot 20) ; do do
          /usr/bin/time -a -o iperf3-iw${x}-${size}.out iperf3 -c iperf3.example.com -n ${size}
          sudo -v
        done
      done
    done

    $ ministat iperf3-iw3.out iperf3-iw10.out iperf3-iw20.out iperf3-iw40.out
    x iperf3-iw3.out
    + iperf3-iw10.out
    * iperf3-iw20.out
    % iperf3-iw40.out
    +--------------------------------------------------------------------------+
    |       *       +             %                     x                      |
    |       *       +             %                     x                      |
    |       *       +             %              x      x                      |
    |       *       +             %      %       x      x                      |
    |       *       +             %      %       x      x                      |
    |       *       +             %      %       x      x                      |
    |       *       *             %      %       x      x                      |
    |       *       *             %      %       x      x                      |
    |       *       *      @      %      %       x      x                      |
    |*      *       *      @      %      %       #      x      x              x|
    |     |_MA__||__A__|       |__M__A____|     |______AM_____|                |
    +--------------------------------------------------------------------------+
        N           Min           Max        Median           Avg        Stddev
    x  20          0.86           0.9          0.87         0.868  0.0095145318
    +  20          0.81          0.83          0.82          0.82  0.0045883147
    Difference at 95.0% confidence
        -0.048 +/- 0.00478065
        -5.52995% +/- 0.52619%
        (Student's t, pooled s = 0.00746924)
    *  20           0.8          0.82          0.81        0.8115  0.0048936048
    Difference at 95.0% confidence
        -0.0565 +/- 0.00484226
        -6.50922% +/- 0.529354%
        (Student's t, pooled s = 0.0075655)
    %  20          0.83          0.86          0.84        0.8435  0.0074515982
    Difference at 95.0% confidence
        -0.0245 +/- 0.00546953
        -2.82258% +/- 0.619167%
        (Student's t, pooled s = 0.00854554)

3 years agoСнова увеличил производительность NUC-а почти в два раза
Sergey Matveev [Tue, 4 Jan 2022 11:32:20 +0000 (14:32 +0300)]
Снова увеличил производительность NUC-а почти в два раза

Я похоже какой-то мазохист. Сначала я работал на жутко медленных NVMe в
b206cedbbc0f50e43c40349e4baa62bf9db3a7e2, потом "ускорил". Теперь я
что-то вспомнил про TurboBoost и снова задался вопросом как оно
поддерживается в FreeBSD.

В общем, не знаю что я делал в прошлый раз не так, но то ли в UEFI забыл
включить TurboBoost (хотя навряд ли ж), то ли powerd не включал. Наспех
проверял. На каком-то ресурсе увидел что факт наличия TB возможности
намекается +1MHz частотой в:
    dev.cpu.0.freq_levels: 2401/45000 2400/45000 ...
Включив TB в UEFI увидел этот новый 2401. Запустил: powerd -a max
и вижу: load 800%, current freq 2401 MHz ( 0), wanted freq 4802 MHz.
И через пару секунд услышал вентиляторы как никогда громкие.

Запустил benchmark distributed.net. В прошлый раз
(2c464d080b6f570068ca633909de2bef0969ed9a) он показывал 50 Gnodes/sec,
тогда как старенький Xeon -- 70. Сейчас выдаёт 85-86 Gnodes/sec,
что уже значительно шустрее Xeon-а.

3 years agoПро strict aliasing в Си
Sergey Matveev [Tue, 4 Jan 2022 10:24:08 +0000 (13:24 +0300)]
Про strict aliasing в Си

https://lkml.org/lkml/2009/1/12/369
https://lkml.org/lkml/2018/6/5/769
https://danso.ca/blog/strict-aliasing/
https://habr.com/ru/post/114117/
https://bugzilla.kernel.org/show_bug.cgi?id=12597
https://bugzilla.mozilla.org/show_bug.cgi?id=1031653
https://stackoverflow.com/questions/47232954/what-does-fwrapv-do
В 153271e2a5ebe0450329c630e19ab92022d9966f упоминал про strict aliasing
и корректность использования char-ов. Торвальдс критикует в своём духе
всю эту идею aliasing-а.

А ещё они используют -fwrapv, предполагая что все архитектуры где они
собираются используют 2's complement signed числа, иначе переполнение
будет считаться UB и компилятор волен творить любую неожиданную дичь.
Только в будущих стандартах 2's complement будет стандартом и
переполнение в нём уже штатным поведением.

3 years agoЭкранирование переменных в zsh
Sergey Matveev [Tue, 4 Jan 2022 10:07:17 +0000 (13:07 +0300)]
Экранирование переменных в zsh

Нарадоваться не могу тому, что в zsh можно без боязни выполнять,
казалось бы, простые вещи типа:
    for i (**.7z) { mkdir $i:r && pushd $i:r && 7z x ../$i:t && popd && rm $i }
где по иерархии директорий и файлов, в которых возможно есть пробелы, он
будет спокойно идти и работать. Чувствуешь себя человеком в shell-е в
кой да веки!

Отдельно лучи ненависти к 7z: я уже забыл что значит упираться в CPU при
декомпрессии! Со скачанными 7z я даже 100Mbps насытить не могу.

3 years agoSigned vs unsigned integer
Sergey Matveev [Mon, 3 Jan 2022 11:26:11 +0000 (14:26 +0300)]
Signed vs unsigned integer

https://graphitemaster.github.io/aau/
https://news.ycombinator.com/item?id=29766658
Интересные аргументы за и против использования знака с целыми числами в
программах в общих случаях. Я изначально использовал unsigned когда мне
точно не нужен был знак. Позже самостоятельно пришёл к тому, что со
знаком безопаснее из-за всяких ошибок и косяков: unsigned число при
переполнении (точнее при underflow) всё равно останется положительным и
очень большим. Было что напарывался на эти проблемы, которые бы с signed
было проще отловить. Однако и с проверками для signed я помню что код
становился куда более громоздким, как в начале статьи.

3 years agoПосмотрел третью часть "Последнего богатыря"
Sergey Matveev [Sun, 2 Jan 2022 17:05:40 +0000 (20:05 +0300)]
Посмотрел третью часть "Последнего богатыря"

https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B8%D0%B9_%D0%B1%D0%BE%D0%B3%D0%B0%D1%82%D1%8B%D1%80%D1%8C:_%D0%9F%D0%BE%D1%81%D0%BB%D0%B0%D0%BD%D0%BD%D0%B8%D0%BA_%D1%82%D1%8C%D0%BC%D1%8B
Вроде бы забавный и неплохой фильм, но, как и с первой частью, боюсь что
напрочь забуду о чём он после непродолжительного времени.

3 years agoМуха
Sergey Matveev [Sun, 2 Jan 2022 16:49:45 +0000 (19:49 +0300)]
Муха

Новая собака вовсю обжилась у родителей. Везде ходит хвостом. Тявкает и
охраняет квартиру когда кто приходит. Может и порычать и покусать, что
мы одобряем (чихуашка же). Пулей носится по дому. Пытается играть с
нашей другой собакой, но та только скалится пока на неё. Любит ложится
полностью прямо на тебя: на пузо, на спину. Полностью расслабляется,
спит без задних ног. Всегда под бочком старается быть. Реагирует на
звуки в телевизоре, поворачивая голову. Такое впечатление, что большую
часть времени рассматривает комнаты, нас или телевизор через зеркало:
постоянно уставится в него. А когда видит своё отражение в окне или
стеклянных дверях, то может и полаять на него. Всё что даём из
вкусняшек: сразу же прячет в какое-нибудь потайное место (за подушки,
закапывает в оделяла, прячет за шкафы и тумбы, говорят что и в ботинках
тайники находились). Ко мне на руки постоянно просится -- я явно свой у
неё уже. Если хочет тебя полизать, то фиг оторвёшься от неё: родители её
называют мухой-прилипалой.

3 years agoОбновление /dev/random в Linux
Sergey Matveev [Sun, 2 Jan 2022 15:02:03 +0000 (18:02 +0300)]
Обновление /dev/random в Linux

https://www.opennet.ru/opennews/art.shtml?num=56445
Кхм, в Linux до сих пор был SHA1-based PRNG? 20+ лет назад, когда
организация где я работаю взяла GNU/Linux на вооружение, первым делом
производилась замена его PRNG. Fortuna до сих пор там не применяется.
По мне так это просто позорное ядро с криптографической точки зрения.
Такое впечатление, что если речь про криптографию, то в GNU/Linux или
пилят своё или его просто не используют.

3 years agoНовый год с Терминатором
Sergey Matveev [Sat, 1 Jan 2022 19:27:08 +0000 (22:27 +0300)]
Новый год с Терминатором

У родителей по какому-то каналу целых пять частей Терминатора показывали:
три части до полуночи, две после. Все и посмотрели. На следующий день
пересмотрели Бриллиантовую руку, Кавказскую пленницу, Ивана Васильевича,
Джентльменов удачи, Служебный роман -- куда ж без них, с удовольствием
их смотрю снова и снова.

3 years agoПодставка под запястья в виде французского батона
Sergey Matveev [Thu, 30 Dec 2021 20:58:27 +0000 (23:58 +0300)]
Подставка под запястья в виде французского батона

https://boingboing.net/2007/10/02/loaf-of-french-bread.html
https://www.youtube.com/watch?v=hYr2ph_p6as

3 years agoПрочитал "Уиллу", "Завтрак в Кафе Готэм" и "Немой" Стивена Кинга
Sergey Matveev [Thu, 30 Dec 2021 16:39:06 +0000 (19:39 +0300)]
Прочитал "Уиллу", "Завтрак в Кафе Готэм" и "Немой" Стивена Кинга

https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B2%D1%82%D1%80%D0%B0%D0%BA_%D0%B2_%C2%AB%D0%9A%D0%B0%D1%84%D0%B5_%D0%93%D0%BE%D1%82%D1%8D%D0%BC%C2%BB
https://ru.wikipedia.org/wiki/%D0%A3%D0%B8%D0%BB%D0%BB%D0%B0_(%D1%80%D0%B0%D1%81%D1%81%D0%BA%D0%B0%D0%B7)
https://en.wikipedia.org/wiki/Mute_(short_story)
Кинг конечно крут! Так здорово и интересно пишет! Во всех историях жуть
наступает только в самом конце. Но "завтрак" -- прям сюжет для сна,
после которого в ужасе проснёшься в холодном поту.

3 years agoВыпуск "Back to the BBS" о демосцене
Sergey Matveev [Thu, 30 Dec 2021 09:50:11 +0000 (12:50 +0300)]
Выпуск "Back to the BBS" о демосцене

https://alsgeeklab.com/back-to-the-bbs-episode-6-the-demoscene/
Вот что я совершенно не застал и не видел, так это демосцену.
Обязательно когда рассматривают историю BBS-ок, FidoNet и подобного,
то без демосцены не обходятся. В этом ролике показано много
разнообразных демок -- хотя бы ясно что это такое не на словах.
Впечатляет что люди умудряются делать с доступными ресурсами
(а сейчас и Word будет тормозить на зверь-машинах).

3 years agoПеремещение/копирование директорий
Sergey Matveev [Thu, 30 Dec 2021 08:51:55 +0000 (11:51 +0300)]
Перемещение/копирование директорий

https://minnie.tuhs.org/pipermail/tuhs/2021-December/024921.html
В ранних версиях SysV команда mv действительно буквально только
переименовывала директории. В Plan9 аналогично -- только переименование.
Для копирования есть отдельная dircp утилита, аналогичная вызову:
    @{cd fromdir && tar c .} | @{cd todir && tar xT}
Насколько это всё же правильнее, ибо ведь действительно два совершенно
разных действия. Как в git: одна команда и масса несвязанных действий.

3 years agolore+lei
Sergey Matveev [Thu, 30 Dec 2021 08:30:03 +0000 (11:30 +0300)]
lore+lei

https://lwn.net/Articles/878205/
https://lwn.net/Articles/748184/
https://public-inbox.org/
В Linux для рассылок используют mlmmj. А для их архивирования с
web-интерфейсом, поиском и возможностью локального клонирования:
public-inbox. Надо попристальнее будет посмотреть на эту штуку,
ибо недостаток централизованной рассылки это одна точка отказа.
Впрочем, если выкладываются .mbox файлы, то в offline это тоже
можно будет использовать.

3 years agoВ Linux оказывается есть X.509
Sergey Matveev [Thu, 30 Dec 2021 08:28:33 +0000 (11:28 +0300)]
В Linux оказывается есть X.509

https://www.spinics.net/lists/stable-commits/msg184308.html

3 years agoВажность SIGINFO
Sergey Matveev [Tue, 28 Dec 2021 22:24:25 +0000 (01:24 +0300)]
Важность SIGINFO

https://minnie.tuhs.org/pipermail/tuhs/2021-December/024898.html
В TUHS рассылке есть люди, которые не могут находится рядом с Linux
из-за отсутствия в нём удобнейшего SIGINFO (ну и софта соответственно
и терминала с Ctrl-T). Пишут что и в SVR4 сложно из-за этого вернутся.

3 years agoparallel cpuset
Sergey Matveev [Tue, 28 Dec 2021 22:17:34 +0000 (01:17 +0300)]
parallel cpuset

Когда под рукой многопроцессорная система, то GNU parallel использую
постоянно, для всякой мультимедиа в основном. И хочется чтобы задача
не скакала по ядрам. Для NUMA систем это вообще губительно: процесс
может оказаться "вдалеке" от своей памяти что значительно замедляет
к ней доступ. Благо что сделать привязку легко, учитывая что parallel
может подставить "job slot number": parallel cpuset -l {%} ...
Сгодится конечно если задач не больше кол-ва процессоров.

3 years agoredo и shell
Sergey Matveev [Tue, 28 Dec 2021 21:32:09 +0000 (00:32 +0300)]
redo и shell

https://news.ycombinator.com/item?id=29717028
Комментарий за комментарием пишут что redo не вариант, ибо надо писать
на ужасном shell-е. Удручает что вроде бы все мне известные сайты и
реализации redo подчёркивают, что никоим образом не зависят от shell-а
и не заставляют на нём писать .do файлы. Элегантная простота redo долго
и до меня доходила.

3 years agoДуров ответил Мокси
Sergey Matveev [Tue, 28 Dec 2021 17:53:54 +0000 (20:53 +0300)]
Дуров ответил Мокси

https://habr.com/ru/news/t/598421/
Мокси ему про криптографию и шифрование и хранение plaintext-а, а Дуров
про "мы не раскрываем третьим лицам", про кто кого спонсирует. Ну и... я
конечно не вижу оригинальное его сообщение, но если он и правда заявил
что, раз АНБ участвовало в создании алгоритмов шифрования (что не
правда, ибо оно участвовало в качестве судей, что в общем-то не важно)
-- то они могут дешифровать: это перебор уже в идиотских тупых заявлениях.
Но опровергать заявление Мокси он не стал.

3 years agoМножество примеров zsh expansion-а
Sergey Matveev [Tue, 28 Dec 2021 08:56:23 +0000 (11:56 +0300)]
Множество примеров zsh expansion-а

https://thevaluable.dev/zsh-expansion-guide-example/
В принципе то всё есть в документации и массе других мест, но тут
аккуратно по шагам, не наваливая с полсотни опций/параметров, с
примерами. БОльшую часть всего вовсю использую ежедневно.

3 years agoУти-пути, маленький Бафомет в капитолии штата Иллинойс
Sergey Matveev [Tue, 28 Dec 2021 08:15:27 +0000 (11:15 +0300)]
Ути-пути, маленький Бафомет в капитолии штата Иллинойс

http://www.hitkiller.com/milota-xram-satany-prazdnichno-prines-v-kapitolij-shtata-illinojs-malenkogo-bafometa.html
И самые нетерпимые ко всему чуждому, самые поносящие это всегда всякие
религиозные люди, коих я считаю одними из самых страшных человеков, ибо
они никогда не скажут что у них реально на душе, будут лицемерить и
говорить что прописано и что полагается, но без какой-либо искренности.

Недавно была статья о том что осла на холод выбросили из монастыря, мол
"на то воля божья", отчего он и умер конечно. Я давно считаю что по
человеку (о его человечности) можно судить по обращению с братьями
меньшими -- своё лицемерие монастырские уже показали, прикрываясь
default фразой.

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

А бафометыш:

    подчеркивает "плюрализм, единение, способность к эмпатии", а также
    отражает позитивные ценности

с чем не могу не согласится.

3 years agoLua: хорошее, плохое и уродливое
Sergey Matveev [Mon, 27 Dec 2021 08:48:10 +0000 (11:48 +0300)]
Lua: хорошее, плохое и уродливое

http://notebook.kulchenko.com/programming/lua-good-different-bad-and-ugly-parts
Хорошее резюме об особенностях этого языка. И даже не смотря на bad и ulgy,
язык мне всё равно нравится... просто надо учитывать эти недостатки и
особенности.

3 years agoПосмотрел "Не смотрите наверх"
Sergey Matveev [Sun, 26 Dec 2021 17:54:02 +0000 (20:54 +0300)]
Посмотрел "Не смотрите наверх"

https://ru.wikipedia.org/wiki/%D0%9D%D0%B5_%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B8%D1%82%D0%B5_%D0%BD%D0%B0%D0%B2%D0%B5%D1%80%D1%85
Ну... просто средненький фильм, ожидал большего. Но и не пожалел
времени. Собственно показаны тупые язвы в обществе, когда даже видя
комету всё равно будут говорить что её нет и это всё заговор. Ну как с
COVID19 тем же происходит, да и ещё тьмой вещей. Но фильм современный и
пиндосский, поэтому в каждом кадре по негру и США будет спасать весь
мир конечно же, с женщиной-президентом.

Обожаю Ди Каприо -- и тут с удовольствием на него смотрел и слушал!
Лоуренс, которую я обзываю "Ди Каприо актрис", как-то маловато говорила,
роль поменьше у неё, но тоже обожаю. Смотреть надобно не в дубляже, ибо
Леонардо много орёт.

Понравилось что он правильно подчёркивал, что люди не в состоянии
договариваться между собой, поэтому уже давно считал и считаю сущим
бредом возможность жить в мире. Не способны.

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

Судя по блогу, среди фильмов 2021-го я лучше ничего не смотрел.

3 years ago(почти) Прошедший год
Sergey Matveev [Sun, 26 Dec 2021 11:56:17 +0000 (14:56 +0300)]
(почти) Прошедший год

Какой-то полностью пустой год у меня вышел. На работе как будто вообще
ничем не занимался толком. Хотя при этом и получил две почётные грамоты.
Главное событие то конечно уход собаки Боньки и появление Мухи.

* Впервые на меня подали в суд, который полностью отказал в требованиях
  этим мошенникам. Пока судебная система работает
* В кой да веки, был приятный момент с противоположным полом

* Из литературы очень произвёл впечатление Суер-Выер
* Прошёл The Longest Journey -- единственный из оставшихся квестов очереди
* В восторге от нескольких фильмов Монти Пайтона

* Реализовал давнюю хотелку и написал tofuproxy HTTP/HTTPS-прокси, с TLS
  терминатором, TOFU менеджером сертификатов, DANE-EE, WARC-броузером
* Написал godlighty HTTP/HTTPS-сервер, заменивший у меня все lighttpd
* Удовлетворил своё желание изучить Tcl. Написал на нём не много, но в
  целом язык простой и очень мне понравился
* Переехал на daemontools, UCSPI-TCP и dqcache. Ещё больше погрязаю в
  DJB мире, что меня не удручает
* Стал поклонником JPEG-XL
* Узнал про всякие hardening фичи, научился применять seccomp и Capsicum,
  впиливать DTrace пробы
* Сменил ноутбук на Intel NUC и очень доволен этой железкой

3 years agoКультура и воспитанность людей в общественном транспорте
Sergey Matveev [Sun, 26 Dec 2021 11:33:57 +0000 (14:33 +0300)]
Культура и воспитанность людей в общественном транспорте

Она просто никакая, как минимум в Москве/Подмосковье! Из-за холодов я
на этой неделе не хочу дожидаться удобной маршрутки и поэтому еду на
электричке. Я просто в шоке, мягко говоря от всего что творится там
вокруг: *каждые* 10сек но обязательно у кого-то будет оповещение на его
смартфоне, каждые 30сек обязательно кто-то начнёт трындеть по своей
трубе, всегда находятся люди которые даже фильмы будут смотреть без
наушников. Накопил на чудо техники шпионажа и не хватило 200руб на
наушники? О чём думают те, кто держит перед собой свой девайс и не
выключает оповещения -- не подозреваю. Когда мне звонят (и я поднимаю),
то я говорю что в транспорте и кладу трубку, думая об окружающих. В 9 из
10 случаев народ наоборот заходя в транспорт начинает звонить своим
знакомым чтобы трепаться сорок минут, говоря что кладёт трубку, так как
выходит из вагона/салона.

Я думаю люди всегда были такими: срать хотели на окружающих. Смартфоны
просто стали как деньги: лакмусовая бумажка показывающая что у них там
внутри на самом деле. Прежде то просто не было техсредств для показа
своей невоспитанности и эгоизма. Без наушников просто невозможно выходит
там ездить. Причём от возраста вообще не зависит это свинское поведение.

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

На работе вспомнили про культуру людей в метро: стоят параллельно
дверям, а не перпендикулярно, загораживая половину прохода (не собираясь
выходить/входить); не снимают рюкзаки (я тоже иногда так делаю когда на
100% уверен что никому не мешаю, когда это бывает в почти пустых вагонах);
начинают поднимать свой зад для выхода только когда двери уже открылись;
начинают ломиться на вход, не дожидаясь пока всей выйдут. Отдельная боль
это еле плетущиеся черепахи, уткнувшиеся в смартфоны, идущие в полосах
где нельзя обогнать (ничего против не имею черепах, если они в сторонке,
не перекрывают дорогу). Бывают ещё те кто фильмы смотрят, спуская по
одной ступеньке в секунде на эскалаторе. Это прям моя ежедневная
пятиминутка ненависти, как в "1984". Метро хотя бы приятно своим громким
шумовым фоном, за котором не слышно всего этого трындения и просмотра
фильмов людьми.

3 years agoБлоги за Cloudflare
Sergey Matveev [Sun, 26 Dec 2021 11:29:37 +0000 (14:29 +0300)]
Блоги за Cloudflare

За последний год где-то с десяток блогов переехало на Cloudflare CDN.
Смело можно их удалять из агрегатора новостей, ибо CF требует
прохождение CAPTCHA со всякими cookie и JavaScript. Фактически оно
предотвращает работу вне современного броузера.

3 years agoКритика "Миллиона лет до нашей эры"
Sergey Matveev [Sat, 25 Dec 2021 18:33:43 +0000 (21:33 +0300)]
Критика "Миллиона лет до нашей эры"

https://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BB%D0%BB%D0%B8%D0%BE%D0%BD_%D0%BB%D0%B5%D1%82_%D0%B4%D0%BE_%D0%BD%D0%B0%D1%88%D0%B5%D0%B9_%D1%8D%D1%80%D1%8B_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2004)
Пишут что масса негативных отзывов была на этот фильм. А мне он жутко
понравился с самого начала, когда по телевидению увидел. Потом и
отдельно скачивал посмотреть на компьютере. Ну где ещё можно школу
швей-гитаристок в доисторическую эпоху увидеть?

3 years agoГотовится Уэбб, самый дорогой прибор в истории
Sergey Matveev [Sat, 25 Dec 2021 08:25:07 +0000 (11:25 +0300)]
Готовится Уэбб, самый дорогой прибор в истории

https://naked-science.ru/article/astronomy/samyj-dorogoj-nauchnyj-pribor-v-istorii
На замену Хабблу полетит этот телескоп. Не знал что его будут размещать
не на околоземной орбите, а в точке Лагранжа, ибо рядом с нами жарко. От
солнца загораживающий экран, но и при этом, всё равно, отдельно система
охлаждения жидким гелием имеется. Дикая сложность и точность всего, без
возможности обслуживания. Офигенный challenge.

3 years agoВ Linux то ещё появился Landlock
Sergey Matveev [Fri, 24 Dec 2021 12:24:38 +0000 (15:24 +0300)]
В Linux то ещё появился Landlock

https://kernelnewbies.org/Linux_5.13
https://lwn.net/Articles/703876/
В Linux давно есть seccomp, но с которым настолько всё геморройно, что
мало кто использует, в отличии от простого OpenBSD pledge или FreeBSD
Capsicum, с которыми программы сотнями переводятся. В Linux решили
написать очередное творение, уже повторяя pledge/capsicum. Я просто не
успеваю за регулярно появляемыми новыми технологиями в их экосистеме.

3 years ago*_uass и fuckwit_* в Linux
Sergey Matveev [Fri, 24 Dec 2021 09:41:39 +0000 (12:41 +0300)]
*_uass и fuckwit_* в Linux

https://www.opennet.ru/opennews/art.shtml?num=47849
Оказывается предлагались такие сокращения в коде для закрытия
уязвимостей в процессорах:
* User Address Space Separation (*_uass)
* Forcefully Unmap Complete Kernel With Interrupt Trampolines (fuckwit_*)
но в итоге приняли унылый Kernel Page Table Isolation (kpti_*).

3 years agoSecret Of Monkey Island перевели на русский
Sergey Matveev [Thu, 23 Dec 2021 18:21:31 +0000 (21:21 +0300)]
Secret Of Monkey Island перевели на русский

https://www.old-games.ru/forum/threads/klassicheskie-versii-kvesta-the-secret-of-monkey-island-perevedeny-na-russkij-jazyk.102434/
Про эту игру (точнее серию) у меня наверное больше всего в блоге
записей. Перевод меня конечно не интересует, но отметить не могу.
Я однозначно полностью нахожусь в лагере квестов от Lucas Arts, не
Sierra. И среди всех квестов от LA -- Monkey Island первые две части
это лучшее что было создано. Третью я тоже люблю, но она типа считается
не каноничной. Какой же там отличный юмор и всё по доброму (типа
каннибалов вегетарианцев). Хотя Grim Fandango я бы наверное на одном
уровне поставил, но в нём нет такого юмора.

3 years agoGojira про веганство и пандемию
Sergey Matveev [Thu, 23 Dec 2021 05:27:10 +0000 (08:27 +0300)]
Gojira про веганство и пандемию

http://www.hitkiller.com/citata-gojira-joseph-duplantier-nas-veganov-pechalit-dolbanaya-pandemiya-poskolku-vse-bedy-ot-ploxogo-obrashheniya-s-zhivotnymi.html
Многих будут бесить всякие сатанисты, а меня вот этот лютый сущий бред
веганов. К сожалению веганство достаточно заразный недуг поразивший и
вокалиста Napalm Death, но он, благо, про это ничего нигде не говорит.

3 years agoCPU радиатор с дисплеем
Sergey Matveev [Wed, 22 Dec 2021 08:42:25 +0000 (11:42 +0300)]
CPU радиатор с дисплеем

https://g15tools.com/best-cpu-cooler-with-screen-5-options-reviewed-rated-2021/
Увидел что бывают CPU радиаторы с экранчиками, у которых нехилое
разрешение и количество цветов. Смысл прозрачного корпуса появляется
(хотя и прежде он был чтобы показать все эти RGB радуги). Туда бы
простую консоль вывести для сервера -- и монитор не нужен.

3 years agoМодераторы Хабра совсем расчванькались: сокеты в Python, чат в 50 строк
Sergey Matveev [Tue, 21 Dec 2021 18:58:16 +0000 (21:58 +0300)]
Модераторы Хабра совсем расчванькались: сокеты в Python, чат в 50 строк

https://habr.com/ru/post/596985/
Комментарием на Хабре уже оставить не могу -- мой самый современный
броузер из всех что имеется уже не ест их JS-код. Но я возмущён что
подобное попадает в RSS.

* автор пишет про "веб-сокеты" -- с какого хрена то там web вообще?
  Ладно, я помню времена когда стали "WWW" считать "Интернетом", помню
  что "Internet Explorer" считать Интернетом, но теперь уже сокеты
  считаются частью web?
* сокет привязан к порту -- нет не привязан
* сокет это типа треда или программы? Ещё не лучше...
* автор выбрал 5000-ый порт "методом тыка", просто потому что на нём у
  него всё заработало. Хм... почему была выбрана USB-клавиатура вместо
  PS/2 -- потому что её штекер смог втыкнутся в USB-порт?
* curl для проверки подключения к серверу?
* то автор читает "1024 байта", то автор отсылает/читает "строки". Может
  определиться что он шлёт то?

И ещё автор предлагает подсказать новичкам что-нибудь. Я бы только врагу
такого консультанта порекомендовал, ибо хочется делать и делать palm face,
что даже не смешно, ибо ведь такие заполоняют ИТ мир и поэтому мы имеем
весь этот горький катаклизм.

Хотел бы тыкнуть автора в свой https://habr.com/ru/post/452200/
но интерфейс Хабра совсем не работает.

3 years agoКакой только бред не напишут про SHA256
Sergey Matveev [Tue, 21 Dec 2021 18:44:53 +0000 (21:44 +0300)]
Какой только бред не напишут про SHA256

https://habr.com/ru/post/596983/
https://www.securitylab.ru/analytics/488291.php
В статье про P2P протоколы ссылка на securitylab.ru, с припиской что
"SHA256 также на сегодняшний день считается уязвимой функцией". Смотрю
статью: хэширования там нет вообще, а есть HMAC-SHA256. В нём не описано
ни одной проблемы, а только косяки с вопросами кодирования того над чем
применяется этот MAC. Одна статья бредовее другой -- и ведь в эту чушь
кто-нибудь да поверит.

3 years agozmv рекурсивно по директориям
Sergey Matveev [Tue, 21 Dec 2021 11:32:46 +0000 (14:32 +0300)]
zmv рекурсивно по директориям

Прежде никогда даже не задумывался о том, чтобы применять zmv в иерархии
директорий, но это без проблем работает: zmv '(**/)(*).mp3.wav' '$1$2.wav'

3 years agoПовисающие новенькие мощные MacBook-и
Sergey Matveev [Mon, 20 Dec 2021 19:43:14 +0000 (22:43 +0300)]
Повисающие новенькие мощные MacBook-и

https://www.youtube.com/watch?v=Cw_0tBl11bY
Во время тестов, нагружающих CPU, даже удалось повесить Mac-и намертво.
Даже хвалёному качеству Apple невозможно доверять -- desktop есть
desktop: нагружать их не является штатным режимом работы.

3 years agoАудиофильский SSD
Sergey Matveev [Mon, 20 Dec 2021 19:08:38 +0000 (22:08 +0300)]
Аудиофильский SSD

https://habr.com/ru/company/ruvds/news/t/596727/
Было бы смешно, как бы не было так грустно от того что в это реально
ведь будут верить.

3 years agoПознакомился с Immortal
Sergey Matveev [Sun, 19 Dec 2021 16:24:05 +0000 (19:24 +0300)]
Познакомился с Immortal

https://en.wikipedia.org/wiki/Immortal_(band)
Как и Satyricon (f468b689d1e1159893c04f6df942e34a5c2709c1), лёгкий black
metal, под который отлично работается. Не чета жутко агрессивным и мрачным
Funeral Mist с Marduk. И куда мелодичнее и проще чем Deathspell Omega.

3 years agoЗавели Муху
Sergey Matveev [Sat, 18 Dec 2021 16:53:20 +0000 (19:53 +0300)]
Завели Муху

Появилась вторая собака по кличке Муха. Впервые взяли уже не щенка,
а полуторагодовалую короткошёрстную чихуахуа. И впервые это собака
с наградой, первое место на каком-то конкурсе. А отдавали потому
что её прикусил здоровый пёс, из-за этого торчит клык ну и про
соревнования хозяйка может уже забыть.

3 years agoНападение инопланетян и отключение электричества
Sergey Matveev [Sat, 18 Dec 2021 10:40:43 +0000 (13:40 +0300)]
Нападение инопланетян и отключение электричества

https://vitus-wagner.dreamwidth.org/2290841.html
Тут у человека регулярно отключают электричество. Дома раз в полгода, в
основном ночью, но всё равно бывает. На работе аналогично. И у родителей
и у бабушки (не один месяц жил) -- всегда бывает.

Ещё жутко бесит когда люди считают что Интернет/сайты всегда есть и
доступны. Достаточно логи RSS-аггрегатора посмотреть чтобы увидеть как
часто всякое бывает недоступно. Родные DNS сервера у всех провайдеров
где я был -- регулярно недоступны (ну или не отвечают не NX-ом). Раз в
месяц да почти везде но обязательно трафик между мной и Интернетом не
ходит -- мониторинг показывает.

3 years agoМатрица 1999-го
Sergey Matveev [Fri, 17 Dec 2021 20:29:58 +0000 (23:29 +0300)]
Матрица 1999-го

https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%82%D1%80%D0%B8%D1%86%D0%B0_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC)
С новостями о выходе Матрицы, на работе слово за слово и оказалось что
прилично людей не смотрело этот фильм! Я считал что уж этот то фильм все
видели. И не только я один на работе был в этом уверен. Причём от возраста
это на зависело.

Пытались вспомнить какие бы фильмы вот точно точно все смотрели?

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

Остановились на "Пятом элементе" и "Терминаторе 2". Молодёжь ещё
подсказала про "Гарри Поттера" (с чем наверное соглашусь), "Властелина
колец" и "Пиратов Карибского моря" -- мне всё это в голову даже не
приходило, ибо уж больно что-то современное. Ну и не приходило наверное
потому что не поклонник всего этого.

Хотел бы я ещё назвать "Назад в будущее", но например моя бывшая его
посмотрела только благодаря мне. Среди "Пиратов", "Властелина",
"Поттера" я бы предпочёл ещё раз снова все три части "Назад в будущее"
пересмотреть -- мне кажется никогда он мне не надоест и никогда я не
перестану в нём обнаруживать отсылки.

На работе ещё назвали "Бойцовский клуб", но мои родители его, благодаря
мне, посмотрели только несколько месяцев назад впервые. Я бы хотел
назвать "Криминальное чтиво", но я сам с ним познакомился лет через 15
после выхода.

Ну а про Матрицу нечего говорить -- легендарный революционный фильм, по
моему. Дальнейшие части -- чёрт с ними, ничего не помню кроме пары сцен
со спецэффектами и Монику Белуччи. "Перезагрузку" помню что посмотрел в
кинотеатре в Евпатории. А "Революция" на DVD до сих пор есть в шкафу.

3 years agoFuneral Mist -- Deiform
Sergey Matveev [Fri, 17 Dec 2021 20:17:59 +0000 (23:17 +0300)]
Funeral Mist -- Deiform

http://www.hitkiller.com/mortuus-iz-marduk-vypuskaet-novyj-albom-funeral-mist.html
Нашёл в ужасном качестве для ознакомления. Не думая что всё же сможет
впечатлить, ибо куда ему уж переплёвывать Maranatha и Hekatomb то? Но
нет, Arioch снова породил безумное зубодробительное творение! Нужно
добыть в нормальном lossless качестве только.

3 years agoБайты в Си
Sergey Matveev [Fri, 17 Dec 2021 13:56:16 +0000 (16:56 +0300)]
Байты в Си

https://lists.suckless.org/hackers/2112/18050.html
https://gist.github.com/jibsen/da6be27cde4d526ee564
https://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66110
https://github.com/RIOT-OS/RIOT/issues/5497
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2653.htm
Когда начинал писать на Си, то uint8_t показался корректным и правильным
типом данных для представления всяких байтовых последовательностей. Ведь
Си явно не говорит что char вообще то равен байту или 8-ми битам. Как и
автору libgrapheme suckless библиотеки. Но тут начались обсуждения в
рассылке и он изменил всё на char.

Начал изучать вопрос. Пришёл к тому что надо использовать unsigned char
или char (если не думать по будущие стандарты Си), проверяя на всякий
пожарный что оно равно 8-ми битам. Проблема с uint8_t в том, что
безопасно делать алиасы, когда на один и тот же участок памяти ссылаются
несколько переменных, можно когда или типы совместимы или алиасом
является character тип. uint8_t не character тип, поэтому не может быть
алиасом. Поэтому он не должен дружить с -fstrict-aliasing и может мешать
оптимизациям. На практике это работает только потому что GCC/Clang
делают typedef unsigned char uint8_t.

Дальше задался вопросом про signed/unsigned char. Проблем с конвертацией
между этими двумя типами не будет если используется дополнительный код
(two's complement). C99 не диктует что должно быть именно такое
кодирование, но будущий C23 диктует. POSIX диктует и two's complement и
8-бит размер. По этому, в общем то, на POSIX (signed) char можно
безопасно использовать. Более того, в UTF-8 строки в C11 исходном коде
интерпретируются как char *.

Итого, для работы с байтами, кроме void *:
* uint8_t * -- некорректно
* unsigned char * -- всегда корректно, если UCHAR_MAX==255
* char * -- всегда корректно в POSIX

3 years agoКуча всякого X11-софта с screenshot-ами
Sergey Matveev [Fri, 17 Dec 2021 12:47:24 +0000 (15:47 +0300)]
Куча всякого X11-софта с screenshot-ами

https://cyber.dabamos.de/unix/x11/
Узнал что есть xlennart игра, аналогичная xbill, только где вместо
Гейтса надо мочить Поттеринга.

3 years agoSIGINFO в tar
Sergey Matveev [Thu, 16 Dec 2021 21:15:27 +0000 (00:15 +0300)]
SIGINFO в tar

Сегодня догадался нажать Ctrl-T чтобы послать SIGINFO в работающий tar и
увидеть прекрасный вывод:

    In: 49 files, 309606500352 bytes; Out: 309606500352 bytes, compression 0%
    Current: ./XXX.xxx (77173096448/88082131032 bytes)

по аналогии с
cp (5f5be8fd96b77bc50e7a6b38c6bd52718c941625) и
dd (bfe140989efca7e0645986dc0678f4af4e492211)

3 years agoRust -- must die
Sergey Matveev [Thu, 16 Dec 2021 18:57:03 +0000 (21:57 +0300)]
Rust -- must die

http://rustmustdie.com/
Сайт созданный по аналогии с http://cmustdie.com/.
Даже моих небольших практических знаний по Rust достаточно чтобы
чуть-чуть усомнится в некоторых высказываний, но в целом я согласен
что Rust это та ещё жопа для написания. И на работе коллега подтвердил
что безопасное написание очень часто означает кучу копирования -- значит
медленно.

3 years agoПрочитал "Дневник" Чака Паланика
Sergey Matveev [Thu, 16 Dec 2021 17:43:49 +0000 (20:43 +0300)]
Прочитал "Дневник" Чака Паланика

https://ru.wikipedia.org/wiki/%D0%94%D0%BD%D0%B5%D0%B2%D0%BD%D0%B8%D0%BA_(%D1%80%D0%BE%D0%BC%D0%B0%D0%BD)
Ни с чем прежде у него не знаком (ну кроме фильма "Бойцовский клуб",
хотя чёрт его знает насколько близок он к книге). Очень необычно, очень
детально. Первая половина книги... по мне так скучновата, но возможно
потому что не понятно к чему это всё говорится и к чему всё ведётся. Но
под конец начинается стрёмная кровавая движуха. А это уже понравилось.
Однозначно что-нибудь ещё бы надо у него прочитать.

3 years agoКонвертирование PDF для recoll и определения страниц
Sergey Matveev [Thu, 16 Dec 2021 14:10:00 +0000 (17:10 +0300)]
Конвертирование PDF для recoll и определения страниц

http://www.git.stargrave.org/?p=dotfiles.git;a=blob;f=recoll/bin/pdftotext.sh;h=1775278068da0b9d1b844a82888b8b1a0b8088f9;hb=0232bed604be77802bc76422627be707ac2c8838
Для конвертирования PDF в текст я использую mutool convert -F text
утилиту. Но вот беда -- в её выводе нет информации о страницах. recoll
из коробки понимает разделение на страницы если есть "^L" символ. Пока
сделал хак в виде отдельного mutool info вызова для получения количества
страниц и дальше для каждой страницы вызов convert-а, с выводом "^L"
символа. Существенно медленнее, но пока меня не сильно смущает.

3 years agoСнова tar c|tar x vs cp
Sergey Matveev [Thu, 16 Dec 2021 11:15:26 +0000 (14:15 +0300)]
Снова tar c|tar x vs cp

В dd558b2a665788dfa4a15024397060615bd86d98 уже упоминал про "cp -a": без
этой опции cp будет "терять" всё на свете о файле, кроме его содержимого
(например mtime (863f4e1fadabacdb2de4d6493ba96880e20eb0e8)). А сегодня
обнаружил (это не было новостью -- просто не задумывался прежде) что
сохранить жёсткие ссылки с ним нельзя. Ни в коем случае для серьёзного
backup-а cp использовать нельзя.

И опять же спасает например tar/cpio/pax, которые без дополнительных
опций будут сохранять информацию о таких ссылках в архиве и при
разархивировании воссоздавать их.

Вот только с tar-ом обнаружил неприятную особенность: в нём можно
указать ("T") список путей которые надо добавить в архив, но директории
в нём он рекурсивно добавляет в архив. Например:
    find . -type d -mindepth 1 | tar cfT - - | ...
в архив не поместит только сами директории, но и их содержимое. В POSIX
tar команде ничего нет чтобы могло помочь. В GNU tar есть --no-recursion.
В BSD tar есть -n, --norecurse, --no-recursion. Портабельной опции для
find -d | tar нету.

cpio мог бы тут помочь. Но у самого cpio формата сильные ограничения
(например на размер файла). pax, с точки зрения POSIX, был бы тут
идеален и интерфейсом (копировать файлы можно без pipe-а вызывая pax -rw)
и форматом, но он из коробки нигде не присутствует. А если и имеется, то
зачастую не имеет поддержки pax формата.

Так какую же команду можно использовать для создания архива без
ограничений (типа размера), чтобы find-ом можно было только директории
предоставить например? Никакую :-). Не вижу тут решения. Всё не
портабельное или не присутствует гарантированно в ОС (pax). В FreeBSD
cpio команда то на самом деле использует libarchive и поэтому может
создавать pax-архивы. На практике для конкретных систем -- возможности
то имеются.

3 years agoТакой разный код на Си для простой утилиты cat
Sergey Matveev [Thu, 16 Dec 2021 10:30:07 +0000 (13:30 +0300)]
Такой разный код на Си для простой утилиты cat

https://github.com/0intro/plan9/blob/master/sys/src/cmd/cat.c
https://github.com/coreutils/coreutils/blob/master/src/cat.c
К вопросу о сравнении языков программирования: на одном и том же можно
кардинально сложно или просто писать.

3 years agorcl и несколько индексов
Sergey Matveev [Wed, 15 Dec 2021 21:17:41 +0000 (00:17 +0300)]
rcl и несколько индексов

Сегодня я начал использовать recoll (bb337e0d83d3ef04c5ec966f090ade5a162e21a1)
и уже использую несколько индексов, чтобы контексты поиска разделить.
Отдельно RFC, отдельно man-ы и отдельно рабочая директория. И позволяет
распараллелить работу с ними и независимо переиндексировать, но главное
это позволяет разделить знания об особенностях индексирования по разным
директориям (ведь за это отвечают несколько файлов: recoll.conf и
mimeconf, как минимум).

Хочется уметь легко указывать по каким именно индексам я хочу искать. Не
руками же мне "-i ..." опции передавать. rcl теперь если видит что
первые аргументы к нему являются названиями директорий в ~/recoll, то
добавляет их в качестве дополнительного индекса. Теперь:
rcl http authorization -- ищет среди всяких рабочих PDF-ок
rcl man http authorization -- ищет ещё и среди man страниц
rcl rfc man http authorization -- будет ещё и в RFC смотреть

Сейчас заметил что с включённым abstract-ом поиск работает не стремглав.
Надо будет добавить так же просто опцию по отключению его вывода.

3 years agoМой zsh прогресс
Sergey Matveev [Wed, 15 Dec 2021 21:14:38 +0000 (00:14 +0300)]
Мой zsh прогресс

Сейчас я с первого раза, не залезая в документацию, пишу уже вот такие
команды автоматом: vobs=(VTS*.VOB(on)) ; ffmpeg -i ${(j:|:)vobs[2,-1]} ...
Нужно взять все VTS*.VOB-ы отсортированные, без первого, соединить их
список через "|" ну и передать в ffmpeg (для кодирования с DVD). И нигде
не нужно париться с экранированием (хотя с файлами DVD даже под DOS не
было бы проблем). В прошлом году я бы возможно это ещё и не смог бы
синтерпретировать.

3 years agoJFS2 в Linux пришёл из OS/2
Sergey Matveev [Wed, 15 Dec 2021 19:38:19 +0000 (22:38 +0300)]
JFS2 в Linux пришёл из OS/2

https://en.wikipedia.org/wiki/JFS_(file_system)
Эта файловая система пришла в Linux, как оказалось, из OS/2.
Я не знал что и для последней то она была.

3 years agorecoll показал на что способен
Sergey Matveev [Wed, 15 Dec 2021 13:45:28 +0000 (16:45 +0300)]
recoll показал на что способен

http://www.git.stargrave.org/?p=dotfiles.git;a=blob;f=recoll/bin/rcl
Вчера установил recoll (e18bf71655b8a564745dd4f307df4ce034996031), но
только сегодня вплотную с ним поигрался.

* первая задача: среди кучи всяких ужасных PDF-ок связанных с ТК26,
  найти все где упоминается например "VKO". Они ужасно отформатированы,
  многие ужасно сконвертированы из Word-а. Названия ни о чём не говорят
  (идентификаторы рекомендации/стандарта). Многое разнесено и ссылается
  друг на друга по куче этих стандартов. VKO находит идеально, без
  проблем
* вторая задача искать не тривиальные AND-нутые фразы по RFC: даже
  комментировать нечего -- всё отрабатывает без проблем. Хотя, учитывая
  что там и .txt имеются -- это можно и grep-ом делать, просто не так
  быстро
* третья задача, после которой recoll у меня точно остаётся: замена
  apropos. Работает ли вообще этот apropos? С одной стороны я до сих пор
  продолжал иногда его вводить когда надо что-то найти в man-ах. Но у
  меня стойкое ощущение что банальные вещи у меня и zsh completion
  самописный находит прекрасно, а вот чуть более сложные apropos уже не
  может. В итоге его запускаешь, но толку никакого. Беру проект на Си в
  котором точно помню что есть FreeBSD-specific код, вижу в нём
  упоминание PROC_TRACE_CTL_DISABLE. В какой man смотреть за его
  описанием? apropos -- молчит. recoll показывает что в
  /usr/share/man/man2/procctl.2.gz есть:
      by PROC_TRACE_CTL...self.  PROC_TRACE_CTL...2).
      PROC_TRACE_CTL_DISABLE...as PROC_TRACE_CTL...of PROC_TRACE_CTL...

Я правда написал обёртку над recollq, чтобы она поприятнее для глаз
выводила ABSTRACT (с ним как-то полегче понимать о чём вообще документ
найденный) и в которой ещё и подсветка применяется supercat-а
(d85140c8be0146ddc09312cd4470c1aec828b894):

3 years agoРазукрашивание вывода по регулярным выражениям
Sergey Matveev [Wed, 15 Dec 2021 11:19:33 +0000 (14:19 +0300)]
Разукрашивание вывода по регулярным выражениям

http://supercat.nosredna.net/index.html
http://kassiopeia.juls.savba.sk/~garabik/software/grc.html
http://prysm.sourceforge.net/
Куча всяких разукрашивателей, но написаны на Python -- даже пробовать не
хочется это всё уже. Благо, supercat написан на чистом Си, без проблем
собирается и очень прост в использовании: указываем цвет, регулярку и
получаем разукрашенный вывод. Помню что мне не раз подобное требовалось,
но отдельных утилит для этой задачи не искал.

3 years agoПробую начинать использовать recoll
Sergey Matveev [Tue, 14 Dec 2021 20:15:00 +0000 (23:15 +0300)]
Пробую начинать использовать recoll

https://www.lesbonscomptes.com/recoll/
http://www.git.stargrave.org/?p=dotfiles.git;a=commitdiff;h=cbccb5bd5071445788464f183f563cc6a79218c1
Коллега на работе в очередной раз поднял вопрос и напомнил о теме
индексации и поиска информации в документах. По сути я удовлетворяюсь
grep-ом в преобладающем большинстве случаев. Но к сожалению имеются
PDF-ки, как минимум. Да и HTML-ки не всегда удобны для grep-а.

Нашёл recoll программу. Xapian движок -- точно такой же как и в
mu-helper используется (его я использую вместе с Mutt-ом), поэтому язык
запросов мне уже знаком. Есть не только GUI клиенты, но и recallq CLI.
Так как pdftotext у меня нет, ибо не хочу я ставить громоздкий poppler,
ибо я поклонник MuPDF (f5ac4628c014cc4c9fb43f7f15c6bd5cc211d24d), то
пришлось обёртку над mutool писать и переопределять вызов "декодера" PDF
файлов. Делается легко. Работает отлично. HTML-ки, PDF-ки, всякие
случайно попавшиеся под руку файлы словарей -- всё ест и по всему ищет.
С кириллицей не обнаружил проблем. Надо осваивать это всё, а то,
действительно, как в каменном веке перехожу в ~/doc, ~XXX/doc и grep-ом
ищу. Когда понимаю что что-то в PDF-ках, то бывало циклом прогоняю
pdftotext (ну точнее аналог), но это терпимо когда крайне редко делается.

3 years agoВручили на работе почётную грамоту
Sergey Matveev [Tue, 14 Dec 2021 20:13:24 +0000 (23:13 +0300)]
Вручили на работе почётную грамоту

За достижение высоких показателей в труде по итогам года.

3 years agoКриптономикон
Sergey Matveev [Tue, 14 Dec 2021 09:08:24 +0000 (12:08 +0300)]
Криптономикон

https://ru.wikipedia.org/wiki/%D0%9A%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%BD%D0%BE%D0%BC%D0%B8%D0%BA%D0%BE%D0%BD
Порекомендовали тут книгу Нила Стивенсона "Криптономикон", потому что в
блоге про неё нет упоминаний. Но я её, конечно же, читал. Просто много
раньше создания блога. Самая шифропанковская среди всей литературы.
Unix-like системы, перехват ван Эйка, PGP, и приглашённый Брюс Шнайер
специально для этой книги создавший вполне себе серьёзный настоящий шифр
Пасьянс (http://www.cypherpunks.ru/Solitaire.html), использующий
игральные карты для "вычислений". Оказалось что у Нила Стивенсона всего
две книги прочитал: эту и Семиевие (ad1e55aca359fd071aea257aaee50fa59d5b3d3e)
Обе круты.

Ещё в Криптономиконе очень нравился вот этот абзац:

    В комнате несколько десятков живых тел, каждое -- большой мешок с
    потрохами и жидкостями под таким напором, что проткни -- брызнет на
    несколько метров. Каждое выстроено на арматуре из двухсот шести
    костей, соединенных исключительно ненадежными суставами, которые
    обычно скрипят, хрустят и щелкают. Вся конструкция обтянута мясом,
    раздута пульсирующими воздушными мешками, пронизана гордиевой
    канализацией, в которой булькают кислота и сжатый газ, насыщенные
    ферментами и растворителями. Их вырабатывают вонючие куски
    генетически запрограммированного мяса, расположенные по всей длине
    гибких шлангов. Куски пищи конвульсивно проталкиваются по склизкому
    лабиринту, разлагаясь на газ, жидкость и твердое вещество, которые
    надо регулярно выводить наружу, иначе человек отравится и умрет.
    Сферические, наполненные гелем емкости поворачиваются в слизистых
    шарнирах. Бесчисленные фаланги ресничек отбиваются от посторонних
    частиц, закукливая их в клей, чтобы потом выбросить. В каждом теле
    мышца гонит нескончаемый, циркулирующий поток сжатой жижи. И,
    несмотря на все это, пока султан говорит, тела не издают ни одного
    звука. Такое можно объяснить лишь властью мозга над телом и, в свою
    очередь, властью культурного воспитания над мозгом.

3 years agoКиану Ривз о NFT
Sergey Matveev [Tue, 14 Dec 2021 05:24:49 +0000 (08:24 +0300)]
Киану Ривз о NFT

https://habr.com/ru/news/t/595349/
Достойный ответ и смех касательно вообще всей темы блокчейна :-)
Уважуха Киану! Хотя, конечно же, понимаю что он вряд ли не понимает что
это всё такое и как работает. Но сам токен скопировать можно -- он прав,
это же набор битиков.

3 years agoBack to BBS
Sergey Matveev [Sun, 12 Dec 2021 07:37:53 +0000 (10:37 +0300)]
Back to BBS

https://alsgeeklab.com/latest-posts/
Масса видео в нескольких частях про BBS-ки. Можно сказать что это некое
дополнение к "BBS: Documentary". Но тут не только про историю, но и про
современность.

3 years agoСуд на моей стороне
Sergey Matveev [Sat, 11 Dec 2021 22:11:14 +0000 (01:11 +0300)]
Суд на моей стороне

Как говорят, не прошло и пол года (на самом деле прошло даже больше), но
суд полностью отказал мошенникам из "Серверного мира" (сейчас это уже
другая компания), которые пытались отобрать у меня деньги
(7f3bd94f2589463beda0c864ef19c9744c488bfa). На кой чёрт всё это затевали
ни я, ни адвокат не знаем.

3 years agoСлепая печать != печать в темноте
Sergey Matveev [Sat, 11 Dec 2021 21:13:22 +0000 (00:13 +0300)]
Слепая печать != печать в темноте

Я уже со времён института, курса 3-4-го печатаю в слепую: мне не нужны
надписи на клавиатуре. Внезапно узнал об этом, когда пришёл в институт с
shiny новым китайским Lemote YeeLoong ноутбуком, на котором конечно же
не было никакой кириллицы. И мне ребята заметили это, тогда как я
совершенно не задумывался и не обращал внимание на это. Сейчас у меня и
дома и на работе клава полностью без надписей -- сплошная чернота. Ни
разу не заметил чтобы это что либо затруднило или помешало бы.

Но вот только это не означает что я могу работать в темноте. Во-первых,
есть ровно один момент когда я смотрю на клаву: во время набора
парольных фраз. Видимо, мой мозг не может совершенно без обратной связи
(ведь при наборе пароля ничего и не показывается на экране), поэтому мне
нужно смотреть на клаву. Во-вторых, даже вне паролей я не могу набирать
ничего (эффективно) если не вижу боковым зрением эту самую клавиатуру.
Ниже очков я вижу только жутко размытую верхнюю часть клавиатуры
(примерно где она расположена) и светлые пятна моих рук -- но этого
достаточно, видимо, чтобы корректно их позиционировать подсознательно.
Конечно я могу в полной темноте находить пупырышки над "f" и "j", но
визуальный feedback всё равно нужен, хотя на саму клаву явно я не
смотрю, только "боковое" зрение участвует.

3 years agoСнова ненависть к GnuPG, ну почти...
Sergey Matveev [Sat, 11 Dec 2021 21:07:35 +0000 (00:07 +0300)]
Снова ненависть к GnuPG, ну почти...

И я думал что напоролся на какой-то баг! Хочу удалить ключ, делая
"gpg --delete-key", он спрашивает "точно ли хочу вот этот удалить?",
отвечаю "да", выходит и показывает приглашение командной строки. Бац,
снова вижу его в ключнице. Повторяю удаление -- всё равно не исчезает.
Грохаю dirmngr на всякий пожарный -- не помогает. Оказалось, что я всё
это время упорно нажимал "j" в качестве ответа на вопрос с "y/n". Под
моим "stargrave" пользователем у меня немецкая локаль, GnuPG это
прекрасно видит и я уже привык за много лет видеть от него немецкую
тарабарщину, на которую я отвечаю "ja"/"nein". А ключ я удалял под
другим пользователем, у которого английский по умолчанию, где "yes"/"no".
Начинаю понимать о чём ведут речь пользователи, считающие кучу свободного
ПО плохим UI/UX.

3 years agogpg --fetch-keys оказался с подвохом
Sergey Matveev [Sat, 11 Dec 2021 20:59:14 +0000 (23:59 +0300)]
gpg --fetch-keys оказался с подвохом

Я конечно наслышан про сложность интерфейса GnuPG, но сейчас,
действительно, хочется сильно на него наругаться. В
8358c745a08e2f7632c3054b61641f40177e5fd8 я писал что узнал про
--fetch-keys опцию, думая что это замена "curl | gpg --import".
Так вот она, оказалось, игнорирует все подписи прилагающиеся к
ключу. Что сводит её полезность на нет. Жалко то конечно времени
потраченного на выяснение причин почему у меня нет подписи над
ключом одним, а у собеседника есть.

3 years agoBSDs vs GNU/Linux производительность
Sergey Matveev [Sat, 11 Dec 2021 18:10:59 +0000 (21:10 +0300)]
BSDs vs GNU/Linux производительность

https://www.phoronix.com/scan.php?page=article&item=bsd-linux-eo2021&num=1
В рассылке обсуждают эту статью. Бегло посмотрел на результаты и бросается
в глаза разница в zstd компрессоре. Но в рассылке народ повторяет опыт и
на FreeBSD оно чуть ли не на 10% быстрее чем под GNU/Linux. Так что доверия
к этим benchmark-ам как-то не особо много. Ну или софт с дико разнящимися
флагами компилятора собран.

DragonFlyBSD много где выделяется -- а пилит его вроде чуть ли не один
человек толком. Что-то из него переносится неспешно в FreeBSD. Но
использовать эту ОС вряд ли стоит, ибо там даже полностью с потрохами
выпилен IPsec стэк.

3 years agowww. домен
Sergey Matveev [Sat, 11 Dec 2021 16:22:42 +0000 (19:22 +0300)]
www. домен

https://dropwww.com/why
https://www.yes-www.org/
Время от времени приходится смотреть в newsboat.err.log файлике что
тами из feed-ов поломалось. Кто-то меняет URL-ы, кто то добавляет
permanent redirect-ы, у кого-то вообще всё пропадает или оказывается на
другом домене.

Сегодня забавно было: кто-то добавил www. (и перенаправляет на него), а
кто-то наоборот удаляет. Есть даже целых два домена на тему "нафиг www."
и наоборот.

Лично я твёрдо за него. Аргумент "и так понятно по протоколу в URL-е что
будет на домене" не принимаю, ибо по HTTP/HTTPS сейчас чего только не
работает и не использует в качестве транспорта. И я против того чтобы по
умолчанию считать домен web-сайтом. Если это часть всемирной паутины, то
пускай так и говорит (www.). Убеждён что нужно физический смысл, суть
отображать в поддомене. Если написано "phlog.", то можно понять что
Gopher-протокол будет на нём обслуживаться. Люди же используют "mail.",
а не "smtp.". Есть у меня всякие "cpan.mirror.", "ctan.mirror." -- видно
что это зеркала. Где-то есть "www." приписка к ним, а где-то нет и там
обслуживается rsync протокол. "git." это для Git протокола, а "www.git."
для web-интерфейса к нему. Хотя, по моей логике, надо использовать
"vcs.", но смирюсь с этим, уж лень менять то, что во всех README
прописано.

Бывают пишут "blablabla.bla" -- учитывая что у тьмы компаний (не говоря
о людях) единственным идентификатором бывает адрес в соцсети
какой-нибудь, то чёрт поймёшь это домен (ведь доменов первого уровня
бывает тьма не связанных с политикой/географией и мало знакомых) WWW
сайта или это адрес в whatever-соцсети? Для Twitter вроде добавляют
at-символ впереди -- не спутаешь, но такое же не везде есть. Можно
добавить "http://", но "www." куда короче и сразу понятно что это. К
тому же, WWW может работать, как минимум, по двум протоколам в URL
(HTTP и HTTPS), не говоря про HTTP/2 и QUIC с HTTP/3.

3 years agoConcealing Fate -- непревзойдённое творение TesseracT
Sergey Matveev [Sat, 11 Dec 2021 16:14:44 +0000 (19:14 +0300)]
Concealing Fate -- непревзойдённое творение TesseracT

https://vimeo.com/45041568
https://www.youtube.com/watch?v=grwmUTrO180
https://www.youtube.com/watch?v=nwW1d_KtkJw
Вот сколько не слушаю TesseracT альбомы, но ничего круче Concealing Fate
(несколько композиций под одним общим названием) они всё же не сделали.
Не, есть хиты запоминающиеся, типа Nascent или King-а с последнего
альбома (больше с него вообще ничего не помню), но Concealing Fate
хочется поставить всегда.

3 years agoЗависание USB при пропаже USB аудио
Sergey Matveev [Sat, 11 Dec 2021 12:11:35 +0000 (15:11 +0300)]
Зависание USB при пропаже USB аудио

https://forums.freebsd.org/threads/usb-dac-unplugged-hangs-up-rest-of-usb-devices.72061/
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194727
Давным давно у меня особенность (проблема) есть со звуком: если вывод
происходит на USB DAC, то mpv/mplayer держат открытым файл /dev/dspX.X
и когда USB вынимается, то драйвер в dmesg ругается:

    [10409] pcm4: unregister: channel pcm4:virtual:dsp4.vp0 busy (pid 65234)
    [10409] pcm4: Waiting for sound application to exit!

mpv при этом остаётся жив, и в целом всё что подключено к этому USB
контроллеру становится неработоспособным (спустя какое-то время чаще).
Было это на ноутбуках прежде, где клавиатура была PS/2 и я мог открыть
крышку и грохнуть программу (mpv). Но на NUC у меня только USB, который
может стать unresponsive для клавы и я ничего не могу сделать кроме
нажатия кнопки питания.

Проблема известна и предлагают: писать грамотно OSS-related софт, чтобы
обрабатывал ошибки и выходил. Не знаю относится ли это к mpv. Ну или
использовать virtual_oss. Я же решил просто насильно грохать софт
занимающий звуковые устройства для которых более нет аппаратуры:

/etc/devd/myaudio.conf:
    attach 20 {
        device-name "uaudio[0-9]";
        match "vendor" "0x0b05";
        match "product" "0x17f3";
        action "/etc/devd/myaudio-bitperfect.sh $vendor $product";
    };

    notify 21 {
        match "system" "USB";
        match "subsystem" "INTERFACE";
        match "type" "DETACH";
        match "vendor" "0x0b05";
        match "product" "0x17f3";
        action "/etc/devd/myaudio-killer.sh";
    };

/etc/devd/myaudio-killer.sh:
    #!/bin/sh -x
    export PATH=/usr/local/bin:$PATH
    for uaudio in $(sysctl dev.uaudio | perl -F\\. -lane '/%pnpinfo:\s*$/ and print $F[2]') ; do
        pcm=$(sysctl dev.pcm | perl -F\\. -lane "/%parent: uaudio${uaudio}$/ and print \$F[2]")
        [ -n "$pcm" ] || continue
        for dsp in /dev/dsp${pcm}* ; do
            pid=$(fstat $dsp | perl -lane "next if /^USER/ ; print \$F[2]")
            [ -z "$pid" ] || kill $pid
        done
    done

Такой геморрой потому что в devd приходит только событие о пропаже ugen
устройства, ничего не известно про аудио подсистему, которая не шлёт
ничего о том что у неё пропал родитель. В bugreport-ах видел есть
коммиты на эту тему -- возможно в новых версиях FreeBSD проблем нет.

3 years agoИстория Xbox и место России в ИТ мире
Sergey Matveev [Sat, 11 Dec 2021 10:20:10 +0000 (13:20 +0300)]
История Xbox и место России в ИТ мире

https://www.youtube.com/watch?v=bXLr5HsLCbE
Понравилось вступление про купленность в России ИТ-сферы Microsoft-ом.
Ведь по сути нас в 90-е как страну третьего мира просто решили
заграбастать для vendor-lockin-а, который мы до сих пор расхлёбываем.
У нас до сих пор чрезвычайно DOS, IBM PC, Microsoft-центричные люди.

    Винда всегда была популярна как игровая платформа.
    Серьёзные люди работали на Macintosh-ах.
    Очень серьёзные на Unix-ах.
    Винда в качестве бизнес-платформы популярна только в России,
    потому что в школах и университетах учат программировать под винду,
    так как гранты получают в основном только от Microsoft-а. Затем
    выпускники идут работать в 1С или банк, где пишут на ActiveX,
    который работает только в Internet Explorer-е. Vendor-lock работает
    превосходно. Microsoft купила российскую систему образования в сфере
    программирования с потрохами.
    [...]
    Чему вы радуетесь то? Бесконечной зависимости российской экономики
    от закрытой операционной системы с кучей backdoor-ов контролируемых США?

И всё это ведь рассказывает не какой-то поклонник свободного ПО с сильно
предвзятым мнением.

3 years agoGentoo о Python экосистеме пакетов
Sergey Matveev [Sat, 11 Dec 2021 08:43:59 +0000 (11:43 +0300)]
Gentoo о Python экосистеме пакетов

https://blogs.gentoo.org/mgorny/2021/11/07/the-future-of-python-build-systems-and-gentoo/
Gentoo тоже не выдерживает и пишет о страданиях с полностью поломанной
экосистемой пакетов Python, в которой вообще не понятно что будет
дальше, ибо разработчики просто без оглядки пилят и пилят что-то.

3 years agoПростые задачи на "Linux"
Sergey Matveev [Fri, 10 Dec 2021 18:30:31 +0000 (21:30 +0300)]
Простые задачи на "Linux"

https://www.youtube.com/watch?v=TtsglXhbxno
https://www.youtube.com/watch?v=3E8IGy6I9Wo
Буквально ни одна задача мною бы не выполнялась так как предполагают они.
Насколько же разные подходы у Unix-пользователей (типа меня) и остальных.
Вообще я даже и не представлял сколько сил оказывается было потрачено на
всю эту GUI-ню в нём. И ещё отчётливее становится для кого пилится systemd.
Я бы вряд ли чего смог сделать в GUI GNU/Linux-а, без помощи Google. Но
познавательно!

3 years agoПрочитал "Обмен разумов" Роберта Шекли
Sergey Matveev [Fri, 10 Dec 2021 09:10:21 +0000 (12:10 +0300)]
Прочитал "Обмен разумов" Роберта Шекли

https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BC%D0%B5%D0%BD_%D1%80%D0%B0%D0%B7%D1%83%D0%BC%D0%BE%D0%B2
Очень понравилась история! Кроме конца -- совсем уж какая-то
чушь высосанная из пальца. Но 90% всей книги по духу напоминает
"Автостопом по галактике" -- столько забавного абсурда!

3 years agoGithub будет форсировать 2FA для популярных NPM пакетов
Sergey Matveev [Wed, 8 Dec 2021 09:46:05 +0000 (12:46 +0300)]
Github будет форсировать 2FA для популярных NPM пакетов

https://www.opennet.ru/opennews/art.shtml?num=56304
https://github.blog/2021-12-07-enrolling-npm-publishers-enhanced-login-verification-two-factor-authentication-enforcement/
То бишь, если бы я хостил свои NPM-чики на нём, то пришлось бы уходить в
другое место. Вот с какой стати хостер репозитория/проекта вообще смотрит
на популярность проекта? Благо я давно свалил с них.

3 years agoLaTeX и Vim
Sergey Matveev [Wed, 8 Dec 2021 07:55:40 +0000 (10:55 +0300)]
LaTeX и Vim

https://castel.dev/post/lecture-notes-1/
https://habr.com/ru/post/445066/
Человек круто заморочился с snippet-ами в Vim -- прям отличный пример
где они могут пригодится и чем они удобны. А то 99% всех примеров что я
видел: такая банальщина, что делается или аббревиатурами или простыми
vimscript-ами (быстрее их написать чем читать документацию по
snippet-ам). Или же явно сильно выдуманные примеры. А тут прям боевые
применения не тривиальные.

В продолжение его статьи думал что будет TikZ показан, но автор
оказывается иллюстрации делал уже в Inkscape. Не тру, но конечно же в
TikZ нельзя быстро сварганить что-то, так что тут безвыходное положение.
Помню что не было ни одной картинки, ни одной схемы, которую бы я
рисовал от руки (пускай и на компьютере) в курсовых или дипломном
проекте: Gnuplot для графиков, что-то Python/Perl-ом сгенерированное,
был GraphViz, а дальше масса TikZ рисунков. И после института, если надо
было что-то нарисовать, то тоже его использовал, хотя постоянно имея под
рукой tutorial/документацию ибо забывается из-за нерегулярности.

3 years agozsh $mailpath и atime
Sergey Matveev [Tue, 7 Dec 2021 09:53:40 +0000 (12:53 +0300)]
zsh $mailpath и atime

Сколько же лет мне потребовалось чтобы допереть до отключения atime на
ZFS разделе где находятся почтовые ящики! Он был единственным, где atime
включён. И только по причине того, что zsh смотрит на atime
файлов/директорий перечисленных в $mailpath (для вывода сообщения о
появлении новой почты). Залез в исходники zsh: действительно,
проверяется atime > mtime ли. Однако, так как у меня maildir-ы, то новая
почта попадает в new/ поддиректорию. А Mutt, при открытии такого ящика,
всё перемещает в cur/, даже если я само сообщение не прочитал (оно всё
равно в Mutt будет иметь метку "N"). Что мешает zsh-у смотреть не за
всей иерархией maildir-а, а только за его new/? Дошло только сегодня.
Теперь atime можно отключить вовсе -- последний dataset где он остался.

3 years agoПрочитал "Цивилизацию статуса"
Sergey Matveev [Tue, 7 Dec 2021 08:58:05 +0000 (11:58 +0300)]
Прочитал "Цивилизацию статуса"

https://ru.wikipedia.org/wiki/%D0%A6%D0%B8%D0%B2%D0%B8%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%83%D1%81%D0%B0
Крутая история! Причём самое то интересное для меня в ней было под самый
конец, где главный герой возвращается на Землю, опрашивает разные
категории граждан и видит ужас во что всё (относительно него и меня,
конечно же) превратилось. Частично то ведь что-то есть и в современном
мире, к сожалению.

3 years agoПрочитал "Бесконечную историю" Михаэля Энде
Sergey Matveev [Tue, 7 Dec 2021 08:53:43 +0000 (11:53 +0300)]
Прочитал "Бесконечную историю" Михаэля Энде

https://ru.wikipedia.org/wiki/%D0%91%D0%B5%D1%81%D0%BA%D0%BE%D0%BD%D0%B5%D1%87%D0%BD%D0%B0%D1%8F_%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F_(%D0%BF%D0%BE%D0%B2%D0%B5%D1%81%D1%82%D1%8C)
Тоже детская книга типа "пунша" (a21dd83bb4d71d771f2dfa3c006a7aeacfb6e3cb),
но уже куда более серьёзная. Дети будут знакомы с понятием рекурсии и
амнезии. Показывает настоящую дружбу. Очень понравилась!

3 years agoПрохождение Downfall
Sergey Matveev [Tue, 7 Dec 2021 08:51:47 +0000 (11:51 +0300)]
Прохождение Downfall

https://www.youtube.com/watch?v=fBgM0d_Ht00
Самая крутая horror игра что я знаю: Downfall
(268649c35a191daa616b2d5c0525dfe74d4e3580), именно 2009-го года, а не
remake 2016-го, где графика уже не создаёт всю нужную атмосферу.

3 years agoБилефельдский заговор
Sergey Matveev [Tue, 7 Dec 2021 08:34:50 +0000 (11:34 +0300)]
Билефельдский заговор

https://ru.wikipedia.org/wiki/%D0%91%D0%B8%D0%BB%D0%B5%D1%84%D0%B5%D0%BB%D1%8C%D0%B4%D1%81%D0%BA%D0%B8%D0%B9_%D0%B7%D0%B0%D0%B3%D0%BE%D0%B2%D0%BE%D1%80
Бывают забавные заговоры о не существовании всяких городов или даже
государств. Оказывается были слухи что Арзамаса-16 не существует, ибо
это заговор ЦРУ. Но я, можно сказать, всё лето проводил рядом с ним,
будучи ребёнком.

3 years agoЗаюзал второй сетевой интерфейс NUC-а
Sergey Matveev [Mon, 6 Dec 2021 11:32:44 +0000 (14:32 +0300)]
Заюзал второй сетевой интерфейс NUC-а

Дошло сегодня на работе что если его поместить в bridge с основным
интерфейсом, то через него можно подключить настольный компьютер и
получить гигабит между ними. А прежде они общались через 100Mbps
коммутатор и перелить 100GB бэкап ZFS-а занимает не один час.

В NUC моём сетевые интерфейсы на разных чипах: I210 (драйвер igb) и
I219 (драйвер em). Последний не поддерживает MSI-X прерывания --
только сегодня узнал про разницу.

3 years agoMySQL не советует использовать один из его разработчиков
Sergey Matveev [Mon, 6 Dec 2021 10:08:16 +0000 (13:08 +0300)]
MySQL не советует использовать один из его разработчиков

https://www.opennet.ru/opennews/art.shtml?num=56287
https://blog.sesse.net/blog/tech/2021-12-05-16-41_leaving_mysql.html
Один из разрабов MySQL не рекомендует его использовать, мол ужасно
не современная штука. Советует PostgreSQL.

А мне MySQL никогда и не нравился: начиная от конфигов, заканчивая в
целом всем подходом к администрированию. PostgreSQL это прям нечто типа
де-факто что берётся для серьёзной SQL СУБД.

3 years agoForth в компьютерах то давно
Sergey Matveev [Sun, 5 Dec 2021 19:32:51 +0000 (22:32 +0300)]
Forth в компьютерах то давно

https://wiki.laptop.org/go/Open_Firmware
https://wiki.laptop.org/go/Forth_Lessons
https://lists.freebsd.org/pipermail/freebsd-current/2018-February/068464.html
https://wiki.freebsd.org/SummerOfCode2014/LuaLoader
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228924
Я знал что в Sun SPARC компьютерах применялся "BIOS" с Forth
интерпретатором встроенным, но, оказывается, Open Firmware и в Apple
Macintosh-ах на PowerPC и в IBM POWER системах применялась. Ну и в OLPC.
Компилятор, декомпилятор, ассемблер, дизассемблер, отладчик исходного и
ассемблерного кода -- всё умещалось в SPI flash-ку. У OLPC даже есть
tutorial по нему. Ну а в загрузчике FreeBSD тоже Forth встроен был, но
сейчас по умолчанию стали использовать загрузчик с Lua. К Lua у меня то
в целом довольно тёплое отношение и тоже могу понять что порог вхождения
в него для большинства пользователей всё же ниже, при этом язык и
реализация довольно минималистичны тоже.

3 years agoРок-клубы прошлого и концерты будущего
Sergey Matveev [Sun, 5 Dec 2021 15:41:31 +0000 (18:41 +0300)]
Рок-клубы прошлого и концерты будущего

https://moslenta.ru/news/moskovskii-gitarist-vspomnil-o-rok-klubakh-proshlogo-02-12-2021.htm
Среди перечисленных гитаристом из статьи, был во всех (Точка, Б2,
План-Б, Вольта), кроме Апельсина -- но в нём был отец на Sweet группе.
Странно что Вольта причислена к "старым" -- она ж открылась ещё при мне,
вроде уже даже после окончания института. По количеству концертов я
вроде больше всего был в Релаксе (хотя статистику по клубам не веду),
который не раз переименовывался и даже перестраивался кардинально
(застал как "старый", так и "новый"). Если и не по количеству посещений,
то по количеству услышанных там групп это точно. А дальше в Вольте.
http://cluub.ru/club/relax/ (уже закрыт)
http://cluub.ru/club/milk/ (закрыт)
http://cluub.ru/club/planb/ (закрыт)
http://cluub.ru/club/tochka/ (закрыт)
http://cluub.ru/club/yotaspace/
http://cluub.ru/club/moskva_hall/
http://cluub.ru/club/volta/
http://cluub.ru/club/pravdaclub/
http://cluub.ru/concert_hall/izvestiya/
http://cluub.ru/club/arena/
http://cluub.ru/concert_hall/crocus_city/
Но тут список очень скудный, ибо нет кучи других мест, типа "Чеширского
кота", где от слэма от деревянного пола отлетали доски и сотрудники
клуба прям во время выступлений забивали гвозди назад, а зимой отопление
было организовано просто в виде бензиновой тепловой пушки стоящей в
зале. Бывшего X.O., где были Jig-Ai, Rompeprop, Dead Infection и мой
первый поцелуй. 7-Клуба расположенного в подвале обычного жилого дома,
где было незабываемо тесно, и когда я тряс башкой, то волосня попадала
под руки гитаристу питерской группы Engorged Vaginal Abyss.
Был ещё и тут, но это тоже далеко не полный список:
https://concertinfo.ru/place/175
https://concertinfo.ru/place/204
https://concertinfo.ru/place/286
https://concertinfo.ru/place/188
https://concertinfo.ru/place/214
https://concertinfo.ru/place/197
https://concertinfo.ru/place/347
https://concertinfo.ru/place/229
https://concertinfo.ru/place/217
https://concertinfo.ru/place/274
https://concertinfo.ru/place/424
https://concertinfo.ru/place/289
https://concertinfo.ru/place/177
https://concertinfo.ru/place/173
https://concertinfo.ru/place/226
https://concertinfo.ru/place/186
Пока смотрел всё это, то очень и очень не мало групп планируется
выступать в 2022-ом! Lindemann (название тура "Я ненавижу детей"),
Behemoth, 1349, Igorr, Within Temptation, Eisbrecher, Marduk, Lacuna
Coil, In Extremo, даже Coyote Brutal Fest (https://concertinfo.ru/gig/18236/)
и чего ещё только нету. Надеюсь я всё же расчехлю свои dancing shoes.