Rhel 8 Setup

Posted by Datahawk blog on June 1, 2021

RHEL 8 setup

install snaps on RHEL8

1
2
3
4
5
6
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && \
sudo dnf upgrade && \
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" && \
sudo yum update && \
sudo yum install snapd && \
sudo systemctl enable --now snapd.socket \

install intellij with snaps on RHEL8

1
sudo snap install intellij-idea-ultimate --classic

install epel repo

1
2
3
dnf -y install dnf-plugins-core
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
dnf config-manager --set-enabled PowerTools && \

install snaps on RHEL8

1
2
3
4
5
6
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && \
sudo dnf upgrade && \
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" && \
sudo yum update && \
sudo yum install snapd && \
sudo systemctl enable --now snapd.socket \

install snaps on RHEL8

1
2
3
4
5
6
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && \
sudo dnf upgrade && \
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" && \
sudo yum update && \
sudo yum install snapd && \
sudo systemctl enable --now snapd.socket \

install intellij with snaps on RHEL8

1
sudo snap install intellij-idea-ultimate --classic

Setup multicast DNS with Stubby RHEL/CENTOS 8

disable SELINUX and Firewalld RH/Centos

1
2
3
4
5
sudo setenforce 0 && \
sudo systemctl stop firewalld ;\
sudo systemctl disable firewalld ;\
sudo sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config && \
cat /etc/selinux/config | grep SELINUX=disabled | grep -v ^#

multicast DNS with Stubby and avahi RH/Centos

1
2
3
4
5
6
7
8
9
10
sudo dnf install nss-mdns && \
sudo systemctl enable avahi-daemon && \
sudo systemctl start avahi-daemon && \
sudo sudo systemctl disable systemd-resolved && \
sudo systemctl stop systemd-resolved && \
sudo yum install stubby && \
sudo systemctl enable stubby && \
sudo systemctl start stubby && \
echo "nameserver 127.0.0.1" | sudo tee /etc/resolv.conf && \
sudo chattr +i /etc/resolv.conf

Install VScode on RHEL and Ubuntu

install vscode on rhel 8

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
rpm --import https://packages.microsoft.com/keys/microsoft.asc && \
cat >/etc/yum.repos.d/vscode.repo <<<'[code]
name=Visual Studio Code
baseurl=https://packages.microsoft.com/yumrepos/vscode
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc
' &&
cat /etc/yum.repos.d/vscode.repo && \
sudo dnf install code

ext install CoenraadS.bracket-pair-colorizer
ext install dbaeumer.vscode-eslint
ext install streetsidesoftware.code-spell-checker
ext install Shan.code-settings-sync
ext install esbenp.prettier-vscode
ext install PKief.material-icon-theme
ext install christian-kohler.path-intellisens
ext install auchenberg.vscode-browser-preview
ext install eamodio.gitlens
ext install eg2.vscode-npm-script

ext install HookyQR.beautify

install oh my zsh on RHEL8

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
sudo apt-get update && \
sudo apt install wget curl git -y && \
sudo apt-get install zsh -y &&  \
sudo chsh -s /usr/bin/zsh servidc && \
echo $SHELL && \
sh -c "$(curl -fsSLk https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Bold/complete/Fira%20Code%20Bold%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Light/complete/Fira%20Code%20Light%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Medium/complete/Fira%20Code%20Medium%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Regular/complete/Fira%20Code%20Regular%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/Retina/complete/Fira%20Code%20Retina%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
wget https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/FiraCode/SemiBold/complete/Fira%20Code%20SemiBold%20Nerd%20Font%20Complete%20Mono.ttf -P ~/.local/share/fonts && \
git --version && \
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k && \
sed -i 's/ZSH_THEME="[^"]*/ZSH_THEME="powerlevel10k\/powerlevel10k/g' .zshrc

p10k configure
cd ~/.oh-my-zsh/plugins/
ls -a
$ vim ~/.zshrc
plugins=(git extract web-search yum git-extras docker vagrant)



sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
vi ~/.zshrc
ZSH_THEME="powerlevel10k/powerlevel10k"
p10k configure
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
sudo gem install colorls
vi ~/.zshrc
plugins=( git zsh-syntax-highlighting zsh-autosuggestions )
alias ls="colorls"
alias la="colorls -al"

install vscode on rhel 8

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
rpm --import https://packages.microsoft.com/keys/microsoft.asc && \
cat >/etc/yum.repos.d/vscode.repo <<<'[code]
name=Visual Studio Code
baseurl=https://packages.microsoft.com/yumrepos/vscode
enabled=1
gpgcheck=1
gpgkey=https://packages.microsoft.com/keys/microsoft.asc
' &&
cat /etc/yum.repos.d/vscode.repo && \
sudo dnf install code

ext install CoenraadS.bracket-pair-colorizer
ext install dbaeumer.vscode-eslint
ext install streetsidesoftware.code-spell-checker
ext install Shan.code-settings-sync
ext install esbenp.prettier-vscode
ext install PKief.material-icon-theme
ext install christian-kohler.path-intellisens
ext install auchenberg.vscode-browser-preview
ext install eamodio.gitlens
ext install eg2.vscode-npm-script

ext install HookyQR.beautify

install snaps on RHEL8

1
2
3
4
5
6
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm && \
sudo dnf upgrade && \
sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" && \
sudo yum update && \
sudo yum install snapd && \
sudo systemctl enable --now snapd.socket \

install intellij with snaps on RHEL8

1
sudo snap install intellij-idea-ultimate --classic

webssh2

1
2
3
4
5
6
7
8
9
10
11
bash << EOF
if !-e ~/bin && mkdir ~/bin || echo "could not create installation directory"
cd && ~/bin && git clone https://github.com/servidc/webssh2.git || echo "could not clone we"


git clone https://github.com/servidc/webssh2.git && \
cd webssh2/app && \
npm install --production && \
npm audit fix && \
npm start && \
echo "done"

run webssh2

1
2
3
4
5
6
7
8
9
cd ~/bin/webssh2/app && npm start


```bash=
sudo ln -s /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 /usr/lib/x86_64-linux-gnu/libgstreamer-0.10.so.0

sudo ln -s /usr/lib/x86_64-linux-gnu/libgstapp-1.0.so.0 /usr/lib/x86_64-linux-gnu/libgstapp-0.10.so.0

sudo ln -s /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 /usr/lib/x86_64-linux-gnu/libgstbase-0.10.so.0

install vivaldi browser

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
sudo dnf install -y dnf-utils && \
sudo dnf config-manager --add-repo https://repo.vivaldi.com/archive/vivaldi-fedora.repo && \
sudo dnf install vivaldi-stable && \


# commands
yum module remove -y container-tools

useradd -d /home/servidc -m -s /bin/bash -c "servid servid" servidc && \
loginctl enable-linger servidc && \
usermod -aG wheel servidc

## start webssh2
```bash=
cd ~/bin/webssh2/app && npm start

: sed -i s/^SELINUX=.*$/SELINUX=permissive/
shutdown -r now
1
2
3
/usr/bin/barrierc -f --no-tray --debug INFO --name [name of your client/screen] --enable-crypto --log /var/log/barrier.log [SERVER IP ADDRESS]:2480

/usr/bin/barrierc -f --no-tray --debug INFO --name servidc-HP-350-G1 --enable-crypto --log /var/log/barrier.log 192.168.1.52:2480

git

1
2
git config --global user.name "servid servid"
git config --global user.email "servid.servid@gmail.com"

set hostname

1
2
export hostname=${1}.test
hostnamectl set-hostname $hostname && \

##

disable shutdown or sleep for closing lid

1
vi /etc/systemd/logind.conf
1
#HandleLidSwitch=suspend

to

1
HandleLidSwitch=ignore

ansible install

activate venv

1
source ~/bin/ansible-venv/bin/activate

##

linux mint vm

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# create a storage pool
root@dlp:~# mkdir -p /var/kvm/images
root@dlp:~# virt-install \
--name ubuntu2004 \
--ram 4096 \
--disk path=/var/kvm/images/ubuntu2004.img,size=20 \
--vcpus 2 \
--os-type linux \
--os-variant ubuntu20.04 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://mirrors.seas.harvard.edu/linuxmint/stable/20.1/linuxmint-20.1-cinnamon-64bit.iso' \
--extra-args 'console=ttyS0,115200n8 serial'
Starting install...     # installation starts

