2018: Top 10 biggest news stories from Linux and open source world

The year 2018 turn out to be big newsmaker for Linux and open source world. The most important acquisition in the open source world, Deepfakes, important security flows in CPUs, and the Facebook scandal all happened in 2018. Vivek Gite picks top 10 most significant and biggest news stories from Linux and open source world that rock IT world.

Top 10 biggest news stories from Linux and open source world in 2018

Biggest news stories from Linux and open source world in 2018
Below are the most talked or shared stories from my social media account and site.

1. IBM buys Red Hat

IBM acquired number one open source enterprise Linux distribution and software maker Red Hat Inc. in a $33.4 billion. Red Hat started in 1993 with stong fouse on Linux and open source software. IBM and Red Hat combine to create leading hybrid and multi-cloud service provider.

I always knew either Oracle or IBM will eat up Redhat Enterprise Linux. IBM Nears Deal to Acquire Software Maker Red Hat https://t.co/DOhU1KIpOw What do you think?

— The Best Linux Blog In the Unixverse (@nixcraft) October 28, 2018

2. Meltdown and Spectre bug

Meltdown and Spectre exploit critical vulnerabilities in modern CPUs. It was a severe security problem in the Intel, AMD, ARM and other processors. The Spectre breaks the isolation between different applications. The Meltdown attack allows a program to access the memory, and thus also the secrets, of other programs and the operating system. The big cloud vendor such as Google and AWS patched bug before anyone else. Most Linux distros and IT vendors did release patches on time too. Further, Intel and AMD released microcode updates. However, *BSD family of operating systems vendors ignored by Intel. FreeBSD was made aware of the problems in late December 2017. OpenBSD claimed that they received no non-public information. Patching these security bugs affected the performance of the computers too.

  1. How to check Linux for Spectre and Meltdown vulnerability
  2. How to patch Meltdown CPU Vulnerability CVE-2017-5754 on Linux
  3. Howto patch Spectre Vulnerability CVE-2017-5753/CVE-2017-5715 on Linux

3. A Kubernetes security flaw

Kubernetes is open source and most popular platform for managing containerized services. It provides management, automation, scaling and much more. Critical vulnerability found in Kubernetes. It allowed attackers to take over any vulnerable node using a specially crafted request:

With a specially crafted request, users that are authorized to establish a connection through the Kubernetes API server to a backend server can then send arbitrary requests over the same connection directly to that backend, authenticated with the Kubernetes API server’s TLS credentials used to establish the backend connection.

Post mortem report (PDF) provided a fantastic summary of problems and how to avoid them in future.

4. Microsoft makes its 60000 patents open source to help Linux

To capitalize better on open source, Linux and cloud computing market, Microsoft announced that they joined the Open Invention Network (“OIN”). The OIN is a community dedicated to protecting Linux and other open source software programs from patent risk:

We know Microsoft’s decision to join OIN may be viewed as surprising to some; it is no secret that there has been friction in the past between Microsoft and the open source community over the issue of patents. For others who have followed our evolution, we hope this announcement will be viewed as the next logical step for a company that is listening to customers and developers and is firmly committed to Linux and other open source programs.

Now, as we join OIN, we believe Microsoft will be able to do more than ever to help protect Linux and other important open source workloads from patent assertions. We bring a valuable and deep portfolio of over 60,000 issued patents to OIN. We also hope that our decision to join will attract many other companies to OIN, making the license network even stronger for the benefit of the open source community.

5. Linux adopts a new CoC (Code of Conduct)

In September 2018, Linus Torvalds issued an apology regarding his public behavior and announced that he would be taking some time off from the Linux kernel. Linux kernel creator Linus Torvalds has told the BBC that he is seeking professional help to become more empathetic towards fellow developers, but admits he may have to “fake it until I make it.”

Linux 4.19-rc4 released, an apology, and a maintainership note – Linus Torvalds https://t.co/RVRP3wfMIt HT @ddayhere pic.twitter.com/kUUhWWRSDh

— The Best Linux Blog In the Unixverse (@nixcraft) September 17, 2018

Following his public apology for his behavior over the years, the Linux community adopted a new “Code of Conduct (CoC).” The new CoC provides harassment-free experience for everyone who participates in Linux kernel development. However, both Linus’s apology and CoC met with lots of strong reaction over social media/mailing lists/forums especially conspiracy theories. A revised version of CoC was finally released.

6. EQT buys SUSE

Suse is very popular in Europe and significant commercial Linux distributors. It plays a vital role in Linux, open-source infrastructure and management space. Micro Focus announced that Suse is changing owners yet again and the deal valued Suse at $2.535 billion:

