[Bug 166245] New: Integrate SSH, SSHFS, network sound, and eventually Screen, FreeNx, and VMs into K-Menu

Eike Welk eike.welk at post.rwth-aachen.de
Thu Jul 10 18:24:31 CEST 2008


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=166245         
           Summary: Integrate SSH, SSHFS, network sound, and eventually
                    Screen, FreeNx, and VMs into K-Menu
           Product: plasma
           Version: unspecified
          Platform: unspecified
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: panel
        AssignedTo: panel-devel kde org
        ReportedBy: eike.welk post rwth-aachen de


Version:            (using KDE 4.0.83)

Unix-like operating systems are considered to have very good capabilities for transmitting data and executing programs remotely over the internet. However these networking capabilities are not very well integrated into KDE (or any other graphical desktop environment). Especially executing programs on a remote server usually requires typing textual commands into a shell.  

Therefore I propose to embed a graphical client for SSH, SSHFS, and sound redirection into the graphical program starter. I think it should be implemented in the old fashioned K-Menu tree; which has been ported to KDE 4 recently.

Many parts of my proposal are already implemented in FreeNx (IMHO) but doing as much as possible over pure SSH is usefull because SSH is installed on every server, but FreeNx is not. It would be good to use some abstraction, so both SSH and FreeNx could be used as backends. 


*Interface*
- The K-Menu should remember which programs are available on which computer, and show this as one additional tree-level. This choice should be at the deepest menu level. (See image). When the user selects the menu entry of a remote computer, the program will be executed on this computer.

- There should be a "Configure Remote Program Starter" entry in a prominent place of the K-menu. Clicking this menu entry should show a window with a list of configured SSH connections. The K-Menu should establish those connections automatically when needed. (To start programs, for downloading the menu data at regular intervals) The KSSH application would be a good start for the configuration dialog of a single SSH connection.


*Functionality*
- Start programs on a remote computer with SSH and X11 forwarding (ssh -X).

- Redirect the sound output of the remote program over the SSH connection to the local computer. This is reportedly possible with Phonon and aRts; it should also be possible with Gnome's sound architecture.

- Make the removable media from the local computer accessible on the remote server. Use case: I have a CD with measurement data, and the program on the remote server should read it. I could copy the data with Fish, but having the CD just magically appear on the remote server would be much nicer.
This is reportedly possible with SSHFS although it is constructed to work in the reverse direction. 
-- Make directories from the local HD (eg. the home directory) available on the remote server. 

- Make directories from the remote server available on the local computer (with SSHFS). This would need an extra user interface to switch it on without starting a program. A separate program (KSSH) would we the obvious way.

- Just start a SSH terminal session, but with the additional functionality from this proposal. Accessible by separate program.


*Further extensions*
- Make devices on the remote server available, as if you were logged in locally on the server. Would require a suid root program on the server. Use case: I want to write DVDs on my backup server because my oldish laptop has no DVD writer. The server however has no screen attached. 

- Keep X11 programs running on the remote server after the SSH connection has been closed. Very usefull for long running programs. 
For command line programs one can use screen to do this. X11 programs however crash because SSH's stub X-server terminates, when the SSH session is closed. The stub X-server from OpenSSH could be ripped out and modified to live inside Screen's session. 
This functionality might be in FreeNx already.

- Be able to store running programs on a hard disk, send them over the internet, and restart them on an other computer. This would necessitate virtual machines on Unix-like operating systems. With a good graphical client for virtual machines, KDE would surpass the mainframe operating system VM/CMS.


More information about the Panel-devel mailing list