Патчи для утилит find и cp во FreeBSD, реализующие полноценную работу с расширенными атрибутами
Механизм расширенных атрибутов во FreeBSD (extattr) позволяет управлять дополнительной информацией, связанной с файлом или директорией. При помощи семейства команд setextattr, getextattr и rmextattr можно редактировать расширенные атрибуты файла, принадлежащие к двум пространствам имён: системному и пользовательскому. Редактирование пользовательских атрибутов может пригодиться для классификации файла: добавления описания, ключевых слов и других метаданных.

[Сниппеты Qt] Как открыть документ при запуске своей программы
Путь к открываемому файлу передаётся в качестве первого параметра при запуске соответствующей программы. Кроме имени файла в открываемую программу можно передать, например, номер документа, который должен открыться при старте программы (если документы берутся из, скажем, базы данных). В программе нам нужно просто получить передаваемый ей параметр и должным образом обработать его.

[Сниппеты Qt] Получение списка всех COM-портов
Пример получения списка всех доступных COM-портов.

Список всех COM-портов в системе


QT += serialport #В pro-файле

-----

#include <QSerialPort>
#include <QSerialPortInfo>

...

foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()){
ui->comboBox->addItem(info.portName(),info.portName());
}


[Сниппеты Qt] CRC16 для ModBus
Потребовалось вычислять контрольную сумму по алгоритму CRC для пакетов данных, передаваемых по протоколу ModBus. В интернете есть функция вычисления CRC16, но её пришлось немного переделать, чтобы результат получался с нужным порядком следования байтов (протокол ModBus требует BigEndian).

CRC16 с BigEndian для ModBus в Qt

#include <QtEndian>

...

QByteArray MainWindow::CRC16_ModBusRTU(QByteArray buf, quint16 len)
...