# after finishing installation, back to KVM host and shutdown the guest like follows
root@dlp:~# virsh shutdown ubuntu2004
Domain template is being shutdown
# mount guest's disk and enable a service like follows
root@dlp:~# guestmount -d ubuntu2004 -i /mnt
root@dlp:~# ln -s /mnt/lib/systemd/system/getty@.service /mnt/etc/systemd/system/getty.target.wants/getty@ttyS0.service
root@dlp:~# umount /mnt
# start guest again, if it's possible to connect to the guest's console, it's OK all
root@dlp:~# virsh start ubuntu2004 --console

Ubuntu 20.04 LTS ubuntu ttyS0

ubuntu login:


root@dlp:~# virsh console ubuntu2004

    irt-clone --original ubuntu2004 --name ubuntu2004_org --file /var/kvm/images/ubuntu2004_org.img

install and configure vagrant

https://github.com/vagrant-libvirt/vagrant-libvirt/issues/1135

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#/bin/bash

HASH_KRB5="c9ac833889fe2e83777faa751c5b603adb13a5ee3528e6d60c7ec93bd2f0bcd9"
HASH_LIBSSH="15f72a51a397f89e05336cfafc9fe7c625222126287fbf41ea90916f717514d2"
HASH_VAGRANT="be06ce2fa17ad45cdb2fa3c92054194a48b49f46c26ecc2aa1ff928cf861090a"

sudo dnf -y groupinstall "Development Tools"
sudo dnf -y install flex bison gcc gcc-c++ libguestfs-tools-c libvirt libvirt-devel libxml2-devel libxslt-devel make ruby-devel rpm-build openssl-devel cmake

curl -o vagrant_2.2.14_x86_64.rpm https://releases.hashicorp.com/vagrant/2.2.14/vagrant_2.2.14_x86_64.rpm
printf "${HASH_VAGRANT}  vagrant_2.2.14_x86_64.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nVagrant download failed.\n\n" && exit 1
sudo dnf -y install vagrant_2.2.14_x86_64.rpm

mkdir libssh && cd libssh
curl -o libssh-0.9.4-2.el8.src.rpm https://vault.centos.org/8.3.2011/BaseOS/Source/SPackages/libssh-0.9.4-2.el8.src.rpm
printf "${HASH_LIBSSH}  libssh-0.9.4-2.el8.src.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nThe libbssh source download failed.\n\n" && exit 1
rpm2cpio libssh-0.9.4-2.el8.src.rpm | cpio -imdV
tar xf libssh-0.9.4.tar.xz
mkdir build && cd build
sed -i 's/WITH_GSSAPI "Build with GSSAPI support" ON/WITH_GSSAPI "Build with GSSAPI support" OFF/' ../libssh-0.9.4/DefineOptions.cmake
cmake ../libssh-0.9.4 -DOPENSSL_ROOT_DIR=/opt/vagrant/embedded/ && make
sudo cp lib/libssh* /opt/vagrant/embedded/lib64/
cd ../../

mkdir krb5 && cd krb5
curl -o krb5-1.18.2-5.el8.src.rpm https://vault.centos.org/8.3.2011/BaseOS/Source/SPackages/krb5-1.18.2-5.el8.src.rpm
printf "${HASH_KRB5}  krb5-1.18.2-5.el8.src.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nThe libbssh source download failed.\n\n" && exit 1
rpm2cpio krb5-1.18.2-5.el8.src.rpm | cpio -imdV
tar xf krb5-1.18.2.tar.gz
cd krb5-1.18.2/src
LDFLAGS='-L/opt/vagrant/embedded/' ./configure && make -j4
sudo cp -a lib/crypto/libk5crypto.* /opt/vagrant/embedded/lib64/
cd ../../../

rm -rf ~/.gem/ ~/.vagrant.d/ ; vagrant plugin install vagrant-libvirt

# Delete the downloaded RPM file, and remove build directories.
rm --force --recursive krb5 libssh vagrant_2.2.14_x86_64.rpm
1

barrier command line client

