From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id uD2FIJ+LLmCFeAAA0tVLHw (envelope-from ) for ; Thu, 18 Feb 2021 15:45:35 +0000 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id 8HJiHJ+LLmBoKwAAbx9fmQ (envelope-from ) for ; Thu, 18 Feb 2021 15:45:35 +0000 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 C1AFB2ABF2 for ; Thu, 18 Feb 2021 16:45:34 +0100 (CET) Received: from localhost ([::1]:42076 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lClUj-0001kT-S7 for larch@yhetil.org; Thu, 18 Feb 2021 10:45:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:45500) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lClUX-0001ht-Df for help-guix@gnu.org; Thu, 18 Feb 2021 10:45:21 -0500 Received: from mail1.fsfe.org ([2001:aa8:ffed:f5f3::151]:48616) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lClUV-0003vO-6D for help-guix@gnu.org; Thu, 18 Feb 2021 10:45:21 -0500 From: Jelle Licht To: znavko@disroot.org, help-guix Subject: Re: How to use pip3 libs abcent in guix repo? In-Reply-To: References: Date: Thu, 18 Feb 2021 16:45:15 +0100 Message-ID: <86v9ap5qic.fsf@fsfe.org> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2001:aa8:ffed:f5f3::151; envelope-from=jlicht@fsfe.org; helo=mail1.fsfe.org X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=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.23 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" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -1.27 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=fsfe.org (policy=none); spf=pass (aspmx1.migadu.com: domain of help-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=help-guix-bounces@gnu.org X-Migadu-Queue-Id: C1AFB2ABF2 X-Spam-Score: -1.27 X-Migadu-Scanner: scn0.migadu.com X-TUID: lfHMrjcCuqsQ Hey Znavko, znavko--- via writes: > Hello, developers and users! > I wish to use python-binance, ta-lib, python-websocket-client, python-numpy as in this video https://youtu.be/GdlFhF6gjKo?t=713 (https://youtu.be/GdlFhF6gjKo?t=713) > Guix repository already has python-numpy, python-websocket-client packages, but others abcent. > > How can I use python libs downloading them from web without installation by guix pm? > Is there proper way to setup python libraries in my system, where to place it and how to link it? As a python 'noob' who started seriously playing around with it about a week ago, I might save you some hassle: It is really, really much easier to work with guix-managed dependencies; check out the guix pypi importer to see how this can work. If you do not want do that, for whichever reason, I can recommend using a virtualenv. Open a guix environment by issuing: `guix environment --ad-hoc python-pip python-virtualenv python-numpy python-websocket-client python' Note that it is important that the "python" package comes last in this invocation! In the spawned shell, run: --8<---------------cut here---------------start------------->8--- virtualenv -p python3 my-amazing-venv source my-amazing-venv/bin/activate pip3 install python-binance --8<---------------cut here---------------end--------------->8--- After that, but still in your `guix environment' + `source my-amazing-venv/bin/activate' shell, you should be able to verify that you can load up binance: `python3 -m binance' It won't complain about not finding the binance module, so in this case, no output = good news. Because all of this is a kind of terrible user experience, it might make sense to string all of this stuff together in a shell script. Again, I'd like to state that simply getting all of the packages you need packaged for guix (locally or in guix proper) makes all of this complexity go away. HTH, - Jelle