SUSE today announced plans to partner with growth investor EQT to continue momentum, strategy execution and product expansion as an independent business. The completion of EQT’s acquisition of SUSE from Micro Focus is subject to Micro Focus shareholder and customary regulatory approvals and is expected to occur in early 2019. Having enjoyed seven years of continuous expansion, SUSE is set to be acquired from Micro Focus by EQT, which is a development-focused investor with extensive experience in the software industry. Under Micro Focus ownership and with their investment and support, SUSE has developed as a business, cementing its position as a leading provider of enterprise-grade, open source software-defined infrastructure and application delivery solutions.

7. Microsoft buys GitHub

GitHub is a web-based hosting service for version control using Git. It quickly becomes favorite amount developers, especially open source hackers due to various collaboration features. On June 4, 2018, Microsoft announced it had reached an agreement to acquire GitHub for US$7.5 billion and the purchase closed on October 26, 2018.

Microsoft Corp. on Monday announced it has reached an agreement to acquire GitHub, the world’s leading software development platform where more than 28 million developers learn, share and collaborate to create the future. Together, the two companies will empower developers to achieve more at every stage of the development lifecycle, accelerate enterprise use of GitHub, and bring Microsoft’s developer tools and services to new audiences.

“Microsoft is a developer-first company, and by joining forces with GitHub we strengthen our commitment to developer freedom, openness and innovation,” said Satya Nadella, CEO, Microsoft. “We recognize the community responsibility we take on with this agreement and will do our best work to empower every developer to build, innovate and solve the world’s most pressing challenges.”

I wasn’t happy as it gives too much power to a single vendor:

For people asking and defending Microsoft acquiring github. Here is what’s wrong with Microsoft and why people in open source world do not trust MS. What is wrong with Microsoft buying GitHub https://t.co/AcHdQ07iRA

— The Best Linux Blog In the Unixverse (@nixcraft) June 4, 2018

I got an email from one my client who is @Github private repo business customer. They want to move out of Github to a personal GIT server hosted either in AWS or Google Cloud. They fear that Microsoft might get insight into their codebase. Small startups/business do not trust MS.

— The Best Linux Blog In the Unixverse (@nixcraft) June 3, 2018

8. Proton beta released to run Windows games on Linux

One of the biggest reason Linux failed as the desktop is lack of quality games. Most developers release games on Windows operating system. To bring Windows games on Linux Valve announced a new variation of Wine, named Proton. Proton is fully open-source software, and it integrates directly with Linux version of Steam software:

Proton is a tool for use with the Steam client which allows games which are exclusive to Windows to run on the Linux operating system. It uses Wine to facilitate this.

9. Microsoft release it’s own Linux distro for cloud

In the past, Microsoft has strategically excluded any support for Linux and called cancer at one time. To stay relevant in the cloud computing era and IT world, Microsoft accepted Linux and started to embrace open source:

  1. Windows Subsystem for Linux (WSL) is a compatibility layer for running Linux binary executables natively on Windows 10 and Windows Server 2019. Microsoft is working closely with Canonical who develops the Ubuntu operating system and was hired in to provide support to run Ubuntu natively on Windows 10.
  2. Azure Sphere is a first Linux-based operating system created by Microsoft for the Internet of Things applications

10. MIPS goes open source

MIPS is an acronym for Microprocessor without Interlocked Pipelined Stages. MIPS based CPUs are used in embedded systems such as home gateways, WiFi , and router. Now, MIPS goes open source:

Without question, 2018 was the year RISC-V genuinely began to build momentum among chip architects hungry for open-source instruction sets. That was then. Wave Computing (Campbell, Calif.) announced Monday (Dec. 17) that it is putting MIPS on open source, with MIPS Instruction Set Architecture (ISA) and MIPS’ latest core R6 available in the first quarter of 2019. Art Swift, hired by Wave this month as president of its MIPS licensing business, described the move as critical to accelerate the adoption of MIPS in an ecosystem. Going open source is “a big plan” that Wave CEO Derek Meyer, a MIPS veteran, has been quietly fostering since Wave acquired MIPS Technologies in June, explained Swift.

What was your favorite news related to Linux and open source this year? Share it in the comments!

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Source

Weekend Reading: Multimedia | Linux Journal

Put the fun back in computing. With this weekend’s reading, we encourage you to build yourself an internet radio station, create your own Audible or even live-stream your pets on YouTube. Sky’s the limit with Linux. Enjoy!

Building Your Own Audible

by Shawn Powers

I have audiobooks from a variety of sources, which I’ve purchased in a variety of ways. I have some graphic audio books in MP3 format, a bunch of Audible books in their DRM’d format and ripped CDs varying from m4b (Apple format for books) to MP3 and even some OGG. That diversity makes choosing a listening platform difficult. Here I take a quick look at some options for streaming audio books.

