Fixed user services filter

pull/90/head
parent 28f01c8772
commit 996cce94a2

@ -1257,8 +1257,8 @@ void* yon_interface_update(main_window *widgets){
data->widgets=widgets; data->widgets=widgets;
data->SystemAutostart=loaded; data->SystemAutostart=loaded;
data->SystemLaunched=active; data->SystemLaunched=active;
data->Name=parsed[0]; data->Name=yon_char_new(parsed[0]);
data->Descr=parsed[4]; data->Descr=yon_char_new(parsed[4]);
data->Type = type; data->Type = type;
data->Loaded=strcmp(parsed[1],"loaded")?0:1; data->Loaded=strcmp(parsed[1],"loaded")?0:1;
data->Active=strcmp(parsed[2],"active")?0:1; data->Active=strcmp(parsed[2],"active")?0:1;
@ -1266,6 +1266,7 @@ void* yon_interface_update(main_window *widgets){
} }
g_idle_add((GSourceFunc)yon_system_set,data); g_idle_add((GSourceFunc)yon_system_set,data);
} }
yon_char_parsed_free(parsed,size);
} }
@ -1274,24 +1275,24 @@ void* yon_interface_update(main_window *widgets){
int size; int size;
config_str parsed = yon_char_parse(user_services[i],&size,";"); config_str parsed = yon_char_parse(user_services[i],&size,";");
if (parsed){ if (parsed){
int loaded = !system(check_enabled_command(parsed[0])); int loaded = !system(user_check_enabled_command(parsed[0]));
int active = !system(service_check_active_command(parsed[0])); int active = !system(user_check_active_command(parsed[0]));
enum YON_UNIT_TYPE type = yon_get_unit_type(parsed[0]); enum YON_UNIT_TYPE type = yon_get_unit_type(parsed[0]);
struct system_user_data *data = malloc(sizeof(struct system_user_data)); struct system_user_data *data = malloc(sizeof(struct system_user_data));
{ {
data->widgets=widgets; data->widgets=widgets;
data->SystemAutostart=yon_char_parsed_check_exist(launched,launched_size,parsed[0])>-1; data->SystemAutostart=loaded;
data->SystemLaunched=strcmp(parsed[2],"active")?0:1; data->SystemLaunched=active;
data->Name=parsed[0]; data->Name=yon_char_new(parsed[0]);
data->Descr=parsed[4]; data->Descr=yon_char_new(parsed[4]);
data->Type = type; data->Type = type;
data->Loaded=loaded; data->Loaded=strcmp(parsed[1],"loaded")?0:1;
data->Active=active; data->Active=strcmp(parsed[2],"active")?0:1;
data->State=_(parsed[3]); data->State=yon_char_new(_(parsed[3]));
} }
g_idle_add((GSourceFunc)yon_user_set,data); g_idle_add((GSourceFunc)yon_user_set,data);
} }
yon_char_parsed_free(parsed,size);
} }
int descr_size; int descr_size;
@ -1327,9 +1328,9 @@ void* yon_interface_update(main_window *widgets){
struct system_config_data *data = malloc(sizeof(struct system_config_data)); struct system_config_data *data = malloc(sizeof(struct system_config_data));
{ {
data->widgets=widgets; data->widgets=widgets;
data->Name=parsed[2]; data->Name=yon_char_new(parsed[2]);
data->Descr=parsed[1]; data->Descr=yon_char_new(parsed[1]);
data->Date = description; data->Date = _(description);
} }
g_idle_add((GSourceFunc)yon_system_config_set,data); g_idle_add((GSourceFunc)yon_system_config_set,data);
} }

@ -47,6 +47,8 @@
#define service_kill_command(target) yon_char_append("systemctl kill ",target) #define service_kill_command(target) yon_char_append("systemctl kill ",target)
#define service_check_active_command(target) yon_char_append("systemctl is-active ",target) #define service_check_active_command(target) yon_char_append("systemctl is-active ",target)
#define check_enabled_command(target) yon_char_append("systemctl is-enabled ",target) #define check_enabled_command(target) yon_char_append("systemctl is-enabled ",target)
#define user_check_active_command(target) yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ is-active ",target,NULL)
#define user_check_enabled_command(target) yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ is-enabled ",target,NULL)
#define service_info_command(target) yon_char_append("systemctl status -l --no-pager ",target) #define service_info_command(target) yon_char_append("systemctl status -l --no-pager ",target)
#define get_log_command(target) yon_char_append("journalctl --all --no-pager --unit ",target) #define get_log_command(target) yon_char_append("journalctl --all --no-pager --unit ",target)

