Skip to main content

Prepare Lubuntu 20.04 for software development

Prepare Lubuntu 20.04 for software development

ninjahoahong

After using windows, macosx, and serveral linux ditributions. For me, Lubuntu is the lightest and easiest to set up and run so far. If you search there will be two domains provide lubuntu which are lubuntu.me and lubuntu.net. You should use lubuntu.me which provide the most updated version of lubuntu. In this blog, I will focus on the additional packages after installation.

  • Download Lubuntu 20.04 iso file.

  • Create bootable usb using balena etcher or unetbootin.

  • Boot to the usb and install Lubuntu.

  • This is a starting screen using lxqt.

lubuntu-20.04-image

There are packages for apt and snap. I prefer apt since the app installed by snap command will take long time in the first launch.

I usually install brave browser in addition to firefox since some of the tools such as teams and slack are not working very well with firefox.

sudo snap install brave
sudo apt-get install blueman
sudo snap install postman
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg
sudo apt install apt-transport-https
sudo apt update
sudo apt install code # or code-insiders
sudo snap install dbeaver-ce
sudo snap install keepassxc
sudo snap connect keepassxc:removable-media
sudo snap install node --classic
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
sudo snap install go --classic
sudo apt-get install wget apt-transport-https gnupg
wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -
echo "deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb focal main" | sudo tee /etc/apt/sources.list.d/adoptopenjdk.list
sudo apt-get update
sudo apt-cache search adoptopenjdk
sudo apt-get install adoptopenjdk-16-hotspot
sudo apt install maven
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker
sudo apt install virtualbox

That is quite enough for me. If you need something extra you can try apt search or snap search command to find those.

Comments

Popular posts from this blog

The first taste of Rust - A simple you tube downloader

Recently, I just learnt Rust and using it to write a simple youtube downloader with reference from node-ytdl . In this blog, I would like to share the code and how did I make it. You can find the full source code here . Install development environment I am using Windows 10 and scoop package manager. Therefore, I use the following commands. Run scoop install rustup-msvc to install rustup . Run setx "%path%;%USERPROFILE%\\scoop\\persist\\rustup\\.cargo\\bin" to add rustup to the path. Restart termial (git-bash in my case) and check the installation with rustup --version; rustc --version; cargo --version Export custom RUST_HOME : export RUSTUP_HOME=$HOME/scoop/persist/rustup/.cargo/bin/rustup Install a toolchain for rustup : rustup toolchain install stable-x86_64-pc-windows-msvc Setup project Run cargo new simple_rust_youtube_downloader --bin && cd simple_rust_youtube_downloader to create and navigate to the project. Add these dependencies to ...

My books review: Money for the rest of us

Overview: The "Money for the rest of us" book is a list of 10 questions serve as a guideline to invest. It is light book with not many pages and can be read during commute time. The book does not require audiences to have any special knowledge. My impression: The author, Mr. David, is very friendly and patient to answer my questions. The 10 questions are greatly explained by the author, and I think they provide a good starting point. However, I think anyone who wants to invest should build their own checklist and a general guideline for different situations. When a general guideline is in place, the decisions need to respect the guideline in order to make consistent decision. Consistency , in my opinion, is the most important in the long run as it provide information for constant feedback and improvements. Overall, I think this is a good book that helps improving my decision making process. - ninjahoahong

Team Fight Tactics Zero to Master: My 501-Game Journey to Reach the Highest Static Rank in TFT

Introduction Hi, I'm ninjahoahong , a casual gamer with a fondness for strategy games. After achieving Queen rank in Autochess three months ago, I sought a new challenge and turned to Team Fight Tactics (TFT). Despite my experience in the auto-battler genre, I soon realized that mastering TFT would entail a significant amount of learning and trial-and-error. In TFT, players aim for two types of ranks: static and dynamic. Static ranks, like Iron, Bronze, and so on, reflect overall performance and skill level in the game, achieved through consistent play and improvement. As a casual player, my aim is to reach the highest static rank, Master. Additionally, TFT features dynamic ranks that change based on recent performance, such as Grandmaster and Challenger. These ranks are more temporary and competitive, requiring steady performance to achieve and maintain. While they're admirable, I'll likely aim for those dynamic ranks next, but as a casual player, my focus is to start ...