From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id mCdjMoB97mQnPQEAauVa8A:P1 (envelope-from ) for ; Wed, 30 Aug 2023 01:21:36 +0200 Received: from aspmx1.migadu.com ([2001:41d0:306:2d92::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id mCdjMoB97mQnPQEAauVa8A (envelope-from ) for ; Wed, 30 Aug 2023 01:21:36 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id E251F3F3DB for ; Wed, 30 Aug 2023 01:21:35 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=riseup.net header.s=squak header.b=BCNx6JYo; dmarc=pass (policy=none) header.from=riseup.net; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1693351296; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=IRrRJ+e0N8OIDXtFgK/zD1ECMAKWp8c4uBQQ6PWoHo0=; b=a6XLL5d/r//HDuuaqdlwdpwEcqG/LDy7qb01/UQpD9bTTVRH0ngvJEEfkIUS8QuMr/CFZj jJJE6pnO2GSDyaDNguImV5Cy00uUE2TeTytT5p6FlJ0RtqNu50uAWYiK/l7jnzimhzGQ/B C/7Y+PUN+r+31fFplHXUe70vRcqdQ1nuluyIgj1Cb7ICnmQS8bP3qvlvTjIvRarA18yzkM x3eMxIEzAj5QlTpy747/xJwH45qW3V4ecx65Mwg12ZCWGIlvg0VeFS4O+dOZJwZ1qy5ioz hAU8n7PjyICyCrxDtEqHyu9Q9yTUqIQPBxDPQjwYfTHex+/ozRloFrTNRSTapA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1693351296; a=rsa-sha256; cv=none; b=imFdIYdq/XsvlrvhMG2zsVDXQKGk0rzhDbeRJ78NeKwpBRjY3+ZOnAdvQmg8BTQgLlR16l JFyedycIINMAZsvYRbO2A0KOev2jI7Z8tbE6y6UhJm1S6lW1Lvtrc8DQqHSNSSB4v2oTHu 8KxUdcOwyUj1J2A/7jvX0kmjAPML+je1VmTrttsBIrNykkpSFbQrN+N+6827WZYOjYxmjo XiVe3tOJnefI2DzxXxP0lD8fvfaP/am5rmUpyfPFbw6eN0ZAHC5Q+5li/i2oCtJXvx8gSY 45r87SBXFFBQb+OeK9V9BYppo6+kqx/WLjEkCl0ORpr6/6H80qglpeBMkKnZjw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=riseup.net header.s=squak header.b=BCNx6JYo; dmarc=pass (policy=none) header.from=riseup.net; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org" Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qb7mq-0000h7-Vm; Tue, 29 Aug 2023 19:06:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qb7Zc-0007zY-OI for guix-devel@gnu.org; Tue, 29 Aug 2023 18:52:37 -0400 Received: from mx1.riseup.net ([198.252.153.129]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qb7Za-00041W-3y for guix-devel@gnu.org; Tue, 29 Aug 2023 18:52:36 -0400 Received: from fews01-sea.riseup.net (fews01-sea-pn.riseup.net [10.0.1.109]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx1.riseup.net (Postfix) with ESMTPS id 4Rb2kR52bqzDqnj; Tue, 29 Aug 2023 22:52:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1693349551; bh=R2hdIY/6JvVT+UXlhI8ZzLRDrI2pO7KvBH7D0dkzxO0=; h=References:From:To:Cc:Subject:Date:In-reply-to:From; b=BCNx6JYoIDo2QqAjJdcGg0FNb0fyPcZepLgn2V4jkGhKAVCSAO2JSA5Z/7xJR3Nqr 0hJRtda/mP03nvvSigjc301LHLCXCKMDRAlUiyRgDY5BlMKitZ3Esmwy8MouztEkVn Lpd7ga69CZb24KqiFbncWqugWM9ePIhOr+8lAnm4= X-Riseup-User-ID: 1274D56477C1F4D02DF9A8066AAEC642FE308DC802A66A355ACAF73862766059 Received: from [127.0.0.1] (localhost [127.0.0.1]) by fews01-sea.riseup.net (Postfix) with ESMTPSA id 4Rb2kR085qzJntW; Tue, 29 Aug 2023 22:52:30 +0000 (UTC) References: <871qfsayyx.fsf@riseup.net> <87bketjj1f.fsf@gmail.com> From: Csepp To: Maxim Cournoyer Cc: Csepp , Katherine Cox-Buday , guix-devel@gnu.org Subject: Re: How can we decrease the cognitive overhead for contributors? Date: Wed, 30 Aug 2023 00:40:40 +0200 In-reply-to: <87bketjj1f.fsf@gmail.com> Message-ID: <87zg29jwb8.fsf@riseup.net> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=198.252.153.129; envelope-from=raingloom@riseup.net; helo=mx1.riseup.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -7.27 X-Spam-Score: -7.27 X-Migadu-Queue-Id: E251F3F3DB X-Migadu-Scanner: mx2.migadu.com X-TUID: t423Yyelt3OW Maxim Cournoyer writes: > Hi, > > Csepp writes: > > [...] > >> but as soon as something breaks, you are thrown into the deep end, >> having to dissect logs, bisect commit ranges, learn strace, gdb (which >> still doesn't work well on Guix) > > Hm? Why GDB on Guix may be sometimes more challenging than say, on > Fedora, I only know of one problem, that is related to grafts (see: #48907). > > For running binaries wrapped in shell script, I have this 'run-gdb' > wrapper which reads: > > --8<---------------cut here---------------start------------->8--- > #!/usr/bin/env bash > > wrapper=$(cat $(which $1)) > shift > . <(echo "$wrapper" | grep ^export) > binary=$(echo "$wrapper" | grep ^exec | grep -o -E '/gnu/store[^"]*') > gdb --args "$binary" "$@" > --8<---------------cut here---------------end--------------->8--- > > Hope that helps, Thanks, it does somewhat, but this is the kind of thing that should be either packaged in Guix, documented in the cookbook, or preferably fixed upstream. At the very least I try to document these helper Guix-specific helper scripts on the mailing list. I've asked where it would be appropriate to put them (cookbook, package, guix module, etc) but I don't think I got a response. This is exactly what I mean by core devs having their own scripts that others don't have an easy way to find and/or access. The other problem is the difficulty of accessing debug symbols. One problem is the need to recompile the package you need symbols for, the other is loading external symbols. The first is a CI issue as far as I know: all the debug outputs would take up too much space (probably). This may not be fixable in the short term without additional funding. The second is purely technical though. Maybe someone fixed it since the last time I tried to use GDB, but if not, it should be a priority IMHO. Guix packages often have bugs and we should do everything in our power to make fixing future problems easier, otherwise the project risks the death of a thousand cuts. This is why I chose to work on Mirage, to get a better understanding of the importer and cross-compilation tooling.