Linux Gets Loud

by Joshua Curry

Linux is ready for prime time when it comes to music production. New offerings from Linux audio developers are pushing creative and technical boundaries. And, with the maturity of the Linux desktop and growth of standards-based hardware setups, making music with Linux has never been easier.

Using gphoto2 to Automate Taking Pictures

by Shawn Powers

With my obsession—er, I mean hobby—regarding BirdCam, I’ve explored a great number of camera options. Whether that means trying to get Raspberry Pi cameras to focus for a macro shot of a feeder or adjusting depth of field to blur out the neighbor’s shed, I’ve fiddled with just about every webcam setting there is. Unfortunately, when it comes to lens options, nothing beats a DSLR for quality. Thankfully, there’s an app for that.

Creating an Internet Radio Station with Icecast and Liquidsoap

by Bill Dengler

Ever wanted to stream prerecorded music or a live event, such as a lecture or concert for an internet audience? With Icecast and Liquidsoap, you can set up a full-featured, flexible internet radio station using free software and open standards.

Live Stream Your Pets with Linux and YouTube!

by Shawn Powers

Anyone who reads Linux Journal knows about my fascination with birdwatching. I’ve created my own weatherproof video cameras with a Raspberry Pi. I’ve posted instructions on how to create your own automatically updating camera image page with JavaScript. Heck, I even learned CSS so I could make a mobile-friendly version of BirdCam that filled the screen in landscape mode.

Nativ Vita

by James Gray

The motto “open to anything” underpins Nativ’s development philosophy on all of its audio solutions, including its new Nativ Vita, “the world’s first High-Resolution Music Player” and touchscreen control center that is designed to function as the central access point for one’s entire music collection.

The Post-TV Age?

by Shawn Powers

The most basic cable package from Charter (Spectrum?) costs me more than $70 per month, and that’s without any equipment other than a single cable card. It’s very clear why people have been cutting the cord with cable TV companies. But, what options exist? Do the alternatives actually cost less? Are the alternatives as good? I’ve been trying to figure that out for a few months now, and the results? It depends.

Android Candy: the Verbification of Video Chat

by Shawn Powers

People who study the history of languages probably will look back at our current time and scratch their heads. We keep inventing verbs! First, Google became the verb we use for searching. Then, “Facebooking” someone became a viable way to contact them. Heck, I forgot about “texting” someone. It seems we just keep taking perfectly good nouns and making them verbs. We keep verbing all our nouns!

Source

Creating Kubernetes Cluster Using Amazon’s EKS Service – Linux Hint

Kubernetes is a complex body of software. It is meant for a distributed cluster of compute nodes and is designed to withstand surges in workload, link failures and node failures. It is also a fast moving project with constant (and often backward incompatible) changes and third party dependencies.

Given all the complexity that underlies it, it is very difficult and expensive for an organization to self-host and maintain a Kubernetes cluster and run their applications on top of it. If you are not in the business of operating Kubernetes clusters, you may want to use Amazon’s Elastic Kubernetes Service (EKS) to deploy your applications. It will greatly reduce the cost of operation and you can rest easy knowing that experienced developers and operators are incharge of it, instead.

  • An AWS account with console access and appropriate permissions. Contact your firm’s AWS operator to get the appropriate privileges.
  • An AWS IAM user with programmatic access. We will be acting as this user when controlling our Kubernetes cluster. Here’s how you can install and configure AWS CLI for the account under which EKS cluster will be created.
  • A basic understanding of Kubernetes

Creating a Kubernetes cluster

You can create the cluster via CLI as well, but most new users would find the graphical console friendlier. So we will be using that, instead. Assuming that you have logged into your AWS Console, we can get started by going to Services from the top right corner and clicking on EKS from the drop down menu:

Next menu will show AWS intro page, let’s go to the Clusters option underneath the EKS submenu.

Here you can see the list of all the Kubernetes clusters created under your account. As there is none, let’s create one.

Click on Create cluster. Give it a name, select the version of Kubernetes you want, at the time of this writing version 1.11 is supported by Amazon. Next click on Role name, because we need to create a Role that we need to provider to Amazon EKS so it can manage our cluster.

Creating and Assigning Role

Before we get started with that, let’s understand a key difference between Amazon EKS (an AWS Service) and your Kubernetes Cluster on AWS. AWS segregates responsibilities wherever it can, to give you a very fine-grained control over everything. If you wish to give yourself, or a third party, complete control over these resources you can do that as well.

Think of Amazon EKS as one such party that will manage your Kubernetes cluster (your EKS cluster) on your behalf, but it requires your explicit permission to do just that. To do that we will ‘create’ and assign the Role of managing EKS clusters under our AWS account and assign it to Amazon EKS.

