From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 6OsHKXl8OmU9vwAAauVa8A:P1 (envelope-from ) for ; Thu, 26 Oct 2023 16:49:29 +0200 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 6OsHKXl8OmU9vwAAauVa8A (envelope-from ) for ; Thu, 26 Oct 2023 16:49:29 +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 386DD52327 for ; Thu, 26 Oct 2023 16:49:29 +0200 (CEST) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=millwood.earth header.s=fm3 header.b=cBmsBtmF; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b="C 2LQ0x0"; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1698331769; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=qhYoNonXupirAs8eUXemYdRalrOGyHwJ0nD3oGkJFzk=; b=Z1D4Rm+7iFTsMXzR19828eKZzu/2CPicYkno2tz2U9a62Xo2IGUkvvLwm3kgoEO3ZWITVl YYASkQNuxUACicQK7YttoqD2xVUo3dieB8kZVpgvo+tmgusYo3wRWJsKMqqb5wGSyMXIYZ P9w5fwmMrtZOooAPQgXnTelpHq9Ko0SQ8GqRv0FWDt77gk/3fAeP74WBpFSrLxPF++hVRO soMSYlHR59zETkba6tUoVb7ddQzwcxFtSGvgr1jZ46iK7LJc2n1EyNcZLT30fgX5uxjrAL 8qSqcr1lAGhQp/1bvG5lx1gpebyUap1C0pDw6KZ8JnMPNskyljftwV1nhoIF9w== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=millwood.earth header.s=fm3 header.b=cBmsBtmF; dkim=fail ("headers rsa verify failed") header.d=messagingengine.com header.s=fm3 header.b="C 2LQ0x0"; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Seal: i=1; s=key1; d=yhetil.org; t=1698331769; a=rsa-sha256; cv=none; b=h6RHTbGIwePT31xkGPUIUXJKhJJ+Vn8h/ljSCUDSYFFWlI2j74QZUh/mXyieEVryvYpx4+ qbWvie6Er4OqGJ6XLzsmI1LvJbrC0/+ZFfPp7Btv4NJEgRw8id8mrZ5ab6UJ9JU06/MAJL mYdvRZOlNFwrLUJgphfXpLNwGKW4bYmXnhV5vcgsx04VGaw42wR06zJ5em6KbPzhj9oqFv 6joN5cutPB1qtIHL+c1EwVK4Vddb6vx9kzVKNE923PbnQbXNOmw8Ne0bRx9i7pOPLb4UJ3 QpxYgTEAkoUfxxFjTNLgXMLNl73p5VGrW8wXK74Zblavz5PYoTGMwli5GqigYg== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qw1fL-0005Yh-Hj; Thu, 26 Oct 2023 10:48:55 -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 1qw1fI-0005YV-SK for help-guix@gnu.org; Thu, 26 Oct 2023 10:48:52 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qw1fG-0002tK-G8 for help-guix@gnu.org; Thu, 26 Oct 2023 10:48:52 -0400 Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailout.nyi.internal (Postfix) with ESMTP id 9892E5C0264; Thu, 26 Oct 2023 10:48:46 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute7.internal (MEProxy); Thu, 26 Oct 2023 10:48:46 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=millwood.earth; h=cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to; s=fm3; t= 1698331726; x=1698418126; bh=qhYoNonXupirAs8eUXemYdRalrOGyHwJ0nD 3oGkJFzk=; b=cBmsBtmF7FlEcHvUn5YK9dKsN4wt/2oA9Uh6ZVqis9xEPTJ1CwN AnKINpiHwxhU7yr9xWDTD5yUvjOfB4PhM9BEgIflp1nbgdqX46ojZ2GisKFFiy/3 bwgvSweQ8qPiO4MHyvQQFpbDCgUnWuVjOzY5s7aahVGQRZRQv4nWSnR1XYlocyau 9Pz1mp0NZBAccsPSz+h0ao7mTO8Oy7pDCTdEA25Ddvc/mbPi0RT5CIxNwJFoW3/b Dn/If4drCoZQzSSEYW2IcGwWwJe5muI6U25rTIEF08g5LV6nA4iUdaMNhxpChbnW OMeREISUdLO6fYdP1XN+56fYRJJrVkm3yqA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1698331726; x= 1698418126; bh=qhYoNonXupirAs8eUXemYdRalrOGyHwJ0nD3oGkJFzk=; b=C 2LQ0x0sumI0PchIXDtd7n7rvG23QV50ZJdHc2kSDSoNVAG4ECMNcf/9UHkb5NmuL 2FaCtZ/bmj8aTrmbWhcfWK6RawPQmMeNeSSuWgMq5FnK2uV/Bn7iUQDXZJCDEt3o jfBk1liDL1vIgmp+PRGXwPeSUI0/h/FtWhnxBs63P+D6XHVNhuusl0074Hvt0svO gmF3dEt4paR7/po7yQnMgaE2dste1KnSHlVExDwfOVNB1HY4Zyz6slshv+O2bfpz PR225E5txFpohTd4nlT/P+mLF3uQ5URzR6PVDwZOM4jw48eGajzl9dJd2nCsCG0x gSxaG2u+IQqCRInYS0p/A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrledvgdekvdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecuogfuuhhsphgvtghtffhomhgrihhnucdlgeelmdenuc fjughrpefkffggfgfuvfhfhfgjtgfgsehtkeertddtvdejnecuhfhrohhmpeflvghsshgv uceouggvvhesmhhilhhlfihoohgurdgvrghrthhhqeenucggtffrrghtthgvrhhnpeejff ejgefgueelieduteejleejhfetueekveetvdevgfejiefgvdeuteduteeihfenucffohhm rghinhepghhithhhuhgsrdgtohhmpdhgihhthhhusgdrihhonecuvehluhhsthgvrhfuih iivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepuggvvhesmhhilhhlfihoohgurdgv rghrthhh X-ME-Proxy: Feedback-ID: idd094634:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 26 Oct 2023 10:48:46 -0400 (EDT) Message-ID: Date: Thu, 26 Oct 2023 10:48:45 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Using local package in shell manifest Content-Language: en-US To: Jesse , help-guix@gnu.org References: <6e04801a-dada-4dd2-a857-d58794eea478@millwood.earth> From: Jesse In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=66.111.4.29; envelope-from=dev@millwood.earth; helo=out5-smtp.messagingengine.com 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -2.19 X-Spam-Score: -2.19 X-Migadu-Queue-Id: 386DD52327 X-Migadu-Scanner: mx13.migadu.com X-TUID: 3e7HEi6pK0Bs Thanks Tomas, I plan to upstream it but there is some more development I'd like to try out first. If I put it in the manifest, is there some different syntax I need to use? I have been doing some searching and it seems like I would have to wrap the "(package ...)" expression in define-public and the use-module seems to be a bit different too? I am having trouble finding the distinction in the manual. On 10/26/23 10:16, Tomas Volf wrote: > On 2023-10-25 16:49:43 -0400, Jesse wrote: >> Hello, >> >> I have written a package that I have installed with "guix package >> --install-from-file=crosstool-ng.scm". I was able to get it to build and >> install. I can use it if I do "source ~/.guix-profile/etc/profile". >> >> However, I would like to add it to a shell manifest. My manifest just >> includes >> >> (specifications->manifest >>   (list "gcc" "git" "zsh" "crosstool-ng")) >> >> My understanding is that "specifications->manifest" is supposed to search >> for the packages in the list? It returns the following when I rung "guix >> shell" in the directory with the manifest.scm: >> >> guix shell: loading environment from >> '/home/jesse/Code/guix-tests/manifest.scm'... >> hint: Consider passing the `--check' option once to make sure your shell >> does not >> clobber environment variables. >> >> guix shell: error: crosstool-ng: unknown package >> guix shell: error: failed to load >> '/home/jesse/Code/guix-tests/manifest.scm': >> gnu/packages.scm:545:4: In procedure specification->package+output: >> Throw to key `quit' with args `(1)'. >> >> I'd imagine it doesn't know where to look for the package? Is there a way to >> tell guix shell where to look? If not, is there a way to include the package >> in the manifest file? For what it's worth, I have attached the package file >> in question. > I can think of few options: > > 0. If it would make sense to upstream the package, you should. That will solve > your problem. > > 1. Next you could create your own channel, and publish the package there. After > adding the channel, it should also just work. > > 2. You could load the package by an absolute path and use it that way, something > like this (untested): > > (concatenate-manifests > (list (specifications->manifest (list "gcc" "git" "zsh")) > (packages->manifest (list (load "/home/.../crosstool-ng.scm"))))) > > 3. Alternative of the above would be to move the package definition into the > manifest.scm itself, allowing you to drop the load invocation. > > Dunno, maybe there are better ways. > >> This is also my first foray into Guix and Guile, so I've been kind of >> banging my head through writing a package and the manual but I got a little >> stuck here. >> >> Thanks >> (use-modules >> (guix packages) >> (guix git-download) >> (guix licenses) >> (guix profiles) >> (guix build-system gnu) >> (guix build-system python) >> (guix build utils) >> (gnu packages python) >> (gnu packages autotools) >> (gnu packages gettext) >> (gnu packages texinfo) >> (gnu packages pkg-config) >> (gnu packages base) >> (gnu packages flex) >> (gnu packages gawk) >> (gnu packages man) >> (gnu packages bison) >> (gnu packages compression) >> (gnu packages ncurses) >> ) >> >> (package >> (name "crosstool-ng") >> (version "1.26.0") >> (source (origin >> (method git-fetch) >> (uri (git-reference >> (url "https://github.com/crosstool-ng/crosstool-ng.git") >> (commit (string-append "crosstool-ng-" version)))) >> (sha256 >> (base32 >> "04z7zwhxfbjqrd4j16lviilppsd8phwi8zv2rs4jpkmqni6856j1") >> ) >> )) >> (build-system gnu-build-system) >> (native-inputs >> (list autoconf >> automake >> gettext-minimal >> libtool >> texinfo >> bison >> flex >> gawk >> unzip >> which >> help2man >> python >> ncurses >> pkg-config)) >> (arguments >> '(#:phases (modify-phases %standard-phases >> (add-before 'bootstrap 'fix-version-gen >> (lambda* _ >> (patch-shebang "maintainer/git-version-gen") >> ))))) >> >> (synopsis "A versatile (cross-)toolchain generator.") >> (description "A versatile (cross-)toolchain generator.") >> (home-page "https://crosstool-ng.github.io/docs/") >> (license gpl2) >> ) > T. >