Giter VIP home page Giter VIP logo

mydesktop's Introduction

myDesktop

  • Ubuntu 20.04
  • Lubuntu 18.04

Table of content

Change default editor

sudo update-alternatives --config editor

Git configuration

  • Change default editor to vim
 git config --global core.editor vim
  • Set your email and name
 git config --global user.name "Hamid Gholami"
 git config --global user.email [email protected]

Disable sudo prompt for ask password

Add a file in /etc/sudoers.d/<FILE_NAME>

hamid ALL=(ALL) NOPASSWD: ALL

and

chmod go-r /etc/sudoers.d/<FILE_NAME>

All requirement packages

sudo apt-get install \
vim git python3 python3-pip terminator tmux tree neovim xpad \
zsh vlc build-essential gcc remmina remmina-plugin-* \
ca-certificates openjdk-11-jdk simplescreenrecorder kazam \
unrar zip unzip p7zip-full p7zip-rar rar dnsutils okular \
wine winetricks filezilla zim sshpass openssl mosh \
traceroute virtualbox curl ipython3 openssh-server openssh-client \
gnupg-agent code software-properties-common apt-transport-https \
qemu-kvm virtinst virt-viewer virt-manager bridge-utils \
cpu-checker spice-client-gtk fonts-farsiweb \
mtr-tiny htop virt-top imvirt apg at bc rsync ftp \
guake chromium-browser x11vnc clipit cups-pdf \
openvpn network-manager-openvpn gnome-tweaks \
network-manager-openvpn-gnome network-manager-vpnc \
network-manager-l2tp network-manager-l2tp-gnome \
mlocate net-tools cpu-checker fonts-powerline \
zsh-syntax-highlighting ubuntu-restricted-extras

Install Shutter

  • Add repository
sudo add-apt-repository -y ppa:linuxuprising/shutter
  • Install Shutter
sudo apt install shutter

Install Zoom

sudo apt install ./zoom_amd64.deb
# or
sudo dpkg -i zoom_amd64.deb

Install AnyDesk

  • add repository key to Trusted software providers list.
wget -qO - https://keys.anydesk.com/repos/DEB-GPG-KEY | apt-key add -
  • add the repository:
echo "deb http://deb.anydesk.com/ all main" > /etc/apt/sources.list.d/anydesk-stable.list
  • Update and install:
sudo apt update && sudo apt install anydesk

Install XDM

  • Once downloaded and extract it from its official website.
  • cd into its directory and run install.sh.
sudo ./install.sh

Install qbittorrent

  • Add stable repository .
sudo add-apt-repository ppa:qbittorrent-team/qbittorrent-stable
  • Run follow commands for install.
sudo apt-get update && sudo apt-get install qbittorrent

Install VSCode

  • Download and import the Microsoft signing GPG key using the curl command.
curl -sSL https://packages.microsoft.com/keys/microsoft.asc -o microsoft.asc
sudo apt-key add microsoft.asc
  • Now, add the Visual Studio Code repository to your system.
echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"  | sudo tee /etc/apt/sources.list.d/vscode.list
  • Once you have added the repository to the system, do not forget to update the repository index. Use the apt command to install Visual Studio Code.
sudo apt update && sudo apt install code

Install Typora

Official Typora installation

  • Add typora GPG key.
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -
# or use
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
  • Add Typora's repository.
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt-get update
  • Install Typora.
sudo apt install typora

Install packer

Offical packer installation

  • Add HashiCorp GPG.
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
  • Add HashiCorp repository.
sudo apt-add-repository \
     "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
  • Update and install.
sudo apt-get update && sudo apt-get install packer

Install KVM qemu libvirt

Official Ubuntu KVM installation

Before continuing with the installation, make sure your Ubuntu host machine supports KVM virtualization. The system should have either an Intel processor with the VT-x (vmx), or an AMD processor with the AMD-V (svm) technology support.

Run the following grep command to verify that your processor supports hardware virtualization:

grep -Eoc '(vmx|svm)' /proc/cpuinfo

If the CPU supports hardware virtualization, the command will output a number greater than zero, which is the number of the CPU cores. Otherwise, if the output is 0 it means that the CPU doesn’t support hardware virtualization.

On some machines, the virtual technology extensions may be disabled in the BIOS by the manufacturers.

  • To check if VT is enabled in the BIOS, use the kvm-ok tool.
kvm-ok
output

INFO: /dev/kvm exists
KVM acceleration can be used
  • Install packages
sudo apt install qemu libvirt-daemon-system \
libvirt-clients libxslt1-dev libxml2-dev libvirt-dev \
zlib1g-dev ruby-dev ruby-libvirt ebtables dnsmasq-base \
qemu-kvm bridge-utils virtinst virt-manager libvirt-doc libnss-libvirt
  • Start and enable libvirtd daemon service.
sudo systemctl is-active libvirtd
  • To be able to create and manage virtual machines, you’ll need to add your user to the “libvirt” and “kvm” groups. To do that, enter:
sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER
  • Add libvirt in nsswitch.conf
. . . 
hosts: files libvirt mdns4_minimal ...
. . .

Install Vagrant

Download deb/rpm package from vagrant official website.

  • Install vagrant package.
sudo dpkg -i vagrant_2.2.13_i686.deb
# or
sudo apt install ./vagrant_2.2.13_i686.deb
  • Now, install vagrant-libvirt plugin using command:
vagrant plugin install vagrant-libvirt
  • You also need to install vagrant-mutate plugin which converts vagrant boxes to work with different providers.
vagrant plugin install vagrant-mutate

Install Docker

Official docker installation

  • Remove old docker versions.
sudo apt-get remove docker docker-engine docker.io containerd runc
  • Install docker repository
sudo apt-get update
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
  • Add Docker’s official GPG key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  • Add docker repository
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"
  • Install docker engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
  • Add user in docker goup.
sudo usermod -aG docker $USER
  • Install docker-compose
pip3 install docker-compose
  • Docker configuration
          /etc/docker/daemon.json
          ~/.docker/config.json

Install ansible

pip3 install ansible
pip3 install ansible-cmdb

Install VNCViewer

  • Download deb/rpm file from official VNC website and then install it.
sudo apt install ./VNC-Viewer-6.20.529-Linux-x86.deb
# or
sudo dpkg -i VNC-Viewer-6.20.529-Linux-x86.deb

Install i3wm

  • To begin, open a terminal and run the following command.
sudo apt-get install i3 i3status dmenu i3lock xbacklight feh conky

i3 is the main window manager package.

i3status is a utility to generate a string with information to be displayed in the i3bar.

dmenu is a utility to launch our apps in the i3 desktop.

xbacklight is a utility to set our laptop’s screen brightness.

feh is a utility to set a wallpaper.

conky is a utility to display information of the system in a awesome way.

  • If you have dual monitor maybe you want use image in dual monitor when you lock your system.

    So you must install i3lock-multimonitor from its repository.

  • This is my i3/config file as an instance.

Kubernetes

  • Install kubectl on your machine
sudo apt install kubectl
  • This is my .kube configuration as an instance.

Vagrant

  • .vagrant.d

ssh

  • .ssh/config

oh-my-zsh

  • Firstly, you should install zsh.
sudo apt install zsh
  • After the installation is complete, change the default shell of the root user to zsh with the chsh command below.
chsh -s /usr/bin/zsh root
  • Now logout from the root user, log in again, and you will get the zsh shell. Check the current shell used with the command below.
echo $SHELL
  • Install oh-my-zsh from its official github repository or website.
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
  • So, oh-my-zsh is installed in the home directory ~/.oh-my-zsh. Copy the template .zshrc.zsh-template configuration file to the home directory .zshrc and apply the configuration by running the source command, as shown below
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
source ~/.zshrc
  • My .zshrc config.

Install zsh syntax highlighting

Install powerline

Powerline official installation

  • Add the Universe repository.
sudo add-apt-repository universe
  • Install Powerline
sudo apt install powerline

Install SpaceVim plugin

Official installation for linux

Install Nerd Font

Nerd Font Official installation

  • Select and install Nerd Font from official website.

To Do List

  • Check all this configuration on Fedora and make a README file for it.
  • Insert my configuration file for some tools such as: docker, kubectl, i3, ssh and etc
  • Install kubectl,kubectx, helm,k9s
  • Install regolith (i3) desktop
  • Install pipenv
  • Install keepassxc
  • Install jami as a softphone
  • Install vagrant-cachier and vagrant-faster as a plugin for Vagrant
  • Install mitogen for Ansible speed Mitogen
  • Kubernetes Utilities

Author: Hamid Gholami ([email protected])

Linkedin LinkedIn   GitHub GitHub   Twitter Twitter

mydesktop's People

Contributors

hamidgholami avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

sgnconnects

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.