How to Connect Wi-Fi from Linux Terminal Using Nmcli Command

There are several command-line tools for managing a wireless network interface in Linux systems. A number of these can be used to simply view the wireless network interface status (whether it is up or down, or if it is connected to any network), such as iw, iwlist, ip, ifconfig and others.

And some are used to connect to a wireless network, and these include: nmcli, is a command-line tool used to create, show, edit, delete, enable, and disable network connections, as well as control and display network device status.

First start by checking the name of your network device using the following command. From the output of this command, the device name/interface is wlp1s0 as shown.

$ iw dev
phy#0
Interface wlp1s0
ifindex 3
wdev 0x1
addr 38:b1:db:7c:78:c7
type managed

Next, check the Wi-Fi device connection status using the following command.

iw wlp2s0 link
Not connected.


From the output above the device is not connected to any network, run the following command to scan available Wi-Fi networks.

sudo iw wlp2s0 scan
command failed: Network is down (-100)

Considering the output of the above command, the network device/interface is DOWN, you can turn it On (UP) with the ip command as shown.

$ sudo ip link set wlp1s0 up

If you get the following error, that means your Wifi is hard blocked on Laptop or Computer.

RTNETLINK answers: Operation not possible due to RF-kill

To remove or unblock you need to run the following command to solve the error.

$ echo "blacklist hp_wmi" | sudo tee /etc/modprobe.d/hp.conf
$ sudo rfkill unblock all

Then try to turn ON the network device once more, and it should work this time around.

$ sudo ip link set wlp1s0 up

If you know the ESSID of the Wi-Fi network you wish to connect to, move to the next step, otherwise issue the command below to scan available Wi-Fi networks again.

$ sudo iw wlp1s0 scan

And lastly, connect to the wi-fi network using following command, where Hackernet (Wi-Fi network SSID) and localhost22 (password/pre-shared key).

$ nmcli dev wifi connect Hackernet password localhost22

Once connected, verify your connectivity by doing a ping to an external machine and analyze the output of the ping as shown.

$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=48 time=61.7 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=48 time=61.5 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=48 time=61.6 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=48 time=61.3 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=48 time=63.9 ms
^C
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 61.338/62.047/63.928/0.950 ms

That’s It! I hope this article helped you to setup your Wi-Fi network from the Linux command line. As always, if you found this article useful, share your thoughts in the comment section below.

Tig – A Command Line Browser for Git Repositories

In a recent article, we’ve described how to install and use GRV tool for viewing Git repositories in Linux terminal. In this article, we would like to introduce to you another useful command-line based interface to git called Tig.

Tig is a free open source, cross platform ncurses-based text-mode interface for git. It is a straight-forward interface to git that can help in staging changes for commit at chunk level and works as a pager for output from different Git commands. It can run on Linux, MacOSX as well as Windows systems.

How to Install Tig in Linux Systems

To install Tig in Linux, you need to first clone the Tig repository to your system and install it as shown.

$ git clone git://github.com/jonas/tig.git
$ make
$ make install

By default, tig will be installed under $HOME/bin directory, but ff you wish to install it in another directory under in your PATH, set prefix to the desired path, as shown.

$ make prefix=/usr/local
$ sudo make install prefix=/usr/local


Once you have installed Tig on your system, using the cd command get into your any of your local git repositories and run tig without any arguments, which should show all commits for the repository.

$ cd ~/bin/shellscripts/
$ tig 
Show Git Repository Commits

Show Git Repository Commits

To quit Tig, press q to close it.

Display Repository Activity Log

To display a log activities of the above repository, use the log sub-command.

$ tig log
View Git Repository Log

View Git Repository Log

Show Repository Objects

The show sub-command allows you to display one or more objects such as commits and many more, in a more detailed way, as shown.

$ tig show commits
Show Git Repository Objects

Show Git Repository Objects

Search A Pattern/Word in Git Files

You can also search for a particular pattern (for example the word check) in your git files with the grep sub-command, as shown.

$ tig grep check 
Search a Work in Git Repository

Search a Work in Git Repository

Display Git Repository Status

To display status of your git repository use status sub-command as shown.

$ tig status
Show Git Repository Status

Show Git Repository Status

For more Tig usage, please refer to help section or visit the Tig Github repository at https://github.com/jonas/tig.

$ tig -h

Tig is a simple ncurses-based interface to git repositories and mainly act as a Git repository browser. Give us your feedback or ask any questions via the comment form below.

Agedu – A Useful Tool for Tracking Down Wasted Disk Space in Linux

Assume you are running short on disk space and you wanted to free up, by searching something that’s a waste of space and removing it or moving it to an archive medium. How do you track down right stuff to delete, that saves maximum space?

Linux provides a standard du command, which scans entire disk and shows you which directories hold the huge amount of data. That can assist you narrow your search to the things most useful deleting.

However, that only shows you what’s huge. What you actually want to know is what’s too huge. By default, du command will not let you differentiate between data that’s huge because you are doing something that needs it to be huge, and data that’s huge because you unpacked it once and ignored about it.

Most Linux file systems, by default only shows when a file was last accessed, but not shown when it was written, modified or even read. So if you created a huge amount of data years ago, forgot to delete it and have never used it since, then it is important to use those last-access time stamps to know the difference between used and unused data.


Agedu pronounced as (age dee you) is an open source and free utility (much like du command) that helps system administrators to track down wasted disk space used by old files and delete them to free up some space.

Agedu does a complete scan and produces reports that shows how much disk space is utilized by each directory and sub directory along with the last-access times of files. In simple words, it simply helps you to free up disk space.

Agedu Features

  1. Creates graphical reports.
  2. Produces data output in HTML format.
  3. Generates HTML reports with hyperlinks to other directories for easy navigation to gather reports.
  4. Provides more configurable options.

How Does Agedu Works?

From the man page:

agedu is a program which does this. It does basically the same sort of disk scan as du, but it also records the last-access times of everything it scans. Then it builds an index that lets it efficiently generate reports giving a summary of the results for each subdirectory, and then it produces those reports on demand.

How to Install Agedu in Linux Systems

On Debian/Ubuntu, agedu is available to install from the default system repositories using following apt-get command as shown.

$ sudo apt-get install agedu

On RHEL/CentOS, you need to turn on EPEL repository to install Agedu using following yum command as shown.

# yum install epel-release
# yum install agedu

Fedora and Arch Linux users, simply type the following command to install Agedu.

$ sudo dnf install agedu [On Fedora]
$ sudo yaourt -S agedu [On Arch Linux]

On other Linux distributions, you can compile Agedu from source as shown.

$ wget https://www.chiark.greenend.org.uk/~sgtatham/agedu/agedu-20180329.af641e6.tar.gz
$ tar -xvf agedu-20180329.af641e6.tar.gz
$ cd agedu-20180329.af641e6
$ ./configure
$ make
$ sudo make install

How to Track Wasted Disk Space Using Agedu

The following command will do a complete scan of /home/tecmint directory and its sub-directories and creates a special index file containing its data structure.

# agedu -s /home/tecmint/

Scan Linux System for Disk Space

Built pathname index, 232578 entries, 22842517 bytes of index Faking directory atimes
Building index
Final index file size = 97485984 bytes

Next, type the following command to query newly created index file.

# agedu -w
Sample Output :
Using Linux /proc/net magic authentication
URL: http://localhost:34895/

Now, type the following command to open the URL using any web browser.

# http://localhost:34895/
Graphical Output :

The below screen shows the graphical representation of disk usage of /home/tecmint along with its sub directories using various colors to show the difference between disused and recently accessed data.

Click on any sub directory to see the reports of its sub-directories. To terminate this mode, just press [CTRL+D] on command line.

Linux Disk Space Usage

Linux Disk Space Usage

To create and set custom port number for agedu, type the following command.

# agedu -w --address 127.0.0.1:8081
Sample Output :
Using Linux /proc/net magic authentication
URL: http://127.0.0.1:8081/

Enable password protection for Agedu using the following command.

# agedu -w --address 127.0.0.1:8081 --auth basic

Agedu Password Protect Reports

Username: agedu
Password: n2tx16jejnbzmuur
URL: http://127.0.0.1:8081/
Password Protect Agedu

Password Protect Agedu

Linux Directory Disk Space Usage

Linux Directory Disk Space Usage

Access Agedu reports using terminal mode.

# agedu -t /home/tecmint

Show Disk Space Usage in Terminal

8612 /home/tecmint/.AndroidStudio3.1
3684 /home/tecmint/.PlayOnLinux
604 /home/tecmint/.ScreamingFrogSEOSpider
2416 /home/tecmint/.TelegramDesktop
61960 /home/tecmint/.Write
1508 /home/tecmint/.adobe
20 /home/tecmint/.aptitude
48 /home/tecmint/.byobu
1215948 /home/tecmint/.cache
3096 /home/tecmint/.cinnamon
1421828 /home/tecmint/.config
12 /home/tecmint/.dbus
8 /home/tecmint/.emacs.d
780 /home/tecmint/.fonts
...

You see the output similar to du command. Let’s see the old files which are not accessed for long time. For example, to see only old files that are not accessed in last 12 months or more.

# agedu -t /home/tecmint -a 12m

Show Files Not Accessed in Last 12 Months

2416 /home/tecmint/.TelegramDesktop
1500 /home/tecmint/.adobe
46776 /home/tecmint/.cache
1840 /home/tecmint/.cinnamon
142796 /home/tecmint/.config
636 /home/tecmint/.gconf
88 /home/tecmint/.gimp-2.8
12 /home/tecmint/.gnome
112 /home/tecmint/.java
108 /home/tecmint/.kde
8 /home/tecmint/.links2
16 /home/tecmint/.linuxmint
6804 /home/tecmint/.local
12 /home/tecmint/.mindterm
40920 /home/tecmint/.mozilla
4 /home/tecmint/.oracle_jre_usage
12 /home/tecmint/.parallel
24 /home/tecmint/.shutter
6840 /home/tecmint/.softmaker
336 /home/tecmint/.themes
....

Let’s find out how much disk space taken by MP3 files by using following command.

# agedu -s . --exclude '*' --include '*.mp3'

Again to see reports run the following command.

# agedu -w

To deleted files and free up disk space, use the following command.

# rm -rf /downloads/*.mp3

How to remove agedu index file? First see the size of the index file with the following command.

# ls agedu.dat -lh
Sample output :
-rw------- 1 tecmint tecmint 35M Apr 10 12:05 agedu.dat

To remove index file, just enter.

# agedu -R

For more information on agedu command options and usage, please read the man pages or visit agedu home page.

# man agedu

If you know any tool that we haven’t mentioned in this site. Please let us know about it via comment box below.

5 ‘stat’ Command Examples for Linux Newbies

stat command is a useful utility for viewing file or file system status. It retrieves information such as file type; access rights in octal and human-readable; SELinux security context string; time of file birth, last access, last data modification, last status change in both human-readable and in seconds since Epoch, and much more.

It has an option to specify a custom format instead of the default, for displaying information. In this guide, we will look at five stat command examples for Linux newbies.

Check Linux File Status

1. The easiest way to use stat is to provide it a file as an argument. The following command will display the size, blocks, IO blocks, file type, inode value, number of links and much more information about the file /var/log/syslog, as shown in the screenshot:

$ stat /var/log/syslog
File: '/var/log/syslog'
Size: 26572 Blocks: 56 IO Block: 4096 regular file
Device: 80ah/2058d Inode: 8129076 Links: 1
Access: (0640/-rw-r-----) Uid: ( 104/ syslog) Gid: ( 4/ adm)
Access: 2018-04-06 09:42:10.987615337 +0530
Modify: 2018-04-06 11:09:29.756650149 +0530
Change: 2018-04-06 11:09:29.756650149 +0530
Birth: -

Check File System Status

2. In the previous example, stat command treated the input file as a normal file, however, to display file system status instead of file status, use the -f option.

$ stat -f /var/log/syslog
File: "/var/log/syslog"
ID: ce97e63d2201c974 Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 84769790 Free: 16012830 Available: 11700997
Inodes: Total: 21544960 Free: 20995459


You can also provide a directory/filesystem as an argument as shown.

$ stat -f /
File: "/"
ID: ce97e63d2201c974 Namelen: 255 Type: ext2/ext3
Block size: 4096 Fundamental block size: 4096
Blocks: Total: 84769790 Free: 16056471 Available: 11744638
Inodes: Total: 21544960 Free: 21005263

Enable Following of Symbolic Links

3. Since Linux supports links (symbolic and hard links), certain files may have one or more links, or they could even exist in a filesystem.

To enable stat to follow links, use the -f flag as shown.

$ stat -L /
File: '/'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 80ah/2058d Inode: 2 Links: 25
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-04-09 10:55:55.119150525 +0530
Modify: 2018-02-20 11:15:54.462893167 +0530
Change: 2018-02-20 11:15:54.462893167 +0530
Birth: -

Use a Custom Format To Display Information

4. stat also allows you to use a particular or custom format instead of the default. The -c flag is used to specify the format used, it prints a newline after each use of format sequence.

Alternatively, you can use the --printf option which enables interpreting of backslash escapes sequences and turns off printing of a trailing newline. You need to use \n in the format to print a new line, for example.

# stat --printf='%U\n%G\n%C\n%z\n' /var/log/secure

Meaning of the format sequences for files used in above example:

  • %U – user name of owner
  • %G – group name of owner
  • %C – SELinux security context string
  • %z – time of last status change, human-readable

5. Here is an example which shows using of accepted format sequences for file systems.

$ stat --printf='%n\n%a\n%b\n' /

Meaning of the format sequences used in the above command.

  • %n – shows the file name
  • %a – print free blocks available to non-superuser
  • %b – outputs total data blocks in file system

Print Information in Terse Form

6. The -t option can be used to print the information in terse form.

$ stat -t /var/log/syslog
/var/log/syslog 12760 32 81a0 104 4 80a 8129076 1 0 0 1523251873 1523256421 1523256421 0 4096

As a last note, your shell may have its own version of stat, please refer to your shell’s documentation for details about the options it supports. To see all accepted output format sequences, refer to the stat man page.

$ man stat 

In this article, we have explained five stat command examples for Linux newbies. Use the feedback form below to ask any questions.

Newsboat – An RSS/Atom Feed Reader for Linux Terminals

Newsboat is a free, open source RSS/Atom feed reader for Linux terminals. It is originally created from Newsbeuter, a text based RSS/Atom feed reader, however, Newsbeuter is not actively maintained.

RSS/Atom are a number of widely-used XML formats to communicate, publish and syndicate articles, for instance news or blog articles. Newsboat is created to be used on text terminals such as GNU/Linux, FreeBSD or macOS.

Read Also: Newsroom – A Modern CLI to Get Your Favorite News in Linux

In this article, we will show how to install and use Newsboat – a command-line feed reader to read your favorite news or articles from the Linux terminal.

Requirements:

  • GCC 4.9 or later, or Clang 3.6 or later
  • STFL (version 0.21 or later)
  • pkg-config
  • GNU gettext (only for systems that do not offer gettext in the libc)
  • libcurl (version 7.18.0 or later)
  • libxml2, xmllint, and xsltproc
  • json-c (version 0.11 or later)
  • SQLite3 (version 3.5 or later)
  • DocBook XML
  • DocBook SML
  • asciidoc

How to Install Newsboat in Linux Systems


Newsboat is available to install from the snap package management system, but first you have to install snapd on your system to install Newsboat as shown.

------------- On Debian/Ubuntu/Linux Mint ------------- $ sudo apt install snapd $ sudo snap install newsboat ------------- On Fedora 22+ -------------
$ sudo dnf install snapd
$ sudo snap install newsboat

Alternatively, you can install Newsboat from source code to use some of the latest features, but before that you need to fully install dependencies with the command that follows.

------------- On Debian/Ubuntu/Linux Mint ------------- $ sudo apt update
$ sudo apt install libncursesw5-dev ncurses-term debhelper libjson0 libjson0-dev libxml2-dev libstfl-dev libsqlite3-dev perl pkg-config libcurl4-gnutls-dev librtmp-dev libjson-c-dev asciidoc libxml2-utils xsltproc docbook-xml docbook-xsl bc
$ wget http://www.clifford.at/stfl/stfl-0.24.tar.gz
$ tar -xvf stfl-0.24.tar.gz
$ cd stfl-0.24
$ make
$ sudo make install
------------- On RHEL and CentOS -------------
# yum install libncursesw5-devel ncurses-term libjson0-devel libxml2-devel libstfl-devel libsqlite3-devel perl pkgconfig libcurl4-gnutls-devel librtmp-devel libjson-c-devel asciidoc libxml2-devel libxslt-devel debhelper docbook-style-xsl docbook-style-xml bc
# wget http://www.clifford.at/stfl/stfl-0.24.tar.gz
# tar -xvf stfl-0.24.tar.gz
# cd stfl-0.24
# make
# make install 

Then clone the Newsboat repository from Github to your system, and install it as shown.

$ git clone git://github.com/newsboat/newsboat.git
$ cd newsboat $ make
$ sudo make install

How to Use Newsboat Feed Reader in Linux Terminal

In this section, we will explain how to use Newsboat to read RSS feed from a site, for example tecmint.com First of all, we will need to get the rss-feed link for tecmint.com from a browser and copy it (you can use any website feed url).

https://www.tecmint.com/feed/

Afterwards, save it in a file for later usage.

$ echo "https://www.tecmint.com/feed/" >rss_links.txt

Now you can read RSS feed from Tecmint.com using following command with the switches -u (specifies file containing RSS feed URLs) and -r (refresh feeds on start) as follows.

$ newsboat -ru rss_links.txt
Read RSS Feed in Linux Terminal

Read RSS Feed in Linux Terminal

To select a topic, use the Up and Down arrows to navigate, then press Enter on the topic you want. This examples shows that we have selected topic number 5 from the list.

Select Feed Topic in Linux Terminal

Select Feed Topic in Linux Terminal

To open a topic in the browser, you can press o, and to quit the program, hit q.

You can see all the options and usages by running the following command.

$ newsboat -h

For more information, visit Newsboat Github Repository: https://github.com/newsboat/newsboat.

Read Also: Cricket-CLI – Watch Live Cricket Scores in Linux Terminal

Newsboat is a simple and intuitive RSS/Atom feed reader for Linux terminals. Try it out and give us your feedback via the comment form below.

System Tar and Restore – A Versatile System Backup Script for Linux

System Tar and Restore is a versatile system backup script for Linux systems. It comes with two bash scripts, the main script star.sh and a GUI wrapper script star-gui.sh, which perform in three modes: backup, restore and transfer.

Read Also: 14 Outstanding Backup Utilities for Linux Systems

Features

  1. Full or partial system backup
  2. Restore or transfer to the same or different disk/partition layout.
  3. Restore or transfer backup to an external drive such as USB, SD card etc.
  4. Restore a BIOS-based system to UEFI and vice versa.
  5. Arrange a system in a virtual machine (such as virtualbox), back it up and restore it in a normal system.

Requirements:

  1. gtkdialog 0.8.3 or later (for the gui).
  2. tar 1.27 or later (acls and xattrs support).
  3. rsync (for Transfer Mode).
  4. wget (for downloading backup archives).
  5. gptfdisk/gdisk (for GPT and Syslinux).
  6. openssl/gpg (for encryption).

How to Install System Tar and Restore Tool in Linux

To install System Tar and Restore program, you need to first install all the required software packages as listed below.

$ sudo apt install git tar rsync wget gptfdisk openssl [On Debian/Ubuntu]
# yum install git tar rsync wget gptfdisk openssl [On CentOS/RHEL]
# dnf install git tar rsync wget gptfdisk openssl [On Fedora]

Once all the required packages installed, now it’s time to download these scripts by cloning the system tar and restore repository to your system and run these scripts with root user privileges, otherwise, use the sudo command.

$ cd Download
$ git clone https://github.com/tritonas00/system-tar-and-restore.git
$ cd system-tar-and-restore/
$ ls
Install System Tar and Restore

Install System Tar and Restore

Linux System Backup


First create a directory where your system backup files will be stored (you can actually use any other directory of your choice).

$ sudo mkdir /backups

Now run the following command to create a system backup file in /backups directory, the archive file will be compressed using the xz utility, where the flags are.

  • -i – specifies the operation mode(0 meaning backup mode).
  • -d – specifies destination directory, where the backup file will be stored.
  • -c – defines the compression utility.
  • -u – allows for reading additional tar/rsync options.
$ sudo ./star.sh -i 0 -d /backups -c xz -u "--warning=none"
Perform Linux System Backup

Perform Linux System Backup

To exclude the /home in the backup, add the -H flag, and use gzip compression utility as shown.

$ sudo ./star.sh -i 0 -d /backups -c gzip -H -u "--warning=none"

Restore Linux System Backup

You can also restore a backup as in the following command.

$ sudo ./star.sh -i 1 -r /dev/sdb1 -G /dev/sdb -f /backups/backup.tar.xz

where the option are:

  • -i – specifies operation mode (1 meaning restore mode).
  • -r – defines targeted root (/) partition.
  • -G – defines the grub partition.
  • -f – specified the backup file path.

The final example show how to run it in transfer mode (2). The new option here is -b, which sets the boot partition.

$ sudo ./star.sh -i 2 -r /dev/sdb2 -b /dev/sdb1 -G /dev/sdb

In addition, if you have mounted /usr and /var on separate partitions, considering the previous command, you can specify them using the -t switch, as shown.

$ sudo ./star.sh -i 2 -r /dev/sdb2 -b /dev/sdb1 -t "/var=/dev/sdb4 /usr=/dev/sdb3" -G /dev/sdb

We have just looked a few basic options of System Tar and Restore script, you can view all available options using the following command.

$ star.sh --help 

If you are accustomed to graphical user interfaces, you can use the GUI wrapper star-gui.sh instead. But you need to install gtkdialog – used to create graphical (GTK+) interfaces and dialog boxes using shell scripts in Linux.

System Tar and Restore Gui

System Tar and Restore Gui

You can find more command-line usage examples from the System Tar and Restore Github repository: https://github.com/tritonas00/system-tar-and-restore.

Summary

System Tar and Restore is a simple yet powerful, and versatile system backup script for Linux systems. Try it out comprehensively and share your thoughts about it via the feedback form below.

Newsroom – A Modern CLI to Get Your Favorite News in Linux

If you are a command-line addict like me, then you would always want to do everything such as controlling your Linux systems (local or remote), programming, searching Google using Googler, playing text-based games, reading your favorite news and much more from within a terminal window.

Okay, Linux newbies (or possibly any other Linux users out there) are probably asking, “how can i get latest news from the command-line?” In this article, we are going to show you how to do this using newsroom.

Read Also: Cricket-CLI – Watch Live Cricket Scores in Linux Terminal

Newsroom is a simple, free open-source modern command-line tool to get your favorite news in Linux. It is developed using JavaScript (NodeJS to be specific), so it is cross-platform and runs on Linux systems, Mac OSX as well as Windows.


The default newsroom sources are: hackernews, techcrunch, inside, bnext, ithome, wanqu, nodeweekly, codetengu and gankio. You can configure your own sources via OPML (Outline Processor Markup Language) – an XML-based format designed for exchange of outline-structured information between applications running on different operating systems and environments.

Linux Terminal Newsreader

Linux Terminal Newsreader

Requirements:

  1. NPM – Default NodeJS package manager; you can install NodeJS and NPM at once on your Linux system.

How to Install Newsroom in Linux Systems

Once you have NPM installed on your system, you install newsroom with root privileges using the sudo command, as follows (the -g switch means install globally: to be used by all users on the system):

$ sudo npm install -g newsroom-cli

Once you have successfully installed newsroom, the CLI will register the newsroom and nr commands in your shell. You can start using it as follows, it will take you to an interactive command line interface where you can choose your news source:

$ newsroom 
News Sources

News Sources

Use the Up and Down arrows to select a news source from a list of predefined sources, as shown below.

Select News Source

Select News Source

After choosing a news source, all news titles will be shown as in the following screen shot, then you can select an item by pressing the Space bar, after making a selection, the item will be indicated by a green colored bullet, as shown in the screen shot below. You can press Enter to read it in detail from a web browser.

Select News Topic

Select News Topic

To terminate the command-line, type [Ctrl+C].

You can also provide the source you want to get news from and the number of news items to be displayed as shown.

$ newsroom [news_source] [number_of_news_items]

For example:

$ newsroom hackernews 3

Last but not least, you can also use your own awesome OPML file, as follows. This way, you can add your own news sources such as tecmint.com, fossmint.com, etc.

$ newsroom -o <your-awesome-list.opml>

To view the newsroom help message, use the command below.

$ newsroom --help

For more information check out Newsroom Github repository and learn how to create OPML file.

Newsroom is a great way to get your favorite news in Linux on the command-line. Try it out and share your thoughts about it, with us via the feedback form below.

Cricket-CLI – Watch Live Cricket Scores in Linux Terminal

‘,
enableHover: false,
enableTracking: true,
buttons: { twitter: {via: ‘tecmint’}},
click: function(api, options){
api.simulateClick();
api.openPopup(‘twitter’);
}
});
jQuery(‘#facebook’).sharrre({
share: {
facebook: true
},
template: ‘{total}’,
enableHover: false,
enableTracking: true,
click: function(api, options){
api.simulateClick();
api.openPopup(‘facebook’);
}
});
jQuery(‘#googleplus’).sharrre({
share: {
googlePlus: true
},
template: ‘{total}’,
enableHover: false,
enableTracking: true,
urlCurl: ‘https://www.tecmint.com/wp-content/themes/tecmint/js/sharrre.php’,
click: function(api, options){
api.simulateClick();
api.openPopup(‘googlePlus’);
}
});
jQuery(‘#linkedin’).sharrre({
share: {
linkedin: true
},
template: ‘{total}’,
enableHover: false,
enableTracking: true,
buttons: {
linkedin: {
description: ‘Cricket-CLI – Watch Live Cricket Scores in Linux Terminal’,media: ‘https://www.tecmint.com/wp-content/uploads/2018/03/Watch-Live-Cricket-Score-in-Linux-Terminal.png’ }
},
click: function(api, options){
api.simulateClick();
api.openPopup(‘linkedin’);
}
});
// Scrollable sharrre bar, contributed by Erik Frye. Awesome!
var shareContainer = jQuery(“.sharrre-container”),
header = jQuery(‘#header’),
postEntry = jQuery(‘.entry’),
$window = jQuery(window),
distanceFromTop = 20,
startSharePosition = shareContainer.offset(),
contentBottom = postEntry.offset().top + postEntry.outerHeight(),
topOfTemplate = header.offset().top;
getTopSpacing();
shareScroll = function(){
if($window.width() > 719){ var scrollTop = $window.scrollTop() + topOfTemplate,
stopLocation = contentBottom – (shareContainer.outerHeight() + topSpacing);
if(scrollTop > stopLocation){
shareContainer.offset({top: contentBottom – shareContainer.outerHeight(),left: startSharePosition.left});
}
else if(scrollTop >= postEntry.offset().top-topSpacing){
shareContainer.offset({top: scrollTop + topSpacing, left: startSharePosition.left});
}else if(scrollTop 1024)
topSpacing = distanceFromTop + jQuery(‘.nav-wrap’).outerHeight();
else
topSpacing = distanceFromTop;
}
});
]]>

Ternimal – Show Animated Lifeform in Your Linux Terminal

Ternimal (not terminal, yes, we also read it as terminal the first time) is a simple, very flexible program that simulates an animated lifeform in your terminal using Unicode block symbols. It simply colors distance fields from a segment of a meandering path.

It works in most Linux terminal emulators and with most monospaced fonts, and has been tested on Linux (almost all terminal emulators render ternimal flawlessly), Mac OS as well as Windows.

Read Also: Impress Your Friends with This Fake Hollywood Hacker Terminal

Install Ternimal in Linux Systems

Ternimal has no dependencies apart from the Rust Standard Library (>= 1.20) must be installed, at which point Ternimal can be built with as shown.

$ git clone https://github.com/p-e-w/ternimal.git
$ cd ternimal
$ rustc -O ternimal.rs


After building it, you can start using ternimal to display different colored animated lifeforms such as snakes, the rainbow, multiple disconnected entities moving in a coordinated fashion and more.

Next, to run ternimal like any other command on your system, move the executable built above, into a directory in your PATH environment variable (for example ~/bin/).

$ mkdir ~/bin #create bin in your home folder if it doesn’t exist.
$ cp ternimal ~/bin 

The following are just a few examples of what ternimal can do.

Swarm

The following command will display a swarm, you can terminate it by pressing [Ctrl+C].

$ ternimal length=600 thickness=0,4,19,0,0

Animated Swarm in Linux Terminal

Anaconda

This command will display an animated snake.

$ ternimal length=100 thickness=1,4,1,0,0 radius=6,12 gradient=0:#666600,0.5:#00ff00,1:#003300

Animated Snake in Linux Terminal

Rainbow

And the following command will display a thick rainbow.

$ ternimal length=20 thickness=70,15,0,1,0 padding=10 radius=5 gradient=0.03:#ffff00,0.15:#0000ff,0.3:#ff0000,0.5:#00ff00

Animated Rainbow in Linux Terminal


As the developer put it right, “from a practical perspective, the program is not very useful. It does, however, contain quite a bit of cool technology and math”.

Ternimal Github repository: https://github.com/p-e-w/ternimal

Ternimal is just one of those Linux fun terminal programs for exercising your brain (or possibly eyes); after working on a command-line for a long period of time, you can call up one of those ternimals (especially a swarm) and just gaze at it. Use the feedback form below to share your thoughts about it.

Tilix – A New GTK 3 Tiling Terminal Emulator for Linux

There are multiple terminal emulators you can find on the Linux platform today, with each of them offering users some remarkable features.

Don’t Miss: 20 Best Terminal Emulators for Linux

But sometimes, we find it difficult to choose which terminal emulator to work with, depending on our preferences. In this overview, we shall cover one exciting terminal emulator for Linux called Tilix.

Tlix (previously called Terminix – name changed due to a trademark issue) is a tiling terminal emulator that uses GTK+ 3 widget called VTE (Virtual Terminal Emulator). It is developed using GTK 3 with aims of conforming to GNOME HIG (Human Interface Guidelines).

Additionally, this application has been tested on GNOME and Unity desktops, although users have also tested it successfully on various other Linux desktops environments.


Just like the rest of Linux terminal emulators, Tilix comes with some illustrious features and these include:

  1. Enables users to layout terminals in any style by splitting them vertically or horizontally
  2. Supports drag and drop functionality to re-arrange terminals
  3. Supports detaching of terminals from windows using drag and drop
  4. Supports input synchronization between terminals, therefore commands typed in one terminal can be reproduced in another
  5. Terminal grouping can be saved and loaded from disk
  6. Supports transparent backgrounds
  7. Allows use of background images
  8. Supports automatic profile switches based on hostname and directory
  9. Also supports notification for out of view process completion
  10. Color schemes stored in files and new files can be created for custom color schemes

How to Install Tilix on Linux Systems

Let us now uncover the steps you can follow to install Tilix on the various Linux distributions, but before we move any further, we have to list the various requirements for Tilix to work on Linux.

Dependencies

To work very well, the application requires the following libraries:

  1. GTK 3.14 and above
  2. GTK VTE 0.42 and above
  3. Dconf
  4. GSettings
  5. Nautilus-Python for Nautilus integration

If you have all the above requirements on your system, then proceed to install Tilix as follows.

On RHEL/CentOS 7 and Fedora 22-27

First, you need to add the package repository by creating a file /etc/yum.repos.d/tilix.repo using your favorite text editor as follows.

# vi /etc/yum.repos.d/tilix.repo

Then copy and paste the text below into the file above:

[ivoarch-Tilix]
name=Copr repo for Tilix owned by ivoarch
baseurl=https://copr-be.cloud.fedoraproject.org/results/ivoarch/Tilix/epel-7-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/ivoarch/Tilix/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1

Save the file and exit.

Then update your system and install Tilix as shown:

---------------- On RHEL/CentOS 7 ---------------- # yum update
# yum install tilix
---------------- On Fedora 22-27 ---------------- # dnf update
# dnf install tilix

On Ubuntu and Linux Mint

There is no official package repository for Ubuntu/Linux Mint, but you can use WebUpd8 PPA to install it as show.

$ sudo add-apt-repository ppa:webupd8team/terminix
$ sudo apt-get update
$ sudo apt-get install tilix

On Debian, tilix added to official repository and can be installed using command:

$ sudo apt-get install tilix

Alternatively, you can install using source code manually using the commands below:

$ wget -c https://github.com/gnunn1/tilix/releases/download/1.7.7/tilix.zip
$ sudo unzip tilix.zip -d / $ sudo glib-compile-schemas /usr/share/glib-2.0/schemas/

OpenSUSE users can install tilix from the default repository and Arch Linux users can install the AUR Tilix package.

# pacman -S tilix

Tilix Screenshot Tour

Tilix with Two Horizontal Linux Terminal Windows

Tilix with Two Horizontal Linux Terminal Windows

Tilix with Two Vertical Linux Terminal Windows

Tilix with Two Vertical Linux Terminal Windows

Tilix with One Vertical and Two Horizontal Linux Terminals

Tilix with One Vertical and Two Horizontal Linux Terminals

Tilix with Multiple Linux Terminal Windows

Tilix with Multiple Linux Terminal Windows

How to Uninstall or Remove Tilix Terminal

In case you installed it manually and want to remove it, then you can follow the steps below to uninstall it. Download the uninstall.sh from Github repository, make it executable and then run it:

$ wget -c https://github.com/gnunn1/tilix/blob/master/uninstall.sh
$ chmod +x uninstall.sh
$ sudo sh uninstall.sh

But if you installed it using a package manager, then you can use the package manager to uninstall it.

Visit the Tilix Github repository

In this overview, we have looked at an important Linux terminal emulator that is just an alternative to the multiple terminal emulators out there. Having installed it you can try out the different features and also compare it with the rest that you have probably used.

Importantly, for any questions or extra information that you have about Tilix, please use the comment section below and do not forget to also give us feedback about your experience with it.