LINUX.ORG.RU

Форум (тех. форум)

Активные теги:

 , , , , , , , , , , , , , ,

Как ненапряжно автоматизировать тестирование static_assert?

Форум — Development

Хочется покрыть тестами static_assert. Но без жести с ручным раскомментированием строк тестирования, анализом выхлопа компилятора и т.п.

Вот пример темплейта со статическими ассертами:

    template<typename Func>
    void addMethod(const std::string& name, Func func) {
        using traits = jrcpd::function_traits<decltype(func)>;
        using Ret = typename traits::return_type;
        using ArgsTuple = typename traits::argument_types;

        static_assert(!std::is_same<Ret, void>::value, "void functions not supported");

        static_assert(jrcpd::is_supported_type<Ret>::value, "Return type is not allowed");
        static_assert(jrcpd::check_all_types_supported<ArgsTuple>(), "Argument type is not allowed");

        functions[name] = [func](const JsonArray& args) -> std::string {
            try {
                if (args.size() != std::tuple_size<ArgsTuple>::value) {
                    throw std::runtime_error("Number of arguments mismatch");
                }

                // Check if each argument in JsonArray can hold the appropriate type from ArgsTuple
                if (!jrcpd::TypeChecker<ArgsTuple>::check(args)) {
                    throw std::runtime_error("Argument type mismatch");
                }

                auto tpl_args = jrcpd::from_json<ArgsTuple>(args);
                Ret result = jrcpd::apply(func, tpl_args);
                return jrcpd::generate_response(true, result);
            } catch (const std::exception& e) {
                return jrcpd::generate_response(false, e.what());
            }
        };
    }

Посоветуйте, как сейчас принято такое тестировать.

 ,

Vit
()

goaccess и реалтайм лог

Форум — Admin

Читаю на гитхабе (да и везде написано)
GoAccess is an open source real-time web log analyzer
Настраиваю.
Запусается так:
/usr/bin/goaccess --db-path=/var/cache/goaccess --persist -p /etc/goaccess/goaccess.conf
Т.е. даже базы прописал.
В итоге. Никакого реалтайма и накопления нет. Статистика генерится та что есть в текущем логе при запуске. Сама не добавляется. Демон с открытым портом висит и наверное что-то делает.
ЧЯДНТ? Или он так не умеет? Тогда что есть, что умеет?
Вот конфиг:

time-format %H:%M:%S
date-format %d/%b/%Y
#log-format VCOMBINED
log-format [%d:%t %^] %v:%^ %h %^ %^ "%r" %s %b "%R" "%u"
config-dialog false
hl-header true
json-pretty-print false
no-color false
no-column-names false
no-csv-summary false
no-progress false
no-tab-scroll false
with-mouse false
#port 7890
real-time-html true
#ssl-cert /etc/letsencrypt/live/hbars.site/cert.pem
#ssl-key /etc/letsencrypt/live/hbars.site/privkey.pem
#ws-url wss://mrtg.hbars.site/apache/bars.html
log-file /var/log/apache2/bars.hbars.site-access.log
agent-list true
with-output-resolver false
http-method yes
http-protocol yes
output /home/www/mrtg/html/apache/bars.html
no-query-string false
no-term-resolver false
444-as-404 false
4xx-to-unique-count false
all-static-files false
double-decode false
ignore-crawlers false
crawlers-only false
real-os true
ignore-panel VIRTUAL_HOSTS
ignore-panel REFERRERS
ignore-panel KEYPHRASES
static-file .css
static-file .js
static-file .jpg
static-file .png
static-file .gif
static-file .ico
static-file .jpeg
static-file .pdf
static-file .csv
static-file .mpeg
static-file .mpg
static-file .swf
static-file .woff
static-file .woff2
static-file .xls
static-file .xlsx
static-file .doc
static-file .docx
static-file .ppt
static-file .pptx
static-file .txt
static-file .zip
static-file .ogg
static-file .mp3
static-file .mp4
static-file .exe
static-file .iso
static-file .gz
static-file .rar
static-file .svg
static-file .bmp
static-file .tar
static-file .tgz
static-file .tiff
static-file .tif
static-file .ttf
static-file .flv
std-geoip false
geoip-database /etc/goaccess/geoip/GeoLite2-City.mmdb

 , goaccess,

