From e4293652d5b2a80725e6f83843f91364e19ba199 Mon Sep 17 00:00:00 2001 From: Gunnar Wrobel Date: Tue, 11 Sep 2007 05:53:25 +0000 Subject: Import layman. --- overlays/mercurial.py | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 overlays/mercurial.py (limited to 'overlays/mercurial.py') diff --git a/overlays/mercurial.py b/overlays/mercurial.py new file mode 100644 index 0000000..3def5fc --- /dev/null +++ b/overlays/mercurial.py @@ -0,0 +1,64 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +################################################################################# +# LAYMAN MERCURIAL OVERLAY HANDLER +################################################################################# +# File: darcs.py +# +# Handles darcs overlays +# +# Copyright: +# (c) 2005 - 2006 Gunnar Wrobel, Andres Loeh +# Distributed under the terms of the GNU General Public License v2 +# +# Author(s): +# Gunnar Wrobel +# Andres Loeh +# +''' Mercurial overlay support.''' + +__version__ = "$Id: mercurial.py 236 2006-09-05 20:39:37Z wrobel $" + +#=============================================================================== +# +# Dependencies +# +#------------------------------------------------------------------------------- + +from layman.utils import path +from layman.overlays.overlay import Overlay + +#=============================================================================== +# +# Class MercurialOverlay +# +#------------------------------------------------------------------------------- + +class MercurialOverlay(Overlay): + ''' Handles mercurial overlays.''' + + type = 'Mercurial' + + binary_command = '/usr/bin/hg' + + def add(self, base): + '''Add overlay.''' + + self.supported() + + return self.cmd(self.binary_command + ' clone "' + self.src + '/" "' + + path([base, self.name]) + '"') + + def sync(self, base): + '''Sync overlay.''' + + self.supported() + + return self.cmd('cd "' + path([base, self.name]) + '" && ' + + self.binary_command + ' pull -u "' + self.src + '"') + + def supported(self): + '''Overlay type supported?''' + + return Overlay.supported(self, [(self.binary_command, 'mercurial', + 'dev-util/mercurial'),]) -- cgit v1.2.3-1-g7c22