mirror of
https://github.com/spalencsar/bearhub.git
synced 2026-07-07 01:14:15 +02:00
[ui][settings] supported types working
This commit is contained in:
@@ -4,6 +4,7 @@ import re
|
||||
import shutil
|
||||
import subprocess
|
||||
import time
|
||||
import traceback
|
||||
from pathlib import Path
|
||||
from threading import Thread
|
||||
from typing import List, Set, Type, Tuple, Dict
|
||||
@@ -18,11 +19,13 @@ from bauh.api.abstract.model import PackageUpdate, PackageHistory, SoftwarePacka
|
||||
from bauh.api.abstract.view import MessageType, FormComponent, InputOption, SingleSelectComponent, SelectViewType, \
|
||||
ViewComponent, PanelComponent
|
||||
from bauh.commons.category import CategoriesDownloader
|
||||
from bauh.commons.config import save_config
|
||||
from bauh.commons.html import bold
|
||||
from bauh.commons.system import SystemProcess, ProcessHandler, new_subprocess, run_cmd, new_root_subprocess, \
|
||||
SimpleProcess
|
||||
from bauh.gems.arch import BUILD_DIR, aur, pacman, makepkg, pkgbuild, message, confirmation, disk, git, \
|
||||
gpg, URL_CATEGORIES_FILE, CATEGORIES_CACHE_DIR, CATEGORIES_FILE_PATH, CUSTOM_MAKEPKG_FILE, SUGGESTIONS_FILE
|
||||
gpg, URL_CATEGORIES_FILE, CATEGORIES_CACHE_DIR, CATEGORIES_FILE_PATH, CUSTOM_MAKEPKG_FILE, SUGGESTIONS_FILE, \
|
||||
CONFIG_FILE
|
||||
from bauh.gems.arch.aur import AURClient
|
||||
from bauh.gems.arch.config import read_config
|
||||
from bauh.gems.arch.depedencies import DependenciesAnalyser
|
||||
@@ -888,22 +891,37 @@ class ArchManager(SoftwareManager):
|
||||
def get_settings(self) -> ViewComponent:
|
||||
config = read_config()
|
||||
|
||||
optz_opts = [InputOption(label='on'.capitalize(), value=True),
|
||||
InputOption(label='off'.capitalize(), value=False)]
|
||||
optz_opts = [InputOption(label=self.i18n['yes'].capitalize(), value=True, tooltip=self.i18n['arch.config.optimize.true.tip']),
|
||||
InputOption(label=self.i18n['no'].capitalize(), value=False, tooltip=self.i18n['arch.config.optimize.false.tip'])]
|
||||
|
||||
trans_check_opts = [InputOption(label='on'.capitalize(), value=True),
|
||||
InputOption(label='off'.capitalize(), value=False)]
|
||||
trans_check_opts = [InputOption(label=self.i18n['yes'].capitalize(), value=True, tooltip=self.i18n['arch.config.trans_dep_check.true.tip']),
|
||||
InputOption(label=self.i18n['no'].capitalize(), value=False, tooltip=self.i18n['arch.config.trans_dep_check.false.tip'])]
|
||||
|
||||
fields = [
|
||||
SingleSelectComponent(label='Optimizations',
|
||||
SingleSelectComponent(label=self.i18n['arch.config.optimize'].capitalize(),
|
||||
options=optz_opts,
|
||||
default_option=[o for o in optz_opts if o.value == config['optimize']][0],
|
||||
max_per_line=len(optz_opts),
|
||||
type_=SelectViewType.RADIO),
|
||||
SingleSelectComponent(label='Transitive dependency checking',
|
||||
type_=SelectViewType.RADIO,
|
||||
id_='opts'),
|
||||
SingleSelectComponent(label=self.i18n['arch.config.trans_dep_check'].capitalize(),
|
||||
options=trans_check_opts,
|
||||
default_option=[o for o in trans_check_opts if o.value == config['optimize']][0],
|
||||
default_option=[o for o in trans_check_opts if o.value == config['transitive_checking']][0],
|
||||
max_per_line=len(trans_check_opts),
|
||||
type_=SelectViewType.RADIO)]
|
||||
type_=SelectViewType.RADIO,
|
||||
id_='dep_check')]
|
||||
|
||||
return PanelComponent([FormComponent(fields, label='Installation')])
|
||||
return PanelComponent([FormComponent(fields, label=self.i18n['installation'].capitalize())])
|
||||
|
||||
def save_settings(self, component: PanelComponent) -> Tuple[bool, List[str]]:
|
||||
config = read_config()
|
||||
|
||||
form_install = component.components[0]
|
||||
config['optimize'] = form_install.get_component('opts').get_selected()
|
||||
config['transitive_checking'] = form_install.get_component('dep_check').get_selected()
|
||||
|
||||
try:
|
||||
save_config(config, CONFIG_FILE)
|
||||
return True, None
|
||||
except:
|
||||
return False, [traceback.format_exc()]
|
||||
|
||||
@@ -101,4 +101,10 @@ arch.aur.install.unknown_key.receive_error=No s’ha pogut rebre la clau públic
|
||||
arch.install.aur.unknown_key.body=Per a continuar amb la instal·lació de {} cal confiar en la clau pública següent {}
|
||||
arch.aur.install.validity_check.title=Problemes d’integritat
|
||||
arch.aur.install.validity_check.body=Alguns dels fitxers font necessaris per a la instal·lació de {} són malmesos. La instal·lació es cancel·larà per a evitar danys al vostre sistema.
|
||||
arch.makepkg.optimizing=Optimitzant la recopilació
|
||||
arch.makepkg.optimizing=Optimitzant la recopilació
|
||||
arch.config.optimize=optimitzar
|
||||
arch.config.trans_dep_check=verificar dependències
|
||||
arch.config.optimize.true.tip=La configuració optimitzada s'utilitzarà per fer més ràpida la instal·lació dels paquets
|
||||
arch.config.optimize.false.tip=La configuració predeterminada del sistema s'utilitzarà per realitzar la instal·lació dels paquets
|
||||
arch.config.trans_dep_check.true.tip=Si totes les dependències del paquet s’han de verificar abans de la instal·lació.
|
||||
arch.config.trans_dep_check.false.tip=Si s'han de destapar les dependències del paquet durant la seva instal·lació
|
||||
@@ -101,4 +101,10 @@ aur.info.validpgpkeys=gültige PGP Schlüssel
|
||||
aur.info.options=Optionen
|
||||
aur.info.provides=stellt bereit
|
||||
aur.info.conflicts with=Konflikt mit
|
||||
arch.makepkg.optimizing=Optimiert die Zusammenstellung
|
||||
arch.makepkg.optimizing=Optimiert die Zusammenstellung
|
||||
arch.config.optimize=optimieren
|
||||
arch.config.trans_dep_check=Um Abhängigkeiten zu verifizieren
|
||||
arch.config.optimize.true.tip=Optimierte Einstellungen werden verwendet, um die Paketinstallation zu beschleunigen
|
||||
arch.config.optimize.false.tip=Für die Installation der Pakete werden die Standardsystemeinstellungen verwendet
|
||||
arch.config.trans_dep_check.true.tip=Wenn alle Paketabhängigkeiten überprüft werden sollen, bevor die Installation beginnt
|
||||
arch.config.trans_dep_check.false.tip=Wenn die Paketabhängigkeiten bei der Installation aufgedeckt werden sollen
|
||||
@@ -101,4 +101,10 @@ aur.info.validpgpkeys=valid PGP keys
|
||||
aur.info.options=options
|
||||
aur.info.provides=provides
|
||||
aur.info.conflicts with=conflicts with
|
||||
arch.makepkg.optimizing=Optimizing the compilation
|
||||
arch.makepkg.optimizing=Optimizing the compilation
|
||||
arch.config.optimize=optimize
|
||||
arch.config.trans_dep_check=check dependencies
|
||||
arch.config.optimize.true.tip=Optimized settings will be used in order to make the packages installation faster
|
||||
arch.config.optimize.false.tip=The default system settings will be used to perform the packages installation
|
||||
arch.config.trans_dep_check.true.tip=If all the package dependencies should be verified before the installation starts
|
||||
arch.config.trans_dep_check.false.tip=If the package dependencies should be uncovered during its installation
|
||||
@@ -101,4 +101,10 @@ arch.aur.install.unknown_key.receive_error=No fue posible recibir la clave públ
|
||||
arch.install.aur.unknown_key.body=Para continuar la instalación de {} es necesario confiar en la siguiente clave pública {}
|
||||
arch.aur.install.validity_check.title=Problemas de integridad
|
||||
arch.aur.install.validity_check.body=Algunos de los archivos fuente necesarios para la instalación de {} no están en buen estado. La instalación se cancelará para evitar daños a su sistema.
|
||||
arch.makepkg.optimizing=Optimizando la compilación
|
||||
arch.makepkg.optimizing=Optimizando la compilación
|
||||
arch.config.optimize=optimizar
|
||||
arch.config.trans_dep_check=verificar dependencias
|
||||
arch.config.optimize.true.tip=Se utilizará una configuración optimizada para acelerar la instalación de los paquetes
|
||||
arch.config.optimize.false.tip=Se utilizará la configuración predeterminada del sistema para realizar la instalación de paquetes
|
||||
arch.config.trans_dep_check.true.tip=Si todas las dependencias del paquete deben ser verificadas antes de que comience la instalación
|
||||
arch.config.trans_dep_check.false.tip=Si las dependencias del paquete deben ser descubiertas durante su instalación
|
||||
@@ -69,4 +69,10 @@ arch.aur.install.unknown_key.status=Ricezione della chiave pubblica {}
|
||||
arch.aur.install.unknown_key.receive_error=Impossibile ricevere la chiave pubblica {}
|
||||
arch.aur.install.validity_check.title=Problemi di integrità
|
||||
arch.aur.install.validity_check.body=Alcuni dei file di origine necessari per l'installazione di {} non sono integri. L'installazione verrà annullata per evitare danni al sistema.
|
||||
arch.makepkg.optimizing=Ottimizzando la compilazione
|
||||
arch.makepkg.optimizing=Ottimizzando la compilazione
|
||||
arch.config.optimize=ottimizzare
|
||||
arch.config.trans_dep_check=verificare dipendenze
|
||||
arch.config.optimize.true.tip=Le impostazioni ottimizzate verranno utilizzate per rendere l'installazione dei pacchetti più veloce
|
||||
arch.config.optimize.false.tip=Le impostazioni di sistema predefinite verranno utilizzate per eseguire l'installazione dei pacchetti
|
||||
arch.config.trans_dep_check.true.tip=Se tutte le dipendenze del pacchetto devono essere verificate prima dell'inizio dell'installazione
|
||||
arch.config.trans_dep_check.false.tip=Se le dipendenze del pacchetto devono essere scoperte durante la sua installazione
|
||||
@@ -101,4 +101,10 @@ arch.aur.install.unknown_key.status=Recebendo a chave pública {}
|
||||
arch.aur.install.unknown_key.receive_error=Não fui possível receber a chave pública {}
|
||||
arch.aur.install.validity_check.title=Problemas de integridade
|
||||
arch.aur.install.validity_check.body=Alguns dos arquivos-fonte necessários para instalação de {} não estão íntegros. A instalação será cancelada para evitar danos no seu sistema.
|
||||
arch.makepkg.optimizing=Otimizando a compilação
|
||||
arch.makepkg.optimizing=Otimizando a compilação
|
||||
arch.config.optimize=otimizar
|
||||
arch.config.trans_dep_check=verificar dependências
|
||||
arch.config.optimize.true.tip=Utilizará configurações otimizadas para que a instalação de pacotes seja mais rápida
|
||||
arch.config.optimize.false.tip=Utilizará as configurações padrões do sistema para realizar a instalação de pacotes
|
||||
arch.config.trans_dep_check.true.tip=Se todas as dependências do pacote devem ser verificadas antes da instalação começar
|
||||
arch.config.trans_dep_check.false.tip=Se as dependências do pacote devem ser descobertas durante a instalação
|
||||
Reference in New Issue
Block a user