1
/snap/barrier/384/usr/bin/barrierc -f --no-tray --debug INFO --name servid-hp350g1 --enable-crypto [192.168.1.52]:24800

build python from source and create virtual env ubuntu

1
2
3
sudo apt-get update && \
sudo apt-get install -y build-essential checkinstall && \
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev
1
2
3
4
5
6
7
8
9
10
11
12
13
14
mkdir -p /home/servidc/usr/local/bin/python && \
cd /home/servidc/usr/local/bin && \
wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz && \
tar xzf Python-3.9.1.tgz && \
cd Python-3.9.1 && \
./configure --enable-optimizations --prefix=/home/servidc/usr/local/bin/python && \
make && \
make altinstall && \
/home/servidc/usr/local/bin/python/bin/python3.9 -m pip install --upgrade pip && \
mkdir -p /home/servidc/usr/local/bin && \
cd /home/servidc/usr/local/bin && \
/home/servidc/usr/local/bin/python/bin/python3.9 -m venv ansible-venv && \
source /home/servidc/usr/local/bin/ansible-venv/bin/activate && \
/home/servidc/usr/local/bin/ansible-venv/bin/python3.9 -m pip install --upgrade pip
1
2
3
4
sudo apt-get remove chromium --purge && \
rm -rf ~/.config/chromium && \
rm -rf ~/.cache/chromium && \
sudo rm -rf /etc/chromium

create win 10 bootable USB ISO on Ubuntu

1
2
3
4
5
sudo apt install git p7zip-full python3-pip python3-wxgtk4.0
sudo pip3 install WoeUSB-ng
#search for 'disks' app in ubuntu, click the 'stop' button on the US flashdrive
#start woeusb-ng from the application menu
#select the ISO image as the source and the USB device as the target]

docker run -d -p 8282:8282 –name admiral vmware/admiral –log-driver=json-file –log-opt max-size=1g –log-opt max-file=10

1
2
3
4
5
6
cat >/home/servidc/.oh-my-zsh/custom/alias.zsh <<<"#
alias uuid_alias=\"cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 4 | head -n 1\"
alias date_alias=\"date '+%Y%m%d%H%M%S'\"
" && \
cat /home/servidc/.oh-my-zsh/custom/alias.zsh && \
echo "added aliases"

alias uuid_alias=”cat /dev/urandom | tr -dc ‘a-zA-Z0-9’ | fold -w 4 | head -n 1” alias date_alias=”date ‘+%Y%m%d%H%M%S’”

openshift external regisry

https://hackmd.io/YzR9nA3VRVqn0B2Tny9biA

container info

openshift info

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[sservid@acer15 ~]$ oc get secrets
NAME                            TYPE                                  DATA   AGE
builder-dockercfg-fxfkb         kubernetes.io/dockercfg               1      2d19h
builder-token-82n8m             kubernetes.io/service-account-token   4      2d19h
builder-token-k2kb9             kubernetes.io/service-account-token   4      2d19h
che-workspace-dockercfg-5xvqf   kubernetes.io/dockercfg               1      45h
che-workspace-token-2srdp       kubernetes.io/service-account-token   4      45h
che-workspace-token-7vkzj       kubernetes.io/service-account-token   4      45h
default-dockercfg-r2gpw         kubernetes.io/dockercfg               1      2d19h
default-token-bc4kg             kubernetes.io/service-account-token   4      2d19h
default-token-t68jt             kubernetes.io/service-account-token   4      2d19h
deployer-dockercfg-4bg48        kubernetes.io/dockercfg               1      2d19h
deployer-token-j52ss            kubernetes.io/service-account-token   4      2d19h
deployer-token-wxz6q            kubernetes.io/service-account-token   4      2d19h

install team viewer host

https://www.teamviewer.com/en-us/download/windows/

