
ТЕХНИЧЕСКОЕ ЗАДАНИЕ на разработку утилиты **ubl-settings-info**

1. **ОПИСАНИЕ:**
Графическое средство настройки даты и времени в ОС UBLinux

1. **ЭТАПЫ И СРОКИ СОЗДАНИЯ ПРИЛОЖЕНИЯ:**
Общий срок работ по созданию приложения составляет N дней:
    - N дня - макет и дизайн приложения и его утверждение
    - N дней - разработка приложения
    - N дня - тестирование приложения и исправление ошибок

    Перечень этапов разработки приложения:
    - Разработка макета и дизайна приложения, самостоятельно
    - Утверждение и доработка макета, самостоятельно
    - Создание работающего интерфейса, включая полную разработку действующих ярлыков, кнопок и т.д., самостоятельно
     - Проектирование алгоритма работы приложения, самостоятельно
     - Написание работающего кода приложения, включая полноценно работающие элементы графического интерфейса, а также перевод (поддержка локализации En, Ru), самостоятельно
     - Тестирование и исправление ошибок, самостоятельно
     - Публикация

1. **ТЕХНОЛОГИЧЕСКИЕ ТРЕБОВАНИЯ:**
   1. Приложение разрабатывается под нужды операционной системы UBLinux
   1. Использование фирменного логотипа компании
   1. Название приложения, техническое:  **ubl-settings-info**
   1. Название приложения, публичное: **UBConfig - Информация о системе**
   1. Стек технологий:
      - Язык программирования:  Bash или C++
      - Приложение для разработки графического интерфейса: Glade 3
      - Графические библиотеки: GTK3
      - Операционная система разработки: UBLinux DB
   1. Структура:
      - **/usr/bin/ubl-settings-info (скомпилированный бинарный файл)** 
  Bash/C: Весь функционал сосредоточен в графической части, вызовы и исполнение процедур написаны на языках Bash, C++
      - Файл **glade** скомпилирован в бинарный файл
    Графическая часть, фронт    
      - Файл **css** скомпилирован в бинарный файл
    Стили виджетов GTK
      - **/usr/share/ubl-settings-info/images/{\*.png,\*.svg}**
  Элементы изображений
      - **/usr/share/ubl-settings-info/locale -> /usr/share/locale**
  Локализация En/Ru

1. **ТЕХНИЧЕСКОЕ ЗАДАНИЕ:**
    1. Ярлык (desktop-файл):
        1. Type: Application
        1. Exec: ubl-settings-info
        1. Categories: X-UBL-SettingsManager;X-UBL-SystemSettings
    3. Главное окно:
        1. Требования к внешнему виду:
            - Адаптивный (резиновый) дизайн.
            - Минимальный размер окна до прекращения масштабирования 800 на 600 пикселей.
            - Шапка в стиле приложений GTK3.
            - В верхней части крупный логотип утилиты, с права от него краткое описание утилиты. Фон заполнен изображением.
            - Рабочая область представляет собой единое визуальное пространство, которое делится на два вертикальных блока (50 на 50 процентов), которые никак не обрамлены.
       1. Требования к «Рабочей области». Выводятся группы графического и текстового представления информации:
           1. Левый блок:
                - логотип текущей операционной системы (масштабируемый SVG-файл).                
           1. Правый блок:
                - список информации о программноаппаратных характеристиках рабочей станции:
                    - Имя пользователя и хоста, например: *miramax166@mmx166-pc*
					- Название ОС, билд, редакция, например: *Система: UBLinux 2204 Desktop Basic*
					- Информация о ядре ОС, например: *Ядро: x86_64 Linux 5.17.6-2-ublinux*
					- Аптайм системы, например, *Время работы: 2h 14m*
					- Информация о пакетах, например: *Установлено пакетов: 2306*
					- Информация об оболочке, например, *Оболочка: sh*
					- Разрешение эрана (-ов), например, *Разрешение: 5760x1080*
					- Информация о DE, например, *Среда рабочего стола: Xfce4*
					- Информация об оконном менеджере, нпример, *Оконный менеджер: Xfwm4*
					- Информация о теме системы, например, *Тема оконного менеджера: Numix-Archblue*
					- Информация о теме GTK-среды, например, *Тема GTK: Arc-Dark [GTK2]*
					- Информация о теме значков, например, *Тема значков: Faenza-Cupertino*
					- Информация о шрифте, например, *Шрифт: Ubuntu 10*
					- Информация о диске, например, *Диск: 394G / 960G (42%)*
					- Информация о процессоре, например, *CPU: Intel Core i3-9100 @ 4x 4.2GHz [38.0°C]*
					- Информация о видеокарте, например, *GPU: NVIDIA GeForce GT 710*
					- Информация об ОЗУ, например, *Оперативная память: 4406MiB / 15934MiB*.

1. **КОМАНДЫ**
    1. На данный момент реализовать методом парсинга вывода screenfetch.

1. **ПРИБЛИЗИТЕЛЬНЫЙ МАКЕТ ПРИЛОЖЕНИЯ.**
    1. Главное окно

 