28 septiembre 2012

Tip: Dar permisos a un script en modo gráfico

No hace mucho estaba haciendo un pequeño script para actualizar e instalar unos paquetes y programas en Ubuntu para un gran amigo y compañero.
Es de esas cosas que por uno u otro motivo vas dejando hasta que te das cuenta que el tiempo se hecha encima.
La historia es que lo quise hacer de modo gráfico, utilizando Zenity (del que os hable no hace tanto) por aprender sobre todo. Pero me tocaba un poco la moral el tener que darle permisos desde nuestra denostada terminal, ya que es algo confuso para los noveles y pierde la esencia de hacerlo todo con ventanitas.
Como no soy un maestro de nada, se me ocurrió preguntar “a mis mayores” y a san Google, pero nadie daba con la solución. Bueno, si, con gksu, que efectivamente sirve para eso y nos mostraría algo así:

Pero no deja de ser un lío, además, no quiero que el usuario utilice root para esta tontería.
Entonces, ¿como hago para que esa orden se comporte como un simple sudo y no como root?
Pues tampoco era tan difícil, solo hay que añadirle esto a la misma:
gksu -s -l “$0″
-s hace que el comando anterior se comporte como sudo
-l te lo muestra en pantalla
“$0″ toma al usuario por defecto

¿Veis la diferencia?
Si en tu script no necesitas que el usuario siga como tal, solo hay que añadir un && exit al final de la linea y ya está.
Espero que os sirva para vuestras cosas.

Tomado de: http://linuxzone.es/2012/09/25/tip-dar-permisos-a-un-script-en-modo-grafico/

No hay comentarios: