You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Peter Valdemar Mørch <sw...@sneakemail.com> on 2004/10/09 08:46:09 UTC

Feature request(s) about svnserve?

Hi,

******************
   Request(s)
******************

* Allow configuration of umask and -r option for svnserve globally for 
all users on a server. E.g. in an optional configuration file under /etc

* document environment variable SVN_SSH_SVNSERVE in svnbook and 'man 
svnserve' (See thread "Using svn+ssh")

* At least SVN_SSH_SVNSERVE could be put in /etc/profile. But it still 
doesn't allow configuration of the umask. If environment variables are 
the way to go, then I request a -u, --umask option to svnserve that 
allows me to put the umask into SVN_SSH_SVNSERVE

I just want to use svn+ssh sanely without hacking files in /usr/bin or 
requiring pr. user settings (e.g. umask).

I see an issue "svnserve configuration"
http://subversion.tigris.org/issues/show_bug.cgi?id=1143
But it explicitly mentions daemon mode and questions tunnel mode (I use 
tunnel mode only), and the umask issue is not mentioned.

Which feature request(s) should I file / modify?

Unless I hear otherwise, I'll append most of this to 1143 and then file 
separate ones for the "-u, --umask option to svnserve" and documation 
request for SVN_SSH_SVNSERVE. OK?

Peter

******************
   Background
******************

In the svnbook, I see this example:
"svn list svn+ssh://host.example.com/repos/project"

How has host.example.com been configured to allow this?

To do this, svnserve must have an -r option. Also, in "The svn+ssh:// 
server checklist" in the svnbook, it is simply said that:

"Make sure that svnserve (/usr/local/bin/svnserve, or wherever it lives 
in $PATH) is actually a wrapper script which sets umask 002 and executes 
the real svnserve binary."

So, I've renamed svnserve to svnserve.real and then created a new svnserve:

#!/bin/bash
# Change this to reflect where your repository really is
repos=/home/svnrepos
umask 002
/usr/bin/svnserve.real -r $repos "$@"

It is nasty to have to rename a file from a standard package and create 
another file with the same name. But is there any other way to do this? 
Hence my request for a configuration file or some other way to configure 
this globally.


SVN_SSH_SVNSERVE:

In the "Using svn+ssh" thread, this came up. It isn't in the svnbook or 
in man svnserve 1.0.6...

export SVN_SSH_SVNSERVE="svnserve -r /var/scm"


-- 
Peter Valdemar Mørch
http://www.morch.com


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Feature request(s) about svnserve?

Posted by Marc Haisenko <ha...@webport.de>.
On Saturday 09 October 2004 10:46, Peter Valdemar Mørch wrote:
> Hi,
>
> ******************
>    Request(s)
> ******************
>
> * Allow configuration of umask and -r option for svnserve globally for
> all users on a server. E.g. in an optional configuration file under /etc

Yes, this would be a nice thing... telling people to write wrapper scripts 
that set the umask is not a Good Thing(tm), IMHO...

> * document environment variable SVN_SSH_SVNSERVE in svnbook and 'man
> svnserve' (See thread "Using svn+ssh")
>
> * At least SVN_SSH_SVNSERVE could be put in /etc/profile. But it still
> doesn't allow configuration of the umask. If environment variables are
> the way to go, then I request a -u, --umask option to svnserve that
> allows me to put the umask into SVN_SSH_SVNSERVE

Having SubVersion edit the /etc/profile is a no-no, this has to be left to the 
distributors and admins. This file is so important that SubVersion shouldn't 
edit it, and may be so complex that SubVersion can't edit it :-) 

> I just want to use svn+ssh sanely without hacking files in /usr/bin or
> requiring pr. user settings (e.g. umask).
>
> I see an issue "svnserve configuration"
> http://subversion.tigris.org/issues/show_bug.cgi?id=1143
> But it explicitly mentions daemon mode and questions tunnel mode (I use
> tunnel mode only), and the umask issue is not mentioned.
>
> Which feature request(s) should I file / modify?
>
> Unless I hear otherwise, I'll append most of this to 1143 and then file
> separate ones for the "-u, --umask option to svnserve" and documation
> request for SVN_SSH_SVNSERVE. OK?
>
> Peter
>
> ******************
>    Background
> ******************
>
> In the svnbook, I see this example:
> "svn list svn+ssh://host.example.com/repos/project"
>
> How has host.example.com been configured to allow this?

If you're logged in as user "foo" on your machine, then this line will allow 
you access if you have an account named "foo" on host.example.com which has 
read-access rights to /repos/project (and for which you have the password or 
set up public key SSH authentification).

> To do this, svnserve must have an -r option. Also, in "The svn+ssh://
> server checklist" in the svnbook, it is simply said that:
>
> "Make sure that svnserve (/usr/local/bin/svnserve, or wherever it lives
> in $PATH) is actually a wrapper script which sets umask 002 and executes
> the real svnserve binary."
>
> So, I've renamed svnserve to svnserve.real and then created a new svnserve:
>
> #!/bin/bash
> # Change this to reflect where your repository really is
> repos=/home/svnrepos
> umask 002
> /usr/bin/svnserve.real -r $repos "$@"

The "-r $repos" part is unnecessary, AFAIK. That's what you've already passed 
in the URL.

> It is nasty to have to rename a file from a standard package and create
> another file with the same name. But is there any other way to do this?
> Hence my request for a configuration file or some other way to configure
> this globally.
>
>
> SVN_SSH_SVNSERVE:
>
> In the "Using svn+ssh" thread, this came up. It isn't in the svnbook or
> in man svnserve 1.0.6...
>
> export SVN_SSH_SVNSERVE="svnserve -r /var/scm"

-- 
Marc Haisenko
Systemspezialist
Webport IT-Services GmbH
mailto: haisenko@webport.de

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org