Category Archives: Linux Journal Blogs

Linux Journal Blogs

Ubuntu 16.04 LTS Now Certified on Select Intel NUC Mini PCs and Boards for IoT Development, LibreOffice 6.0.5 Now Available, Git 2.8 Released and More

News briefs for June 22, 2018.

Canonical yesterday announced
that Ubuntu 16.04 LTS is certified on select Intel NUC Mini PCs and boards
for IoT development. According to the Ubuntu blog post, this pairing
“provides benefits to device manufacturers at every stage of their
development journey and accelerates time to market.” You can download the certified image from here.

In other Canonical news, yesterday the company released a microcode
firmware update
for Ubuntu users with AMD processors to address the Spectre vulnerability, Softpedia
reports
. The updated amd64-microcode packages for AMD CPUs are available
for Ubuntu 18.04 LTS (Bionic Beaver), Ubuntu 17.10 (Artful Aardvark), Ubuntu
16.04 LTS (Xenial Xerus), and Ubuntu 14.04 LTS (Trusty Tahr), “all AMD users
are urged to update their systems.”

The Document
Foundation announces
the release of LibreOffice 6.0.5 this
morning. This release “still represents the bleeding edge in terms of
features—and as such is targeted at early adopters, tech-savvy and
power users—but is also ready for mainstream users and enterprise
deployments.” You can download LibreOffice here.

Git 2.18 was released yesterday, Phoronix
reports
. Besides several other improvements and bug fixes, the most significant new feature is the introduction of the wire
protocol (protocol_v2), which is “designed to be much faster and is already
being used at Google and elsewhere due to the significant performance
benefits”. See the release
announcement
for all the details.

Google’s Measure recently received a much needed update, and the app is now available for all ARCore-compatible phones running Android
7.0 and up. According to the Engadget
post
, “Measure enables you to estimate the
length, width and areas of items in the natural word (by dragging specially
designed tools) and save images of them for future reference.”

Read More

Drawing Feynman Diagrams for Fun and Profit with JaxoDraw

I’ve been covering chemistry software in my last few articles, so this time, I
decided to move to physics and introduce a package called JaxoDraw.
In physics, there’s a powerful technique
for visualizing particle interactions at the quantum level.
This
technique uses something called Feynman diagrams, invented by physicist
Richard Feynman. These diagrams help visualize what happens when one or
more particles have some kind of interaction. I say one or more because a
single particle could spontaneously kick out other particle/anti-particle
pairs and then swallow them back up again. Needless to say, quantum
physics is weird.

When first developed, theoretical physics
was mostly done either with pen and paper or on a chalkboard.
Not much thought was given as to how you could render these drawings within
a document being written on a computer. JaxoDraw is meant to help fill
in that gap in document layout and provide the ability to render these
drawings correctly and give output you can use in your own documents.

JaxoDraw is written in Java, so it should run under almost any operating
system. Unfortunately, it isn’t likely to be in the package repository
for most distributions, so you’ll need to download it from
the project’s website. But, because it’s packaged as a jar file,
it’s relatively easy to run.

Download the binary package,
unpack it on your machine, and then you’ll want to open a terminal
and change directory to the location where you unpacked JaxoDraw. You
can start it simply by typing the following:


java -jar jaxodraw-2.1.0.jar

This opens a blank workspace where you can start your
diagram. On the left-hand side of the window, you’ll
see a palette of all of the available drawing elements that you can use
to generate your diagram.


Figure 1. When you first open JaxoDraw, you see a blank workspace where you can start
diagramming your quantum particle interaction.

To see what’s involved, let’s draw an electron
interacting with a photon. This happens when energy is absorbed or
emitted by an electron. Since you’re looking at an interaction, you’ll
want to start by selecting the vertex button from the palette and
then draw one in the window. Coming into this vertex will be a fermion line
for the electron and a photon line for the incoming electromagnetic
energy. The interaction happens at the vertex, with a second fermion
line coming out the other end. You can continue adding more elements,
including loops or bezier lines, and you also have the choice
of other particle types, such as scalar particles, ghost particles or
gluons.

Read More

