LINUX.ORG.RU

Сообщения question4

 

Забавный пример преобразования типов на Си

Форум — Development

https://www.onlinegdb.com/S00Xzrubl

#include <stdio.h>

int main()
{
    printf("%i %i %c %i %i %c %i %i %c %i %i %s", 
        '1'+'5'+'9',    // 159
        '9'-'2',        // 7
        '9'- 2 ,        // всё ещё 7
        '9'- 2 ,        // автохрен, 55
        '5'+ 2 ,        // 55 (╯°□°)╯︵ ┻━┻
        '5'+ 2 ,        // а, не, норм, 7
         1 * 1 ,        // единичка 
         0 *'1',        // нолик
        '0'*'1',        // ну слава богу, нолик
        '1'*'1',        // 2401 щ(゜ロ゜щ)
        '1'*'0',        // верни. мне. мой. нолик.
    "¯\\_(ツ)_/¯");     

    // да пошло оно всё, буду проституткой

    return 0; 
}

 

question4
()

Ещё один форумный движок

Форум — Talks

Я к этому отношения не имею. Может, кому-то здесь будет интересно. PHP, MySQL.

https://github.com/avkoudinov/simpleCommunicator

Используется https://nosql.itwrks.org/forum/forums.php

Обсуждение попыток взлома было где-то здесь: https://nosql.itwrks.org/forum/topic.php?fid=8&tid=10422&all=1

 , ,

question4
()

Поиск частых подстрок в списке строк

Форум — Development

Имеется несколько тысяч файлов. Названия отражают содержимое и происхождение файла. Например: название книги, номер страницы, кто сканировал, откуда скачано, к какой дате приурочена выкладка, и т.п. Формат произвольный.

Требуется разбить их на группы, выделив общие для большого числа файлов названия книг. Как это автоматизировать?

Если просто перебирать подстроки для каждой строки в списке и сравнивать каждую со всем списком и со списком найденных, получается слишком долго. Как сделать быстро?

 

question4
()

Как в MC войти в архив, если с расширением проассоциировано другое действие?

Форум — Desktop

Например, CBZ, который представляет собой ZIP-файл с изображениями. Допустим, MC настроен открывать *.cbz в Okular. Enter на таком файле запустит проассоциированную программу. В FAR можно нажать Ctrl-PgDn и войти в архив как в директорию, независимо от расширений, но в MC Ctrl-PgDn работает только с директориями.

Есть ли способ входить в архивы вне зависимости от настроек файла расширений? Например, настроить отдельное действие на Ctrl-PgDn?

 

question4
()

Загрузить ноутбук с флешки

Форум — Linux-hardware

Подскажите, пожалуйста, как загрузиться с линуксовой флешки (Ophcrack — забыли пароль) на ноутбуке Toshiba Satellite C850? В прошлом году как-то удалось загрузиться с флешки Dr Web без проблем. Включаюсь с зажатыми F2, F12, Esc, Del — не помогает, грузит Windows 7.

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

P.S. Погуглил и узнал, что Windows умеет запрещать/разрешать вход в BIOS на «Тошибах». В частности, запрещают, когда компьютер переводят в спящий режим. Могло ли это включиться из-за зациклившегося обновления Windows 7, когда при каждой перезагрузке постоянно ставит и ставит одно последнее обновление?

 

question4
()

pylint не видит константы в библиотеке

Форум — Development

Есть программа из 2 строк:

from pygame.locals import FULLSCREEN, K_a, K_BACKQUOTE, K_BACKSPACE, K_c, K_d, K_DELETE, K_DOWN, K_e, K_ESCAPE, KEYDOWN
print(FULLSCREEN, K_a, K_BACKQUOTE, K_BACKSPACE, K_c, K_d, K_DELETE, K_DOWN, K_e, K_ESCAPE, KEYDOWN)

Нормально запускается и работает. Но если запустить pylint, будут ошибки:

$ pylint test.py --errors-only
************* Module test
test.py:2:0: E0611: No name 'FULLSCREEN' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_a' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_BACKQUOTE' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_BACKSPACE' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_c' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_d' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_DELETE' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_DOWN' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_e' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'K_ESCAPE' in module 'pygame.locals' (no-name-in-module)
test.py:2:0: E0611: No name 'KEYDOWN' in module 'pygame.locals' (no-name-in-module)

В чём проблема? Почему анализатор их не находит?

Python 3.10, Gentoo. Pygame-2.2.0 и Pylint-2.17.1 ставил через ебилды.

 ,

question4
()

Kittens Game by bloodrizer

Форум — Games

Наткнулся на браузерную игру: https://kittensgame.com/web/, с исходниками: https://bitbucket.org/bloodrizer/kitten-game/src/master/

Довольно залипательная текстовая стратегия в реальном времени с паузой. Персонажи изображаются в виде котят (картинок нет), поэтому бывают забавные текстовые сообщения: https://bitbucket.org/bloodrizer/kitten-game/src/master/res/i18n/en.json https://bitbucket.org/bloodrizer/kitten-game/src/master/res/i18n/ru.json — искать по слову «flavor», например

"buildings.reactor.flavor": "Светящихся мышей ловить проще!",

P.S. Меня поправляют, что такие игры называются кликерами. Хотя в других кликать приходилось гораздо чаще.

 браузерные игры

question4
()

Вопрос по гуглокартам и Google Earth

Форум — Talks

Захотелось посмотреть на панорамы Уганды. На картах показывает, что доступны Street View для всей столицы, национального парка рядом с Белым Нилом и соединяющей их дороги. Пытаюсь посмотреть разные точки на этой дороге — в Maps ничего не происходит, в Earth показывает «ground-level view» — сгенерированное из спутниковых снимков и несложного трёхмерного рельефа. Точно так же недоступна часть столицы.

Попробовал включить в Earth «show historical imagery», перепробовал разные даты — панорамы недоступны.

В чём дело? Почему показывает что картинки есть, когда их нет?

 , ,

question4
()

Лучшая на сегодня видеокарта

Форум — Linux-hardware

Лет 9 назад собрал новый десктоп. И здорово ошибся с видеокартой Radeon HD 6950. HD 6000 были последними, не поддерживавшими Vulkan. OpenCL не взлетел, всюду требовался CUDA, а поддержка Radeon-ов была «на отвяжись» или отсутствовала.

Что брать сейчас? Что из имеющихся останется актуально ещё лет 10?

Назначение — игры, обработка видео, использование современных экспериментальных библиотек для синтеза и распознавания речи и обработки изображений.

 , , , ,

question4
()

Растянуть окно 640x480 на весь экран

Форум — Desktop

Старая программа запускается под Вайном в очень маленьком окне. Растянуть невозможно. Можно ли средствами композитора увеличить окно со всем содержимым в 2 раза? Или лучше в нецелое число раз, чтобы заняло весь экран хотя бы в одном измерении.

Для определённости: КДЕ 5, игра Tone Rebellion, экран 1920x1080.

Когда-то давно я читал, что это несложно сделать средствами OpenGL, но в X Window нет возможности перенаправлять нажатия мыши из смасштабированных координат. Это так? Тогда что может предложить Wayland?

 , , ,

question4
()

«Чекбокс „Запомнить пароль” — лучший способ потерять пароль.»

Форум — Talks

Без всяких видимых причин — даже не апдейтил КДЕ — при очередном логине KRDC запросил пароль для первого подключения ко KWallet, которым я пользовался уже полгода. Пароли — генерированные, по 12 букв, запомнить нереально, в целях безопасности не записывал.

Вызваниваю админов…

 ,

question4
()

Внезапно отключается мышь

Форум — Linux-hardware

Оптическая мышь Genius время от времени перестаёт работать.

В dmesg вижу только usb 3-3: USB disconnect, device number 2

Если её выдернуть и вставить, работает дальше. В dmesg:

[65657.064508] usb 3-3: USB disconnect, device number 2
[65842.769295] usb 3-3: new low-speed USB device number 3 using ohci-pci
[65842.934317] usb 3-3: New USB device found, idVendor=0458, idProduct=0186, bcdDevice=24.58
[65842.934327] usb 3-3: New USB device strings: Mfr=4, Product=40, SerialNumber=0
[65842.934333] usb 3-3: Product: Wired Mouse
[65842.934336] usb 3-3: Manufacturer: KYE SYSTEMS CORP.
[65842.941930] input: KYE SYSTEMS CORP. Wired Mouse as /devices/pci0000:00/0000:00:12.0/usb3/3-3/3-3:1.0/0003:0458:0186.0002/input/input10
[65842.942123] hid-generic 0003:0458:0186.0002: input,hidraw0: USB HID v1.11 Mouse [KYE SYSTEMS CORP. Wired Mouse] on usb-0000:00:12.0-3/input0
[65842.942279] usbhid 3-3:1.1: couldn't find an input interrupt endpoint

При включении то же самое:

[    1.354229] usb 3-3: New USB device found, idVendor=0458, idProduct=0186, bcdDevice=24.58
[    1.354288] usb 3-3: New USB device strings: Mfr=4, Product=40, SerialNumber=0
[    1.354338] usb 3-3: Product: Wired Mouse
[    1.354385] usb 3-3: Manufacturer: KYE SYSTEMS CORP.
[    1.361868] input: KYE SYSTEMS CORP. Wired Mouse as /devices/pci0000:00/0000:00:12.0/usb3/3-3/3-3:1.0/0003:0458:0186.0001/input/input3
[    1.362185] hid-generic 0003:0458:0186.0001: input,hidraw0: USB HID v1.11 Mouse [KYE SYSTEMS CORP. Wired Mouse] on usb-0000:00:12.0-3/input0
[    1.362381] usbhid 3-3:1.1: couldn't find an input interrupt endpoint

Из-за чего происходят такие отключения?

 

question4
()

Кто говорил, что в JSON невозможно добавлять комментарии?

Форум — Talks

https://github.com/mikf/gallery-dl/blob/master/docs/gallery-dl-example.conf

Если парсить средствами Питона (и не только его), можно добавлять повторяющиеся ключи. Значения ключей "#" — комментарии.

Не идеальное решение, но если этот JSON не пишется машиной, а только читается, всё нормально.

 , ,

question4
()

Можно открыть тему для правки?

Форум — Linux-org-ru

В теме Coub закрывается истекло время для правки стартового поста, но я хотел бы добавить абзац, что информация устарела. Вы не могли бы разрешить его правку?

Если это невозможно, добавьте, пожалуйста, в него следующий текст:

«UPDATE: В итоге сайт решили не закрывать. Обсуждение скриптов для скачивания — ниже.»

 

question4
()

Как экранировать пробелы во вложенных командах?

Форум — General

Есть однострочник:

for f in oldpath/*.png; do convert "$f" $PARAMETERS "newpath/`basename "$f" .png`.webp"; done

Он работает в 1 поток. Можно запускать каждую команду отдельным процессом:

for f in oldpath/*.png; do convert "$f" $PARAMETERS "newpath/`basename "$f" .png`.webp" & done

Но памяти хватает файлов на 300, если больше — всё прибивается по OOM.

Я хотел использовать GNU parallel, точнее sem:

for f in oldpath/*.png; do sem -j8 convert "$f" $PARAMETERS "newpath/`basename "$f" .png`.webp" & done

Но как выяснилось, если в $f есть пробелы, convert получит его без кавычек и не сможет работать.

Вопрос: как принято передавать имена с пробелами пробелы таким утилитам, как sem?

Ответ: У sem и parallel есть параметр --quote или -q.

for f in oldpath/*.png; do sem -q -j8 convert "$f" $PARAMETERS "newpath/`basename "$f" .png`.webp" & done

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

 ,

question4
()

Memtest86+ 6.10

Новости — Hardware and Drivers
Группа Hardware and Drivers

Вышла очередная версия свободной программы для тестирования оперативной памяти без загрузки ОС.

( читать дальше... )

Новость на opennet.ru

>>> Релиз на GitHub

 ,

question4
()

Почему boost так любит ломать обратную совместимость?

Форум — Talks

Первые года 3 на нынешнем месте работы половину рабочего времени я вылавливал баги в сторонних библиотеках, зависевших от Буста. Мы регулярно их обновляли, менялись версии в boost*.dll, старые баги исчезали, появлялись новые… Потом Буст из дистрибутива исчез, и новые баги появляться перестали.

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

Сейчас слотов всего 2, проблем давно не видел, но каждый раз при обновлении зависимых программ получаю предупреждение: «осторожно, ABI часто ломается».

Только что скачал исходники программы, не обновлявшейся лет 7, но точно собиравшейся с версией 1.60. Попробовал собрать. Не нашло какой-то метод. Погуглил. В 1.60 этот метод deprecated, рекомендуют заменить, в 1.66 его совсем убрали, а в 1.81 исчезло и то, на что рекомендовали заменять.

Почему в других библиотеках таких проблем нет, а в Бусте есть?

 , ,

question4
()

Файл *.torrent из ссылки magnet

Форум — Talks

Если доступны пиры, по magnet-ссылке клиент может получить всю информацию, содержащуюся в торрент-файле. Захотелось её сохранить на диск в torrent-файл, не скачивая большие файлы. В сети нашёл только сайт magnet2torrent.com и совет выкачать все файлы и создать торрент. Потом сообразил поискать в ~/.local и ~/.cache (например ~/.local/share/data/qBittorrent/BT_backup). Но вопрос остался. Почему интерфейс распространённых клиентов не имеет функции «сохранить торрент»?

 ,

question4
()

KDE виснет, куда копать?

Форум — General

Внезапно интерфейс становится всё менее отзывчивым и через несколько минут вообще прекращает реагировать на нажатия клавиш и клики мышью. Перерисовка окна может застрять на середине. Переключиться в консоль по Ctrl-Alt-F2 можно. Нагрузка в htop — гораздо ниже 50% (и CPU, и память), в iotop-с и xrestop тоже ничего страшного. Своп может отсутствовать.

Помогает Alt-SysRq-REI с повторным запуском иксов. Или DISPLAY=:0 kwin_x11 --replace из консоли.

В dmesg ничего, metalog был отключён. Как выяснилось, /var/log/Xorg.0.log не используется уже много месяцев.

Gentoo с OpenRC (без systemd), xorg-server-21.1.6, версии компонентов КДЕ 5.25.5, 5.99.0 или 22.08.3. Началось после апдейта на 5.25.4 с чего-то существенно более старого, полугодовой давности. Когда виснет, всегда одновременно запущены Firefox, Konsole, GoldenDict (форк на qtwebengine-5.15.8), KRDC, нередко что-то ещё.

Что это может быть, как определить? И как включить лог иксов?

Дополнение: Кто-нибудь сталкивался с багом dri_is_thread_safe в Mesa? https://gitlab.freedesktop.org/mesa/mesa/-/commit/b111e8aa4940e8b155f38b5ef238c295ded8a6b4 Оно?

 , ,

question4
()

Перезапустить иксы, не останавливая гуёвое приложение

Форум — General

Под X Window под KDE5/Plasma запущено графическое приложение. Avidemux. Отработал уже сутки и будет работать ещё двое. Но кеды/плазма повисли. Можно двигать мышью, но ни клики, ни нажатия клавиш ничего не делают. Можно переключиться в tty2 (по Ctrl-Alt-F2) и что-то сделать оттуда. Как перезапустить КДЕ?

fg, bg, Ctrl-Z, screen, disown бесполезны, так как avidemux был запущен из недоступного окна Konsole.

Поможет ли DISPLAY=:0 killall plasmashell && kstart5 plasmashell --replace ? Или так закроет все работающие гуёвые программы?

Меня устроит вариант, когда окно avidemux станет невидимым, но программа продолжит работать.

Ответ: DISPLAY=:0 kwin_x11 --replace & из tty3 перезапустило зависшую графику. Окна Konsole и Avidemux продолжили работать нормально. После этого я закрыл сессию tty3, и всё продолжило работать. А plasmashell понадобилось запустить, чтобы заработала панель.

 , ,

question4
()

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