In the new IAM tab, that has opened after clicking on Role name, you will see a few default roles for billing and support are already in place. Let’s create a new one for EKS. Click on Create Role.

Select the type of trusted entity as AWS service, for which the role would be created and then select EKS so your EKS cluster can talk directly to the Amazon EKS directly and perform optimally. Then click Next.

Now, you will be able to see the permissions and permission boundaries that are associated with this role. The default values are alright, just click on to next.

The next menu will prompt you to add tags (key-value pairs) to this role. It is completely optional, but quite useful if you are using the CLI to manage your AWS resources and there are a lot of different roles and resources to manage. We won’t be adding any tags, click Next and give your role a meaningful name and description.

And that’s it! Clicking on Create role and we can go back to our EKS cluster creation. The next time you want to create another cluster, you can reuse this very same role again.

Back to Cluster Creation

Even if your AWS account is brand new, there’s still default VPC ( Virtual Private Cloud) with a few subnets created within it. These are often spread across different AWS regions and you have to select at least two of them for it to be a cluster.

And select the default security group to allow most inbound and outbound traffic to go normally.

Click on Create and your Kubernetes cluster will be up and running in minutes. Once your cluster is created. You can always get an overview of it by going to EKS → Cluster → myCluster. Of course, the last part, the name of your cluster will be different.

Local Setup

The way EKS platform works is that it allows you to interact with the control plane at the plane’s API endpoint. Control plane is equivalent to the master nodes in vanilla Kubernetes clusters. It runs etcd, CAs and of course, the API server which you will use to control your Kubernetes cluster.

You will have to configure your kubectl and/or your dashboard to work with this API endpoint and once that is setup, you can start listing all your resources, deployments, etc, like you would do with a regular Kubernetes cluster.

If you don’t already have Kubectl installed on your computer, you can do so by following this link for Mac, Windows or your favorite Linux distro.

We would need an additional binary which would be AWS IAM authenticator binary for your platform. Download it from here and make it an executable.

$ sudo chmod +x ./aws-iam-authenticator

Add it to one of your $PATH folders for example /usr/bin or /sbin or /usr/local/sbin. Or you can do as Amazon recommends and just add it to within your home directory and make $HOME a part of your PATH variable.

$ cp ./aws-iam-authenticator $HOME/bin/aws-iam-authenticator &&
export PATH=$HOME/bin:$PATH

Next test if the binaries work.

$ kubectl version
$ aws-iam-authenticator help

Now, we need to configure these binaries so they can talk to our Kubernetes cluster securely. You can do it manually if you don’t want to set up AWS CLI, but that’s not a reliable approach. Which is why I mentioned in the prerequisites that AWS CLI was necessary. So, assuming you have installed it and configured it to work with your AWS account, run the following command:

Note:If you were already using kubectl to manage another Kubernetes cluster, with the configuration files at the default ~/.kube location. You might want to backup this folder before running the following command.

$ aws eks update-kubeconfig –name myCluster

The name of your cluster would be different from “myCluster”, substitute that instead. The update-kubeconfig command will actually update your kubectl configuration by editing the files in the ~/.kube folder. If that location doesn’t exist, then it will create a new one for you.

Now you are ready to interface with your cluster.

$ aws eks describe-cluster –name myCluster

Where to Next?

Now you are finally ready to add worker nodes using CloudFormation and deploy your application across all the regions you cluster’s VPC has access to. All this process can also be automated to the nth degree if you choose to use AWS CLI for everything from the creation of the cluster to deploying and scaling your apps.

Hope you found this tutorial helpful and insightful.

Source

Set Alarm to Automatically Power On Linux Computer

It’s no secret that you can make your computer “sleep” to considerably save energy or battery on laptops. A battery-powered device can spend many days in standby mode. The power draw in this state is incredibly low.

You can wake your computer at any time by pressing the power button or a key on your keyboard. But what if you want it to automatically wake up at a certain time? This can help you automate certain tasks – for example, to download something at 4AM when Internet speed may be much higher. With a bit of command-line magic, you can schedule your device to wake up, take some action and then go back to sleep again.

Besides waking up from standby, you may find it even more useful to completely shut down your computer and power on at certain times. Hibernation is also supported, but Linux systems that use proprietary drivers don’t always wake from hibernation properly.

Test If Your Computer Supports Wake-Up Timers

It’s possible that some computers don’t have the proper hardware to support this feature. However, on most configurations, this should work. You can do a quick test: open a terminal emulator and enter the following command.

sudo rtcwake -m mem -s 30