The EU Parliament Legal Affairs Committee Vote on Directive on Copyright, David Clark Cause and IBM's Call for Code, Equus' New WHITEBOX OPEN Server Platform and More

News briefs for June 21, 2018.

Yesterday the European Parliament Legal Affairs Committee voted in favor of
“the most harmful provisions of the proposed Directive on Copyright in the
Digital Single Market”, Creative
Commons reports
. The provisions include the Article 11 “link tax”, which requires “anyone using snippets of
journalistic content to first get a license or pay a fee to the publisher for
its use online.” The committee also voted in favor of Article 13, which
“requires online platforms to monitor their users’ uploads and try to
prevent copyright infringement through automated filtering.” There are still
several steps to get through before the Directive is completely adopted. See
EDRi
for more information.

This week IBM and creator David Clark Cause announced
the Call for Code
, which “aims to unleash the collective power of the
global open source developer community against the growing threat of natural
disasters.” See also here
for more information on how to answer the Call for Code and “create
applications that improve disaster preparedness, build resilient communities,
and safeguard the health and well-being of individuals and institutions.”

Equus Compute Solutions recently announced
the release of its new WHITEBOX OPEN family of servers and storage solutions
that are “custom, cost-optimized open-hardware platforms”. The WHITEBOX OPEN
servers use OpenBMC (the open-source implementation of the Baseboard Management
Controller firmware stack), coreboot and LinuxBoot to customize the server
BIOS and OCP slots that accommodate multi-vendor network cards.

Google added a Guest app to its Fuchsia OS. According to the Linux.com
post
, the app enables Linux apps to run within Fuchsia as a virtual
machine, using a library called Machina “that permits closer integration with
the OS than is available with typical emulators.”

Crate.io launched a commercial Machine Data Platform, as well as a new
version of its open-source SQL database for the Internet of Things and
machine data, Linux
Insider reports
. CrateDB 3.0 features faster performance, enhanced
security and “gives mainstream SQL developers access to machine data
applications that previously were available only with NoSQL solutions.”

Read More

The LJ Password Generator Tool

Mnemonic passwords generally stink. A random
sequence of letters, digits and punctuation is more secure—just don’t
write down your passwords, like the knucklehead antagonist does in Ready
Player One
!

In the password generating tool from my last
article
,
at its most simple, you specify the number of characters you want in the
password, and each is then chosen randomly from a pool of acceptable values.
With the built-in RANDOM in the Linux shell, that’s super easy to do:


okay="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
okay="${okay}0123456789/?,>;:[{]}|=+-_)(^%$#@!~
length=10
ltrs=${#okay}

while [ $length -ge 0 ]
do
   letter="${okay:$RANDOM % $ltrs:1}"
   result="$result$letter"
   length=$(( $length - 1 ))
done

echo "Result: $result"

In the actual script, I set okay to a single value rather than
build it in
two steps; this is just for formatting here online. Otherwise,
ltrs is set to
the length of $okay as a speedy shortcut, and the result is built up by using
the string slicing syntax of:


${variable:indexlocation:length}

To extract just the fourth character of a string, for example,
${string:4:1}, this
works fine and is easy. The result speaks for itself:


$ sh lazy-passwords.sh
Result: Ojkr9>|}dMr

And, a few more:


Result: Mi8]TfJKVaH
Result: >MWvF2D/R?r
Result: h>J6p4eNPH
Result: KixhCFZaesr

Where this becomes a more complex challenge is when you decide you
don’t want to have things randomly selected but instead want to weight
the results so that you have more letters than digits, or no more than a few
punctuation characters, even on a 15–20 character password.

Which is, of course, exactly what I’ve been building.

I have to admit that there’s a certain lure to making something complex,
if nothing else than just to see if it can be done and work properly.

Adding Weight to Letter Choices

As a result, the simple few lines above changed to this in my last
article
:

Read More

Facebook Open-Sources BOLT, Google Introduces VR180 Creator for Linux, 2018 Open Source Job Report Now Available and More

News briefs for June 20, 2018.

