Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a few small scripts that I use for routine tasks. They require simple parameters to run. Rather than running them from the terminal, I'd prefer to pick something from the menu, be presented with a simple window with fields to input the parameters, click a "Go" button and have the script run. I've looked at descriptions of GTK+, Qt, etc, but I'm not really sure where to start.

I want:

  • a really simple framework
  • preferably with a Python API
  • that I can ideally create GUIs for programatically (e.g. define 5 input objects in the code, and five fields appear in the window, nothing more required - this is so that I can add and remove parameters/fields on a whim)
  • it would be nice to have both text fields and dropdowns, but text fields will do
  • to be able to provide simple feedback for validation and confirmation
  • to be future proof against both Unity and Gnome Shell
  • a simple tutorial on creating an app with this framework (again, preferably in Python)
share|improve this question
add comment

4 Answers 4

up vote 6 down vote accepted

We've got everything you're asking for on the Ubuntu App Developer site. Check out the video tutorial on how to get started developing applications in Ubuntu with Quickly.

share|improve this answer
add comment

Really the way to go overall for user friendly GUI app development is Quickly. It gives you a workflow and several helper scripts to get you up and running fast and easy. It is however very opinionated on the software to use, eg for GUI it uses PyGTK.

My own experience from looking into the Python GUI frameworks is that there is no single best one. Some say wxPython is the way to go, others PyQT. However I believe a lot of the Ubuntu specific software is done using PyGTK.

share|improve this answer
add comment

There is zenity Install zenity for example.

As far as I know it does not provide a Python API but you can very easily configure the dialogs using its command line options. In fact it is actually meant for use in shell scripts but I don't see any reason to not use it in conjunction with Python.

For more information on all of its options I'd like to point you to the Zenity man page.

Here is a simple example on how to use it from a shell script.

That is only if you don't want to go with a more sophisticated solution. In general I'd recommend Quickly.

share|improve this answer
add comment

You can use gdialog from your shell scripts and they will became GUI -> man

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.