Подтверждение перед приостановкой в Fedora 40 с GNOME

Вопрос или проблема

Надеюсь, у вас всё хорошо.

Отказ от ответственности: Я относительно новый в Linux и работе с терминалом. Пожалуйста, не будьте строгими 🙂

Я сейчас использую Fedora 40 с GNOME 46.5. Я настраивал некоторые комбинации клавиш для выключения и перезагрузки моего ПК, и мне нравится, что при использовании команды gnome-session-quit (--power-off и --reboot) у вас есть окно подтверждения перед выполнением действия (я уверен, вы это знаете, но всё же, смотрите прикреплённые изображения. Извините, текст на испанском).

окно подтверждения выключения
окно подтверждения перезагрузки

Мне было бы интересно узнать, есть ли способ (если возможно, без установки чего-либо) получить окно подтверждения перед приостановкой?

Я уже некоторое время ищу способы сделать это. Некоторые из них используют systemctl suspend, но это просто приостанавливает ПК без подтверждения.

Буду признателен за объяснение, что делают команды/скрипты. Спасибо!

[!

Ответ или решение

Здравствуйте!

Спасибо за ваш вопрос. В Fedora 40 с использованием GNOME 46.5 действительно нет встроенной функции подтверждения перед приостановкой работы системы (suspend), аналогичной той, что существует для выключения и перезагрузки. Однако, можно создать свой собственный рабочий процесс, используя небольшую пользовательскую скриптовую утилиту, которая открывает диалоговое окно подтверждения перед выполнением команды приостановки.

Вот шаги, которые вам нужно выполнить:

  1. Создайте пользовательский скрипт:
    Откройте терминал и введите следующую команду, чтобы создать новый скрипт в домашней директории:

    nano ~/suspend_with_confirmation.sh
  2. Добавьте код в скрипт:
    В открывшемся редакторе добавьте следующий код:

    #!/bin/bash
    
    # Создание диалогового окна подтверждения
    if zenity --question --text="Вы уверены, что хотите приостановить работу системы?"; then
       systemctl suspend  # Выполняем приостановку, если пользователь подтвердил
    fi

    В данном коде мы используем zenity для создания простого диалогового окна с вопросом. Если пользователь выбирает "Да", выполняется команда systemctl suspend.

  3. Сохраните и закройте редактор:
    Нажмите CTRL + X для выхода, затем Y для подтверждения сохранения изменений, и затем Enter.

  4. Сделайте скрипт исполняемым:
    Выполните следующую команду, чтобы сделать скрипт исполняемым:

    chmod +x ~/suspend_with_confirmation.sh
  5. Назначьте горячую клавишу для скрипта:

    • Откройте «Настройки».
    • Перейдите в раздел «Клавиатура».
    • Прокрутите вниз и выберите «Кастомные комбинации».
    • Нажмите «Добавить», укажите имя (например, "Приостановка с подтверждением") и введите путь к вашему скрипту: /home/ваше_имя/suspend_with_confirmation.sh.
    • Нажмите «Добавить», затем назначьте комбинацию клавиш по вашему выбору.

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

Если у вас возникнут вопросы относительно выполнения этих шагов или вы столкнетесь с трудностями, не стесняйтесь задавать дополнительные вопросы. Удачи!

Оцените материал
Добавить комментарий

Капча загружается...