Minggu, 31 Oktober 2021

Flatpak Apps Look Out of Place? Here’s How to Apply GTK Themes on Flatpak Applications

Flatpak applications often do not match with the system themes and look out of place in your setup. Here's a workaround to apply GTK themes to Flatpak apps.

from It's FOSS https://ift.tt/2ZHthrX
via IFTTT

Jumat, 29 Oktober 2021

Best DAW (Digital Audio Workstation) Available for Linux Desktops

You may not get as many choices as Windows or macOS but there are a few Digital Audio Workstation software available for Linux. Let's have a look at them.

from It's FOSS https://ift.tt/3ExINpw
via IFTTT

Rabu, 27 Oktober 2021

Only 4 MB? How to Fix USB Destroyed by Etcher and Rufus After Creating Live Linux USB

Cannot format the bootable Linux USB properly anymore? Here's how to get your USB disk back.

from It's FOSS https://ift.tt/3jLoqwR
via IFTTT

Senin, 25 Oktober 2021

Ferdi: A Free & Open-Source Alternative to Franz & Rambox

Ferdi is a promising open-source application with more free features to replace Franz and Rambox. Let us explore more about it.

from It's FOSS https://ift.tt/3nr2Yys
via IFTTT

Minggu, 24 Oktober 2021

Fixing “Unable to acquire dpkg frontend lock. Are You Root?” Error on Ubuntu and Other Linux Distributions

This is a common mistake a new Linux user makes while trying to run a command that requires root access. Here's what a beginner should know about this situation.

from It's FOSS https://ift.tt/3GkY5iQ
via IFTTT

Kamis, 21 Oktober 2021

How to Install themes on Xubuntu and Other Distros Using Xfce Desktop Environment

This is a step-by-step beginner's tutorial to show how to install themes and icons in Xubuntu and other Linux distributions that use Xfce desktop environment.

from It's FOSS https://ift.tt/3jKlqRF
via IFTTT

How to Install Visual Studio Code Extensions

Learn how to search for extensions and install them in Visual Studio Code editor. Both GUI and command line methods have been discussed.

from It's FOSS https://ift.tt/2Z3qNUl
via IFTTT

Selasa, 19 Oktober 2021

How to Convert a Webpage to PDF in Linux

Saving a webpage as a PDF comes in handy when you want to archive something for educational purpose. Learn various methods to save a webpage as PDF in Linux.

from It's FOSS https://ift.tt/2Z3vvl9
via IFTTT

GitUI: A Blazing Fast Terminal Client for Git Written in Rust

Get graphical Git tools like features in the Linux terminal with GitUI, a blazing fast tool written in Rust.

from It's FOSS https://ift.tt/3aQgMMV
via IFTTT

Senin, 18 Oktober 2021

How to Install Rust and Cargo on Ubuntu and Other Linux Distributions

Learn various ways of installing Rust programming language on Linux along with its package manager Cargo.

from It's FOSS https://ift.tt/2XpZovr
via IFTTT

Annotator: Open-Source App for Linux to Easily Add Essential Annotations to Your Images

An interesting and useful annotation tool with additional features for Linux systems.

from It's FOSS https://ift.tt/3aNTtmR
via IFTTT

Linux Tablets: What are Your Options?

There are Linux laptops, Linux mini PCs and Linux Phones. What about Linux-based tablets? What if you want to use a real Linux on a tab? Here are your options.

from It's FOSS https://ift.tt/3lNmqpo
via IFTTT

Sabtu, 16 Oktober 2021

Visual Studio Code or Atom? Which Code Editor Should You Use?

If you cannot make up your mind and want to compare and choose between one VS Code and Atom, this article should help you decide for yourself.

from It's FOSS https://ift.tt/3FQM0BU
via IFTTT

Kamis, 14 Oktober 2021

How to Upgrade to Ubuntu 21.10 Right Now

Ubuntu 21.10 ‘Impish Indri’ has just been released. If you are using Ubuntu 21.04, you should be provided the option to upgrade to Ubuntu 21.10.

upgrade to ubuntu 21 10
Ubuntu 21.04 users should eventually be notified for the upgrade

However, this roll out will be gradual. This means not everyone will be notified about the availability of the new version immediately. It may take a couple of weeks before you see the upgrade option.

But what if you are itching to get your hands on Ubuntu 21.10 that comes with GNOME 40 and other new features? Do you really have to wait? The answer is no.

