Categories
Linux Review

Review: Don’t Use Microsoft Teams Preview in Ubuntu 20.04 as of May 2020 until bugs are fixed.

So I have been using teams regularly on Ubuntu 20.04. Things that I noticed were:

  • Mid-call crashes
  • Worst call quality (I could hear the electrons around the atoms)
  • Not being able to find the buttons to control screen (expecting in future)
  • Caused a Mergelist corruption when running apt-get update

TL;DR; I had to UNINSTALL MICROSOFT TEAMS. And I’ll suggest not using teams until it is no longer in Preview

BUT!

This is not why I am posting this. The reason I am posting this is because it messed with my Ubuntu 20.04 system.

I saw a red warning symbol in my notification that said that I was not able to update my system.

apt-get update could not work. Upon inspection, I found this:

codeonion@codeonion-ThinkPad-P50:~$ sudo apt-get update
[sudo] password for codeonion: 
Hit:1 http://ppa.launchpad.net/lutris-team/lutris/ubuntu focal InRelease
Hit:2 http://dl.google.com/linux/chrome/deb stable InRelease                                                                                                                            
Hit:3 http://security.ubuntu.com/ubuntu focal-security InRelease                                                                                                                        
Hit:4 http://ppa.launchpad.net/stebbins/handbrake-releases/ubuntu focal InRelease                                                                                                       
Hit:5 http://pk.archive.ubuntu.com/ubuntu focal InRelease                                                                                                                               
Hit:6 http://packages.microsoft.com/repos/vscode stable InRelease                                                                                                                       
Hit:7 http://pk.archive.ubuntu.com/ubuntu focal-updates InRelease                                                                                                                       
Hit:8 https://dl.winehq.org/wine-builds/ubuntu focal InRelease                                                                                                                          
Hit:9 https://download.sublimetext.com apt/stable/ InRelease                                                                                                         
Hit:10 http://pk.archive.ubuntu.com/ubuntu focal-backports InRelease                                           
Hit:11 https://packages.microsoft.com/ubuntu/18.04/mssql-server-2019 bionic InRelease    
Hit:12 https://packages.microsoft.com/ubuntu/18.04/prod bionic InRelease
Hit:13 https://packages.microsoft.com/ubuntu/19.10/prod eoan InRelease
Hit:14 https://packages.microsoft.com/repos/ms-teams stable InRelease
Hit:15 https://dbeaver.io/debs/dbeaver-ce  InRelease
Reading package lists... Error!
E: Malformed Description-md5 line; doesn't have the required length (32 != 33) '"129fb0c:f9aeae8e8d848457773b5c4e'
E: Malformed Description-md5 line; doesn't have the required length (32 != 33) '"129fb0c:f9aeae8e8d848457773b5c4e'
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/pk.archive.ubuntu.com_ubuntu_dists_focal_universe_i18n_Translation-en
E: The package lists or status file could not be parsed or opened.

Mergelist problem

E: Malformed Description-md5 line; doesn't have the required length (32 != 33) '"129fb0c:f9aeae8e8d848457773b5c4e'
E: Malformed Description-md5 line; doesn't have the required length (32 != 33) '"129fb0c:f9aeae8e8d848457773b5c4e'
E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/pk.archive.ubuntu.com_ubuntu_dists_focal_universe_i18n_Translation-en

The following had to be done to fix this

sudo rm -r /var/lib/apt/lists/*
sudo mkdir /var/lib/apt/lists/partial
sudo apt-get update

It worked partially but apt-get update still gave me a Mergelist problem.

So I had to UNINSTALL MICROSOFT TEAMS

Then, when I ran

sudo rm -r /var/lib/apt/lists/*
sudo mkdir /var/lib/apt/lists/partial
sudo apt-get update

The system got back on its feet, the warning notification disappeared. Looks like until it is in preview, I’ll stick to using Teams on the web only.

Special Thanks to this Gist. @d2s, you are a lifesaver.

Categories
Linux Programming Ruby Shell Script (BASH)

How to Install Ruby 2.7.1 and Rails 6.0.0 in Ubuntu 20.04 Focal Fossa with bash shell script

Ruby logo
Ruby
Ubuntu 20.04 LTS Focal Fossa
Ubuntu 20.04 LTS Focal Fossa

In this post, rbenv is used to install Rails6.0.0 and Ruby2.7.1

First, update your packages

sudo apt-get update

Then Install these prerequisites

sudo apt-get install git -y
sudo apt-get install gcc -y

sudo apt-get install autoconf -y
sudo apt-get install bison  -y
sudo apt-get install build-essential  -y
sudo apt-get install libssl-dev  -y
sudo apt-get install libyaml-dev  -y
sudo apt-get install libreadline6-dev  -y
sudo apt-get install zlib1g-dev  -y
sudo apt-get install libncurses5-dev  -y
sudo apt-get install libffi-dev  -y
sudo apt-get install libgdbm6  -y
sudo apt-get install libgdbm-dev  -y
sudo apt-get install libdb-dev  -y
PackageDescription
GitGit is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
GccFor Compilation
autoconfAn automatic configure script builder
bisonA general-purpose parser generator that converts a grammar description for an LALR(1) context-free grammar into a C program to parse that grammar.
build-essential
libsslSecure Sockets Layer toolkit
libyamlA C library for parsing and emitting YAML
libreadline6GNU readline and history libraries, run-time libraries
zlib1gA runtime compression library
libncurses5This is shared libraries for terminal handling
libffiA module to check availability of a library for FFI
libgdbm6GNU dbm database routines
libgdbmGNU dbm database routines
libdbBerkeley Database Libraries for C++
These Prerequisites are now installed your System

Next, we install rbenv itself

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build

Install your desired version if ruby

rbenv install 2.7.1

Make the installed version of ruby Global so it can be used everywhere

rbenv global 2.7.1

Finally install Rails 6.0.0 or any supported version you desire and then check its version

gem install bundler -v 2.1.4

ruby -v

gem install rails -v 6.0.0
rails -v

Here is the complete shell script.

#!/bin/bash
sudo apt-get update
echo "--------------"
echo "Prerequisites"
echo "Get updated  Rails prerequisites from https://github.com/rbenv/ruby-build/wiki#suggested-build-environment"
echo "--------------"
sudo apt-get install git -y
sudo apt-get install gcc -y

sudo apt-get install autoconf -y
sudo apt-get install bison  -y
sudo apt-get install build-essential  -y
sudo apt-get install libssl-dev  -y
sudo apt-get install libyaml-dev  -y
sudo apt-get install libreadline6-dev  -y
sudo apt-get install zlib1g-dev  -y
sudo apt-get install libncurses5-dev  -y
sudo apt-get install libffi-dev  -y
sudo apt-get install libgdbm6  -y
sudo apt-get install libgdbm-dev  -y
sudo apt-get install libdb-dev  -y

echo "--------------"
echo "Installing Ruby using rbenv along with its setup"
echo "--------------"

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build


rbenv install 2.7.1
rbenv global 2.7.1

gem install bundler -v 2.1.4

ruby -v

gem install rails -v 6.0.0
rails -v

Furthermore, to uninstall a specific version of Ruby, you can do this

rbenv uninstall 2.7.1