From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Brooks Subject: Re: mariadb build fails "Failing test(s): main.mysqldump" Date: Tue, 22 Jan 2019 20:06:26 -0600 Message-ID: <20190122200550.2edd1357@mailbox.org> References: <20190106203542.0c1b2d9a@mailbox.org> <20190107230005.38f9dfc4@mailbox.org> <20190108211026.78843e1c@mailbox.org> <20190113222619.1e5e638d@mailbox.org> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([209.51.188.92]:33866) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gm7w9-0002HP-3T for help-guix@gnu.org; Tue, 22 Jan 2019 21:06:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gm7w5-0001v1-9G for help-guix@gnu.org; Tue, 22 Jan 2019 21:06:39 -0500 Received: from mx1.mailbox.org ([2001:67c:2050:104:0:1:25:1]:14402) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gm7vz-0001oA-TL for help-guix@gnu.org; Tue, 22 Jan 2019 21:06:33 -0500 Received: from smtp2.mailbox.org (smtp2.mailbox.org [80.241.60.241]) (using TLSv1.2 with cipher ECDHE-RSA-CHACHA20-POLY1305 (256/256 bits)) (No client certificate requested) by mx1.mailbox.org (Postfix) with ESMTPS id 3B6294B85E for ; Wed, 23 Jan 2019 03:06:20 +0100 (CET) Received: from smtp2.mailbox.org ([80.241.60.241]) by spamfilter03.heinlein-hosting.de (spamfilter03.heinlein-hosting.de [80.241.56.117]) (amavisd-new, port 10030) with ESMTP id mFt6QcxAYPx1 for ; Wed, 23 Jan 2019 03:06:18 +0100 (CET) In-Reply-To: <20190113222619.1e5e638d@mailbox.org> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org I've been able to figure out a workaround, by installing mariadb 10.1.33. Specifically, the version of 10.1.33 from commit "5b4d2e40f1b2097c1f1ea6d1a0e701a1908011d4" of the guix repository, which is from before mariadb was configured to run all the tests it does now. All of the later versions (except 10.1.34, which couldn't find the source file) errored during testing like 10.1.37 does, but not always the same test, it seems. I'll document the steps that ended up working below, in case anyone else is having this issue. First though, anyone who actually needs mariadb, instead of just needing it as a dependency for qt or some other package, probably shouldn't do this, since it does skip at least some of the tests, and thus probably isn't reliable for managing an actual database. First, cd to a directory you can work in, and clone the guix repo: "git clone https://git.savannah.gnu.org/git/guix.git" Next, cd into the repo: "cd guix" Now, tell git to go back to the commit we want: "git checkout 5b4d2e40f1b2097c1f1ea6d1a0e701a1908011d4 ." Make sure to include the " ." at the end, which tells git to checkout the files and directories in the current folder. If no folder is specified, nothing happens. Also, make sure that you're in the root of the guix repo when running that, as "." points to the current folder, and if that's not the root of the guix repo, things won't go as planned. Then, copy the databases.scm file to a temporary directory all on it's own, so we can tell guix to install that version of mariadb without it having to read every single old package from that commit: "mkdir ../guix-temp" "cp gnu/packages/databases.scm ../guix-temp/" "cd ../guix-temp" You should now be in a directory with only databases.scm, and nothing else. Next, tell guix to install mariadb 10.1.33, and where to find the file that defines version 10.1.33: "GUIX_PACKAGE_PATH=./ guix package --install mariadb@10.1.33" Guix will spit out some warnings about importing the same things multiple times and modules that aren't defined, but it should work fine. It will take a while to compile, though. Even my desktop took a few hours. Next, verify that mariadb 10.1.33 is indeed installed: "guix package --list-installed" If that completed successfully, you're almost done. If you try to install (or upgrade) something that eventually depends on mariadb, guix will still try to pull in the most recent version of mariadb. If, however, you tell it to install and also set GUIX_PACKAGE_PATH to the directory containing that databases.scm file, guix will accept mariadb 10.1.33, and will proceed to build the programs you're actually interested in. Obviously, you should occasionally try to upgrade without setting GUIX_PACKAGE_PATH, so that you can eventually get the latest mariadb whenever it starts working again, but until it starts working again at least you're not stuck unable to install anything that depends on qt or qmake or something.