hbars
()

Swim lane

Форум — Desktop

Всем доброго времени суток. Кто-нибудь может посоветовать приложение для построения диаграмм бизнес-процессов по принципу Swim lane? Желательно под свободной лицензией и офлайн, что бы можно было нарисовать и куда-то дальше пристроить, распечатать или сделать презентацию. Может кто делает такое или был опыт?

Нашёл вот такое:

https://drakon.su/

 ,

baaba
()

Наконец-то ушатал первый SSD

Форум — Linux-hardware

Я шатал-шатал и ушатал. SSD года четыре, использовалась в абсолютно далёком от щадящего режиме: сервер, стартующий короткоживущие виртуалки чуть ли не каждую секунду; довольно часто они перегенерировались, иногда черпался swap. И это все на btrfs, чьим write amplification и по сей день местные вожатые пугают детей у костра. CoW включен, он мне нужен.

Samsung 970 EVO 500 GB, обещано было 300 TBW, записано же было 6.13 PB, то есть всего в 20x от заявленного ресурса, и 20000x от объема. Ну как ушатал, оно и дальше работает, определяется, пишет и виртуалки крутит, но теперь пошли редкие critical medium error.

Еще года через 4 ждите отчёта по Samsung 970 EVO 1TB.

Любители экономить на спичках и тюнить кеш браузера, чтобы сэкономить десяток-другой GBW ресурса, вы-такие поехавшие.

 , , экономисты на спичках

t184256
()

Закачщики и каталогизация контента

Форум — Desktop

Собсно, что имеем:

  • металинки
  • засранный ~/Downloads
  • необходимость держать браузер открытым, пока не закончится закачка

Пробовал aria2 и JDownloader. Для первого надо сначала запустить демон и поставить AriaNg, чтобы перехватывать ссылки с куками из браузера (при этом не все ссылки перехватываются). Второй - жирный и страшный жабомутант и ставится из флатхаба, но достаточно умный, чтобы качать по ссылкам на файлообменники и металинки с кучей ссылок на них же. В общем, какие-то слишком капризные программы, пусть и работают неплохо, но хотелось бы что-то поприятнее.

Остается открытым вопрос каталогизации накачанного - средствами закачщиков толком ничего не нарулишь. Давно как-то пользовался Internet Download Manager и Free Download Manager, они что-то пытались рассовывать по папкам, но это всё винда. Может есть какие-то демоны, которые анализируют контент и достаточно умны, чтобы архив со шрифтами и образом Kal Linux положить куда положено?

 , ,

fumanchez
()

Настройка fortisslvpn в kubuntu

Форум — Desktop

Hello. kubuntu 22.04.4

sudo apt install forticlient network-manager-fortisslvpn network-manager-fortisslvpn-gnome openfortivpn -y

Создал fortisslvpn соединение в интерфейсе операционки но при запуске - «Не удалось запустить службу обеспечивающую vpn соединение»

мая 23 20:21:57 kubuntupass NetworkManager[571]: <info>  [1716481317.3764] vpn[0x557faaef0700,f09883f6-e9e9-45d6-b360-bcb2e0fedd53,"newvpn"]: starting fortisslvpn
мая 23 20:21:57 kubuntupass NetworkManager[571]: <info>  [1716481317.3767] audit: op="connection-activate" uuid="f09883f6-e9e9-45d6-b360-bcb2e0fedd53" name="newvpn" pid=1898 uid=1000 result="success"
мая 23 20:21:57 kubuntupass /usr/libexec/gdm-x-session[1464]: org.kde.plasma.nm.kded: Unhandled VPN connection state change:  3
мая 23 20:21:57 kubuntupass NetworkManager[571]: <warn>  [1716481317.4107] vpn[0x557faaef0700,f09883f6-e9e9-45d6-b360-bcb2e0fedd53,"newvpn"]: failed to connect: 'property “2fa-flags” invalid or not supported'
мая 23 20:21:57 kubuntupass /usr/libexec/gdm-x-session[1520]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitWidth"
мая 23 20:21:57 kubuntupass /usr/libexec/gdm-x-session[1520]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitWidth"
мая 23 20:21:57 kubuntupass /usr/libexec/gdm-x-session[1520]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitHeight"
мая 23 20:22:03 kubuntupass /usr/libexec/gdm-x-session[1467]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 46455, resource id: 37748954, major code: 15 (QueryTree), minor code: 0

