xpdAcq / mission-control

Releases, Installers, Specs, and more!
0 stars 4 forks source link

Beamline startup is completely chaotic #50

Open sbillinge opened 7 years ago

sbillinge commented 7 years ago

Expected Behavior

User should arrive at the beamline and be faced not only with an empty xpdUser directory (we have that under control) but also a nice and clean and reproducible computer desktop

Not sure if it is possible, but ideally:

  1. previous user leaves the desktop in whatever chaotic state they want and go home
  2. _end_beamtime() sequence closes analysis pipeline as well as doing all the directory cleanup magic
  3. _end_beamtime() sequence minimizes all windows except the terminal that has xpdui running and a browser who's home-page is set to the startup sequence of the xpdAcq.github.io docs
  4. New user (or BLS if they are doing the setup) is faced with a clean desktop and just one terminal and one browser open. The terminal has xpdui running and the browser is showing the right page of the docs
  5. Docs have been updated so that if a monkey actually followed the instructions correctly, things would start up properly. This should be rechecked after each software ugrade.
  6. Browser also has a tab open to xpd-users GG
  7. Ways to get help clearly defined and easily found in docs and in physical form (laminated cardboard preferrably!) somewhere at the beamline
  8. Anything else we can think of so that a novice user can get going

Current Behavior

Clutter! Can't find anything! No way to find the live documentation that tells the commands for beginning scans, only a tatty and now out of date paper crib sheet.

CJ-Wright commented 7 years ago

Thank you for reporting!

CJ-Wright commented 7 years ago

I think this is somewhat related with #48 since we may need a centralized command to shut things down in addition to start things up.

It is rather difficult to control windows minimization using python. The library wnck seems to do it (with python bindings) but seems specific to the gnome desktop manager.

My first suggestion would be to use a tiling window manager (full disclosure I use it on all my machines). This would reduce the clutter by resizing windows so that they all fit on the window. However, these systems may have a steep (but small) learning curve (I know awesome does, I can't speak for the others I think @stuartcampbell uses i3).

Another approach would be to have the users/BLS to completely log out of the system. This should end the x-session eliminating all windows and background processes associated with that user. We could then put into the .bash_profile scripts for starting everything up (proxy, pipeline, acq, and web docs) when the user logs in. This may be the best way to make certain that the user gets a clean start (although this could be paired with the tiling window manager for maximum efficiency).

It would be helpful if users did not use the collection computer for anything other than the proxy, pipeline, acq, and web docs. It seems that some people are running external applications (eg fit2d) on that computer adding to the clutter. These functions could just as easily be run on ws3 the analysis computer.

We may also consider moving the analysis terminal/pipeline to the analysis computer to reduce clutter, although I'd like input from the @xpdAcq/bls

sghose commented 7 years ago

Truly speaking myself and with me supported users, I had no issues even with opened all the analysis windows, visualization windows and fit2d, xpdsuite. Yes, it is a cluttered workstation-1. Here are my suggestion on this particular cluttering issue:

  1. Let us have xpsui, proxy, setup_analysis run on WS-2, with all data visualization windows are pulled once to the top screen (I always have them lined up 3 on top(2D,@d, I_tth), 3 on bottom(pdfs). If in some way we could open up these windows on the top screen location at the start of setup_analysis would be great.
  2. fit2d, webpages and xpdsuite, gSAS etc... could be opened on WS-3 which supposed to be ANALYSIS WS. We can tilt the screens towards the user.
  3. This arrangements will be way better when we have the rearrangements of the floor in near future.
sbillinge commented 7 years ago

I kind of like the suggestion of a log-off, log-on step during the end_ start_beamtime sequence, with some logic in .bashrc to start up the things we want.

We could get help from Pavol for the bash scripting. He is a bash demon.

sbillinge commented 6 years ago

per conversation with @CJ-Wright , let's make our first cut at this for a mid-cycle release around 10/16/17