Your computer should go to sleep and wake up thirty seconds later. If your device needs more than twenty seconds for standby, increase the wake-up time by changing “30” to a higher number.

Also, test if the computer supports waking up from a complete shutdown.

sudo rtcwake -m off -s 60

Regarding -m off, the command manual mentions: “Not officially supported by ACPI, but it usually works.”

If the kernel, drivers and hardware all get along with each other, you should have no problems. If the timers aren’t supported, it’s probably because the hardware and/or BIOS/UEFI configurations don’t meet the requirements. But you might as well try your luck and see if upgrading some drivers or switching from proprietary ones to open source does the trick. You can also try to install a newer kernel.

As previously mentioned, hibernation has issues non-related to the rtcwake command. It does work most of the time but also fails on occasion. When it fails, your screen will remain black or show you an error message.

How to Use the rtcwake Command

The basic use of the command is simple: pick a power-saving method and a time when to wake up. In the previous command the -s parameter was used to specify how many seconds to wait before powering back on. But usually you will want to specify an absolute time, like 9AM tomorrow morning. For that, you use the –date parameter instead of -s.

rtcwake Date Parameter

sudo rtcwake -m mem –date 09:00

Note: not all hardware supports setting wake up dates far into the future. This is something that you’ll just have to test to see if it works for your specific device.

Time specification is in 24-hour format. Here’s a relevant screenshot of the command manual with different options for setting the time and date of a wake-up event.

rtcwake-time-date-specification

“YYYY-MM-DD hh:mm” means, year, month, day, hour and minute – for example: –date 2020-02-28 15:00 for the 28th of February, year 2020, 3PM.

rtcwake Dry Run

You can add another parameter to rtcwake, -n, to display when the alarm will be set.

sudo rtcwake -m mem –date +12hours -n

This is a “dry run,” meaning it doesn’t actually set an alarm and only “pretends” to do it. It’s useful to add -n when you want to test if your date specification is correct. Once you’re sure it’s right, just use the command without -n to set the actual wake-up time.

rtcwake Power-Saving Methods

The relevant options you can pass to the -m parameter are:

  • -m mem – normal standby mode you’re familiar with from the shutdown menu.
  • -m disk – hibernate mode that saves memory content to storage device. Not recommended when using proprietary drivers.
  • -m off – normal shutdown.
  • -m disable – cancel a wake-up event you previously set.
  • -m no – don’t power off or standby, just set a wake event. For example, you can set a wake-up time for tomorrow morning, then continue to work on your computer. When you’re done, shut down normally, and the device will automatically power on in the morning.
  • -m show – show wake-up events (previously-set alarms) currently active.

Conclusion

It’s up to you to find creative ways to use rtcwake. As a starter, this can help you find the computer fully booted in the morning. This way you skip the boring boot process which can take more than a minute on some systems. You could also install an utility, such as at, to automate tasks that your computer can run after waking up. We might even explore that option in a future tutorial.

Is this article useful?

Source

NVIDIA’s Linux Driver Saw Some Nice Performance Gains In 2018

The open-source Radeon Linux graphics driver stack saw some nice RADV Vulkan performance improvements over the course of this year as well as to the RadeonSI Gallium3D driver performance, but how did the NVIDIA Linux driver stack perform this year for gaming? Here are some benchmarks showing it too saw some nice Linux gaming performance boosts this year with subsequent driver updates.

The NVIDIA Linux driver stack this year saw punctual support for new consumer and workstation/professional products, as we’ve come to expect over the past decade and even longer. The 2018 NVIDIA Linux drivers also brought continued EGL improvements, introduced a new Vulkan SPIR-V compiler for faster shader compilation and lower memory consumption, kept up-to-date with the latest Vulkan revisions, added support for RandR transformations, added the OptiX ray-tracing engine, implemented support for Vulkan real-time ray-tracing, and there was a wide variety of fixes and other improvements. Though with NVIDIA’s Linux driver effectively having been at feature parity with their Windows driver for years, the ongoing changes may not seem as impressive as the open-source Radeon Linux driver stack that only recently has been reaching feature and performance parity to the Windows Radeon Software driver.

For those curious about the NVIDIA Linux driver performance improvements throughout the year particularly for OpenGL/Vulkan gaming, I ran some benchmarks on Ubuntu 18.04 LTS comparing a driver release from the start of the year (384.130) to the current latest stable driver release (NVIDIA 415.23). All of the tests were done on the same system and using both a GeForce GTX 1060 and GeForce GTX 1080 Ti Pascal graphics cards. From there a variety of graphics benchmarks were carried out to look for the driver performance changes on both of these graphics cards. The games tested obviously had to work back on the 384 driver series, so some of the very latest Vulkan game ports requiring a new driver obviously couldn’t be tested.