Upgrading to Ubuntu 21.10 from Ubuntu 21.04 right now

Here’s what you do. Open the Software & Updates application:

software and updates
Start the Software & Updates application

And make sure that you have set “Notify me of a new Ubuntu version” to “For any new version” under the Updates tab.

Make sure that settings are right for new Ubuntu version notification
Make sure that settings are right for new Ubuntu version notification

Now open a terminal and enter the following command to make sure that your system is updated:

sudo apt update && sudo apt upgrade

Once your Ubuntu 21.04 system has all the updates installed, run the update manager to look for development release (Ubuntu 21.10 in this case).

update-manager -d

It will open the Update Manager tool that looks for updates. Since you have already updated the system, it won’t find new updates to install. However, it will see that Ubuntu 21.10 is now available.

upgrade to ubuntu 21 10
Hit the upgrade button

You can hit the upgrade button and follow the on-screen option to start the upgrade procedure. You should have good internet speed to download the 2 GB worth of updates. Make sure that your system stays connected to a power source during the upgrade.

Enjoy Ubuntu 21.10!



from It's FOSS https://ift.tt/2XgAazA
via IFTTT

How to Find and Kill Zombie Process in Linux

Brief: This is a quick tip on finding zombie processes in Linux and then killing them. You also learn a thing or two about processes and zombie processes.

Before you learn about Zombie process, let me recall what is a process in Linux.

In a few words, a process is a running instance of a program in performance. It can be foreground (interactive process) or background (not interactive or automatic process). It can be a parent (creator of other processes during run-time) or child (process created by others) process.

In Linux, except for the first init (or systemd) process with PID 0, every other process has a parent process. Processes also have their own child processes.

Don’t believe me? Use the pstree command in terminal to look at the process tree to see the ‘family tree’ of your system’s processes.

What is a Zombie process in Linux?

When a child process dies, the parent process is informed so that it can do some clean up like freeing up memory etc. However, child process goes into zombie state if the parent process is not aware of its death. For the parent, the child still exists but the child process is actually dead. This is how zombie processes (also known as defunct processes) are created and stay in the system.

Here’s an excellent funny take on the zombie process by Turnoff.us:

zombies turnoff
Image credit: Turnoff.us

Do you really need to worry about Zombie processes?

Here is important to say that zombie processes are not as dangerous as its name can sound.

The problem may arise if your system has limited RAM or if there are too many zombie processes eating up RAM. Also, most Linux processes can have maximum PID set to 32768. If there are no available IDs for other productive tasks, your system may crash.

This rarely happens, but it’s a possibility, specially if a poorly coded program starts inducing numerous zombie processes.

In such case, it would be a good idea to find and kill zombie process.

How to find zombie processes?

A process in Linux can have one of the following states:

  • D = uninterruptible sleep
  • I = idle
  • R = running
  • S = sleeping
  • T = stopped by job control signal
  • t = stopped by debugger during trace
  • Z = zombie

But where can you see the processes and their respective status? One easy way is to use the terminal and the top command.

top command view
Top command show processes and their status

As you can see in the screenshot above, there are 250 total tasks (or processes), 1 is running, 248 processes are sleeping and 1 is in zombie state.

Now, the question arises, how to kill the zombie process?

How to find and kill a zombie process? Can a zombie process be killed?

kill zombie process linux

A zombie process is already dead. How do you kill an already dead process?

In the zombie movies, you shoot the zombies in the head or burn it. That’s not an option here. You can burn your system for killing the zombie process but that’s not a feasible solution ;)

Some people suggests sending SIGCHLD signal to the parent process. But it is more likely to be ignored. The other option to kill the zombie process is to kill its parent process. That sounds brutal but that’s the only sure shot way of killing zombie processes.

So, first, let’s list the zombie processes to know their ID. It can be achieved by using the ps command like this in the terminal.

ps ux | awk '{if($8=="Z+") print}'

The 8th column in the output of the ps ux command displays the state of a process. You are asking to print all the matching lines where the state of a process is Z+ (indicating zombie state).

Once you have identified its process ID, let’s get its parent’s process ID.

ps -o ppid= -p <child_id>

Alternatively, you can combine the above two commands in the following fashion where it directly provides the PID of the zombie process and the PID of its parent process.

ps -A -ostat,pid,ppid | grep -e '[zZ]'