Facebook yesterday announced it is open-sourcing BOLT, its “binary
optimization and layout tool that accelerates large-scale applications”.
According to the Facebook
post
, “BOLT optimizes placement of instructions in
memory, thereby reducing CPU execution time by 2 percent to 15 percent.
Unlike previous tools to address instruction starvation, BOLT works with
applications built by any compiler, including GCC or Clang. Today, we are
open-sourcing BOLT so that engineers everywhere can use it alongside
complementary technologies like AutoFDO to achieve performance gains for
their apps.”

Google recently introduced VR180
Creator
for Mac and Linux. This new tool makes it easy to create and edit
high-quality VR videos.
To learn more about VR180 Creator, visit here, and to download, go here.

The 2018
Open Source Job Report
is now available from The Linux Foundation and
Dice. Some key findings include: “Linux is back on top as the most in-demand
open source skill category, making it required knowledge for most entry-level
open source careers” and “Containers are rapidly growing in popularity and
importance, with 57% of hiring managers seeking that expertise, up from only
27% last year.”

openSUSE Tumbleweed has three new snapshots this week, adding a bunch of
improvements for KDE users—most notably, the update to Plasma 5.13. In
addition, the
Linux kernel updated from 4.16.12 to 4.17.1 and fixed some btrfs and KVM
issues. See the openSUSE
blog post
for a description of all the updates.

Keepsafe yesterday launched a
privacy-focused mobile browser. According to the TechCrunch
post
, you can lock the browser with a PIN or use Touch ID, Face ID or
Android Fingerprint. You also can block social, advertising and analytics
trackers, but still allow caching and cookies, or you can open a private tab,
which erases everything as soon as you close it. The browser is available for
free on Android or iOS.

Read More

Open Hardware: Good for Your Brand, Good for Your Bottom Line

With the rise of IoT, we’re inside a short window where “open” is a
strong differentiator for hardware products. Is your company ready to take
advantage of it?

I don’t know how to put this, but Hardware is kind of a Big Deal, and thanks
to the Internet of Things (aka IoT), it’s getting bigger every year. The
analyst firm IDC expects spending on IoT to reach nearly $800
billion USD
by
the end of 2018. A study by Intel shows that by 2025, the global worth of IoT
technology might be as high as more
than $6 trillion USD
; whereas Forbes reports
that the global market could be nearly
$9 trillion USD in 2020
.

These statistics are based on the traditional model of closed design and
development of the chips, boards and objects that will make these devices a
reality. However, what if hardware developers were to learn from and leverage
the popularity of free and open-source software (aka FOSS)? What if the
future of IoT were Open? It’s my belief that the device developers who apply
the lessons of FOSS to hardware development will be those best positioned to
become the powerhouses of that $9 trillion market. Similarly to software,
open hardware will be seen first as a differentiator (rather than an
eccentricity) and later, as the industry matures, as the default operating
mode for hardware development.

Read More

Cooking with Linux (without a Net): Video editing on Linux using Kdenlive and ArcoLinux, too!

Please support Linux Journal by subscribing or becoming a patron.

It’s another Tuesday and another excuse to sip some red while doing some live Linux and open-source experimentation. Yes, it’s time for Cooking with Linux (without a Net), and on today’s show, I’ll show you how to edit a video using the Kdenlive video editor, how to trim said video, adjust audio, fade between clips and apply all sorts of fun effects. Then, I’ll show you how to turn that masterpiece into a video format suitable for uploading to YouTube! All of it live, on camera, and without the benefit of post video editing—therefore providing a high probability of falling flat on my face. Once we’re done doing art, I’ll try out ArcoLinux, another distribution you’ve probably never heard of, and I’ll go through the installation for you. If it wasn’t already obvious, this is a pre-recorded video of a live show.

Read More

Red Hat Launches Process Automation Manager 7, Brackets Editor Releases Version 1.13, Qt Announces New Patch Release and More

News briefs for June 19, 2018.

Red Hat today launched
Red Hat Process Automation Manager 7
, which is “a
comprehensive, cloud-native platform for developing business automation
services and process-centric applications across hybrid cloud environments”.
This new release expands some key capabilities including cloud native
application development, dynamic case management and low-code user
experience. You can learn more and get started here.

The free, open-source Brackets editor, which focuses on web
development/design, released version 1.13 of its code editor this week. Linux
Uprising reports
that the new release features “the ability to opening remote files, drag and drop support for the
FileTreeFiew, an option to automatically update Brackets, and bug fixes”.
See also the release
notes on GitHub
for more info.