Source

Top 5 ASCII Games on Linux – Linux Hint

ASCII graphics have been admired by most players especially those who prefer large pixels and old-school gaming. Even with the visually impressive games such as the Rise of the Tomb Raider or Forza Horizon 3, there are some classic ASCII games still out there which are more popular. This article is for all those who either already love ASCII games or would like to try these out for a change.

Want to find out which of these ASCII games are the most addictive? Here is a list of all of the most addictive ASCII games which are bound to keep you hooked in front of the computer screen for hours in a row:

1. Curse of War

Curse of War rightfully deserves its place as the first one on our list. You might not be able to understand it very well for the first few times you play the game. However, in just a few tries you will get the hang of it after which you will find just how addicting it can get.

Instead of using control units, for the most part of the game you will be gathering infrastructure, collecting resources, and guiding an army to take action. Since it is a strategy game rather than a fighting game, you will be pushing your skills as a planner who manages, gathers and handles resources for an upcoming war. How you manage these resources and how you guide your army to fight is what will determine the output of the war. The output of the war is naturally what determines your score in the game.

Instead of jumping right into the action, spend a few minutes learning about the game. The rules, tricks and the techniques which will help you play the game can be easily found on the official website for Curse of War. You will also find the instructions to install it into your computer on this official link.

It runs as a single player game by default. If you want to play the game with another person, you can do so easily by connecting two servers and using the following commands:

$ curseofwar -E 2
$ curseofwar -C <server’s IP>

Downloading the Curse of War is very simple. You just need to type in the following command:

sudo apt install curseofwar

2. ASII Sector

Another truly addicting ASCII game is ASCII sector. This is a free trading/space combating game with lots of exploration and action. Although the game itself is influenced with the original version called Wing Commander, it makes it even more interesting to play. If you have played Wing Commander you would know that the player is casted as the owner of an old space ship. You explore space, make alliances and complete missions to raise your reputation. ASCII sector is simply a replication in the ASCII environment which surprisingly makes it even more addicting.

In game you have an aerial view of the space with a small avatar of you in a spaceship. You own a basic space ship initially which upgrades as you complete quests and trade goods. The ASCII version of the game keeps alive the theme of the original version of the game. However, the missions, characters, capabilities of the spaceship have improved considerably.

Besides completing quests built by others, you can also create a fully customized quest on your own. Creating your own quest isn’t hard at all with the simple syntax and the built-in compiler. Although the game isn’t available in the repository, you can download it just as easily from the official website of ASCII sector.

3. VMS Empire

With VMS Empire consider yourself an emperor and the computer is another emperor. Besides being emperors, you are also each other’s rivals. You and the computer both play using the same set of rules with the ultimate mission to destroy each other.

It is a classic text-based game which incorporates the use of characters to represent the world inside the game. The commands to play the game are also sent in the form of characters selected on the keyboard.

The interface is a large rectangle with cities, seas and land. At the start of the game, you and the computer are each given a single city to control. As you expand your empire, your cities will be marked by O while those which belong to the computer will be marked by an X. Your mission is simple: destroy everything owned by the enemy and capture everything else.

You can download the game here. At the same link, you will also find instructions to play it.

4. DoomRL

Have you enjoyed the famous first person shooter game, Doom? Although the game is a blast, you might have played it too many times to find it interesting any more. Here is a variant for you based on ASCII characters.

In DoomRL (or Doom, the Roguelike), the player is the single marine that survives in a squad. This squad was sent in response to a distress call from Phobos. Your mission is to investigate the scenario, locate the evil mastermind and end it.

The game features a simple interface and multiple difficulty levels. You will never be bored owing to the continuous developments in the game and with the total of 25 levels which you have to complete. The final level is the most exciting one since you will encounter the Cyberdemon and two other rivals you have to end.

Download the game here.

5. Dwarf Fortress

Another highly addicting ASCII game is this single player game called dwarf fortress. In the game, you have to control a team of dwarfs who are on an adventure in a randomly generated world. You have to provide shelter, sustenance and comfort for each of the dwarfs, defend your fortress and gather wealth. You can even customize the game by adding new plants, weapons, creatures and objects by modifying the text files of the game. You can download the game here.

Conclusion

ASCII might not be your first thought when it comes to linux computer games, but if you prefer the terminal in general you might want to trying ASCII gaming.

Source

Bash uniq Command – Linux Hint

Linux users need to create or read the text file in regular basis for many purposes. A text file can contain different types of numeric and character data. Same data can be stored multiple times in a text file. Sometimes, you may require reading any text file by omitting duplicate lines of data. Bash

uniq

