Como abrir uma GUI com permissões de sudo sem mudanças de tema no sudo e de um arquivo .desktop
TL, DR: Eu quero ser capaz de iniciar um aplicativo GUI com privilégios de root clicando duas vezes em um arquivo .desktop e preservando o bom (em relação ao modo sudo) com o tema do modo não sudo.
Procurei perguntas / respostas relacionadas aqui, no entanto, não posso dizer que compreendo a situação e encontrei uma solução. Ou eles não eram bem estruturados e explicativos, ou eu simplesmente não os entendi. OU a maioria deles estava mencionando gksu, no entanto, pelo que eu entendi, gksufoi removido dos repositórios. Não consigo instalar.
A captura de tela pode ser encontrada em anexo no final da pergunta.
Estou ciente de que será uma pergunta complicada, por favor, me perdoe.
Agora, tenho o programa Quartus instalado no meu computador e posso executá-lo via (LADO ESQUERDO DA CAPTURA DE TELA):
/home/muyustan/altera/13.1/quartus/bin/quartus --64bit
 
    Eu também criei um .desktoparquivo como segue:
[Desktop Entry]
Type=Application
Version=0.9.4
Name=Quartus II 13.1 (64-bit) Web Edition
Comment=Quartus II 13.1 (64-bit)
Icon=/home/muyustan/altera/13.1/quartus/adm/quartusii.png
Exec=/home/muyustan/altera/13.1/quartus/bin/quartus --64bit
Terminal=false
Path=/home/muyustan/altera/13.1
 
    Até agora tudo bem, posso executá-lo por meio de entrada na área de trabalho, nenhuma janela de terminal aparece e para lá (irritante o suficiente). Tudo está bem.
No entanto, descobri que em uma parte do aplicativo Quartus, ele precisa abrir (chamar) outro programa (Modelsim) e salvar alguns arquivos em alguns lugares etc. O problema é, se eu não iniciar o aplicativo com um sudoem na frente dele (LADO DIREITO DA CAPTURA DE TELA), eu recebo alguns erros informando permission deniede as coisas simplesmente não funcionam.
Então, posso resolver isso mudando meu habbit de lançamento,
from -- double click on the desktop entry
to -- Ctrl+Alt+T -> sudo [executablePath] -> enter password
 
    Bem, claramente não quero isso por dois motivos principais.
- Leva mais tempo.
 - Esse terminal permanece lá enquanto o aplicativo estiver aberto.
 
E bem neste ponto surge um terceiro (bônus) motivo, como você pode ou não ter notado nas imagens, iniciar com sudofaz com que o tema da GUI pareça, bem, o estilo do Windows XP ... qualquer tema quando instalei pela primeira vez o Quartus ou algo assim, aliás.
Então, espero ter deixado meu ponto claro.
Desde já, obrigado.
                Atualizações para a pergunta
Após a solicitação de alguém nos comentários, veja o erro que estou recebendo no aplicativo chamado (iniciado de dentro do Quartus), Modelsim:
do temp1_run_msim_rtl_verilog.do 
# if {[file exists rtl_work]} {
#   vdel -lib rtl_work -all
# }
# ** Error: (vdel-19) Failed to access library 'rtl_work' at "/home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work".
# Permission denied. (errno = EACCES)
# ** Error: /home/muyustan/altera/13.1/modelsim_ase/linux/vdel failed.
# Error in macro ./temp1_run_msim_rtl_verilog.do line 4
# /home/muyustan/altera/13.1/modelsim_ase/linux/vdel failed.
#     while executing
# "vdel -lib rtl_work -all"
#     invoked from within
# "if {[file exists rtl_work]} {
#   vdel -lib rtl_work -all
# }"
Respostas
O usuário recebeu esta mensagem de erro:
# ** Error: (vdel-19) Failed to access library 'rtl_work' at "/home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work". # Permission denied. (errno = EACCES)
Com o uso de sudo, eu esperava que algumas pastas / arquivos fossem criados com nível de privilégios de root.
Geramos uma listagem para toda a árvore na pasta "altera" para verificar a propriedade e as permissões. Usando:
find /home/muyustan/altera -type d -exec stat -c '%A %G %U %n' {} \; > log.txtProcure essa pasta
temp1ou o usuário / gruporoot, como você pode ver que há pastas pertencentes ao rootdrwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/qsim/work/up_counter drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/qsim/work/prime_detector_4bits_vlg_check_tst drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/_temp drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/up_counter_tb drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/up_counter drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/modelsim drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work/prime_detector_4bits drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work/_temp drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work/_temp drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work/up_counter drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/db drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/incremental_dbMude a propriedade dessa pasta e de todas as pastas filho e arquivos contidos nela para o seu usuário e grupo.
sudo chown -R muyustan:muyustan /home/muyustan/altera
Tente executar novamente o Quartus sem sudo