aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatarChristoph Goehre <christoph.goehre@gmx.de>2009-07-24 13:36:42 +0200
committerLibravatarChristoph Goehre <christoph.goehre@gmx.de>2009-07-30 14:15:26 +0200
commitf44c4e1c5ddb6f31644335df1c0ae6f91d189a20 (patch)
tree114d0f6cf66e399233cee818fb42593537511c96
parent039b7334e510ea2ee02847b73746cba214b89c7b (diff)
downloadmini-dinstall-f44c4e1c5ddb6f31644335df1c0ae6f91d189a20.tar.bz2
mini-dinstall-f44c4e1c5ddb6f31644335df1c0ae6f91d189a20.tar.xz
mini-dinstall-f44c4e1c5ddb6f31644335df1c0ae6f91d189a20.tar.zst
allow to disable chmod on incoming
If you share a repository with a group, it may be possible you are not allowed to change permission on incoming. Setting incoming_permissions to zero will disable this chmod. Closes: #535558
-rw-r--r--doc/mini-dinstall.14
-rw-r--r--doc/mini-dinstall.conf2
-rwxr-xr-xmini-dinstall2
3 files changed, 7 insertions, 1 deletions
diff --git a/doc/mini-dinstall.1 b/doc/mini-dinstall.1
index 5973a29..d8df2e9 100644
--- a/doc/mini-dinstall.1
+++ b/doc/mini-dinstall.1
@@ -119,7 +119,9 @@ Additional GnuPG keyrings to use for signature verification.
.TP
.B incoming_permissions
The permissions for the \fIincoming\fR directory. \fBmini\-dinstall\fR will
-attempt to set the directory's permissions at startup. Defaults to 0750.
+attempt to set the directory's permissions at startup. A value of zero (\''0\''
+or \''0000\'') will disable permission setting. Doing this, you MUST set
+permission for incoming by hand! Defaults to 0750.
.TP
.B keyrings
GnuPG keyrings to use for signature verification of changes files. Setting this
diff --git a/doc/mini-dinstall.conf b/doc/mini-dinstall.conf
index 0c8d372..6c1e022 100644
--- a/doc/mini-dinstall.conf
+++ b/doc/mini-dinstall.conf
@@ -40,6 +40,8 @@ extra_keyrings = ~/.gnupg/pubring.gpg, ~/.gnupg/other.gpg
# The permissions for the incoming directory. If you want to use
# mini-dinstall for a group of people, you might want to make this
# more permissive.
+# A value of zero ('0' or '0000') will disable the permission setting on every
+# mini-dinstall run. Doing this, you MUST set permission for incoming by hand.
incoming_permissions = 0750
### The remaining options can also be specified in a per-distribution
diff --git a/mini-dinstall b/mini-dinstall
index 6261934..9359fa5 100755
--- a/mini-dinstall
+++ b/mini-dinstall
@@ -173,6 +173,8 @@ def do_rename(source, target):
do_and_log('Renaming "%s" to "%s"' % (source, target), os.rename, source, target)
def do_chmod(name, mode):
+ if mode == 0:
+ return
do_and_log('Changing mode of "%s" to %o' % (name, mode), os.chmod, name, mode)
logger.setLevel(logging.DEBUG)