Crear un icono de base para Spyder (instalado con Anaconda)

5

¿Cómo puedo crear un solo icono de base para una aplicación que se inicia a través de la Terminal?

He instalado spyder utilizando anaconda. Puedo crear una aplicación de inicio usando Platypus (vea esto respuesta ). Pero la aplicación spyder real abre un nuevo icono de acoplamiento (feo) etiquetado como "python" al lado:

La confusión comienza cuando quiero cambiar a la aplicación Spyder: tengo que hacer clic en el icono de python y no en el de spyder ...

    
pregunta traindriver 20.10.2016 - 10:54

2 respuestas

3

Platypus no es necesariamente necesario para agregar un icono a spyder:

Iniciar spyder en la CLI es un proceso de dos etapas:

~ / anaconda / bin / spyder es un script de shell que ejecuta la "aplicación proxy" ~ / anaconda / bin / python.app que a su vez lanza otra "aplicación proxy" ~ / anaconda / python.app / Contents / MacOS / python incluyendo un argumento.

Dado que el último script de shell reside en un paquete de aplicaciones, simplemente puede agregar un icono:

Las dos aplicaciones proxy son "envoltorios / lanzadores" para todas las demás aplicaciones de Python Science incluidas en Anaconda. No desea romper Anaconda, por lo tanto, debe crear dos lanzadores "solo para spyder".

Haga una copia de ~ / anaconda / bin / python.app: ~ / anaconda / bin / python.spyder.app y cambie el script de shell (¡no olvide cambiar también al usuario en la ruta!).

#!/bin/bash
export PYTHONEXECUTABLE=/Users/user/anaconda/bin/python
/Users/user/anaconda/python.spyder.app/Contents/MacOS/python "$@"

Luego cree una copia de ~ / anaconda / python.app: ~ / anaconda / python.spyder.app y agregue un icono a ella.

Comenzó desde la Terminal, el comando spyder lanzará python.spyder.app con el icono personalizado.

Ahora puede usar Platypus para crear una aplicación para iniciar spyder (en lugar de usar Terminal.app). Utilice la siguiente configuración:

Esto puede fallar después de una actualización de Anaconda o spyder.

No creo que puedas ejecutar spyder con un solo ícono de base de spyder (con el lanzador Platypus spyder como elemento permanente del Dock) porque python.spyder.app/python.app en sí mismo es una envoltura para spyder nuevamente. Así que después de pulsar el ícono de la aplicación Platypus spyder en el Dock, siempre obtendrás un segundo ícono de spyder, la razón por la cual tu solución muestra el ícono python.app predeterminado.

    
respondido por el klanomath 20.10.2016 - 16:18
0

Esta pregunta es más una pregunta de programación que una pregunta de usabilidad, sin embargo, probablemente debería hacerse mediante programación, ya que macOS normalmente busca el icono dentro de la Aplicación como parte de un archivo .plist, y su aplicación no tiene esto presumiblemente porque se está ejecutando desde la línea de comandos como un script.

Eche un vistazo a: Cambiando el icono de la aplicación Cocoa , título y etiquetas de menú en tiempo de ejecución

    
respondido por el unknowndomain 20.10.2016 - 13:06

Lea otras preguntas en las etiquetas