From owner-freebsd-ports@freebsd.org Sat Apr 6 14:18:18 2019 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 490E0155E6EC for ; Sat, 6 Apr 2019 14:18:18 +0000 (UTC) (envelope-from rde@tavi.co.uk) Received: from kipling.tavi.co.uk (kipling.tavi.co.uk [81.187.145.130]) by mx1.freebsd.org (Postfix) with ESMTP id B7A71818D8 for ; Sat, 6 Apr 2019 14:18:17 +0000 (UTC) (envelope-from rde@tavi.co.uk) Received: from kipling.tavi.co.uk (localhost [127.0.0.1]) by kipling.tavi.co.uk (Postfix) with ESMTP id 26D87D78BD for ; Sat, 6 Apr 2019 15:18:10 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=tavi.co.uk; h=date:from:to :subject:message-id:in-reply-to:references:mime-version :content-type:content-transfer-encoding; s=selector1; bh=wjnUoxM kbXkn0Cfu+w1cdBpWJSA=; b=Y+UiDsz5jBI1zEFwzTALYJjkpFWQG3QMEsVey0f vBYGwbSfPuKocywLtndYiDUEZDznSAMjqXmSYDZxUB5YDFINpe7ysLFXiprAyHhg SDfL8q7JAGgWvZ1SK8HWBCCytsLb7HYDAbVCveRvNwYtKIJLH86Y9ILz19dtrmT7 0rm8= Received: from raksha.tavi.co.uk (raksha.tavi.co.uk [81.187.145.139]) (Authenticated sender: rde@tavi.co.uk) by kipling.tavi.co.uk (Postfix) with ESMTPA id E6633D78C2 for ; Sat, 6 Apr 2019 15:18:09 +0100 (BST) Date: Sat, 6 Apr 2019 15:18:09 +0100 From: Bob Eager To: freebsd-ports@freebsd.org Subject: Re: How to use @preexec to test for installed packages Message-ID: <20190406151809.0eef6e41@raksha.tavi.co.uk> In-Reply-To: <16553fab-03af-9942-93e2-7ebb116487a9@fechner.net> References: <16553fab-03af-9942-93e2-7ebb116487a9@fechner.net> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.32; amd64-portbld-freebsd11.2) Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAMFBMVEUwXjFLc0vD0cS7y7zw9PDZ4tkWSRaVrZZ+m39qi2tXfVj////7+/utwK4IPggAOAAJUUA7AAABKklEQVQ4jWPYjQMwDFYJp0NKEKCNJmEf9h8CsimXiL2e33s3/e7F7K2Cs3f3dCMkQkMKj4YuCY3K3iR+e7fMaiSjvkX0/5cFGrWpe2uLzOpaExUVqMS/8PX/Re5ey960OLBTZpFA8+IlSBKPQ92zNyUUBsosN58uIY0k8f+/ONCoYytkVuhWzVwNkYiYbqk5M3NmOVBi41YZ8RsGF7shEtFb5KJ3r969CyixM7OTPeFUxG2IxLO8/9/SvqXlc+/x3h295YzLlj2nIRJQj//nRvc5TEIal8RsXBLVuCQwIgoq/u80DomP6HEOk/iOS+IJLonZOCT+ReOQ+Lkbh0QKLonbOCR+7MYhsRqHBJrVcIl/1TgklqKLQyQ+tGKIgyQOqXpjig94diZRAgAXmDX6jyWafAAAAABJRU5ErkJggg====== MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: B7A71818D8 X-Spamd-Bar: ------ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-6.99 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; NEURAL_HAM_SHORT(-0.99)[-0.995,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; REPLY(-4.00)[] X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 06 Apr 2019 14:18:18 -0000 On Sat, 6 Apr 2019 15:58:48 +0200 Matthias Fechner wrote: > Dear all, > > as pkg cannot handle CONFLICTS_INSTALL I tried now to implement this > as a preinstall command using @preexec in pkg-plist. > > The command should check if a package is installed and stop the > installation or continue if the package is not installed. > > I tried it with the following command: > @preexec `/usr/sbin/pkg -N info -e gogs`; if [ $? -eq 0 ]; then echo > "Gitlab cannot be installed together with gogs as both of them modify > .ssh/authorized_keys" && exit 1; else echo "Gogs not installed, > continue."; fi > > But it does not work. > Now matter if gogs is installed or not. > If I execute the same line in a shell script, it works fine. > > Anyone an idea? I think you'll find it has to be ONE command. So use && instead of the first semicolon.