Projects/pyv: Difference between revisions

From razwiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 34: Line 34:
fi
fi
</pre>
</pre>

Meanwhile I installed python-build from pyenv and used that to install python 3.11.1 to /usr/local in docker:

<pre>
root@1fcf7b43929e:/usr/local# history
1 apt
2 apt update
3 python3
4 git
5 apt install git
6 ls
7 cd home
8 ls
9 git clone https://github.com/pyenv/pyenv
10 cd pyenv/
11 ls
12 cd plugins/
13 ls
14 cd
15 cd -
16 cd python-build/
17 ls
18 cat install.sh
19 python-build
20* sh install.sh
21 python-build
22 python-build --definitions
23 python-build 3.11.1
24 ls /usr/local/bin/
25 python-build 3.11.1 /usr/local/bin/
26 sudo apt install curl
27 apt install curl
28 python-build 3.11.1 /usr/local/bin/
29 sudo apt install gcc
30 apt install gcc
31 python-build 3.11.1 /usr/local/bin/
32 apt install make
33 python-build 3.11.1 /usr/local/bin/
34 vi /tmp/python-build.20230119040508.13746.log
35 less /tmp/python-build.20230119040508.13746.log
36 sudo apt install zlib
37 apt install zlib
38 apt search zlib
39 less /tmp/python-build.20230119040508.13746.log
40 apt install zlib1g
41 apt install zlib1g-dev
42 python-build 3.11.1 /usr/local/bin/
43 python-build --help
44 python-build 3.11.1 /usr/local/bin/ --verbose
45 python
46 python3
47 apt install openssl
48 apt install libopenssl-dev
49 apt install libopenssl
50 apt install openssl-dev
51 apt install libssl-dev
52 apt install libreadline
53 apt install readline
54 apt install libreadline-dev
55 python-build 3.11.1 /usr/local/bin/ --verbose
56 apt search lzma
57 apt install lzma-dev
58 python-build 3.11.1 /usr/local/bin/ --verbose
59 python
60 python3
61 apt search libffi
62 apt install libffi-dev
63 python-build 3.11.1 /usr/local/bin/ --verbose
64 python3
65 python
66 cd /usr/local/bin/
67 ls
68 cd bin/
69 ls
70 cd ..
71 ls
72 rm -r bin/ include/ lib/ share/
73 cd ..
74 echo $PATH
75 python-build 3.11.1 /usr/local/ --verbose
76 python3
77 python
78 history
</pre>

That's a bit messy but it's got the right parts. Now just need a way to resolve the latest version, and the prototype of this script is pretty much done.

Revision as of 22:44, 18 January 2023

Ok so this is a project to make a python installer that works like this

> brew install pyv
> apt install pyv

Then

> pyv latest

will install the latest version of python.

Let's make a script called pyv.sh for starters

Here it is

#!/usr/bin/env bash

pyv_install() {
  echo do install here ver $1
}

pyv_list() {
  echo list versions
}

if test $# -eq 0; then
  echo "usage: pyv <version>"
else
  case "$1" in
    list) pyv_list $@; exit;;
    *) pyv_install "$1"; exit;;
  esac
fi

Meanwhile I installed python-build from pyenv and used that to install python 3.11.1 to /usr/local in docker:

root@1fcf7b43929e:/usr/local# history
    1  apt
    2  apt update
    3  python3
    4  git
    5  apt install git
    6  ls
    7  cd home
    8  ls
    9  git clone https://github.com/pyenv/pyenv
   10  cd pyenv/
   11  ls
   12  cd plugins/
   13  ls
   14  cd
   15  cd -
   16  cd python-build/
   17  ls
   18  cat install.sh
   19  python-build
   20* sh install.sh
   21  python-build
   22  python-build --definitions
   23  python-build 3.11.1
   24  ls /usr/local/bin/
   25  python-build 3.11.1 /usr/local/bin/
   26  sudo apt install curl
   27  apt install curl
   28  python-build 3.11.1 /usr/local/bin/
   29  sudo apt install gcc
   30  apt install gcc
   31  python-build 3.11.1 /usr/local/bin/
   32  apt install make
   33  python-build 3.11.1 /usr/local/bin/
   34  vi /tmp/python-build.20230119040508.13746.log
   35  less /tmp/python-build.20230119040508.13746.log
   36  sudo apt install zlib
   37  apt install zlib
   38  apt search zlib
   39  less /tmp/python-build.20230119040508.13746.log
   40  apt install zlib1g
   41  apt install zlib1g-dev
   42  python-build 3.11.1 /usr/local/bin/
   43  python-build --help
   44  python-build 3.11.1 /usr/local/bin/ --verbose
   45  python
   46  python3
   47  apt install openssl
   48  apt install libopenssl-dev
   49  apt install libopenssl
   50  apt install openssl-dev
   51  apt install libssl-dev
   52  apt install libreadline
   53  apt install readline
   54  apt install libreadline-dev
   55  python-build 3.11.1 /usr/local/bin/ --verbose
   56  apt search lzma
   57  apt install lzma-dev
   58  python-build 3.11.1 /usr/local/bin/ --verbose
   59  python
   60  python3
   61  apt search libffi
   62  apt install libffi-dev
   63  python-build 3.11.1 /usr/local/bin/ --verbose
   64  python3
   65  python
   66  cd /usr/local/bin/
   67  ls
   68  cd bin/
   69  ls
   70  cd ..
   71  ls
   72  rm -r bin/ include/ lib/ share/
   73  cd ..
   74  echo $PATH
   75  python-build 3.11.1 /usr/local/ --verbose
   76  python3
   77  python
   78  history

That's a bit messy but it's got the right parts. Now just need a way to resolve the latest version, and the prototype of this script is pretty much done.