Sent with [ProtonMail](https://protonmail.com) Secure Email.
> -------- Original Message -------- > Subject: Re: Running a GUI program haults the calling program (linux) > Local Time: 26 September 2017 12:09 PM > UTC Time: 26 September 2017 06:39 > From: c...@cskk.id.au > To: Kryptxy <kryp...@protonmail.com> > python-list <python-list@python.org> > > On 25Sep2017 20:38, Kryptxy <kryp...@protonmail.com> wrote: >>I want to run a GUI program (transmission-gtk) from python. This is what I do: >> >>import subprocess >>subprocess.Popen(["transmission-gtk", link], stdout=subprocess.PIPE, >>stderr=subprocess.PIPE) >> >>Where `link` is some magnetic link. >> >>This command opens transmission-gtk, but it haults the calling program, and >>keeps the terminal busy till the time GUI is running. >>As soon as GUI is closed, the control goes back to the program. > > I do not believe this is all your code. Please post a _complete_ example. > > Popen dispatches a process. It does not wait for it to terminate. GUI programs > are not special. Therefore, if your calling python program is blocking, it is > blocking somewhere other that this line of code. Please show us where. > > Consider putting print() calls through your code to locate where your program > stalls. > > Cheers, > Cameron Simpson <c...@cskk.id.au> (formerly c...@zip.com.au) Here - p = subprocess.Popen(['transmission-gtk', link], stdout=subprocess.PIPE, stderr=subprocess.PIPE) output, error = p.communicate() error = error.decode('utf-8') output = output.decode('utf-8') if error != '': print("\nUnable to load torrent.") else: print("Torrent added successfully!") Here, transmission-gtk is opened and the program haults (at subprocess.Popen() statement). When I close the GUI window, I get the message "Unable to load torrent". Error message I get: `Unable to parse nameserver address 8.8.8.8,` `(transmission-gtk:3982): GLib-CRITICAL **: g_file_test: assertion 'filename != NULL' failed` -- https://mail.python.org/mailman/listinfo/python-list