Hello about two years ago I tried updating python and something went very wrong. I am now trying to update my distro and I am running into a bunch of problems. I don't use this laptop often and I don't know Linux all to well. I have been checking the forums but so far nothing has solved my problem. I have gathered some information and I hope I have enough to properly relay my problem. It seems that perhaps the environment variable got deleted. It also appears I have multiple python versions installed and I tried to set aliases a few years back. But I clearly broke something because the terminal doesn't work and I can't update my ubuntu version.
Hopfully there is enough information below to help resolve my problem of trying to upgrade my distro version and getting python working again.
My ubuntu version
NAME="Ubuntu"
VERSION="18.04.6 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.6 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
Commands like python, python3, and xterm return Command not found
var\log\apt\term.log
Log started: 2023-08-28 12:04:52
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
y(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 614694 files and directories currently installed.)
Preparing to unpack .../0-python3-apt_1.6.6_amd64.deb ...
/var/lib/dpkg/info/python3-apt.prerm: 6: /var/lib/dpkg/info/python3-apt.prerm: py3clean: not found
dpkg: warning: old python3-apt package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/0-python3-apt_1.6.6_amd64.deb (--unpack):
new python3-apt package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-apt.postinst: 6: /var/lib/dpkg/info/python3-apt.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-apt package post-installation script subprocess returned error exit status 127
Preparing to unpack .../1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb ...
/var/lib/dpkg/info/python3-mako.prerm: 6: /var/lib/dpkg/info/python3-mako.prerm: py3clean: not found
dpkg: warning: old python3-mako package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb (--unpack):
new python3-mako package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-mako.postinst: 6: /var/lib/dpkg/info/python3-mako.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-mako package post-installation script subprocess returned error exit status 127
Preparing to unpack .../2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb ...
/var/lib/dpkg/info/python3-pil:amd64.prerm: 6: /var/lib/dpkg/info/python3-pil:amd64.prerm: py3clean: not found
dpkg: warning: old python3-pil:amd64 package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb (--unpack):
new python3-pil:amd64 package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-pil:amd64.postinst: 6: /var/lib/dpkg/info/python3-pil:amd64.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-pil:amd64 package post-installation script subprocess returned error exit status 127
Preparing to unpack .../3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb ...
/var/lib/dpkg/info/python3-pkg-resources.prerm: 6: /var/lib/dpkg/info/python3-pkg-resources.prerm: py3clean: not found
dpkg: warning: old python3-pkg-resources package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb (--unpack):
new python3-pkg-resources package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-pkg-resources.postinst: 6: /var/lib/dpkg/info/python3-pkg-resources.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-pkg-resources package post-installation script subprocess returned error exit status 127
y
Preparing to unpack .../4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb ...
/var/lib/dpkg/info/python3-problem-report.prerm: 6: /var/lib/dpkg/info/python3-problem-report.prerm: py3clean: not found
dpkg: warning: old python3-problem-report package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb (--unpack):
new python3-problem-report package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-problem-report.postinst: 6: /var/lib/dpkg/info/python3-problem-report.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-problem-report package post-installation script subprocess returned error exit status 127
Preparing to unpack .../5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb ...
/var/lib/dpkg/info/python3-protobuf.prerm: 6: /var/lib/dpkg/info/python3-protobuf.prerm: py3clean: not found
dpkg: warning: old python3-protobuf package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb (--unpack):
new python3-protobuf package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-protobuf.postinst: 6: /var/lib/dpkg/info/python3-protobuf.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-protobuf package post-installation script subprocess returned error exit status 127
Preparing to unpack .../6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb ...
/var/lib/dpkg/info/python3-uno.prerm: 6: /var/lib/dpkg/info/python3-uno.prerm: py3clean: not found
dpkg: warning: old python3-uno package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb (--unpack):
new python3-uno package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-uno.postinst: 6: /var/lib/dpkg/info/python3-uno.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-uno package post-installation script subprocess returned error exit status 127
Preparing to unpack .../7-python3-louis_3.5.0-1ubuntu0.5_all.deb ...
/var/lib/dpkg/info/python3-louis.prerm: 6: /var/lib/dpkg/info/python3-louis.prerm: py3clean: not found
dpkg: warning: old python3-louis package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/7-python3-louis_3.5.0-1ubuntu0.5_all.deb (--unpack):
new python3-louis package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-louis.postinst: 6: /var/lib/dpkg/info/python3-louis.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-louis package post-installation script subprocess returned error exit status 127
Errors were encountered while processing:
/tmp/apt-dpkg-install-awgn7N/0-python3-apt_1.6.6_amd64.deb
/tmp/apt-dpkg-install-awgn7N/1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb
/tmp/apt-dpkg-install-awgn7N/2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb
/tmp/apt-dpkg-install-awgn7N/3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb
/tmp/apt-dpkg-install-awgn7N/4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb
/tmp/apt-dpkg-install-awgn7N/5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb
/tmp/apt-dpkg-install-awgn7N/6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb
/tmp/apt-dpkg-install-awgn7N/7-python3-louis_3.5.0-1ubuntu0.5_all.deb
Log ended: 2023-08-28 12:04:56
Here is the history log around the time I broke it:
172 sudo apt install ruby-full
173 ruby --version\
174 ruby --version
175 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
176 sudo apt-get install build-essential
177 brew install gcc
178 echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /home/brittany/.profile
179 eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
180 brew install gcc
181 brew install sdl sdl_mixer sdl_sound sdl_tff
182 brew install sdl sdl_mixer sdl_sound sdl_ttf
183 pip3 install pygame
184 pip3 install pgzero
185 gedit ~/.bashrc export PATH=/home/brittany/.local/bin/:$PATH
186 gedit~/.bashrc export PATH=/home/brittany/.local/bin/:$PATH
187 gedit~/.bashrc
188 gedit ~/.bashrc
189 source ~/.bashrc
190 idel3
191 idel
192 idle
193 sudo apt update
194 python3
195 python3 --version
196 sudo add-apt-repository ppa:deadsnakes/ppa
197 sudo apt update
198 python3 --version
199 apt list | grep python3.10
200 sudo apt install python3
201 python3 --version
202 sudo apt install software-properties-common
203 sudo apt --only-upgrade install python3
204 sudo apt install python3.10
205 python3 --version
206 sudo nano /usr/bin/gnome-terminal
207 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
208 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2
209 sudo update-alternatives --config python3
210 python3 --version
211 pip
212 sudo apt remove --purge python3-apt
213 sudo apt autoclean
214 sudo apt install python3-apt
215 pip
216 sudo apt install python3.10-distutils
217 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
218 sudo python3.10 get-pip.py
219 sudo apt install curl
220 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
221 sudo python3.10 get-pip.py [B
222 IDLE
223 python
224 python3
225 idle3.10
226 idle3
227 sudo apt install idle
228 sudo apt install idle3
229 idle3
230 idle
231 idle3
232 python3
233 idle
234 idle3
235 dpkg -L idle3
236 sudo apt-get install idle-python3.10
list of installed python versions
ls /usr/bin/python*
/usr/bin/python
/usr/bin/python3
/usr/bin/python3.10
/usr/bin/python3.6
/usr/bin/python3.6m
/usr/bin/python3m
Here is the $PATH
echo $PATH
/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/home/brittany/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
.bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
var\log\apt\term.log when trying to remove python3.10
Log started: 2023-08-28 14:43:48
(Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 614694 files and directories currently installed.)
Preparing to unpack .../python3-apt_1.6.6_amd64.deb ...
/var/lib/dpkg/info/python3-apt.prerm: 6: /var/lib/dpkg/info/python3-apt.prerm: py3clean: not found
dpkg: warning: old python3-apt package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /var/cache/apt/archives/python3-apt_1.6.6_amd64.deb (--unpack):
new python3-apt package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-apt.postinst: 6: /var/lib/dpkg/info/python3-apt.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-apt package post-installation script subprocess returned error exit status 127
Preparing to unpack .../python3-pil_5.1.0-1ubuntu0.8_amd64.deb ...
/var/lib/dpkg/info/python3-pil:amd64.prerm: 6: /var/lib/dpkg/info/python3-pil:amd64.prerm: py3clean: not found
dpkg: warning: old python3-pil:amd64 package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /var/cache/apt/archives/python3-pil_5.1.0-1ubuntu0.8_amd64.deb (--unpack):
new python3-pil:amd64 package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-pil:amd64.postinst: 6: /var/lib/dpkg/info/python3-pil:amd64.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-pil:amd64 package post-installation script subprocess returned error exit status 127
Preparing to unpack .../python3-problem-report_2.20.9-0ubuntu7.29_all.deb ...
/var/lib/dpkg/info/python3-problem-report.prerm: 6: /var/lib/dpkg/info/python3-problem-report.prerm: py3clean: not found
dpkg: warning: old python3-problem-report package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /var/cache/apt/archives/python3-problem-report_2.20.9-0ubuntu7.29_all.deb (--unpack):
new python3-problem-report package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-problem-report.postinst: 6: /var/lib/dpkg/info/python3-problem-report.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-problem-report package post-installation script subprocess returned error exit status 127
Preparing to unpack .../python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb ...
/var/lib/dpkg/info/python3-uno.prerm: 6: /var/lib/dpkg/info/python3-uno.prerm: py3clean: not found
dpkg: warning: old python3-uno package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /var/cache/apt/archives/python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb (--unpack):
new python3-uno package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-uno.postinst: 6: /var/lib/dpkg/info/python3-uno.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-uno package post-installation script subprocess returned error exit status 127
Preparing to unpack .../python3-louis_3.5.0-1ubuntu0.5_all.deb ...
/var/lib/dpkg/info/python3-louis.prerm: 6: /var/lib/dpkg/info/python3-louis.prerm: py3clean: not found
dpkg: warning: old python3-louis package pre-removal script subprocess returned error exit status 127
dpkg: trying script from the new package instead ...
/var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found
dpkg: error processing archive /var/cache/apt/archives/python3-louis_3.5.0-1ubuntu0.5_all.deb (--unpack):
new python3-louis package pre-removal script subprocess returned error exit status 127
/var/lib/dpkg/info/python3-louis.postinst: 6: /var/lib/dpkg/info/python3-louis.postinst: py3compile: not found
dpkg: error while cleaning up:
installed python3-louis package post-installation script subprocess returned error exit status 127
Errors were encountered while processing:
/var/cache/apt/archives/python3-apt_1.6.6_amd64.deb
Log ended: 2023-08-28 14:43:51