Here you get the parent process ID, so finally kill the process by typing the command line with its respective ID process obtained before.

kill -9 <parent_process_ID>
killing parent process
Killing parent process

You can verify if the zombie process is killed or not by running the ps command again or even the top command.

Congrats! Now you know how to eliminate zombie processes.

With inputs from Abhishek Prakash.



from It's FOSS https://ift.tt/2Xbco85
via IFTTT

Selasa, 12 Oktober 2021

Beginner’s Guide to Installing Pop!_OS Linux

Brief: Learn to install Pop OS Linux distribution by replacing all other operating systems on your computer.

Pop!_OS is the Linux distribution created by System76 and is based on Ubuntu. Since System76 sells Linux-first laptops and desktops, their Linux distribution, even though is based on Ubuntu, provides support for bleeding edge hardware (only if the newer Linux kernel does not create a conflict for currently supported hardware).

Out of all the new Linux distributions out there, the user-base of Pop!_OS just “popped” out of nowhere. Considering it is a relatively new distro among a plethora of other “well established distros” like Ubuntu, Manjaro, Mint etc; this is a big achievement!

This isn’t an opinion article on why you should use Pop OS over Ubuntu, but a guide, for you to get started with Linux on your PC by installing Pop!_OS on it.

Choosing the instllation method for Pop OS

There are multiple ways to install Pop!_OS (and all other Linux distros) on your computer.

  1. Install Pop!_OS as a Virtual Machine using VirtualBox on your PC without affecting your current Windows install.
  2. Install Pop!_OS alongside Windows; AKA dual boot (even though the linked guide is for Ubuntu, it should work for Pop!_OS; make sure to turn off “Secure Boot”).
  3. Replace Windows 10/11 with Pop!_OS.

I highly recommend that you try out Pop!_OS in VirtualBox before installing it on your computer, specially if you are new to Linux.

This tutorial covers installation of Pop!_OS replacing Windows, and below are the hardware requirements for Pop!_OS.

  • A 4 GB USB drive to create a Live USB drive
  • Any 64-bit x86 CPU (any 64-bit Intel or AMD CPU)
  • At least 4 GB of RAM is recommended
  • A minimum of 20 GB of storage (to store the OS)

WARNING: This guide assumes you want to replace Windows on your PC with a Linux distro of your choice (Pop!_OS in this case) and it results in wiping your drive clean. Please make sure you have backed up all of your important data before proceeding further.

Choose the version of Pop!_OS to install

pop! os installation

Just like Ubuntu, Pop!_OS comes in two variants. All LTS releases are supported for 5 years from release date. Canonical releases a LTS version of Ubuntu in April of every even numbered year.

A new Non-LTS version is released every 6 months (in April and September, every year) and that particular version is supported only for 9 months from release date.

As of writing this article, Pop!_OS is available in two (technically four, but we will get to that later) versions. Current LTS release is “Pop!_OS 20.04 LTS” and “Pop!_OS 21.04”. And soon enough, version 21.10 will be released.

Because Nvidia does not have open source drivers, installing Nvidia GPU Drivers ends up causing problems to your Linux installation if not done correctly. Therefore, System76 offers two variants for each version of Pop!_OS.

Pop!_OS 20.04 LTS is available in two variants (more details in next section).

  • For users with a Nvidia GPU in their computer
  • For users with an AMD (and/or an Intel for iGPU and for the upcoming dGPU) users.

If you are not sure, check the graphics card on your system and choose the appropriate version while downloading.

Installing Pop!_OS

In this guide, I’ll be using the non-Nvidia version of Pop!_OS 20.04 LTS (but the installer steps will be the same for every variant of the same version).

Step 1: Create a live USB

Visit System76’s website to download a copy of Pop!_OS.

Pop OS download options
Pop!_OS ISO selection menu

