command info

This commit is contained in:
2025-04-13 17:49:02 +03:00
parent 3603dc45a4
commit 93d568ec00
5 changed files with 85 additions and 46 deletions

View File

@ -134,39 +134,43 @@ msgstr ""
msgid "No such helper command"
msgstr ""
#: info.go:43
#: info.go:44
msgid "Print information about a package"
msgstr ""
#: info.go:48
#: info.go:49
msgid "Show all information, not just for the current distro"
msgstr ""
#: info.go:69
#: info.go:76
msgid "Error getting packages"
msgstr ""
#: info.go:78
#: info.go:85
msgid "Error iterating over packages"
msgstr ""
#: info.go:105
#: info.go:117
msgid "Command info expected at least 1 argument, got %d"
msgstr ""
#: info.go:119
#: info.go:130
msgid "Error finding packages"
msgstr ""
#: info.go:144
#: info.go:146
msgid "Can't detect system language"
msgstr ""
#: info.go:156
msgid "Error parsing os-release file"
msgstr ""
#: info.go:153
#: info.go:165
msgid "Error resolving overrides"
msgstr ""
#: info.go:162 info.go:168
#: info.go:174 info.go:180
msgid "Error encoding script variables"
msgstr ""
@ -315,7 +319,7 @@ msgstr ""
msgid "ERROR"
msgstr ""
#: internal/utils/cmd.go:74
#: internal/utils/cmd.go:94
msgid "You need to be root to perform this action"
msgstr ""

View File

@ -148,39 +148,44 @@ msgstr "Каталог, в который будут устанавливать
msgid "No such helper command"
msgstr "Такой вспомогательной команды нет"
#: info.go:43
#: info.go:44
msgid "Print information about a package"
msgstr "Отобразить информацию о пакете"
#: info.go:48
#: info.go:49
msgid "Show all information, not just for the current distro"
msgstr "Показывать всю информацию, не только для текущего дистрибутива"
#: info.go:69
#: info.go:76
msgid "Error getting packages"
msgstr "Ошибка при получении пакетов"
#: info.go:78
#: info.go:85
msgid "Error iterating over packages"
msgstr "Ошибка при переборе пакетов"
#: info.go:105
#: info.go:117
msgid "Command info expected at least 1 argument, got %d"
msgstr "Для команды info ожидался хотя бы 1 аргумент, получено %d"
#: info.go:119
#: info.go:130
msgid "Error finding packages"
msgstr "Ошибка при поиске пакетов"
#: info.go:144
#: info.go:146
#, fuzzy
msgid "Can't detect system language"
msgstr "Ошибка при парсинге языка системы"
#: info.go:156
msgid "Error parsing os-release file"
msgstr "Ошибка при разборе файла выпуска операционной системы"
#: info.go:153
#: info.go:165
msgid "Error resolving overrides"
msgstr "Ошибка устранения переорпеделений"
#: info.go:162 info.go:168
#: info.go:174 info.go:180
msgid "Error encoding script variables"
msgstr "Ошибка кодирования переменных скрита"
@ -330,7 +335,7 @@ msgstr "%s %s загружается — %s/с\n"
msgid "ERROR"
msgstr "ОШИБКА"
#: internal/utils/cmd.go:74
#: internal/utils/cmd.go:94
msgid "You need to be root to perform this action"
msgstr ""
@ -589,9 +594,6 @@ msgstr "Здесь нечего делать."
#~ msgid "Error opening config file"
#~ msgstr "Ошибка при открытии конфигурационного файла"
#~ msgid "Error parsing system language"
#~ msgstr "Ошибка при парсинге языка системы"
#~ msgid "Executing version()"
#~ msgstr "Исполнение версия()"

View File

@ -17,6 +17,8 @@
package utils
import (
"errors"
"log/slog"
"os"
"os/user"
"strconv"
@ -66,6 +68,24 @@ func DropCapsToAlrUser() error {
if err != nil {
return err
}
newUid := syscall.Getuid()
if newUid != uid {
return errors.New("new uid don't matches requested")
}
newGid := syscall.Getgid()
if newGid != gid {
return errors.New("new gid don't matches requested")
}
return nil
}
// Returns cli.Exit to
func ExitIfCantDropCapsToAlrUser() error {
err := DropCapsToAlrUser()
if err != nil {
slog.Debug("dropping capabilities error", "err", err)
return cli.Exit(gotext.Get("Error dropping capabilities"), 1)
}
return nil
}