Anaconda-Navigator desktop launcher non riesce ad avviare l'applicazione


8

Di recente ho installato Anaconda sul mio sistema Xubuntu 16.04. Per avviare l'applicazione da un terminale, uso semplicemente anaconda-navigatore funziona alla perfezione.

Ora volevo creare un desktop launcher per lo stesso e aggiungerlo anche al mio menu Whisker xfce. Quindi ho creato un programma di avvio desktop con il seguente contenuto.

[Desktop Entry]
Version=1.0
Type=Application
Name=Anaconda-Navigator
GenericName=Anaconda
Comment=Scientific PYthon Development EnviRonment - Python3
Exec=/home/meghana/anaconda3/bin/anaconda-navigator
Categories=Development;Science;IDE;Qt;
Icon=spyder3
Terminal=false
StartupNotify=true
MimeType=text/x-python;

Ma quando provo ad aprire l'applicazione dal programma di avvio, vengo indirizzato a un file HTML locale con il seguente messaggio di errore:

Navigator Error

An unexpected error occurred on Navigator start-up

Report

Please report this issue in the anaconda issue tracker

Main Error

byte indices must be integers or slices, not str
Traceback

Traceback (most recent call last):
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/exceptions.py", line 75, in exception_handler
     return_value = func(*args, **kwargs)
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/app/start.py", line 115, in start_app
     window = run_app(splash)
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/app/start.py", line 58, in run_app
     window = MainWindow(splash=splash)
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/widgets/main_window.py", line 160, in __init__
     self.api = AnacondaAPI()
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/api/anaconda_api.py", line 1205, in AnacondaAPI
     ANACONDA_API = _AnacondaAPI()
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/api/anaconda_api.py", line 65, in __init__
     self._conda_api = CondaAPI()
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/api/conda_api.py", line 1622, in CondaAPI
     CONDA_API = _CondaAPI()
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/api/conda_api.py", line 340, in __init__
     self.set_conda_prefix()
  File "/home/meghana/anaconda3/lib/python3.6/site-
  packages/anaconda_navigator/api/conda_api.py", line 489, in set_conda_prefix
     self.ROOT_PREFIX = info['root_prefix']
  TypeError: byte indices must be integers or slices, not str

Non posso per la vita di me capire perché questo sta accadendo o cosa dovrei fare.

Raccomanda gentilmente.


NOTA:

Prima di segnalare questa domanda come duplicata (come questa ), tieni presente che non sto chiedendo istruzioni su come creare i desktop launcher. Ho cercato milioni di volte attraverso diversi forum online per trovare una soluzione, ma ho fallito.

Risposte:


10

Sembra che l' .bashrcambiente non riesca a caricarsi con il desktop launcher. Questo è il motivo per cui è necessario specificare manualmente $PATHnel comando che si desidera eseguire. Prova a modificare il tuo file desktop (o crea un nuovo Anaconda.desktopfile, se hai eliminato quello vecchio) con il seguente contenuto.

[Desktop Entry]
Version=1.0
Type=Application
Name=Anaconda-Navigator
GenericName=Anaconda
Comment=Scientific PYthon Development EnviRonment - Python3
Exec=bash -c 'export PATH="/home/meghana/anaconda3/bin:$PATH" && /home/meghana/anaconda3/bin/anaconda-navigator'
Categories=Development;Science;IDE;Qt;Education;
Icon=spyder3
Terminal=false
StartupNotify=true
MimeType=text/x-python;

Hai notato la differenza? Leggi questo articolo sull'anatomia di un .desktopfile per saperne di più.


Per aggiungere l'applicazione al menu delle applicazioni, è sufficiente copiare il file desktop in /usr/share/applications. Per fare ciò, accendi un terminale e vai alla directory in cui si trova il tuo file desktop, quindi digita il seguente comando.

sudo cp Anaconda.desktop /usr/share/applications

Ovviamente, devi sostituire il nome Anaconda sopra con qualsiasi nome tu abbia dato al tuo file desktop. Spero che sia di aiuto.

Saluti!


1
Funziona bene, tranne per Icon=spyder3me, ho dovuto fare un locate -i 'anaconda-logo' e usare il risultato come Icona.
— Aristu,

Esiste un "Desktop Launcher" ufficiale per Anaconda? Perché non forniscono qualcosa?
— Royi,

L'editor di menu di xfce (menulibre) può semplificare l'attività, l'unico collegamento mancante era l' exportistruzione. @Royi esiste un progetto chiamato ContinuumIO / menuinst su github per effettuare un'installazione di voci di menu multipiattaforma ma non è ancora maturo. Per ora dovremmo aspettare una porta in un futuro aggiornamento.
— codegenki

Invece di copiare il file su di /usr/share/applications/te, puoi semplicemente eseguirlo sudo desktop-file-install Anaconda.desktopsul file.
— addohm
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.