Seite 1 von 1

Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 18:37
von Rotmilan
Hallo zusammen,

ich habe gerade mein System mit Fedora 34 neu aufgesetzt und PyCharm neu installiert. Soweit hat alles gut geklappt, nur der Befehl, der mir ein "Popup" öffnen soll funktioniert nicht mehr.

Eigentlich soll mit dem Fedoar-Text-Editor "gedit" eine Datei geöffnet werden, in die vorher das Programm einen Log der aktuellen Ausführung geschrieben hat.

Leider wird "gedit" anscheinend nicht gefunden. Wenn ich allerdings "gedit" im Terminal eingebe funktioniert der Befehl.
Vor der Neuinstallation hat das Programm wunderbar funktioniert. Ich steh gerade auf dem Schlauch, wo da das Problem sein könnte, da "gedit" auch in fedora 34 noch vorhanden ist.

Code: Alles auswählen

Traceback (most recent call last):
  File "/home/xxxx/PycharmProjects/xxxx/main.py", line 271, in <module>
    runningfile = subprocess.Popen(['gedit', BENACHRICHTIGUNGSPFAD])
  File "/usr/lib/python3.8/subprocess.py", line 858, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.8/subprocess.py", line 1706, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'gedit'
Hat hier jemand einen Tipp für mich?

LG!

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 18:49
von Dennis89
Hallo,

was passiert wenn du das Programm in einem Terminal ausführst?
Ich habe es gerade auf Fedora33 mit 'Thonny' und 'PyCharm' getestet und hatte keine Probleme.

Grüße
Dennis

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 18:57
von Rotmilan
Das hatte ich geschrieben:
Wenn ich allerdings "gedit" im Terminal eingebe funktioniert der Befehl.
:wink:

Thonny hab ich nicht.
Ich weiß nicht ob es am Editor liegt. Finde das aber eher nicht wahrscheinlich - aber wer weiß...

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 19:00
von nezzcarth
Bei so etwas arbeitet man normalerweise mit absoluten (konfigurierbaren) Pfaden, oder mit '/usr/bin/env <Name des Programms>'. Diesen Pfad kannst du in der Shell mit 'which gedit' oder, wenn das nicht funktioniert, 'command -v gedit' herausfinden. (Eigentlich sollte der Pfad '/usr/bin/gedit' sein.)

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 19:14
von Dennis89
Ich meinte dein Python-Programm in einem Terminal starten mit:
'python3 /pfad/zu/deinem/programm/programm.py'

Grüße
Dennis

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 19:25
von Rotmilan
Vielen Dank, guter Hinweis - hab das mit which nachvollzogen, dein Pfad hat gepasst., leider hat es nicht geholfen:

Code: Alles auswählen

FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/gedit'

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 19:41
von __deets__
Das liegt wahrscheinlich daran, das PyCharm als Snap oder Flatpack oder sowas installiert ist. Dadurch hat das eine eingeschraenkte Sicht auf das System, und darf nicht alles. Unter anderem auch externe Programme ausfuehren. Du kannst das beeinflussen. Ich habe gerade mal ein paar Minuten gegoogelt, aber noch nichts definitives gefunden. Ist also jetzt deine Hausaufgabe.

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 19:55
von Rotmilan
Das hört sich logisch an. Es ist jetzt über Flathub installiert. Vielleicht könnte ich es ja auch wo anders finden? Ich hatte vorher versucht es bei den Fedora-Quellen zu finden. Leider war da nix zu sehen. Falls jemand einen Tipp für die "richtige" Quelle unter Fedora hat, wäre ich um einen Hinweis dankbar. Ich werde jetzt dann zuerst mal nachschauen, wie es denn auf Fedoar 32 bei mir installiert war - kann das noch von der alten Festplatte starten... kann ich aber erst später machen...

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 20:02
von __deets__
Wie gesagt, du kannst auch das flatpack dazu bringen, diese Einschraenkung nicht zu haben. Wuerde ich empfehlen. Du musst ein bisschen suchen.

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 22:12
von Rotmilan
Ich werde mal suchen :-)
Gilt das dann für alle flatpack-programme? ich kenne mich da gar nicht aus, aber werd mal sehen was ich finde.
Ich habe jetzt noch ein weiteres Problem entdeckt. Wenn ich das Modul twilio unter PyCharm installiert habe (Option "Install to user's site packages directory (/home/xxx/.local)": an), dann bringt mir die Ausführung des entsprechenden Programms im normalenTerminal auch einen Fehler, dass er dieses Modul nicht kennt, während es in PyCharm vorhanden ist - kann jetzt natürlich auch mit den Berechtigungen zusammen hängen - vielleicht auch nicht.

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 22:17
von __deets__
Nein, das ist dann nur für pycharm.

Und nochmal nein, das liegt an dem impliziten virtualenvs die pycharm macht.

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Samstag 1. Mai 2021, 23:09
von Rotmilan
Also ich hab jetzt beim suchen gesehen, dass man PyCharm auch über Fedy installieren kann. Mit dem Wissen, dass es an der Installation gelegen hat, wollte ich das natürlich mal ausprobieren - und was soll ich sagen, damit waren meine Probleme behoben. :mrgreen:
Thx to all!
And special thx to __deets__ :wink:

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Sonntag 2. Mai 2021, 12:30
von nezzcarth
Wenn es Pakete für die jeweilige Distribution gibt, ist das natürlich der Königsweg. Der Vollständigkeit halber sei aber erwähnt, dass man sich als Notlösung auch einfach den Tar-Ball direkt von JetBrains herunterladen und aus seinem Homeverzeichnis starten kann. PyCharm ist ja ziemlich "Self-contained" (vorausgesetzt, ein JRE ist installiert), kümmert sich selbst um Updates etc. Wenn man es "schön" haben will, legt man sich noch eine .desktop-Datei (z. B. nach dieser Vorlage https://github.com/archlinux/svntogit-c ... rm.desktop) nach '.local/share/applications/' und einen symlink von 'pycharm.sh' nach '~/bin' und dann kann man PyCharm mit diesem User eigentlich problemlos verwenden. Gerade bei Software, die sich eh ein bisschen wie ein Fremdkörper verhält, ist das aus meiner Sicht vertretbar.

Re: Programm "gedit" wird von Popen nicht mehr gefunden

Verfasst: Sonntag 2. Mai 2021, 13:39
von noisefloor
Hallo,
Gilt das dann für alle flatpack-programme? ich kenne mich da gar nicht aus, aber werd mal sehen was ich finde.
Programme, die via Flatpak installiert werden, laufen in einer Sandbox. Die beschränkt grundsätzlich den Zugriff auf des System. Wie stark der Zugriff beschränkt ist (oder eben auch nicht), legt in erster Instanz der fest, der das Flatpak gebaut hat. Man die den Rechte aber ändern, sollte auch in der Flatpak Doku erklärt sein.

Gruß, noisefloor