From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 09C6B1381F3 for ; Tue, 10 Sep 2013 14:41:18 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 152E8E0B20; Tue, 10 Sep 2013 14:40:45 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 574E8E0B20 for ; Tue, 10 Sep 2013 14:40:44 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3B5D733EBD1 for ; Tue, 10 Sep 2013 14:40:43 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id B25F1E5467 for ; Tue, 10 Sep 2013 14:40:40 +0000 (UTC) From: "André Erdmann" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "André Erdmann" Message-ID: <1378823271.bfef26d7cf86185b1d15764e682a221431cce584.dywi@gentoo> Subject: [gentoo-commits] proj/R_overlay:master commit in: roverlay/ X-VCS-Repository: proj/R_overlay X-VCS-Files: roverlay/argparser.py roverlay/argutil.py X-VCS-Directories: roverlay/ X-VCS-Committer: dywi X-VCS-Committer-Name: André Erdmann X-VCS-Revision: bfef26d7cf86185b1d15764e682a221431cce584 X-VCS-Branch: master Date: Tue, 10 Sep 2013 14:40:40 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 84a80ac1-708d-45e9-8d4c-73c7a9a25fc0 X-Archives-Hash: 7646325a32d9973609b4353997412be9 commit: bfef26d7cf86185b1d15764e682a221431cce584 Author: André Erdmann mailerd de> AuthorDate: Tue Sep 10 14:27:51 2013 +0000 Commit: André Erdmann mailerd de> CommitDate: Tue Sep 10 14:27:51 2013 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=bfef26d7 misc argparser changes --- roverlay/argparser.py | 25 ++++++++++++++++--------- roverlay/argutil.py | 6 ++++++ 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/roverlay/argparser.py b/roverlay/argparser.py index c7be8f6..a08cf00 100644 --- a/roverlay/argparser.py +++ b/roverlay/argparser.py @@ -18,7 +18,8 @@ from roverlay.argutil import \ get_gid, is_gid, get_uid, is_uid, \ is_fs_dir, is_fs_dir_or_void, is_fs_file, \ is_fs_file_or_dir, is_fs_file_or_void, \ - is_config_opt, dirstr, dirstr_existing, couldbe_dirstr_existing, \ + is_config_opt, dirstr, dirstr_existing, \ + couldbe_dirstr_existing, couldbe_dirstr_existing_or_empty, \ ArgumentParserProxy @@ -497,14 +498,11 @@ class RoverlayArgumentParserBase ( roverlay.argutil.ArgumentParserProxy ): return self.setup_misc_minimal() # --- end of setup_misc (...) --- - def setup_setup_minimal ( self ): - assert os.sep == "/" - - arg = self.add_argument_group ( 'setup', title='setup options' ) + def setup_setup_minimal ( self, title='setup options' ): + arg = self.add_argument_group ( 'setup', title=title ) arg ( '--work-root', '-W', dest='work_root', - default="~/roverlay", flags=self.ARG_WITH_DEFAULT|self.ARG_META_DIR, type=couldbe_dirstr_existing, help=( @@ -514,24 +512,33 @@ class RoverlayArgumentParserBase ( roverlay.argutil.ArgumentParserProxy ): arg ( '--data-root', '-D', dest='data_root', - default="/usr/share/roverlay", flags=self.ARG_WITH_DEFAULT|self.ARG_META_DIR, type=couldbe_dirstr_existing, help='roverlay\'s static data (eclass, hook scripts,...)', ) arg ( - '--conf-root', '-C', dest='conf_root', - default="/etc/roverlay", + '--conf-root', dest='conf_root', flags=self.ARG_WITH_DEFAULT|self.ARG_META_DIR, type=couldbe_dirstr_existing, help='roverlay\'s config files (dependency rules,...)', ) + arg ( + '--conf-dir', '--my-conf-root', '-C', dest='private_conf_root', + flags=self.ARG_WITH_DEFAULT|self.ARG_META_DIR, + type=couldbe_dirstr_existing_or_empty, + help='private directory for config files (\'\' for --conf-root)', + ) return arg # --- end of setup_setup_minimal (...) --- + def parse_setup_minimal ( self ): + if not self.parsed.get ( 'private_conf_root', True ): + self.parsed ['private_conf_root'] = self.parsed ['conf_root'] + # --- end of parse_setup_minimal (...) --- + # --- end of RoverlayArgumentParserBase --- diff --git a/roverlay/argutil.py b/roverlay/argutil.py index d6ba97e..198ccda 100644 --- a/roverlay/argutil.py +++ b/roverlay/argutil.py @@ -146,6 +146,12 @@ def couldbe_dirstr_existing ( value ): "{!r} cannot be a directory.".format ( dstr ) ) +def couldbe_dirstr_existing_or_empty ( value ): + if not value: + return "" + else: + return couldbe_dirstr_existing ( value ) + class ArgumentParserError ( Exception ): pass