@ -517,3 +517,67 @@ msgstr ""
#: source/ubl-strings.h:159 #: source/ubl-strings.h:159
msgid "Status:" msgid "Status:"
msgstr "" msgstr ""
#: source/ubl-strings.h:159
msgid "UBLinux OS configuration files"
msgstr ""
#: source/ubl-strings.h:159
msgid "System Debug Dump Configuration"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuring various systemd log service options"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuring various systemd-journal-upload.service parameters"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuring Global Network Settings"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuration file for systemd-pstore, a tool for archiving the contents of the pstore persistent storage file system"
msgstr ""
#: source/ubl-strings.h:159
msgid "Workstation hibernation options"
msgstr ""
#: source/ubl-strings.h:159
msgid "Systemd configuration"
msgstr ""
#: source/ubl-strings.h:159
msgid "User Configuration"
msgstr ""
#: source/ubl-strings.h:159
msgid "Settings management configuration for user account home directories created and managed by systemd-homed.service"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuration files for various systemd-journal-remote.service parameters"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuration files for various systemd login manager options"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuration files for various out-of-memory (OOM) killer parameters in systemd user space"
msgstr ""
#: source/ubl-strings.h:159
msgid "Local DNS and LLMNR name resolution management configuration files"
msgstr ""
#: source/ubl-strings.h:159
msgid "System swap file management configuration files"
msgstr ""
#: source/ubl-strings.h:159
msgid "Configuration file controlling NTP network time synchronization"
msgstr ""

@ -520,3 +520,74 @@ msgstr "Деактивирован:"
#: source/ubl-strings.h:159 #: source/ubl-strings.h:159
msgid "Status:" msgid "Status:"
msgstr "Статус:" msgstr "Статус:"
#: source/ubl-strings.h:159
msgid "UBLinux OS configuration files"
msgstr "Файлы конфигурации ОС UBLinux"
#: source/ubl-strings.h:159
msgid "System Debug Dump Configuration"
msgstr "Конфигурация системного отладочного дампа"
#: source/ubl-strings.h:159
msgid "Configuring various systemd log service options"
msgstr "Настройка различных параметров службы журнала systemd"
#: source/ubl-strings.h:159
msgid "Configuring various systemd-journal-upload.service parameters"
msgstr "Настройка различных параметров systemd-journal-upload.service"
#: source/ubl-strings.h:159
msgid "Configuring Global Network Settings"
msgstr "Настройка глобальных сетевых параметров"
#: source/ubl-strings.h:159
msgid ""
"Configuration file for systemd-pstore, a tool for archiving the contents of "
"the pstore persistent storage file system"
msgstr "Файл конфигурации для systemd-pstore, инструмента для архивирования содержимого постоянной файловой системы хранения pstore"
#: source/ubl-strings.h:159
msgid "Workstation hibernation options"
msgstr "Параметры спящего режима рабочей станции"
#: source/ubl-strings.h:159
msgid "Systemd configuration"
msgstr "Системная конфигурация"
#: source/ubl-strings.h:159
msgid "User Configuration"
msgstr "Конфигурация пользователя"
#: source/ubl-strings.h:159
msgid ""
"Settings management configuration for user account home directories created "
"and managed by systemd-homed.service"
msgstr "Конфигурация управления настройками для домашних каталогов учетных записей пользователей, созданная и управляемая systemd-homed.service"
#: source/ubl-strings.h:159
msgid ""
"Configuration files for various systemd-journal-remote.service parameters"
msgstr "Файлы конфигурации для различных параметров systemd-journal-remote.service"
#: source/ubl-strings.h:159
msgid "Configuration files for various systemd login manager options"
msgstr "Файлы конфигурации для различных опций менеджера входа в систему systemd"
#: source/ubl-strings.h:159
msgid ""
"Configuration files for various out-of-memory (OOM) killer parameters in "
"systemd user space"
msgstr "Файлы конфигурации для различных параметров исключения нехватки памяти (OOM) в пользовательском пространстве systemd"
#: source/ubl-strings.h:159
msgid "Local DNS and LLMNR name resolution management configuration files"
msgstr "Файлы конфигурации управления разрешением имен локального DNS и LLMNR"
#: source/ubl-strings.h:159
msgid "System swap file management configuration files"
msgstr "Файлы конфигурации управления файлами подкачки системы"
#: source/ubl-strings.h:159
msgid "Configuration file controlling NTP network time synchronization"
msgstr "Файл конфигурации, управляющий синхронизацией времени сети NTP"

Loading…
Cancel
Save