• Sign in to Neowin Faster!

    Create an account on Neowin to contribute and support the site.

MX--Linux: preparing the installation of a Python-development environment. 

Recommended Posts

tarifa    2
Posted (edited)

dear experts - hello to you, 

 

i am currently preparing my Asus Notebook for the installation of a Python-development environment. 

 

the prelimininary things i do are the following tests and here is what i have encountered. 

 

note: i am on MX-Linux: 

 

martin@MartinsMX-Rechner:~
$ python --version
Python 2.7.13
martin@MartinsMX-Rechner:~
$ uname -a
Linux MartinsMX-Rechner 4.19.0-5-amd64 #1 SMP Debian 4.19.37-2~mx17+1 (2019-05-15) x86_64 GNU/Linux
martin@MartinsMX-Rechner:~
$ 


 

 

well - i guess that i have to 

 

- renew the python version

- have a closer look at the MX-version ( - actual version is 19.1

 

then i should do the following:  

 

to setup pipenv to run and work with Python.

 

i read the following docs: cf. python-guide.org/dev/virtualenvs/

 

Quote


Make sure you’ve got Python & pip
Before you go any further, make sure you have Python and that it’s available from your command line. You can check this by simply running:

$ python --version
You should get some output like 3.6.2. If you do not have Python, please install the latest 3.x version from python.org or
 refer to the Installing Python section of this guide.


the question is: How do I setup pipenv to use Python 3.6 when my system does not have python 3.6?

 

 

$ pipenv --python 2.7.1.3
Warning: python 2.7.1.3 was not found on your system…


You can specify specific versions of Python with:

 

  $ pipenv --python path/to/python

 

i guess - that i either sensu python-guide.org/dev/virtualenvs/ can work on the issues: 


- either i can manually write the version i need in the according Pipfile:

[requires]
python_version = "2.7.1.3"

 

Or i can install it on my system. But I guess we will need the version to be installed if we plan to actually run pipenv install.

therefore i think that i should go ahead and use pyenv sensu: https://github.com/pyenv/pyenv.

i think that i have to follow the installation instructions, then afterwards installing Python 2.7.1.3. is just a matter of 

 

pyenv install 2.7.1.3

Then i can set the order of preference with

pyenv global system 2.7.1.3

Besides, if pyenv is available, pipenv will automatically use it to install the required version. From the pipenv README: it says 

 

Automatically install required Pythons, if pyenv is available.

 

Quote


This does a user installation to prevent breaking any system-wide packages. If pipenv isn’t available in your shell after installation, you’ll need to add the user base’s binary directory to your PATH.
On Linux and macOS you can find the user base binary directory by running python -m site --user-base and adding bin to the end. For example, this will typically print ~/.local (with ~ expanded to the absolute path to your home directory) so you’ll need to add ~/.local/bin to your PATH. You can set your PATH permanently by modifying ~/.profile.
On Windows you can find the user base binary directory by running py -m site --user-site and replacing site-packages with Scripts. For example, this could return C:\Users\Username\AppData\Roaming\Python36\site-packages so you would need to set your PATH to include C:\Users\Username\AppData\Roaming\Python36\Scripts. You can set your user PATH permanently in the Control Panel. You may need to log out for the PATH changes to take effect.

 

 

Well - i am on MX-Linux and i want to set up the environment on a linux-machine.

 

what do you say...?

 

 

Look forward to hear from you
 

 

 

 

Edited by tarifa

Share this post


Link to post
Share on other sites
tarifa    2

hi there 

 

guess that i have messed up the system a bit - on a fresh mx 19.1 

 

 

 


Passwort: 
root@mx:/home/martin# 
root@mx:/home/martin# wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | sudo apt-key add -
OK
root@mx:/home/martin# 
root@mx:/home/martin# echo 'deb https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/repos/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list
deb https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/repos/debs/ vscodium main
root@mx:/home/martin# 
root@mx:/home/martin# sudo apt update && sudo apt install codium
OK:1 http://deb.debian.org/debian buster-updates InRelease
Ign:2 http://dl.google.com/linux/chrome/deb stable InRelease                                       
OK:3 http://ftp.halifax.rwth-aachen.de/mxlinux/packages/mx/repo buster InRelease                   
OK:4 http://deb.debian.org/debian buster InRelease                                                 
OK:5 http://deb.debian.org/debian-security buster/updates InRelease                                
OK:6 http://dl.google.com/linux/chrome/deb stable Release                                          
OK:7 https://packagecloud.io/AtomEditor/atom/any any InRelease                                     
Holen:9 https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/repos/debs vscodium InRelease [3.828 B]
Holen:10 https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/repos/debs vscodium/main amd64 Packages [603 B]
Es wurden 4.431 B in 5 s geholt (822 B/s).
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Aktualisierung für 49 Pakete verfügbar. Führen Sie »apt list --upgradable« aus, um sie anzuzeigen.
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
Die folgenden NEUEN Pakete werden installiert:
  codium
0 aktualisiert, 1 neu installiert, 0 zu entfernen und 49 nicht aktualisiert.
Es müssen 64,2 MB an Archiven heruntergeladen werden.
Nach dieser Operation werden 269 MB Plattenplatz zusätzlich benutzt.
Holen:1 https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/repos/debs vscodium/main amd64 codium amd64 1.43.1-1584565098 [64,2 MB]
Es wurden 64,2 MB in 45 s geholt (1.436 kB/s).                                                     
Vormals nicht ausgewähltes Paket codium wird gewählt.
(Lese Datenbank ... 335525 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von .../codium_1.43.1-1584565098_amd64.deb ...
Entpacken von codium (1.43.1-1584565098) ...
codium (1.43.1-1584565098) wird eingerichtet ...
Trigger für mime-support (3.62) werden verarbeitet ...
Trigger für desktop-file-utils (0.23-4) werden verarbeitet ...
root@mx:/home/martin# 
root@mx:/home/martin# python3 -m venv scrapingvenv
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/home/martin/scrapingvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

root@mx:/home/martin# ^C
root@mx:/home/martin# 
root@mx:/home/martin# python3 -m venv scrapingvenv
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/home/martin/scrapingvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

root@mx:/home/martin# 


you see - exactly in the last part - i have issues: 


martin@mx:~
$ python3 -m venv scrapingvenv
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/home/martin/scrapingvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

martin@mx:~
$ 


hmm -  ineed to have further investigations...

Share this post


Link to post
Share on other sites
Christopher Andreason    4

The process might go something like this:

 

$ cd ~
$ mkdir pythonroot
$ mkdir opt
$ mkdir app
$ cd opt
$ wget <python tarball>
$ tar -xvf <python tarball>
$ cd python-3.6
$ ./configure --prefix="$HOME"/pythonroot
$ make
$ make install
$ cd ~
$ cd app
$ virtualenv venv --python ~/pythonroot/bin/python
$ . venv/bin/activate
[venv]$ which python
/home/<user>/pythonroot/bin/python

Share this post


Link to post
Share on other sites
Nick H.    10,677
On 3/19/2020 at 7:11 PM, tarifa said:

you see - exactly in the last part - i have issues: 

 


martin@mx:~
$ python3 -m venv scrapingvenv
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/home/martin/scrapingvenv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

martin@mx:~
$ 

 


hmm -  ineed to have further investigations...

Perhaps I'm wrong, but that last part has it explained clearly. You need to write the following command:

sudo apt-get install python3-venv

Looking through all of your above posts here, I can't find one use of sudo before executing the command. Unless python3-venv is already installed on your machine?

 

With that said, I'm not an expert at Linux.

  • Like 1

Share this post


Link to post
Share on other sites
Christopher Andreason    4
Posted (edited)
6 hours ago, Christopher Andreason said:

The process might go something like this:

 

$ cd ~
$ mkdir pythonroot
$ mkdir opt
$ mkdir app
$ cd opt
$ wget <python tarball>
$ tar -xvf <python tarball>
$ cd python-3.6
$ ./configure --prefix="$HOME"/pythonroot
$ make
$ make install
$ cd ~
$ cd app
$ virtualenv venv --python ~/pythonroot/bin/python
$ . venv/bin/activate
[venv]$ which python
/home/<user>/pythonroot/bin/python

------------------------------------------------

suspect that python3 or python is not working properly and this is the cause of the problem

suspect that Node.js needs updating |which is needed for the codium to be used as intended

------------------------------------------------
Updating all packages (OS and other installed packages)
apt-get install update &&
apt-get install upgrade

Updating all packages (OS and other installed packages)
sudo apt update && sudo apt -y full-upgrade

------------------------------------------------
this works if python works normally?
------------------------------------------------

This will break scripts, but is exactly the way to change python. You should also rewrite the scripts to not assume python is 2.x. This will work regardless of the place where you call system or exec.

sudo mv / usr / bin / python / usr / bin / python2
sudo ln -s $ (which python3) / usr / bin / python

------------------------------------------------
python3 -m pip install --user --upgrade pip
python3 -m pip --version
python3 -m pip install --user virtualenv
python3 -m venv env

------------------------------------------------
sudo apt install python-pip
sudo apt install python3-venv python3-pip

this will work if python is working

------------------------------------------------

works for python3 and newer python versions

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

------------------------------------------------

for old python2.6
curl https://bootstrap.pypa.io/2.6/get-pip.py -o get-pip.py
python get-pip.py
------------------------------------------------
which python
which python3

------------------------------------------------
Check the execution path of python3 where it has libraries
which python3
which python

------------------------------------------------
open bash_profile file and add an alias
nano ~ / .bash_profile
alias python = '/ usr / local / bin / python3' or alias python = '/ usr / bin / python3'

python --version
------------------------------------------------

do these commands work?

------------------------------------------------

does this command work

------------------------------------------------

Python 2
sudo apt install python-pip
------------------------------------------------

Python 3
sudo apt install python3-venv python3-pip

------------------------------------------------

 

Node.js LTS (12.x)

# As root
curl -sL https://rpm.nodesource.com/setup_lts.x | bash -
apt-get install -y nodejs

 

# No root privileges 
curl -sL https://rpm.nodesource.com/setup_lts.x | sudo bash -
sudo apt-get install -y nodejs

 

Node.js Current (14.x)

# As root
curl -sL https://rpm.nodesource.com/setup_current.x | bash -
apt-get install -y nodejs

 

# No root privileges 
curl -sL https://rpm.nodesource.com/setup_current.x | sudo bash -
sudo apt-get install -y nodejs
 

 

 

Edited by Christopher Andreason
missed to change some things

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.