Date: Sat, 6 Apr 2019 15:18:09 +0100 From: Bob Eager <rde@tavi.co.uk> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 6 Apr 2019 15:58:48 +0200 Matthias Fechner <idefix@fechner.net> 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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190406151809.0eef6e41>