¿Cómo puedo hacer que Sublime Text 3 se ejecute como root desde Unity?

¿Cómo puedo hacer que Sublime Text 3 se ejecute como root desde Unity?

Sé que no soy root porque no puedo buscar paquetes. Primero, soy consciente deestepágina, pero no me funciona. Después de seguir esas instrucciones, aparece el mensaje cuando abro Sublime desde Unity, pero todavía no puedo buscar paquetes. Si abro sublime usando gksu sublen la terminal, no pasa nada. Si lo hago, sudo sublse abre y puedo buscar paquetes. ¿Está bien abrir sublime como sudo cada vez en lugar de gksu?

Editar: En realidad, cuando abro sublime desde Unity, me solicita la contraseña y luego no se abre en absoluto.

Editar: gksudo subltiene el mismo efecto que gksu. Instalé Sublime desde el sitio web (hice clic en el enlace de Ubuntu 64, se descargó, hice clic en descargar, me llevó al Centro de software). "qué subl" devuelve /usr/bin/subl. gksu está instalado. Glutanimate, sí, a eso me refiero. ¿Alguna idea de lo que está pasando entonces? Sólo puedo explorarlos si uso sudo.

/usr/share/applications/sublime-text.desktop:

[Desktop Entry] 
Version=1.0 
Type=Application 
Name=Sublime Text
GenericName=Text Editor 
Comment=Sophisticated text editor for code, markup and prose 
Exec=gksu /opt/sublime_text/sublime_text %F
Terminal=false 
MimeType=text/plain; 
Icon=sublime-text
Categories=TextEditor;Development; 
StartupNotify=true
Actions=Window;Document;

[Desktop Action Window] 
Name=New Window
Exec=/opt/sublime_text/sublime_text -n 
OnlyShowIn=Unity;

[Desktop Action Document] 
Name=New File
Exec=/opt/sublime_text/sublime_text --command new_file
OnlyShowIn=Unity;

Respuesta1

Cuando gksu/ gksudono funciona o no está disponible, puede utilizarlo en su lugar.sudo -H

Si ejecuta un programa gráfico con sudoen lugar de gksu/ gksudo, debe usar sudo -H ...(o sudo -i ...) en lugar de solo sudo ....

sudo -H subl
sudo -i subl

(Ni las formas sencillas sudo ...ni esas funcionan normalmente desde el tablero de Unity, porque necesitan una terminal en la que solicitarle su contraseña. Pero puede ejecutarlas desde la Terminal).

La razón principal esconsiderado maloejecutar un programa gráfico con normalidad sudoes que ejecuta la aplicación con su HOMEvariable de entorno configurada en el directorio de inicio de la persona que llama no raíz ( ) en lugar del directorio de inicio de la raíz ( ). Tan frecuente/home/username/roothace que los archivos de configuración que deberían pertenecer al usuario normal pertenezcan a la raíz(e inaccesible).

Ejecutar sudocon la -Hbandera evita esto asegurándose de que se use el directorio de inicio de la raíz.

sudo -ihace esto y más: ejecuta un programa en una sesión de inicio de sesión raíz simulada. No conozco ninguna razón de peso para preferir uno u otro de sudo -Hy sudo -i, cuando el objetivo es simplemente ejecutar programas gráficos como root sin problemas.

información relacionada