GUISambaConfigSpec

Revision 26 as of 2006-05-27 23:57:47

Clear message

Summary

We need a GUI tool for setting up / configuring SAMBA shares on Ubuntu. For this we need the following things:

  • A simple and easy to use tool for adding, removing SAMBA shares and configuring various options like read-only, read-write sharing, authenticated, unauthenticated use, etc.
  • The tool will take the the input from the user and will save the preferences to /etc/samba/smb.conf
  • The tool needs to be packaged and put up in the main repository
  • A menu entry should be created for the tool in System > Administration > Windows Networking, or something similar

Rationale

We at Ubuntu are trying to make our system as easy for newbies as possible. Small tools like this one are critical pieces which help in creating a complete Desktop Operating system. This tool should be ready by the time Edgy is released and it would be ideal since Edgy is supposed to contain many new and untested features and would provide an excellent platform for testing and gaining user feedback about this tool.

Use cases

  • Joe has just installed Ubuntu on his laptop and wants to share the files on his laptop with his MS Windows machine which is in the same home network and vice versa. He launches the tool from the menu bar and shares his /home/joe/share directory and can easily drag and drop files to and from his Windows PC.
  • Jane is in office with her Ubuntu laptop and wants to let her boss copy the Spreadsheet from her laptop. She shares her /home/jane/work directory in read-only mode by using the tool and lets her boss copy the file from her laptop.

Scope

  • Samba Shares & Configuration

Out of Scope

  • NFS Shares & Configuration

Design

  • The GUI tool will have options for selecting which directories to share and with which permissions
  • It will have configurable options for authenticated or unauthenticated shares
  • It will also have other options, like changing the workgroup name, [re]starting, stopping the SAMBA server, etc.
  • It should be compliant with the GNOME HIG
  • It should have sane defaults (read-only shares with no authentication, for example), but will have all the options under and Advanced tab/button

attachment:wizard1.png attachment:wizard2.png attachment:wizard3.png attachment:wizard4.png attachment:wizard5.png

attachment:samba-config-editor-main.png

Screenshots of the proposed interface

Proposed properties of the GUI tool (from the discussion in Ubuntu Forums) --

  • Configure Server/Workstation Options
    • Hostname
    • Workgroup
    • Description
    • Advanced
      • Master browser status
      • Other common advanced options
  • Shares Config
    • Path to share
    • Share name
    • Share permissions (Opens in a new dialog)
    • Mount exported shares
  • User account management
    • Add / remove users

We have begun a discussion on the interface/features etc here:http://ubuntuforums.org/showthread.php?p=970170#post970170, which may be of help.

Implementation

The tool will be written in Python & GTk+ so that it blends with the GNOME Desktop well. A Ubuntu package for the tool will also be provided. As a matter of fact, Red Hat & Fedora Core have a similar tool called [http://fedora.redhat.com/projects/config-tools/redhat-config-samba.html redhat-config-samba]. It's released under GNU GPL and code can be reused from that project if needed. The newer version of SAMBA will have usershare support which won't require smb.conf to be edited for adding / removing shares. The tool would be compatible with that feature in SAMBA.

Outstanding issues

None at the moment.

Comments

Barry deFreese (bddebian)

I think this is a great idea. The web based samba tools is less than friendly.

Geeman (Geeman)

I am glad I made enough noise for some people to notice the problem, if you need any help at all please let us know

MatthewEast

As far as I can see, System -> Administration -> Shared Folders satisfies completely the rationale and use cases of this spec. I'd recommend you add some use cases which you envisage your tool covering that isn't already covered by the default Ubuntu installation. Or maybe I have misunderstood the spec, in which case the purpose needs to be made a bit clearer.

BaishampayanGhose

Well, as far as I have noticed, that tool is very minimalistic and not much user-friendly. May be we can work on improving the UI of the current tool then?

AnteKaramatic

I agree with Matthew; I think we should expand Shared Folders tool and add (windows) printing capabilities (to gnome-cups-manager) for sharing printers (would like to help you with that). But Shared Folders is not very usable ATM and needs fixing

BaishampayanGhose

I agree with you guys. This spec was written just because the current tool is not very useful. How about using this tool's backend and completely rewriting the UI? We can also add printer management integration with this.

RobCaskey

Is there anything Ubuntu-specific about the enhancements you would like to make/see made?

Dyssident

shares-admin looks pretty serviceable. It already supports both nfs and smb shares. It needs a wizard (as layed out above) and configuration options for smbd. But perhaps the share editor and smbd configurator should be separate apps.


CategorySpec