<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" style="task" id="lockdown-single-app-mode" xml:lang="uk">

  <info>
    <link type="guide" xref="user-settings#lockdown"/>
    <link type="guide" xref="sundry#session"/>
    <link type="seealso" xref="lockdown-printing"/>
    <link type="seealso" xref="lockdown-file-saving"/>
    <link type="seealso" xref="lockdown-repartitioning"/>
    <link type="seealso" xref="lockdown-command-line"/>
    <link type="seealso" xref="login-automatic"/>
    <link type="seealso" xref="session-custom"/>
    <link type="seealso" xref="session-user"/>

    <revision pkgversion="3.30" date="2019-02-08" status="review"/>

    <credit type="author copyright">
      <name>Matthias Clasen</name>
      <email>mclasen@redhat.com</email>
      <years>2014</years>
    </credit>
    <credit type="editor">
      <name>Jana Svarova</name>
      <email>jana.svarova@gmail.com</email>
        <years>2014</years>
    </credit>
    <credit type="editor">
      <name>Petr Kovar</name>
      <email>pknbe@volny.cz</email>
      <years>2019</years>
    </credit>
    <credit type="author">
      <name>Marek Suchánek</name>
      <email>msuchane@redhat.com</email>
      <years>2023</years>
    </credit>

    <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
       
    <desc>Налаштовування кіоскоподібної однопрограмної системи.</desc>
  
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Юрій Чорноіван</mal:name>
      <mal:email>yurchor@ukr.net</mal:email>
      <mal:years>2021</mal:years>
    </mal:credit>
  </info>

  <title>Налаштовування режиму однієї програми</title>

  <p>Однопрограмний режим — змінений режим GNOME Shell, у якому Shell налаштовано на роботу у форматі інтерактивного кіоску. Адміністратор блокує частину можливостей середовища з метою накладання додаткових обмежень на дії користувачів з боку стандартної стільниці, надаючи змогу зосередити дії користувача на роботи із вибраними можливостями.</p>

  <p>Налаштуйте однопрограмний режим для широкого діапазону функцій у декількох полях (від спілкування до розваг або освіти) і скористайтеся ним як машиною самообслуговування, засобом керування подіями, точкою реєстрації тощо.</p>

  <note style="tip">
    <p>Ваш дистрибутив може забезпечувати роботу сеансу <link href="https://gitlab.gnome.org/GNOME/gnome-kiosk">GNOME Kiosk</link>, який, зазвичай, доступний у пакунку gnome-kiosk. Ви можете скористатися ним для спрощення налаштовування режиму однієї програми. Якщо ви не хочете цього робити, скористайтеся описаною нижче процедурою.</p>
  </note>

  <steps>
  <title>Налаштовування однопрограмного режиму</title>
    <item>
      <p>Блокування параметрів для запобігання друку, доступу до термінала тощо.</p>
      <list type="disc">
        <item><p><link xref="lockdown-command-line"/></p></item>
        <item><p><link xref="lockdown-printing"/></p></item>
        <item><p><link xref="lockdown-file-saving"/></p></item>
        <item><p><link xref="lockdown-repartitioning"/></p></item>
      </list>
    </item>
    <item>
      <p>Налаштуйте автоматичний вхід до системи у файлі <file>/etc/gdm/custom.conf</file> для користувача.</p>
      <p>Див. <link xref="login-automatic"/>, щоб дізнатися більше.</p>
    </item>
    <item>
      <p>Створіть такі файли з таким вмістом:</p>
      <terms>
        <item>
          <title><file>/usr/share/applications/org.gnome.Kiosk.Script.desktop</file></title>
<code>
[Desktop Entry]
Name=Kiosk
Type=Application
Exec=gnome-kiosk
</code>
        </item>
        <item>
          <title><file>/usr/share/applications/org.gnome.Kiosk.WindowManager.desktop</file></title>
<code>
[Desktop Entry]
Type=Application
Name=Mutter
Comment=Window manager
Exec=/usr/bin/mutter
Categories=GNOME;GTK;Core;
OnlyShowIn=GNOME;
NoDisplay=true
X-GNOME-Autostart-Phase=DisplayServer
X-GNOME-Provides=windowmanager;
X-GNOME-Autostart-Notify=true
X-GNOME-AutoRestart=false
X-GNOME-HiddenUnderSystemd=true
</code>
        </item>
        <item>
          <title><file>/usr/share/gnome-session/sessions/gnome-kiosk.session</file></title>
<code>
[GNOME Session]
Name=Kiosk
RequiredComponents=org.gnome.Kiosk.WindowManager;org.gnome.Kiosk.Script;
</code>
        </item>
        <item>
          <title><file>/usr/share/X11/xorg.conf.d/20-gnome-kiosk.conf</file></title>
<code>
Section "ServerFlags"
    Option "DontVTSwitch" "on"
EndSection
</code>
        </item>
        <item>
          <title><file>/usr/share/xsessions/org.gnome.Kiosk.desktop</file></title>
<code>
[Desktop Entry]
Name=Kiosk
Comment=Kiosk mode
Exec=/usr/bin/gnome-session --session=gnome-kiosk
DesktopNames=GNOME-Kiosk;GNOME;
</code>
        </item>
      </terms>
    </item>
    <item>
      <p>Від імені користувача, який відкриватиме сеанс однієї програми, створіть файл <file>/home/<var>користувач</var>/.local/bin/gnome-kiosk</file>:</p>
<code>
[<var>user</var>]$ mkdir -p ~/.local/bin

[<var>user</var>]$ touch ~/.local/bin/gnome-kiosk
</code>
    </item>
    <item>
      <p>Внесіть зміни до файла <file>/home/<var>користувач</var>/.local/bin/gnome-kiosk</file>, де вкажіть назву виконуваного файла програми, яку ви хочете запустити у режимі однієї програми.</p>
      <p>Наприклад, щоб запустити Firefox у режимі однієї програми, введіть такі рядки:</p>
<code>
#!/bin/sh

while true; do
    firefox --kiosk https://example.org
done
</code>
      <p>Цикл <code>while true</code> забезпечує перезапуск програми, якщо з якоїсь причини вона завершує роботу.</p>
    </item>
    <item>
      <p>Зробіть файл виконуваним:</p>
<code>
[<var>користувач</var>]$ chmod +x ~/.local/bin/gnome-kiosk
</code>
    </item>
    <item>
      <p>Якщо ви створили файл або каталоги, що його містять від імені іншого користувача, ніж користувач режиму однієї програми, зокрема, від імені користувача root, забезпечте належні права доступу до файла:</p>
<code>
# chown -R <var>користувач</var>:<var>group</var> ~<var>користувач</var>/.local
</code>
    </item>
    <item>
      <p>На сторінці входу до GNOME виберіть сеанс Kiosk за допомогою меню кнопки із шестернею і увійдіть до сеансу від імені користувача однієї програми.</p>
    </item>
  </steps>

</page>
