From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Marusich Subject: Re: Problem using multiple manifest files Date: Sat, 20 Oct 2018 12:53:34 -0700 Message-ID: <875zxwqts1.fsf@gmail.com> References: <878t3162vu.fsf@seashell.localdomain> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52450) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gDxJh-0001rH-5t for help-guix@gnu.org; Sat, 20 Oct 2018 15:53:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gDxJd-0001Fj-Vs for help-guix@gnu.org; Sat, 20 Oct 2018 15:53:45 -0400 Received: from mail-pg1-x52c.google.com ([2607:f8b0:4864:20::52c]:38135) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gDxJd-0001FF-MO for help-guix@gnu.org; Sat, 20 Oct 2018 15:53:41 -0400 Received: by mail-pg1-x52c.google.com with SMTP id f8-v6so17216217pgq.5 for ; Sat, 20 Oct 2018 12:53:41 -0700 (PDT) In-Reply-To: <878t3162vu.fsf@seashell.localdomain> (Mikhail Kryshen's message of "Sat, 13 Oct 2018 22:52:05 +0300") 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: Mikhail Kryshen Cc: help-guix@gnu.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Mikhail Kryshen writes: > (use-modules (srfi srfi-1) > ((guix ui) #:select (make-user-module))) > > (define (load-manifest file) > ;; Load manifest file in a fresh module with necessary imports. > (let ((module (make-user-module '((guix profiles) (gnu))))) > (save-module-excursion > (lambda _ > (set-current-module module) > (load (canonicalize-path file)))))) Neat example! But what is make-user-module doing, and is it necessary? I checked in the Guix source and found that this procedure uses the procedure make-fresh-user-module, which comes from the (ice-9 boot) module and is not documented in the Guile Reference manual. I stopped investigating when I checked the ice-9 source code and found that it did not contain an immediately helpful docstring or comment. It feels like maybe make-fresh-user-module ought to be documented in "(guile) Module System Reflection", but it isn't. Unfortunately, I don't have time right now to dig deeper. =2D-=20 Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEy/WXVcvn5+/vGD+x3UCaFdgiRp0FAlvLh78ACgkQ3UCaFdgi Rp2d1xAAggoj2rqSrOo0EHrVy/YYChW6LmYdAWd4YAAGlvoBtnNpxZBypcJ03MQu 4Z9gNAZgLqMfYMZBhwNaIgco4zyjq88TFHb3Y0h8Neo5jVDuiYITE9KhFDDlRat9 Xljd+QYr2Q0FC//RN66Eu+WI8HY1mU+6dzRCsaQbiTNRuenWF2HTiSc/APLH5BOQ nHTF0uDVRcLm2211wHNMpIfZZmC3kP0nv2KKH7vBn8wuyyneqFAjyWIKfyN72a7G awhyzpQp+6W7jpkN62VrKxBvjSrVeLfuyJoDovj8F6yyl9qkneziNaKqfuXktgVk DaiIr6IafDVkJ3euIWoYvJ6gXs+xMTgbHySfoSaanPbnIRkk7p/SF94h/2SEv5EF EpCgl9KJQBGhCHDgFjoq0QdoqRszdeyn8x/e5r+A7MU+KxfWVSU3tN+ZrkT5jWeY fAW0ZGPPxYbq2F2EuiAHneEubL7TEmqSlWRw/gR3zkQxhM7m4ZrZVIrWxvcPLfJV DkX9Ok/Yjiskf2TuaPczudTvveXApMsko6XnplDbdFPgKz97OggVHyYZsCXdLBJD avEDw3tbJmefNTXZOHwkChXozv8UUts6FLLuF3bbQDUFJm76kwnuJVyre+8yrNcZ dzgxgEFoPXrzM9zUj/xhLZyhIm6+RKwdmjL8oxjXuEn7woF86YE= =NwTu -----END PGP SIGNATURE----- --=-=-=--