1
2
3
[sservid@acer15 ~]$ oc registry login
info: Using registry public hostname default-route-openshift-image-registry.apps.sandbox.x8i5.p1.openshiftapps.com
Saved credentials for default-route-openshift-image-registry.apps.sandbox.x8i5.p1.openshiftapps.com
1
2
[sservid@acer15 ~]$ oc registry info
default-route-openshift-image-registry.apps.sandbox.x8i5.p1.openshiftapps.com
1
export CR_PAT=YOUR_TOKEN
1
echo $CR_PAT | docker login ghcr.io -u USERNAME --password-stdin
1
docker tag IMAGE_ID docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION
1
docker build -t docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION PATH
1
docker push docker.pkg.github.com/OWNER/REPOSITORY/IMAGE_NAME:VERSION
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <activeProfiles>
    <activeProfile>github</activeProfile>
  </activeProfiles>

  <profiles>
    <profile>
      <id>github</id>
      <repositories>
        <repository>
          <id>central</id>
          <url>https://repo1.maven.org/maven2</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
        <repository>
          <id>github</id>
          <name>GitHub OWNER Apache Maven Packages</name>
          <url>https://maven.pkg.github.com/OWNER/REPOSITORY</url>
        </repository>
      </repositories>
    </profile>
  </profiles>

  <servers>
    <server>
      <id>github</id>
      <username>USERNAME</username>
      <password>TOKEN</password>
    </server>
  </servers>
</settings>

##

https://github.com/vagrant-libvirt/vagrant-libvirt/issues/1135

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#/bin/bash

HASH_KRB5="c9ac833889fe2e83777faa751c5b603adb13a5ee3528e6d60c7ec93bd2f0bcd9"
HASH_LIBSSH="15f72a51a397f89e05336cfafc9fe7c625222126287fbf41ea90916f717514d2"
HASH_VAGRANT="be06ce2fa17ad45cdb2fa3c92054194a48b49f46c26ecc2aa1ff928cf861090a"

sudo dnf -y groupinstall "Development Tools"
sudo dnf -y install flex bison gcc gcc-c++ libguestfs-tools-c libvirt libvirt-devel libxml2-devel libxslt-devel make ruby-devel rpm-build openssl-devel cmake

curl -o vagrant_2.2.14_x86_64.rpm https://releases.hashicorp.com/vagrant/2.2.14/vagrant_2.2.14_x86_64.rpm
printf "${HASH_VAGRANT}  vagrant_2.2.14_x86_64.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nVagrant download failed.\n\n" && exit 1
sudo dnf -y install vagrant_2.2.14_x86_64.rpm

mkdir libssh && cd libssh
curl -o libssh-0.9.4-2.el8.src.rpm https://vault.centos.org/8.3.2011/BaseOS/Source/SPackages/libssh-0.9.4-2.el8.src.rpm
printf "${HASH_LIBSSH}  libssh-0.9.4-2.el8.src.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nThe libbssh source download failed.\n\n" && exit 1
rpm2cpio libssh-0.9.4-2.el8.src.rpm | cpio -imdV
tar xf libssh-0.9.4.tar.xz
mkdir build && cd build
sed -i 's/WITH_GSSAPI "Build with GSSAPI support" ON/WITH_GSSAPI "Build with GSSAPI support" OFF/' ../libssh-0.9.4/DefineOptions.cmake
cmake ../libssh-0.9.4 -DOPENSSL_ROOT_DIR=/opt/vagrant/embedded/ && make
sudo cp lib/libssh* /opt/vagrant/embedded/lib64/
cd ../../

mkdir krb5 && cd krb5
curl -o krb5-1.18.2-5.el8.src.rpm https://vault.centos.org/8.3.2011/BaseOS/Source/SPackages/krb5-1.18.2-5.el8.src.rpm
printf "${HASH_KRB5}  krb5-1.18.2-5.el8.src.rpm\n" | sha256sum --check --quiet --status
[ $? != 0 ] && printf "\nThe libbssh source download failed.\n\n" && exit 1
rpm2cpio krb5-1.18.2-5.el8.src.rpm | cpio -imdV
tar xf krb5-1.18.2.tar.gz
cd krb5-1.18.2/src
LDFLAGS='-L/opt/vagrant/embedded/' ./configure && make -j4
sudo cp -a lib/crypto/libk5crypto.* /opt/vagrant/embedded/lib64/
cd ../../../

rm -rf ~/.gem/ ~/.vagrant.d/ ; vagrant plugin install vagrant-libvirt

# Delete the downloaded RPM file, and remove build directories.
rm --force --recursive krb5 libssh vagrant_2.2.14_x86_64.rpm