Работает через интерфейс фортиклиента или через терминал, но как настроить через стандартный интерфейс ОС?

 ,

chart41
()

Подключение второго монитора к Raspberry PI5

Форум — General

Добрый день, форум! Впервые начал пользоваться linux и столкнулся с проблемой подключения второго монитора. Система: Debian 12, графическая среда xfce, компьютер raspberry pi5. С подключением одного монитора проблем не возникло. Однако, при подключении второго монитора ничего не происходит( Даже в настройках он не отображается (в arandr аналогично). Причем настройки не доступны и для первого монитора, только дефолтные стоят. Подскажите, в чем может быть проблема?

 , ,

kda_140
()

Какие ос помещаются на 8гб

Форум — Linux-install

Есть M.2 SSD на 8 Гб. Какие дистрибутивы помещаются на 8гб?

 ,

nvidiA
()

CentOS 9: Включение после выключения питания в режиме ожидания

Форум — Admin

Комп перешел в режим ожидания и затем полностью отключилось питание. Грубо говоря если вытащить вилку.

Но интересно, что затем если вставить вилку то CentOS 9 грузится с нуля.

То есть например Хром выводит окно «Восстановить вкладки».

А можно тут как-то настроить на такое же поведение как и в Windows?

Windows просто загрузится в то место когда он ушел в ждущий режим.

А в CentOS сейчас придется проверять диски так как например Хром завершился некорректно. Да и другие программы

 

mirek
()

Нет поддержки аппаратного декодирования видео в Mesa

Форум — Desktop

Дистрибутив Simply Linux 10.2

vainfo
libva info: VA-API version 1.16.0
libva info: Trying to open /usr/lib64/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_16
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.16 (libva 2.16.0)
vainfo: Driver version: Mesa Gallium driver 23.1.9 for KABINI (, LLVM 15.0.7, DRM 2.50, 5.10.216-std-def-alt1)
vainfo: Supported profile and entrypoints
      VAProfileNone                   :	VAEntrypointVideoProc

vdpauinfo
display: :0.0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0

Video surface:

name   width height types
-------------------------------------------
420    16384 16384  NV12 YV12 
422    16384 16384  UYVY YUYV 
444    16384 16384  Y8U8V8A8 V8U8Y8A8 

Decoder capabilities:

name                        level macbs width height
----------------------------------------------------
MPEG1                          --- not supported ---
MPEG2_SIMPLE                   --- not supported ---
MPEG2_MAIN                     --- not supported ---
H264_BASELINE                  --- not supported ---
H264_MAIN                      --- not supported ---
H264_HIGH                      --- not supported ---
VC1_SIMPLE                     --- not supported ---
VC1_MAIN                       --- not supported ---
VC1_ADVANCED                   --- not supported ---
MPEG4_PART2_SP                 --- not supported ---
MPEG4_PART2_ASP                --- not supported ---
DIVX4_QMOBILE                  --- not supported ---
DIVX4_MOBILE                   --- not supported ---
DIVX4_HOME_THEATER             --- not supported ---
DIVX4_HD_1080P                 --- not supported ---
DIVX5_QMOBILE                  --- not supported ---
DIVX5_MOBILE                   --- not supported ---
DIVX5_HOME_THEATER             --- not supported ---
DIVX5_HD_1080P                 --- not supported ---
H264_CONSTRAINED_BASELINE      --- not supported ---
H264_EXTENDED                  --- not supported ---
H264_PROGRESSIVE_HIGH          --- not supported ---
H264_CONSTRAINED_HIGH          --- not supported ---
H264_HIGH_444_PREDICTIVE       --- not supported ---
VP9_PROFILE_0                  --- not supported ---
VP9_PROFILE_1                  --- not supported ---
VP9_PROFILE_2                  --- not supported ---
VP9_PROFILE_3                  --- not supported ---
HEVC_MAIN                      --- not supported ---
HEVC_MAIN_10                   --- not supported ---
HEVC_MAIN_STILL                --- not supported ---
HEVC_MAIN_12                   --- not supported ---
HEVC_MAIN_444                  --- not supported ---

Output surface:

name              width height nat types
----------------------------------------------------
B8G8R8A8         16384 16384    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 I8A8 
R8G8B8A8         16384 16384    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 I8A8 
R10G10B10A2      16384 16384    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 I8A8 
B10G10R10A2      16384 16384    y  NV12 YV12 UYVY YUYV Y8U8V8A8 V8U8Y8A8 I8A8 

Bitmap surface:

name              width height
------------------------------
B8G8R8A8         16384 16384
R8G8B8A8         16384 16384
R10G10B10A2      16384 16384
B10G10R10A2      16384 16384
A8               16384 16384

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             y
DEINTERLACE_TEMPORAL_SPATIAL     -
INVERSE_TELECINE                 -
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         y
HIGH QUALITY SCALING - L1        y
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -

parameter name                  sup      min      max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH              y        48     2048
VIDEO_SURFACE_HEIGHT             y        48     1152
CHROMA_TYPE                      y  
LAYERS                           y         0        4

attribute name                  sup      min      max
-----------------------------------------------------
BACKGROUND_COLOR                 y  
CSC_MATRIX                       y  
NOISE_REDUCTION_LEVEL            y      0.00     1.00
SHARPNESS_LEVEL                  y     -1.00     1.00
LUMA_KEY_MIN_LUMA                y  
LUMA_KEY_MAX_LUMA                y  

 ,

haydudogni
()

Как установить Mint полноценной второй осью на Win7 БЕЗ флешки?

Форум — Linux-install

Так получилось, что флешки нет. Хочу установить Mint 32-разрядный на ноут c Win7, прошу научить как это возможно сделать?

Создал раздел на диске, но как в него установить LINUX? Может есть какой-то скрипт, который сразу начинает установку linux, типа как Asahi для Mac. Или вручную, но мануала я пока не нашёл.

Заранее спасибо!

 ,

Alex202020
()

Панель управления openwrt

Форум — Admin

Установил сегодня openwrt 23.05.3 на роутер tp-link mr3020. Проблема в том, что после подключения к заводской сети пропадает возможность зайти в панель управления через браузер и ssh. На стоковой прошивке всё работало и по выданному ip(10.11.12.170) можно был зайти

 ,

ponyashkapie
()

alt linux сервер как отключить рута и наоборот дать доступ пользователю из wheel к веб-морде?

Форум — Admin

Поставил альтлинупс. Вроде норм, но есть нюансы собственно сабж. Категорически неприемлемо ходить под рутом, поэтому только судо. И можно бы его выключить совсем, только на вебморду он требует именно рута, а мне бы хотелось наоборот дать туда доступ всем кто в wheel. Есть надпись добавить доступ к отдельным модулям, но этого мало, нужно чтобы ко всему, но не от рута.

 ,

justin_case
()

Как сделать бэкап lxc контейнеров, если zfs импортирована в режиме чтения

Форум — Admin

Добрый день, Стоит proxmox, в какой то момент система начала выпадать в kernel panic при импорте zfs, возможно из за сбойного диска, диск заменил,проблема не ушла. Пул импортируется только в режиме readonly. raidz1 zfs 2.2.3 Xочу забэкапить контейнеры и переставить систему. Как лучше сделать бэкап контейнеров и быстро развернуть на новую систему без лишнего гемора?

 , , ,

mechanic
()

Есть вандалостойкие rj45 розетки?

Форум — General

в здании стоят писец дорогие розетки legrant но какие-то они хлипкие, штекеры туда тыкают криво и в розетках пины гнутся, с десяток розеток уже нерабочих.

 

Cergoo
()

Эмулятор Свича теперь имеет нативную поддержку ARM Linux

Форум — General

Эмулятор Ryujinx имеет нативную поддержку как Linux на ПК(x64), так и ARM Linux.

Это означает, что есть возможность поиграть в игры Свича на любом устройстве с chromeOS, Raspberry Pi, смартфонах на полноценном Linux и прочих ARM-устройств с Linux

 ,

ConLenov
()

King Under the Mountain (Mountaincore) стал открытым исходным кодом, поскольку разработка игры была прекращена

Форум — Games

King Under the Mountain от разработчика Rocket Jump Technology, стратегической игры о строительстве поселений, где основой геймплея является симуляции, которая претерпевала большое обновление и ребрендинг с Mountaincore, в конечном итоге закрылась. Это игра по управлению цепочками поставок городского строительства.

Новость от января, но лучше поздно, чем никогда. Исходный код был опубликован под лицензией MIT.

Эта игра написана на Java (сейчас версия 17) с использованием LibGDX.

Ссылка на Github с исходным кодом игры

Перемещено hobbit из games

 ,

vbcnthfkmnth123
()

Allwinner A20 - определить где на плате UART и определить почему девайс может виснуть.

Форум — Development

Есть платка. Типа cubietruck, на самом деле «вариация на тему», некая очередная итерация cubieboard, сделанная в виде некого A19 Android TV Box, который потом под заказ компании АТОЛ был чуть перепилен в продукт «Атол Хаб-19».

http://at89.ru/wp-content/uploads/2019/02/word-image-20.png

http://0x0.st/XZ-O.png - копия если первый урл сдох.

Хочется там найти UART, который при вдумчивом осмотре никак никуда не выведен и не распаян.

Единственное похожее на него место: смотрим на самый левый чип RAM, поднимаем взгляд чуть вверх - там кварц, идём от кварца влево - там нераспаянный трёхдырочный разьём. Это может быть оно? Дорожки идут прямо в камень. Если глянуть на даташит проца, где все ножки подписаны https://www.olimex.com/Products/SOM/A20/_resources/A20-Brief-2013-02-27.pdf - UART там явно не обозначен, ну может через GPIO реализован как-то какой-то, хз.

Так вот, задача проверить эти три дырки на то, являются ли они UART. Берём USB->TTL 3.3V штуку, втыкаем GND, TX, RX в эти дырки в разных комбинациях и пытаемся увидеть выхлоп. Вопрос: достаточно ли будет напихать на линии TX, RX по резистору в 1 кОм дабы не спалить этот A20 проц в случае чего?

Второй вопрос: как вообще дебажить такого рода железки на предмет зависания? Даже не кернел-паника, а просто впадания в говнище? Работала-работала день, херак стала кирпичом. Питание выдернули, вернули - дальше работает. Народ на форумах что-то там обсуждает про игры с параметрами U-Boot в области частот RAM. Вот думаю какой-бы физический интерфейс с такого рода железкой иметь, чтобы понимать что же в ней происходит. Пока что самым очевидным приколом кажется проблема с питанием, типа нагрузить оба ядра какой-то хренью и БП просаживается, от чего всё встаёт колом. Но там БП штатный, 5V 2A, должно хватать…

Выкинуть и купить нормальное - совет понятный.

 

lesopilorama
()

NAS, лучший способ увеличить Failure Tollerance

Форум — General

Привет, ЛОР.

Дошли у меня руки наконец-то организовать себе NAS и уйти от облачных решений.

Основная проблема была в том, что у меня в ходу все 3 ОС и нет адекватного универсального решения + фотографии с телефона/фотоаппарата/плюшки в виде возможности смотреть видео с любого устройства в локальной сети и т.д.

Взял Synology DS223j и HDD на 4ТБ enterprise уровня (SEAGATE Exos 7E10).

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

Соб-но, полез гуглить и понял, что RAID сам по себе не является заменой бэкапов (если докинуть один диск и начать его зеркалить).

Потому у меня вопрос: Как лучше поступить в данной ситуации, чтобы получить максимально отказоустойчивую систему на случай непредвиденных ситуаций?

У меня в голове 2 варианта:

  1. Все таки RAID (взять еще один идентичный диск и слепить их в зеркало)
  2. Взять внешний HDD на 4 ТБ и бекапиться средствами Synology раз в n дней.

По второму крайне смущает отсутствие у внешних накопителей S.M.A.R.T., нет возможности узнать о неисправностях диска, если таковые будут, первое, почему-то, в интернете тоже особо надежным не считают, в общем, дискасс.

 , , ,

Jefail
()

Сайт minetest.net не открывается на билайне

Форум — Games

Такая проблема:

При попытке открыть сайт minetest.net через данного оператора, он не открывается, а браузер возвращает ошибку «Время ожидания соединения истекло».

Неужели блокировка?

 , ,

ne-vlezay
()

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