Предлагаю по возможности добавить в qtbrowser поддержку действия по нажатию клавиши PrintScreen, при котором выполнялся бы import %s. Что-то вроде такого: - при сборке образа добавляем ImageMagick-tools в install2; - при нажатии PrintScreen qtbrowser вызывает import (если найден); - после установки системы сделанные снимки переносятся в неё. Можно это всё как-то ещё параметризовывать и наворачивать, но для выполнения задачи снятия снимков экрана во время установки на железе кажется избыточным. Перекладывать можно, например, в $destdir/root/.install-log/ Добавлять import(1) в install2 можно так: @$(call add,INSTALL2_PACKAGES,ImageMagick-tools) Сейчас приходится звать DISPLAY=:0 import картинка.png и переносить вручную.
Created attachment 9544 [details] install2: initial use/install2/screenshots 2 antohami: предлагаю забрать в m-p, такое полезно само по себе.
(Ответ для Michael Shigorin на комментарий #0) > ImageMagick-tools Нафига? Там одно окно и снять с него изображение вообще не проблема.
(In reply to Sergey V Turchin from comment #2) > (Ответ для Michael Shigorin на комментарий #0) > > ImageMagick-tools > Нафига? Там одно окно и снять с него изображение вообще не проблема. Как снять? Чем? На реальном железе, а не в виртуалке.
средствами qt нельзя сделать снимок окна ?
> средствами qt нельзя сделать снимок окна ? Именно им и нужно, чем тащить ImageMagik.
(Ответ для Sergey V Turchin на комментарий #5) > > средствами qt нельзя сделать снимок окна ? > Именно им и нужно, чем тащить ImageMagik. Вообще замечательно :-)
(Ответ для Sergey V Turchin на комментарий #5) > > средствами qt нельзя сделать снимок окна ? > Именно им и нужно, чем тащить ImageMagik. ping :)
(Ответ для Michael Shigorin на комментарий #7) > ping :) Забыл, извиняюсь. По факту уже реализовал. Осталось оформить красиво.
alterator-browser-qt5-3.2.8-alt1 -> sisyphus: Mon Sep 13 2021 Sergey V Turchin <zerg at altlinux dot org> 3.2.8-alt1 - allow to take screenshot (closes: 40604)
(Ответ для Michael Shigorin на комментарий #0) > - после установки системы сделанные снимки переносятся в неё. Насчёт этого надо договориться. Я сейчас кладу в /tmp/alterator-screenshot-*.png
Кто забирать будет?
(Ответ для Sergey V Turchin на комментарий #8) > По факту уже реализовал. Осталось оформить красиво. Ай спасибо! (Ответ для Sergey V Turchin на комментарий #10) > > - после установки системы сделанные снимки переносятся в неё. > Насчёт этого надо договориться. > Я сейчас кладу в /tmp/alterator-screenshot-*.png (Ответ для Sergey V Turchin на комментарий #11) > Кто забирать будет? 2 antohami: добавишь в installer перенос /tmp/alterator-screenshot-*.png при их наличии в $destdir/root/.install-log/screenshots/ (который сперва mkdir -p)?
(In reply to Michael Shigorin from comment #12) > (Ответ для Sergey V Turchin на комментарий #8) > > По факту уже реализовал. Осталось оформить красиво. > Ай спасибо! > > (Ответ для Sergey V Turchin на комментарий #10) > > > - после установки системы сделанные снимки переносятся в неё. > > Насчёт этого надо договориться. > > Я сейчас кладу в /tmp/alterator-screenshot-*.png > > (Ответ для Sergey V Turchin на комментарий #11) > > Кто забирать будет? > > 2 antohami: добавишь в installer перенос /tmp/alterator-screenshot-*.png при > их наличии в $destdir/root/.install-log/screenshots/ (который сперва mkdir > -p)? Да. Уже делаю.
Я что-то не подумал. Лучше $TMPDIR/alterator-screenshot-*.png Только, не будет ли переменная разная для разных процессов там...
(In reply to Sergey V Turchin from comment #14) > Я что-то не подумал. Лучше > $TMPDIR/alterator-screenshot-*.png Чем лучше? Я в postinstall.d/ скриптах вижу использование /tmp, а не $TMPDIR.
(Ответ для Антон Мидюков на комментарий #15) > (In reply to Sergey V Turchin from comment #14) > > Я что-то не подумал. Лучше > > $TMPDIR/alterator-screenshot-*.png > > Чем лучше? Тем же, чем вообще $TMPDIR в живой системе. Отдельным каталогом. > Я в postinstall.d/ скриптах вижу использование /tmp, а не $TMPDIR. browser используется не только в postinstall.d/ , в живой системе писать в общедоступный каталог не очень хорошо. Программа-минимум -- рандомизировать имя файла на всякий. Я не проверял, что делает QPixmap::save(). Может он тупо пишет по симлинку в /dev/sda, например.
(In reply to Sergey V Turchin from comment #16) > (Ответ для Антон Мидюков на комментарий #15) > > (In reply to Sergey V Turchin from comment #14) > > > Я что-то не подумал. Лучше > > > $TMPDIR/alterator-screenshot-*.png > > > > Чем лучше? > Тем же, чем вообще $TMPDIR в живой системе. Отдельным каталогом. > > > Я в postinstall.d/ скриптах вижу использование /tmp, а не $TMPDIR. > browser используется не только в postinstall.d/ , в живой системе писать в > общедоступный каталог не очень хорошо. Понятно, не подумал об этом. Я тогда не добавляю пока скрипт копирования скриншотов в installer?
$TMPDIR один фиг "/tmp". Думаю, проблем не будет. Можно добавлять скрипт. Если что вдруг вылезет потом -- поправим.
В installer можно смотреть в ${TMPDIR:-/tmp} -- если не выставлена переменная, будет значение по умолчанию.
scrot как раз для этого, в репозитории есть.
(Ответ для Leonid Krivoshein на комментарий #20) > scrot как раз для этого, в репозитории есть. Для этого есть Qt. Что-то ещё может потребоваться только для записи за пределами окна alterator-browser.
(Ответ для Sergey V Turchin на комментарий #14) > Я что-то не подумал. Лучше $TMPDIR/alterator-screenshot-*.png > Только, не будет ли переменная разная для разных процессов там... Сделай только на всякий проверку -- если TMPDIR не выставлена или такого каталога нет, писать в /tmp.
Если переменная не выставлена, пишу в /tmp . Если каталога нет, будет ругаться, что не смог записать.
Посмотрела реализацию FR с заданием http://git.altlinux.org/tasks/285136/ Есть несколько замечаний: 1) Usability: При нажатии PrtSc появляется окно с выводом пути, куда сохранен скриншот - см. скрин usability. Данное окно появляется на 2 сек, потом пропадает. Если пользователь не успел прочитать, что написано, то второго шанса не будет. Поэтому предлагаю: - при первом нажатии PrtSc выводить окно с кнопкой вида "ОК, понятно", которое будет висеть, пока пользователь сам его не закроет - при последующих PrtSc просто информаировать, что скриншот сделан - уведомлять, что после установки системы скрины будут располагаться в .install-log/screenshots/ # ls -l .install-log/ итого 584 -rw-r--r-- 1 root root 382 сен 24 11:04 alteratord.log -rw-r--r-- 1 root root 43 сен 24 10:50 diskinfo -rw-r--r-- 1 root root 32342 сен 24 11:04 install2.log -rw-r--r-- 1 root root 312416 сен 24 11:04 pkg-install.log -rw-r--r-- 1 root root 12910 сен 24 11:04 remount.log drwx------ 2 root root 36864 сен 24 11:04 screenshots -rw-r--r-- 1 root root 99292 сен 24 11:05 wizard.log -rw-r--r-- 1 root root 83618 сен 24 11:04 x11.log 2) PrtScr не работает, если в диалоговом окне открыт выпадающий список - см. скриншот select-list.
Created attachment 9736 [details] usability
Created attachment 9737 [details] select-list
Всё-таки надо $TMPDIR/alterator-screenshot-*.{png,jpg} , а то придумали, что в JPG сохранять выгоднее.
(Ответ для Vera Blagoveschenskaya на комментарий #24) > 2) PrtScr не работает, если в диалоговом окне открыт выпадающий список Это баг Qt. Попробую исправить. Есть ещё подобные места?
(Ответ для Sergey V Turchin на комментарий #28) > (Ответ для Vera Blagoveschenskaya на комментарий #24) > > 2) PrtScr не работает, если в диалоговом окне открыт выпадающий список > Это баг Qt. Попробую исправить. Есть ещё подобные места? Прошла по всем закоулкам установщика, остальное ОК. На выпадающий список завела отдельный тикет https://bugzilla.altlinux.org/41001
> Всё-таки надо > $TMPDIR/alterator-screenshot-*.{png,jpg} А лучше $TMPDIR/alterator-screenshot-*.* , а то завтра какой-нибудь WEBP появится. Чтоб не мучиться.
(Ответ для Vera Blagoveschenskaya на комментарий #24) > Поэтому предлагаю: > - при первом нажатии PrtSc выводить окно с кнопкой вида "ОК, понятно", > которое будет висеть, пока пользователь сам его не закроет > - при последующих PrtSc просто информаировать, что скриншот сделан > - уведомлять, что после установки системы скрины будут располагаться в > .install-log/screenshots/ Теперь текста стало больше и, центрированный, он выглядит некрасиво: https://bugzilla.altlinux.org/41484