Select “Pop!_OS 20.04 LTS” (#1) and then click on either the normal ISO (#2) or the Nvidia-specific ISO (#3) to start downloading it.

After you have downloaded a copy of ISO that is suitable for your use case and machine, your next step will be to create a live installer for Pop!_OS. A live installer is a full copy of the OS for you to tinker with, before you feel that the OS of your liking and also compatible with your hardware.

Sometimes the distribution of your choice might not have good support for the proprietary components like WiFi, GPU etc included in your laptop/desktop. Now is the time to test your hardware compatibility.

NOTE: Any data stored on your USB stick will be erased at this step, make sure you do not have anything important on the flash drive.

You have access to numerous tools to create a live USB stick. Some of them are:

  • balenaEtcher (available on Mac, Windows and Linux)
  • UNetbootin (available on Mac, Windows and Linux)
  • Rufus (available only on Windows)
  • Ventoy (available on Windows and Linux)

On Windows, you can use Rufus to create a live USB from Windows. You may also use Etcher for Windows, Linux and macOS. It is really simple. Just start the application, browse the downloaded ISO and hit the flash button.

Balena Etcher Create Linux Live Usb
A generic example of creating live Linux USB with Etcher

Step 2: Booting from the live Pop OS USB

Once you have created the live USB, you need to tell our computer to boot from the USB stick instead of the disk on which Windows is installed.

To do that, restart your computer. And once you see your computer vendor’s logo (HP, Dell, Asus, Gigabyte, ASRock etc) press either the F2 or F10 or F12 or Delete key to enter your computer’s BIOS/UEFI. This key will differ based on your computer vendor, for most desktops it is usually the Delete key, and for most laptops it is the F2 key. If still in doubt, a quick web search should tell you which key to press for your system.

Accessing boot menu
BIOS/UEFI boot menu keys

On modern computers with UEFI, you don’t even need to go in UEFI. You can directly hit a specific key like F12 (my computer vendor has F12) and you’ll see a boot menu. From there directly select your USB stick.

Booting from USB
UEFI boot menu

For people who have an older BIOS/UEFI, go under the section where it says Boot (do note, the steps will vary from vendor to vendor) and select your USB drive instead of your SSD/HDD. And reboot.

Boot settings in Aorus
UEFI/BIOS boot drive selection

Your computer should now boot from the live USB you just created.

Step 4: Start installing Pop!_OS

You should be in the Pop!_OS live environment now. On your computer screen, you will see an installer asking you for setup details like your preferred Language, Country and Keyboard Layout.

Pop!_OS Installation screen
Pop!_OS Installation screen

Once you have selected your Language, Country and Keyboard Layout, you will see this screen. You technically have 3 options.

Pop!_OS Installation types, plus Demo Mode
Pop!_OS Installation types, plus Demo Mode
  • Clean Install (#1): This option will erase your entire disk and install Pop!_OS on it.
  • Custom (Advanced) (#2): This option will allow you to specify things like root partition, if you want a different home partition, use another file system for your root partition, resize partitions, use a different sized swap partition etc.
  • Try Demo Mode (#3): An option in the bottom left of the installer that allows you to test drive Pop!_OS as if it was actually installed on your computer without actually touching your drive contents.

For the scope of this tutorial, proceed by selecting Clean Install.

Next up, specify a drive where you want to install Pop!_OS on. In case your computer has multiple drives, you will see each drive labelled along with it’s size so you can be assured if the drive you have selected is the one you have decided to install Pop!_OS on.

Pop!_OS Drive selection options
Pop!_OS Drive selection options

You will be prompted to provide your name and a username for your user. Your username will be the name of your home folder.

Pop!_OS User's Name and username input
Pop!_OS User’s Name and username input

Up next, set a password for your user.

Pop!_OS User password input
Pop!_OS User password input

The final step includes setting up Drive Encryption. If someone has physical access to your computer, your data on the disk can be accessed using a live operating system (like the live USB you created).

The disk encryption prevents that. However, you must never forget the password or you’ll never be able to use the disk again.

It is up to you if you want to encrypt the disk.

04 06 drive encryption options
Pop!_OS Drive Encryption options

The installer will give you three options for encryption.

  • Don’t Encrypt (#1): Does not encrypt your drive. Not recommended for security conscious users
  • Use user password for drive encryption (#2): This will tell the installer to use the same password for your user and for drive encryption. If you use this option, make sure your user has a strong password.
  • Set Password (#3): Use a different password for encrypting drive.

Whichever you choose, the installation should start now. Below is a screenshot showing the installer screen.

Pop!_OS Installation screen, plus log button
Pop!_OS Installation screen, plus log button

Just in case you encounter any error(s) during this step, click on the button placed at the bottom right edge of installer with “$_” (annotated as “Log” in the screenshot above) in it. It is the installer log. Posting a few lines from the bottom of this log should help others from our community forum or any other forums help you diagnose the issue causing installation errors.

Please wait for a few minutes for the installer to finish installing and it will provide you with two options, Reboot or Shut Down. Power off your computer and remove the USB drive.

Congratulations! You just installed Pop!_OS on your computer! Let me know if you face any issues.



from It's FOSS https://ift.tt/3lyfr3k
via IFTTT

Senin, 11 Oktober 2021

Seahorse: Manage Your Passwords & Encryption Keys in Linux

Brief: A simple open-source password and encryption key manager app, let’s explore what it has to offer and how you can get it installed.

We often tend to ignore many default/pre-installed applications, especially when numerous tools and utilities are baked in.

One such helpful tool that you can use on various Linux distributions is GNOME’s Seahorse.

Seahorse: GNOME’s Password & Encryption Key Manager

seahorse password keys

Primarily, Seahorse is an application that comes pre-installed with GNOME desktop and tailored for the same.

However, you can use it on just about any Linux distribution of your choice. It is a simple and effective utility to manage your passwords and encryption keys / keyring locally.

You might want to read about the concept of keyring in Linux if it’s a first for you.

If you are not a fan of cloud-based password managers, Seahorse can be a great solution to your requirements. Even though it looks straightforward, there are a few essential features that you may find useful.

Of course, you should also explore some of the best password managers available for Linux if your priority doesn’t involve managing encryption keys (or local storage).

Features of Seahorse

While you can easily use it as a local (offline) password manager, there are a couple of things that you can do with Seahorse to step up your security management when dealing with encryption keys as well.

seahorse login

Some key highlights are:

  • Ability to store Secure Shell key (used to access remote computers/servers)
  • Store GPG keys used to secure emails and files
  • Supports adding password keyring for application and networks
  • Securely store private key of a certificate
  • Store a password / secret phrase
  • Ability to import files and quickly store them
  • Find remote keys
  • Sync and publish keys
  • Ability to find/copy VPN password
seahorse keys

Installing Seahorse in Linux

If you are using a GNOME-based distribution, you should already have it installed. You need to look for “Seahorse” or “Passwords” to find it.

In other cases, you can search for it in the software center. It should work fine with KDE, LXQt, and different desktop environments as per my quick tests.

seahorse software

Moreover, you can find its Flatpak package available. So, no matter the Linux distribution you are using, Seahorse can be installed.

If you are using Arch Linux, you should also find it in AUR.

What do you think about using Seahorse to replace other password managers? Were you already using it to manage encryption keys? Let me know your thoughts in the comments below.



from It's FOSS https://ift.tt/2WZYbKY
via IFTTT

Jumat, 08 Oktober 2021

Best Linux Distributions Based on KDE

KDE is one of the most customizable and fastest desktop environments out there. While you can always install KDE if you know-how, it is best to choose a Linux distribution that comes with KDE out-of-the-box.

Here, let me list some of the best KDE-based Linux distros.

Linux Distributions With KDE Onboard

No matter what you choose as your preferred distro, you can refer to our KDE customization guide to tweak your experience.

Note: The list is in no particular order of ranking.

1. KDE Neon

Kde Neon Information 20 04

Key Highlights:

  • Official KDE distribution
  • Latest stable KDE Plasma version
  • Focuses on latest KDE software
  • Not a perfect replacement as a desktop distro

KDE Neon is one of the exciting choices if you want to get your hands on the latest KDE Plasma experience.

Even if it utilizes a stable Ubuntu LTS base, you always get the newest KDE version delivered as soon as it is released.

Unlike any other distros, it does not focus on a complete desktop user experience but the KDE software packages. So, it may not be the perfect desktop replacement for everyone. However, if you focus on using the latest KDE software, KDE Neon is a decent choice.

The User Edition is what you need to opt for, but you also have the choice to try “Testing” or “Unstable” editions if you are willing to try pre-released features.

If you wonder how it differs from Kubuntu, you should check out KDE Neon vs Kubuntu comparison to explore it.

2. Kubuntu

Kubuntu Kde

Key Highlights:

  • An Ubuntu-based desktop-focused Linux distro
  • Offers both LTS and non-LTS versions
  • Good hardware compatibility

Kubuntu should be an excellent distro for your Linux desktop if the KDE software suite is not your focus.

Kubuntu is an official flavor of Ubuntu, which provides three years of updates for its LTS editions. Unlike KDE Neon, you get better support for various applications and are not just limited to KDE software.

You get the option to opt for an LTS edition or a non-LTS version to get the latest Ubuntu features.

Kubuntu has improved hardware compatibility when compared to some other KDE-based distros. Considering, it powers a variety of laptops that include Kubuntu Focus, Slimbook, and more, the hardware compatibility is something that you can rely on.

3. Manjaro KDE

Manjaro 20 Desktop

Key Highlights:

  • Arch-based Linux distro
  • Rolling-release updates
  • Presents a slight learning curve to new Linux users

Manjaro is an Arch-Linux-based distribution that makes it easy to use Arch as a desktop Linux platform.

It follows a rolling-release schedule, which should help you get the latest packages quickly without worrying about the software update period.

If you are a new Linux user, you may want to stick to Flatpak or Snaps to install any application. While Manjaro makes it easy to use Arch, it does present a slight learning curve to new users. So, you might want to check the Arch wiki to explore more.

4. Fedora KDE Spin

Key Highlights:

  • A unique KDE-based Linux distribution (if you don’t prefer mainstream Ubuntu/Arch distros)
  • Tailored for workstations and servers
  • May not be convenient for new Linux users
  • Hardware compatibility can be an issue

Fedora is an independent distribution (not based on Ubuntu/Arch) that acts as an upstream for Red Hat Enterprise Linux.

And, Fedora spin editions feature alternate desktops for users. If you want KDE, you need to download Fedora’s KDE spin.

Like KDE Neon, Fedora does not focus on providing a great desktop experience but aims to implement the latest technology useful for a workstation or server.

So, if you are confident to tackle any issues/challenges that come with newer technology implementations on a Linux distro, Fedora KDE spin can be a good choice.

5. openSUSE

opensuse kde

Key Highlights:

  • Suitable for system administrators and developers requiring access to several tools
  • Two different editions available including a stable and a rolling-release

openSUSE is yet another independent Linux distribution featuring the KDE desktop by default. While it pitches itself as one of the choices for desktop users, I have had hardware compatibility issues in the past.

However, it can be a good choice for system administrators or developers who want to access tools like YaST, Open Build Service, Kiwi, and more on their desktop, out-of-the-box.

It offers a stable edition and a rolling-release version. As per your requirements, choose what’s best for you.

6. Garuda Linux

Garuda Linux Review

Key Highlights:

  • Rolling-release distro
  • BTRFS as the default filesystem
  • Comes with essential pre-installed GUI tools to make the Arch Linux experience easy

Garuda Linux is a modern Arch-based distribution that focuses on a customized experience out-of-the-box.

The KDE version (or the Dr460nized edition) offers a beautiful experience while tweaking it with a macOS-like workflow.

Of course, if you are an experienced Linux user, you may customize your existing distribution to mimic the same experience.

As a cherry on top, Garuda Linux also provides different variants of its KDE editions, one with pre-installing gaming tools, one for penetration testing, and another as an essential Linux desktop system.

7. Nitrux OS

nitrux os kde

Key Highlights:

  • Debian-based distribution for a change
  • Unique desktop experience

A Debian-based Linux distribution that features KDE out-of-the-box. Unlike Kubuntu, Nitrux may end up offering faster KDE plasma updates and newer Linux Kernel upgrades.

Nitrux OS offers a beautiful and unique experience while featuring its NX Desktop.

If you want to try something different with KDE onboard, Nitrux OS would be a great pick.

8. MX Linux KDE

Mx Linux 19 2 Kde

Key Highlights:

  • Debian-based distro
  • Lightweight
  • Useful MX Tools pre-installed

Don’t need the looks but want a simple and customizable KDE desktop with a Debian base? MX Linux KDE edition should be a fantastic choice as it is known for its snappy performance and pre-installed essential tools baked in.

You also get several KDE themes if you want to tweak the default user experience.

Wrapping Up

In addition to this list, several other Linux distributions feature KDE desktop as their preferred choice.

Nitrux OS should be a unique pick overall, and if you want to move away from Ubuntu-based distributions, there are solid arch-based distros like Garuda Linux and Manjaro to try.

What is your favorite KDE-based Linux distribution? Do you focus on out-of-the-box customization or prefer to customize the KDE experience yourself?



from It's FOSS https://ift.tt/3FrUrTY
via IFTTT

Kamis, 07 Oktober 2021

Install and Set-up ELK Code Physics Software on Ubuntu

Science becomes extra difficult when you have to work with large numbers, complex equations, or when you need fast calculations. But in the recent years, these problems have been considerably reduced thanks to the computers and more specifically, thanks to the open-source projects focused on bringing a better understanding and experience at the time of making computations.

As a student of Physics, I use several specialized tools and most of them are open source. I am going to share one of them today which is called Elk code, an open source project focused on Solid State Physics.

Though it is available in the Ubuntu repositories, there are several dependencies you need to explicitly install and configure.

What is Elk code?

banner

In a few words and thanks to its official page, Elk code is an all-electron full-potential linearised augmented-plane wave code with a strong role inside the field of density functional theory.

What it does is to determine the properties of crystalline solids with many advanced features like geometry optimization, 2D and 3D plots, etc.

Install Intel Fortran compiler on Ubuntu

It could be a little bit hard to get started with it, but the key is on installing math libraries and compilers in your system before installing Elk code.

Compilers like GNU Fortran or Intel Fortran are available for the process, however, it’s recommended to install the Intel Fortran compiler because most of the issues inside the code are solved with it.

The Intel Fortran compiler comes in two parts:

Getting Intel oneAPI Base Toolkit

Let’s start! Open a terminal in Ubuntu and use the following command to download the required part:

wget https://registrationcenter-download.intel.com/akdlm/irc_nas/17977/l_BaseKit_p_2021.3.0.3219.sh

It should look like this:

intel fortran installation 1

After that, in the same terminal, type the next command:

sudo bash l_BaseKit_p_2021.3.0.3219.sh

You’ll be watching something like this on your terminal before a new window opens, don’t worry! It’s part of the process.

intel fortran installation 2

It will open a GUI interface:

intel fortran installation 3

Click on the “Continue” button, and Intel oneAPI Base Toolkit will start downloading:

intel fortran installation 4

Once the download finishes, you should see this window:

intel fortran installation 5

You will see what is included exactly in this API. It’s strongly recommended installing every package it contains. Accept the terms of the license agreement and push on the “Continue” button.

intel fortran installation 6

After that, the next page is a kind of validation one. If something is missing, it warns you.

For example, in this case, we got a warning about the GPU driver, but let’s just skip it and continue with the process, because, as we can see, the product can still be used with CPU.

So just click on the right arrow button.

intel fortran installation 7

In this part, if you have installed Eclipse IDE and want to integrate the libraries into it, select the first, otherwise, just skip the integration and click on the right arrow button. Once done, you’ll be able to see the last part before the complete installation.

intel fortran installation 8

Read the Intel Software Improvement Program and enter your choice on the collection of your information, and push the “Install” button. Finally, the installation will be starting.

intel fortran installation 9

The duration of the installation will depend on how fast your internet connection is, be patient and let Intel finish the task.

Once the task finishes, you’ll see something like this:

intel fortran installation 10

It means the installation of Intel oneAPI Base Toolkit has finished; now, let’s start with the next one.

Installing Intel oneAPI HPC toolkit

To be honest, it’s almost the same process, so it’s going to be a little bit faster.

Let’s start by using this command:

wget https://registrationcenter-download.intel.com/akdlm/irc_nas/17912/l_HPCKit_p_2021.3.0.3230.sh
intel fortran installation 11

Once the above process finishes, use the next command:

sudo bash l_HPCKit_p_2021.3.0.3230.sh
intel fortran installation 12

After that, the installation process will start like the one you saw before.

intel fortran installation 13

Click on the continue and it starts downloading:

intel fortran installation 14

Once finished (this download is really fast), the next window will appear on your desk. Accept the terms and conditions and click Continue.

intel fortran installation 15

As it was done before, let’s skip the integration of the libraries with any IDE.

intel fortran installation 16

And finally, enter your choice for the collection of your information and click on the “Install” button.

intel fortran installation 17

The libraries will start to be downloaded and installed into your system, just wait until this process finishes. Remember, the speed of the download depends on your internet connection, so be patient.

intel fortran installation 18

When the process finishes, click the Finish button.

intel fortran installation 19.png
Intel Fortran Installation step 19

And that is practically the key to the complete Elk-code installation and functionality. These two libraries are essential for the correct execution.

Configure the compilers

Finally, let’s run the next command line to start these two libraries inside the terminal:

source /opt/intel/oneapi/setvars.sh
intel fortran installation 20.png

Now go to this directory:

cd /opt/intel/oneapi/mkl/2021.3.0/interfaces

Inside this folder, you’ll find others, but the important ones are:

  • fftw2xc
  • fftw2x_cdft
  • fftw2xf
  • fftw3xc
  • fftw3x_cdft
  • fftw3xf
  • mklmpi

Inside every folder shown above, you will have to run the next command:

make libintel64

One important thing is that from now, every time you use Elk-code, you have to run the next line on your terminal to habilitate these two libraries.

source /opt/intel/oneapi/setvars.sh

With these steps before, you’re ready for the most important step, the installation of Elk-code on your Linux distribution.

Installing Elk code on Ubuntu

Let’s start downloading, of course, the Elk code, which latest version is located on the SourceForge page.

starting installation 00

Extract the downloaded folder.

starting installation 01

Now, let’s download the Wannier90 latest stable version library, which will help you to compute advanced electronic properties of materials with high efficiency and accuracy,  from its official website.

starting installation 03

Once downloaded the .tar.gz file, let’s located it on the Files app and do double click on it to extract its content.

starting installation 04

Navigate into the extracted folder and open it in the terminal.

starting installation 06

Type these commands one by one:

source /opt/intel/oneapi/setvars.sh
cp ./config/make.inc.ifort ./make.inc
make
make lib
cp libwannier.a ../elk-7.2.42/src/
cd ../
starting installation 07

We’re about to finish. Continue typing the next command on your terminal, one by one.

wget http://www.tddft.org/programs/libxc/down.php?file=5.1.4/libxc-5.1.4.tar.gz
starting installation 08

Now run these command one by one:

mv down.php\?file\=5.1.4%2Flibxc-5.1.4.tar.gz libxc-5.1.4.tar.gz
tar -zxvf libxc-5.1.4.tar.gz
cd libxc-5.1.4
./configure CC=icc FC=ifort
make
make check
sudo make install
cp /opt/etsf/lib/libxc.a ../elk-7.2.42/src/
cp /opt/etsf/lib/libxcf90.a ../elk-7.2.42/src/
starting installation 09

At the end of the process, you’ll have something like this on your terminal:

starting installation 10

Please, close the terminal and, finally, it’s time to do the last part, let’s go direct to the previous Elk code folder extracted. Once there, open the folder into the terminal.

starting installation 11

And type the next two commands:

source /opt/intel/oneapi/setvars.sh
cp /opt/intel/oneapi/mkl/2021.3.0/include/mkl_dfti.f90 src/

Almost there. Start the setup:

./setup

Your terminal should look like this:

starting installation 15

You write number 1 because you have installed the Intel Fortran compiler.

Don’t close the terminal; let’s return to the Elk code folder on the Files app and open the file called “make.inc”:

starting installation 16

Erase every word it contains, and enter this instead:

MAKE = make
F90 = mpiifort
F90_OPTS = -O3 -ip -xHost -qopenmp
F77 = mpiifort
F77_OPTS = -O3 -ip -xHost -qopenmp
AR = xiar
LIB_SYS =
SRC_OMP =
SRC_MPI =

LIB_LPK = -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread
#LIB_LPK = -L/opt/intel/oneapi/mkl/2021.3.0/lib/intel64 -lmkl_cdft_core -lmkl_intel_ilp64 -lmkl_intel_thread -lmkl_core -lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl
SRC_MKL =

LIB_libxc = libxcf90.a libxc.a
SRC_libxc = libxcf90.f90 libxcifc.f90

SRC_FFT = mkl_dfti.f90 zfftifc_mkl.f90

LIB_W90 = libwannier.a
SRC_W90S =

SRC_OBLAS = oblas_stub.f90
SRC_BLIS = blis_stub.f90

Save the file and return to the terminal. Finally, just type:

make
starting installation 18

And all right! After this last step finishes, you’ll have installed Elk code on your Linux system.

Great! This last step is a little bit dilatory, but relax, it was all you have you do. You have finally finished all the processes. Congratulations!

Personal conclusion

This process could be a little bit exhaustive, but every step is very important for the correct functionality of the software. I really hope that if you are a scientist or you just want to be curious about this topic, this post results very helpful for you.

On the other hand, if you want to know more about how Elk code can help you on calculations, there is a great video about obtaining an equation of state using Elk code. Good luck!



from It's FOSS https://ift.tt/3lm3Rs3
via IFTTT