command is a useful command line utility tool that is used to read a text file by filtering or removing adjacent duplicate lines from the text file.

uniq

command is used to detect the adjacent lines from a file and write the content of the file by filtering the duplicate values or write only the duplicate lines into another file.

uniq [OPTION] [ INPUT [OUTPUT] ]

Here, OPTION, INPUT, and OUTPUT are optional. If you use only uniq command without any option or input/output filename then this command will apply on the standard input data. Many types of options can be used with this command to filter duplicate data in various ways from any text file. If you use an input file name with this command then the data will filter from that file. If you execute the command with the option, input filename, and output filename then the data will filter from input file based on the option and write the output into the output file.

Options:

Some major options of uniq command are discussed below.

  • -f N or –skip-fields=N

It is used to skip N fields before detecting the uniqueness of data. Fields are the group of characters separated by whitespace or tab.

  • -s N or –skip-chars=N

It is used to skip N characters before detecting the uniqueness of data.

  • -w N or –check-chars=N

It is used to compare N characters only in a line.

  • -c or –count

It is used to count how many times a line repeated in the searching data and the values are shown as the prefix of that line.

  • -z or –zero-terminated

It is used to terminate the line with 0 bytes instead of using newline.

  • -d or –repeated

It is used to print all repeated lines only.

  • -D or –all-repeated[=METHOD]

It is used to print all repeated lines based on the used method. The following methods can be used with this option.

none: It is the default method and doesn’t delimit duplicate lines.
prepend: It adds a blank line before each set of duplicate lines.
separate: It adds a blank line between two duplicate lines.

  • -u or –unique

It is used to print the unique lines only.

  • -i or –ignore-case

It is used for case-insensitive comparison.

Examples of uniq command

Create a text file named uniq_test.txt with the following content:

Bash Programming
Bash Programming
Python Programming
I like PHP Programming
I like Java Programming

Example#1: Using -f option

The following command will apply uniq command by skipping first two fields of each line from uniq_test.txt file.

$ uniq -f 2 uniq_test.txt

Example#2: Using -s option

The following command will apply uniq command by skipping 4 characters from each line of uniq_test.txt file.

$ uniq -s 4 uniq_test.txt

Example#3: Using –w option

The following command will apply uniq command by comparing the first two characters of each line.

$ uniq -w 2 uniq_test.txt

Example#4: Using –c option

The following command will count the appearance of each line in the file and displays the number at the front of each line of the output.

Example#5: Using –d option

The following command displays those lines from the file only that appeared multiple times in the file. Only one line has appeared two times in uniq_test.txt file which is displayed as output.

Example#6: Using –D option

The following command will print all duplicate lines from the file.

Example#7: Using –all-repeated option with prepend method

Three methods can be used with –all-repeated option which are mentioned earlier of this tutorial. Here, the prepend method is used with this option that prints duplicate lines by appending blank lines at the beginning of duplicate lines.

$ uniq –all-repeated=prepend uniq_test.txt

Example#8: Using –u option

The following command will find out all the unique lines from the file. There are three unique lines in uniq_test.txt file which are printed as output.

Conclusion

The uses of uniq command are explained and shown by using various examples in this tutorial. Hope, you will be able to use uniq command properly after reading this tutorial.

Source

Ashes of the Singularity: Escalation inches closer to a Linux release with Vulkan

Some fun weekend news for those wanting another RTS to play, as Ashes of the Singularity: Escalation is getting closer to a Linux release.

As a real-time strategy game nut, I’ve been waiting to play it since I first laid my eyes on it. Back in May of 2017, Stardock Entertainment put up a Steam post themselves asking to see requests for a Linux version which caused some more excitement.

Back in September this year, they mentioned the base game engine was on Linux but not the actual game itself. Seems it’s moving along, as yesterday they updated that Steam post to say this:

Update: 12/28/2018:

We now have the core engine compiling under Debian Linux and running via Vulkan. We still have a long, long way to go but this is a major step. Thanks for your continued interest and support!

Only noticing it now, as it’s a post I follow that the developer has no replied to mention it. Their wording isn’t too different to what was said in September though, so keep that in mind.

I like their honesty with it, that we still have some ways to go but they’re still working on it so that’s great stuff.

Source

Red Hat Enterprise Linux ported to Windows 10 as WLinux Enterprise – Software

Red Hat Enterprise Linux is now even more accessible to Windows 10 users with the help of open-source software developer Whitewater Foundry.

Dubbed WLinux Enterprise, the $149.95 per-seat solution is the business version of the $29.95 consumer version of WLinux, which was made available through the Microsoft Store last month.

WLinux was developed to help Windows 10 users run various GNU/Linux distributions inside the OS as Microsoft Store apps, providing access to the likes of Ubuntu, Debian, Fedora, among others.

“WLinux Enterprise unleashes developers and IT staff productivity by giving them access to the Linux command line and development tools they need in today’s cloud, hybrid, and cross-platform environments, including Git, OpenSSH, Node.js, Python, Go, Ruby, AWS and Azure cloud command-line tools, and more, directly on Windows 10, alongside existing Windows applications,” Whitewater Foundry said in a statement.

“WLinux Enterprise accomplishes this in a cost-effective and secure approach by deploying Linux on Windows devices companies already own within Windows networks they already have deployed, reducing the burden of managing a mixed OS environment and eliminating unsecure device usage.”

The company said the software could be deployed to Windows devices through multiple channels, including the Microsoft Store for Business, InTune, DISM, ICD, SCCM and offline sideloading, with or without automatic updates.

Microsoft introduced Windows Subsystem for Linux (WSL) in Windows 10’s Anniversary Update in 2016, providing an internally developed Linux-compatible kernel interface, which can then run Linux distros.

Source

Total Chaos Guide – GamersOnLinux

 

totalchaos90.jpg

Arriving at Fort Oasis was no vacation. The community of coal miners have mysteriously dissapeared and left facility looking like a wasteland. You receive a transmission on your radio about a sole survivor…. Explore the remains of the island, craft weapons and gear to survive, slay evil minions and more.

totalchaos103.jpg

Follow my step-by-step guide on installing, configuring and optimizing Total Chaos in GZDoom

Note: This guide applies to the Moddb Doom II version of Total Chaos. Other versions may require additional steps.Tips & Specs:
To learn more about GZDoom, see the online manual: https://zdoom.org/wiki/GZDoom

Mint 19 64-bit

GeForce GTX 1060
Nvidia 396.54
GZDoom 3.6.0

Download GZDoom for your distro

https://zdoom.org/downloadstotalchaos01.png

Save it to your computer

totalchaos02.png

Double-click to install GZDoom

Click Install (Mint)
totalchaos03.png

Go to your Menu and run GZDoom one time

Click OK
totalchaos04.png

Download the Total Chaos Standalone

https://www.moddb.com/mods/total-chaos/downloads/total-chaos-10totalchaos05.png

Click “Download Now”

totalchaos06.png

Note: There is also a “Retro Edition” for improved performance on lower spec computers.
Open “totalchaos_standalone_1000b.zip” with your Archive Manager

Select all files
Click Extract
totalchaos07.png

Navigate to the GZDoom directory

Full path:

Code:

/home/username/.config/gzdoom
Click Extract
totalchaos08.png

Click “Show the Files”

totalchaos09.png

The gzdoom directory now has the Total Chaos standalone installed

Here is the .pk3 we will use to launch it with GZDoom
totalchaos10.png

Note: I was not able to find a way to put all of the game files in a single folder and launch it with GZDoom
Test GZDoom and make sure Total Chaos launches

Open Terminal (Ctrl+Alt+T)
Type:

Code:

gzdoom -file totalchaos.pk3

totalchaos11.png

Code should start scrolling up and the game should launch after 10 seconds…

totalchaos12.png

Then you will see the title screen in fullscreen

totalchaos13.png

Controls
Total Chaos is using the standard Doom controls

Update the controls to WSAD and jump, crouch, etc.
totalchaos14.png

Grain Effect
The film grain effect might be a bit intense. You can turn it off in the Options, Post Processing menu

Shortcut to Total Chaos (Mint)
Right-click the menu

Click Configure
totalchaos15.png

Click “Open the menu editor”

totalchaos16.png

Select “Games”

Click “New Item”
totalchaos17.png

Name: Total Chaos

Command: gzdoom -file totalchaos.pk3
Click the icon
Navigate to the Total Chaos icon folder
Select the Total Chaos icon
Click OK
totalchaos18.png

Now you can launch Total Chaos from the Menu

totalchaos19.png

Conclusion:
Total Chaos runs pretty well, but has a few stutters… It didn’t affect game-play and the developer is working on optimizing it. In fact, there is a “Retro Edition” that is already optimized for lower spec computers like laptops and netbooks.

I found the game to be a fun survival exploration action game. I love the levels, interaction, crafting and action mechanics. The developer spent a lot of time dialing in the game so it was a challenge, but still possible to have fun. The graphics and ambiance is amazing considering they are using a modified Doom engine.

Gameplay Video:

Screenshots:totalchaos81.jpg

totalchaos85.jpg

totalchaos88.jpg

totalchaos91.jpg

totalchaos93.jpg

totalchaos95.jpg

totalchaos100.jpg

Source

WP2Social Auto Publish Powered By : XYZScripts.com