Qt announced the
release of version 5.11.1 today. This release is the first patch release for
the 5.11 series and doesn’t include any new functionality, but it does
provide more than 150 bug fixes and 700 important changes. See the Change Files page for details.

Today, June 19th, has been declared FreeBSD Day. Visit the website for
information on ways you can help them celebrate this 25th anniversary.

Happy Birthday to It’s FOSS! Visit the website for
giveaways and more details on It’s FOSS’s 6th birthday celebration.

Read More

Removing All Syscall Invocations from Kernel Space

There’s an effort under way to reduce and ultimately remove all system call
invocations from within kernel space. Dominik Brodowski was leading this
effort, and he posted some patches to remove a lot of instances from the
kernel. Among other things, he said, these patches would make it easier to
clean up and optimize the syscall entry points, and also
easier to clean up the
parts of the kernel that still needed to pretend to be in userspace, just
so they could keep using syscalls.

The rationale behind these patches, as expressed by Andy
Lutomirski
,
ultimately was to prevent user code from ever gaining access to kernel memory.
Sharing syscalls between kernel space and user space made that impossible
at the moment. Andy hoped the patches would go into the kernel quickly,
without needing to wait for further cleanup.

Linus Torvalds had absolutely no criticism of these patches,
and he indicated
that this was a well desired change. He offered to do a little extra
housekeeping himself with the kernel release schedule to make Dominik’s
tasks easier. Linus also agreed with Andy that any cleanup effort could
wait—he didn’t mind accepting ugly patches to update the syscall calling
conventions first, and then accept the cleanup patches later.

Ingo Molnar predicted that with Dominik’s changes, the size of the compiled
kernel would decrease—always a good thing. But Dominik said no, and in
fact
he ran some quick numbers for Ingo and found that with his patches, the
compiled kernel was actually a few bytes larger. Ingo was surprised but not
mortified, saying the slight size increase would not be a showstopper.

This project is similar—although maybe smaller in scope—to the effort
to get rid of the big kernel lock (BKL). In the case of the BKL, no one
could figure out for years even how to begin to replace it, until finally
folks decided to convert all BKL instances into identical local
implementations that could be replaced piecemeal with more specialized and
less heavyweight locks. After that, it was just a question of slogging
through each one until finally even the most finicky instances were
replaced with more specialized locking code.

Dominik seems to be using a similar technique now, in which areas of the
kernel that still need syscalls can masquerade as user space, while areas
of the kernel that are easier to fix get cleaned up first.

Note: if you’re mentioned above and want to post a response above the comment section, send a message with your response text to ljeditor@linuxjournal.com.

Read More

Total War: WARHAMMER II Coming to Linux, Red Hat Announces GPL Cooperation Commitment, Linspire 8.0 Alpha 1 Released and More

News briefs for June 18, 2018.

Feral Interactive announced this morning that Total War: WARHAMMER
II
is coming to Linux and macOS this year. You can view the trailer here. Pricing and
system requirements will be announced closer to the release.

Starting today, Red Hat announced
that “all new Red Hat-initiated open source projects that opt
to use GPLv2 or LGPLv2.1 will be expected to supplement the license with the
cure commitment language of GPLv3”. The announcement notes that this
development is the latest in “an ongoing initiative within the open source
community to promote predictability and stability in enforcement of
GPL-family licenses”.

Linspire announced
the release of 8.0
Alpha 1
yesterday. This release marks the beginning stages of the new
Linspire release, scheduled for around Christmas, and is not intended for
use in production environments. New features include Ubuntu 18.04 Base,
new GUI layout, kernel 4.15/0-23, Mate 1.20.1, Google Chrome 67 and more.

Yesterday marked the end of security support for for Debian GNU/Linux 8
“Jessie”, Softpedia
News reports
. If you haven’t already done so, upgrade now.

Phoronix reports
on feautres that didn’t make it for the mainline Linux kernel 4.18. Work that
isn’t being mailined includes Bcachefs, NOVA, Reiser4, WireGuard, LLVM Linux
and more.

Read More