Experimenting with a GUI for fpm

I have been experimenting a bit with a simple GUI for fpm. Before it is actually useful for anyone else, a lot of work still has to be done, but I have been able to retrieve and build (or rather attempt to build ;)) a few packages.

Here is a screenshot:

It is implemented in Tcl/Tk, which makes it easy to use on Windows, Linux and OSX alike.

The things it currently is capable of are:

  • Display a list of packages (by reading the file registry.toml)
  • Clone (retrieve) the repository of a chosen package (issuing a git command)
  • Build the package (issuing an fpm command)

I have noticed that a few packages will not compile correctly at the moment, but that is beyond the point - it saves me the bother to get the URL and clone the repository :slight_smile:

Things that need to be done before it becomes really useful:

  • Update an existing repository
  • Let the user chose what directories to store everything in
  • Select the compiler and compiler options

I will create a repository for this stuff on Github, when it is a trifle more mature

17 Likes

This is an awesome idea. It should greatly increase the accessibility of fpm to people who aren’t comfortable with command lines. When distributed, would it include it’s own copy of fpm, or must the user already have fpm installed and on their PATH?

Well, actually, we can choose: Tcl/Tk has a packaging mechanism that allows you to put everything in a single executable and that may contain an executable of fpm for the selected platform.

Come to think of it, that is an excellent way of setting this up.

2 Likes

I forgot to mention: no need to install anything (like a run-time for TclTk - that is included). That is something that ought to make life easier for the average permission-challenged user.

2 Likes

The program is in a sufficiently mature state now to publish it on Github. Lots of functionality could be added still, if that is indeed worthwhile, but it is working nicely.

I can demonstrate it during the next monthly Fortran call :blush:

8 Likes

This tool will be very useful. It would be nice to have a button “Open project with Atom”. Thank you for developing fpm-GUI :+1:.

1 Like

I am not familiar with Atom, but it should not be too hard to interact with it from within the user-interface .I will have a look at it :thinking:

1 Like