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


Recommended Posts

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.

Expand  


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.

Expand  

 

 

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

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...

  • 3 months later...

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

  On 19/03/2020 at 18:11, 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...

Expand  

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
  On 14/07/2020 at 07:36, 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

Expand  

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

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

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.
  • Posts

    • Step 1. Order less Doordash/takeaway Step 2. Profit.
    • I have always found it funny when people think in Black and White. Windows is my choice of OS, and I understand it and somewhat like it. However, I don't blindly accept or like all of it. Heck, Windows 11 is a dogs breakfast, just as Win10 was, and basically Microsoft's past 10+ years of direction. Having said that, Linux certainly has its place. And while this isn't an attack on Linux, I think the people who blindly think Linux is the answer are just as bad as blinded Windows users, if not worse. Windows is attacked for being "basic" and "bland", as is MacOS in many situations. There's a good reason they are basic and bland, and its partly why they're so popular. They targeting a broad audience. People who use their PC as a tool for work and casual browsing, or right up to people who game or programming stuff. It also needs to be robust, and hard to break. Windows has come a long way with that since the 9x days, and while still has a few vulnerabilities, it's unlikely to be unusable or unstable by messing with some settings. I however managed to destroy the stability of a Ubuntu desktop within an hour (not deliberately, I was trying to get a custom UI), and struggled to recover from it just by changing a few settings. Stupid I know, but it was so easy to break. That is why Linux can't be mainstream in its current form.
    • I mean at this point, why even have a desktop? Just open a browser window full screen and send her to her homepage. Access to anything she needs right there. Could be on Linux, could be on Android, heck could also be on Windows 11. No one would know!
    • Will be replacing my last 2 Windows 10 PC's in household ASAP, if they could upgrade now i've done it already. Main Desktop runs Windows 11 already, that ones all set. Now just to get the other 2 all set asap
  • Recent Achievements

    • Reacting Well
      pelaird earned a badge
      Reacting Well
    • Mentor
      The Werewolf went up a rank
      Mentor
    • First Post
      Myriachan earned a badge
      First Post
    • Week One Done
      DrRonSr earned a badge
      Week One Done
    • Week One Done
      Sharon dixon earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      596
    2. 2
      ATLien_0
      212
    3. 3
      +FloatingFatMan
      169
    4. 4
      Michael Scrip
      152
    5. 5
      Som
      151
  • Tell a friend

    Love Neowin? Tell a friend!