Canonical Announces Embedded Computer Manifold 2 for Drone Developers, Request For Help Testing Snap Package, PHP v7.4.0 Available, PyCharm 2019.2 EAP3 Released, Talks To Port Over Microsoft’s Chromium-Based Edge browser To Linux

Yesterday, Canonical, the company behind Ubuntu announced the availability of Manifold 2, a high-performance embedded computer offered by leading enterprise drone manufacturer, DJI. This availability will allow developers access to containerized software packages (e.g. Snaps), allowing for infinite evolution and functionality changes.

It looks as if Ubuntu is transitioning the Chromium Debian package to a Snap one. The community behind this effort is asking for assistance in testing the Snap package.

The first alpha release of PHP version 7.4.0 is now available. And while it contains a large list of bug fixes and feature enhancements, remember, it is an unstable build and should not be used in production.

PyCharm 2019.2 EAP3 is officially released with support for Python Positional-Only Parameters (PEP-570), Restart Kernel Action and more.

There are talks but at the same time, there are not talks to port over Microsoft's Chromium-based Edge browser to Linux. Its developers say that it may happen in the near future but they are too busy to do it today.

Wickr: Redefining the Messaging Platform, an Interview with Co-Founder, Chris Howell

wickr logo

In the modern era, messaging applications are a constant target for attackers, exposing vulnerabilities, disclosing sensitive information of nation states and insider-employee inappropriate behaviors or practices. There is a constant need to prioritize one's cybersecurity and upgrade one's infrastructure to the latest and greatest of defensive technologies. However, the messaging tools that these same organizations tend to rely on often are the last to be secured, if at all. This is where Wickr comes in. Wickr is an instant-messaging application and platform offering end-to-end encryption and content-expiring messages. Its parent company of the same name takes security seriously and has built a product to showcase that. I was able chat with co-founder and CTO, Chris Howell, who was gracious enough to provide me with more information on what Wickr can achieve, how it works and who would benefit from it.

Petros Koutoupis: Please introduce yourself and tell us about your role at Wickr.

Chris Howell: I'm co-founder/CTO and responsible for technical strategy, security and product design. You can read my full bio here.

Petros: What do you see as a weak point in today's messaging apps?

Chris: By far, at least when it comes to security, the weak point of virtually all messaging apps to date (and all other apps and services, really) is that they're built with the assumption that users will have to trust the service. The problem with that way of thinking is can we really trust the service? That's not to say there are bad people running them, necessarily, but how many breaches (for example, Equifax 2017) or abuses (for example, Snapchat 2019) do we need to see to answer that question? Once the service is built that way, messaging users generally suffer in two ways. First, at some key point on their way to the recipient, messages are readable by some number of folks beyond the recipient. Now, the service typically will point to various security certifications and processes to make us feel okay about that, but in most cases where there are humans involved, what can happen will happen, and whatever controls are put in place to limit access to user data amount to little more than a pinky promise—which when broken, of course, leaves the user with a loss of privacy and security. Second, having been so trusted, the service typically prioritizes "virility" and its own growth over the users' need to control their own data, leading to behavior like scanning message content for marketing purposes, retaining messages longer than necessary, and abusing contacts to aid the growth of the service.

Petros: How does Wickr help address that?

Atari Opens Pre-Orders to VCS Retro Gaming Console, Gimp v2.10.12 Released, Distro-Specific Store Pages For Snap Apps Launches, Preview For Built-In Linux Kernel for Windows 10 Available in WSL 2, fs-verity Module MAY Merge Into Mainline Kernel

Atari has officially opened up pre-orders to the VCS retro gaming console for $250. New orders are expected to be fulfilled by March 2020.

Gimp version 2.10.12 has officially been released and it mostly contains bug fixes, most of which were introduced in the large release of version 2.10.10. There are also some noteworthy improvements which include an improved Curves tool, layers support for TIFF exporting and more.

While the Snap format is intended to run on many other Linux distributions, the Snapcraft team is creating a more inviting and improved experience [for non-Ubuntu users] by launching distro-specific store pages for Snap apps.

The preview for the built-in Linux kernel for Windows 10 is officially available in the new Windows Subsystem for Linux 2 (WSL 2). WSL 2 was announced back in May during the Microsoft's Build developer conference and is based on version 4.19 of the Linux kernel.

A new version of the fs-verity module MAY eventually find its way merged into the mainline kernel. The purpose of this module is to make individual files read-only and enable the kernel to detect modifications made on or offline. The new patch set was posted on May 23 and the story behind it can be found here.

FOSS Project Spotlight: OpenNebula

OpenNebula

OpenNebula recently released its latest version, 5.8 "Edge", which now offers pivotal capabilities to allow users to extend their cloud infrastructure to the Edge easily and effectively.

Why OpenNebula?

For anyone looking for an open-source, enterprise solution to orchestrate data-center virtualization and cloud management with ease and flexibility, OpenNebula is a fine candidate that includes:

  • On-demand provisioning of virtual data centers.
  • Features like capacity management, resource optimization, high availability and business continuity.
  • The ability to create a multi-tenant cloud layer on various types of newly built or existing infrastructure management solutions (such as VMware vCenter).
  • The flexibility to create federated clouds across disparate geographies, as well as hybrid cloud solutions integrating with public cloud providers like AWS and Microsoft Azure.

And, it's lightweight, easy to install, infrastructure-agnostic and thoroughly extensible.

Figure 1. High-Level Features

Check here for a more detailed look at OpenNebula features.

New Features in 5.8 "Edge"

With the current conversation shifting away from centralized cloud infrastructure and refocusing toward bringing the computing power closer to the users in a concerted effort to reduce latency, OpenNebula's 5.8 "Edge" release is a direct response to the evolving computing and infrastructure needs, and it offers fresh capabilities to extend one's cloud functionality to the edge. Gaming companies, among others, who have been using OpenNebula were of the first to push for these features (yet they don't have the be the only ones to benefit from them).

LXD Container Support

In addition to supporting KVM hypervisors, as well as offering a cloud management platform for VMware vCenter server components, OpenNebula now provides native support for LXD containers as well. The virtues offered by LXD container support allow users and organizations to benefit from:

  • A smaller space footprint and smaller memory.
  • Lack of virtualized hardware.
  • Faster workloads.
  • Faster deployment times.

From a compatibility perspective, OpenNebula 5.8 and LXD provide the following:

Endless OS 3.6.0 Released, Wind River Announces Enhancements to Wind River Linux, Arch Linux 2019.06.01 Is Out, NGD Systems Announces the Newport M.2 SSD and IBM Launches AutoAI for Watson Studio

News briefs for June 12, 2019.

Endless OS 3.6.0 has been released. This release has "updated the base OS packages to the latest versions from Debian 'buster' (the forthcoming stable release), most desktop components to the versions from GNOME 3.32, and Linux kernel 5.0." It also includes many new features, performance improvements and bug fixes. Go here to download.

Wind River announces the latest enhancements to Wind River Linux: "This release delivers technology to ease adoption of containers in embedded systems. It provides resources such as pre-built containers, tools, and documentation as well as support for frameworks such as Docker and Kubernetes, all of which can help embedded system developers in their journey to leverage or deploy cloud-native development approaches, especially relevant for appliances at the network edge. Wind River Linux is freely available for download."

Arch Linux 2019.06.01 has been released, marking the first ISO snapshot to ship with a kernel from the 5.1 series. Go here for download/update instructions. Softpedia News reports that the updated kernel means "more preparations for the year 2038, more scalable and faster asynchronous I/O, support for configuring Zstd compression levels in the Btrfs file system, better file system monitorization, and a new cpuidle governor called TEO."

NGD Systems announces the Newport M.2 SSD. According to Blocks and Files, "the Newport M.2 offers 4TB or 8TB of storage in the M.2 22110 form factor — 22mm by 110mm. NGD claims this is twice the capacity of the next largest available M.2 NVMe SSDs, with an average power consumption of less than 1w per TB. The host interface is NVMe 1.3 PCIe Gen 3.0 x4." NGD claims that "The Newport M.2 provides high-performance, high-capacity, low-latency processing for edge computing applications that cannot afford a cluster of 1U or 2U servers to do their processing, whether due to size, power, or compute performance."

IBM adds new automation capabilities to Watson Studio with AutoAI. The press release states that AutoAI is "a new set of capabilities for Watson Studio designed to automate many of the often complicated and laborious tasks associated with designing, optimizing and governing AI in the enterprise. As a result, data scientists can be freed up to dedicate more time to designing, testing and deploying machine learning (ML) models — the work of AI."

Why Smart Cards Are Smart

If you use GPG keys, learn about the benefits to storing them on a smart card.

GPG has been around for a long time and is used to secure everything from your email to your software. If you want to send an email to someone and be sure that no one else can read or modify it, GPG signing and encryption are the main method you'd use. Distributions use GPG to sign their packages, so you can feel confident that the ones you download and install from a package mirror have not been modified from their original state. Developers in many organizations follow the best practice of GPG-signing any code they commit to a repository. By signing their commits, other people can confirm that the changes that claim to come from a particular developer truly did. Web-based Git front ends like GitHub and GitLab let users upload their GPG public keys, so when they do commit signed code, the interface can display to everyone else that it has been verified.

Yet, all of the security ultimately comes down to the security of your private key. Once others have access to your private key, they can perform all of the same GPG tasks as though they were you. This is why you are prompted to enter a passphrase when you first set up a GPG key. The idea is that if attackers are able to copy your key, they still would need to guess your password before they could use the key. For all of the importance of GPG key security, many people still just leave their keys in ~/.gnupg directories on their filesystem and copy that directory over to any systems where they need to use GPG.

There is a better way. With OpenPGP smart cards, you can store your keys on a secure device that's protected with a PIN and not only store your keys more securely, but also use them more conveniently. Although some laptops come with integrated smart card readers, most don't. Thankfully, these devices are available as part of multi-function USB security token devices from a number of different vendors, and Linux Journal has published reviews of such products in the past. In this article, I discuss all the reasons OpenPGP smart cards are a better choice for storing your keys than your local filesystem.

Reason 1: Tamper-proof Key Storage

One of the main benefits of a smart card is that it stores your GPG keys securely. When you store your keys on a filesystem, anyone who can access that filesystem can copy off the keys. On a smart card, once keys go in, they never leave, neither accidentally nor from tampering. The smart card chips themselves are designed to be tamper-proof and resist attempts to extract key data even when someone has physical access. By putting keys on a smart card, you can have a reasonable assurance that your keys are safe, even from a determined attacker.

MariaDB Enterprise Server 10.4 Now Available, Pulumi Announces Pulumi Crosswalk for AWS, KDE Launches Plasma 5.16, IBM Announces Its List of Women Pioneers for AI in Business and Microway Provides Clemson University with an NVIDIA DGX-2 Supercomputer

News briefs for June 10, 2019.

MariaDB today announces the release of MariaDB Enterprise Server 10.4, "code-named 'Restful Nights' for the peace of mind it brings enterprise customers". The press release notes that this version "is a new, hardened and secured Server (different from MariaDB Community Server aka MariaDB Server) and has never been available before. MariaDB Enterprise Server 10.4 includes features not available in the community version that are focused on solving enterprise customer needs, providing them with greater reliability, stability and long-term support in production environments."

Pulumi today announces the availability of Pulumi Crosswalk for Amazon Web Services, "an open source framework that streamlines defining and deploying modern AWS applications and infrastructure with built-in AWS Best Practices. Using Pulumi Crosswalk, cloud engineers -- including developers, operators and teams -- are able to use familiar programming languages and tools to take ideas to production more productively and safely while bypassing many of the traditional barriers to modern cloud engineering." Go here to learn more about Pulumi Crosswalk and try it for free.

KDE today launches the latest version of its desktop environment, Plasma 5.16. This release features many changes, such as a completely rewritten notification system including a Do Not Disturb Mode, themes have been greatly improved, widgets have been modernized, and now when any app accesses your microphone, and icon appears in the system tray to warn you. In addition, "Plasma 5.16 is also spectacular to look at, with our new wallpaper called Ice Cold. Designed by Santiago Cézar, it is the winner of a contest with more than 150 entries." See the Release Announcement and Complete Changelog for all the details.

IBM today announces the first recipients and list of global women leaders and pioneers in AI for business. From the press release: "The list recognizes and celebrates women across a variety of industries and geographies for pioneering the use of AI to advance their companies in areas such as innovation, growth, and transformation." Go here to learn more about the pioneering women in AI.

Microway announces it has provided an NVIDIA DGX-2 supercomputer to Clemson University. From the press release: "The system deploys with NVIDIA's Deep Learning software—and was ready to train models immediately after installation. DGX-2's NGC software stack was installed by Microway experts and supports all major AI frameworks as well as offers containers for a variety of HPC applications." At Clemson, the DGX-2 will "empower researchers in disciplines such as computational math, statistics, operations research, and mechanical and industrial engineering to analyze vast datasets with exceptional ease. Initial projects include research on medical imaging, drone control, autonomous driving, and ocean dynamics. The resource will be available to all faculty, staff, and students." For more information, see this post on Newsstand.

Securing the Kernel Stack

The Linux kernel stack is a tempting target for attack. This is because the kernel needs to keep track of where it is. If a function gets called, which then calls another, which then calls another, the kernel needs to remember the order they were all called, so that each function can return to the function that called it. To do that, the kernel keeps a "stack" of values representing the history of its current context.

If an attacker manages to trick the kernel into thinking it should transfer execution to the wrong location, it's possible the attacker could run arbitrary code with root-level privileges. Once that happens, the attacker has won, and the computer is fully compromised. And, one way to trick the kernel this way is to modify the stack somehow, or make predictions about the stack, or take over programs that are located where the stack is pointing.

Protecting the kernel stack is crucial, and it's the subject of a lot of ongoing work. There are many approaches to making it difficult for attackers to do this or that little thing that would expose the kernel to being compromised.

Elena Reshetova is working on one such approach. She wants to randomize the kernel stack offset after every system call. Essentially, she wants to obscure the trail left by the stack, so attackers can't follow it or predict it. And, she recently posted some patches to accomplish this.

At the time of her post, no specific attacks were known to take advantage of the lack of randomness in the stack. So Elena was not trying to fix any particular security hole. Rather, she said, she wanted to eliminate any possible vector of attack that depended on knowing the order and locations of stack elements.

This is often how it goes—it's fine to cover up holes as they appear, but even better is to cover a whole region so that no further holes can be dug.

There was a lot of interest in Elena's patch, and various developers made suggestions about how much randomness she would need, and where she should find entropy for that randomness, and so on.

In general, Linus Torvalds prefers security patches to fix specific security problems. He's less enthusiastic about adding security to an area where there are no exploits. But in this case, he may feel that Elena's patch adds a level of security that wasn't there before.

Security is always such a nightmare. Often, a perfectly desirable feature may have to be abandoned, not because it's not useful, but because it creates an inherent insecurity. Microsoft's operating system and applications often have suffered from making the wrong decisions in those cases—choosing to implement a cool feature in spite of the fact that it could not be done securely. Linux, on the other hand, and the other open-source systems like FreeBSD, never make that mistake.

IPFire 2.23 – Core Update 132 Released with Important Security Fixes, Kernel 5.2-rc4 Is Out, Akraino Edge Stack Release 1.0 Is Now Available, KDE Announces Its Google Summer of Code Students and Google Assistant Now Works with Waze

News briefs for June 10, 2019.

IPFire 2.23 - Core Update 132 was released recently. This update includes security fixes and improvements to help secure systems vulnerable to some recent problems with Intel processors, specifically RIDL, Fallout and ZombieLoad. From the release announcement: "Two new types of vulnerabilities have been found in Intel processors. They cannot be fixed unless the hardware is changed, but can be somewhat mitigated through some changes in the Linux kernel (4.14.120) and an update microcode (version 20190514). Both is shipped in this release. Additionally, to mitigate this bug which cannot be fixed at all, SMT is disabled by default on all affected processors which has significant performance impacts." In addition, this release includes a new GUI that shows you which attacks your hardware may be vulnerable to and whether mitigations are in place. Go here to download.

Linux kernel 5.2-rc4 was released on Saturday. Linus Torvalds writes, "We've had a fairly calm release so far, and on the whole that seems to hold. rc4 isn't smaller than rc3 was (it's a bit bigger), but rc3 was fairly small, so the size increase isn't all that worrisome. I do hope that we'll start actually shrinking now, though. The SPDX conversions do continue to stand out, and make the diffstat a bit noisy. They don't affect actual code, so it's not like we should have any issues with them, but it makes the patch statistics look a bit odd." See the LKML post for more information.

Akraino Edge Stack Release 1.0 is now available. Light Reading reports that "Akraino's premiere release unlocks the power of intelligent edge with deployable, self-certified blueprints for a diverse set of edge use cases." In addition, "Akraino R1 delivers the first iteration towards new levels of flexibility to scale edge cloud services quickly, maximize efficiency, and deliver high availability for deployed services. It delivers a deployable and fully functional edge stack for edge use cases ranging from Industrial IoT, Telco 5G Core & vRAN, uCPE, SDWAN, edge media processing, and carrier edge media processing. As the premiere release, it opens doors to further enhancements and development to support edge infrastructure." For more information, go to https://www.lfedge.org.

KDE announces its Google Summer of Code students for 2019. There are too many to list here, so see the announcement for the list of students and projects they are working on.

Google Assistant now can offer navigation suggestions in Waze for Android users, so you can report on traffic without needing to touch your screen. According to Engadget, this feature is available only in the US for English at the moment.

Data in a Flash, Part III: NVMe over Fabrics Using TCP

A remote NVMe block device exported via an NVMe over Fabrics network using TCP.

Version 5.0 of the Linux kernel brought with it many wonderful features, one of which was the introduction of NVMe over Fabrics (NVMeoF) across native TCP. If you recall, in the previous part to this series ("Data in a Flash, Part II: Using NVMe Drives and Creating an NVMe over Fabrics Network", I explained how to enable your NVMe network across RDMA (an Infiniband protocol) through a little method referred to as RDMA over Converged Ethernet (RoCE). As the name implies, it allows for the transfer of RDMA across a traditional Ethernet network. And although this works well, it introduces a bit of overhead (along with latencies). So when the 5.0 kernel introduced native TCP support for NVMe targets, it simplifies the method or procedure one needs to take to configure the same network, as shown in my last article, and it also makes accessing the remote NVMe drive faster.

Software Requirements

To continue with this tutorial, you'll need to have a 5.0 Linux kernel or later installed, with the following modules built and inserted into the operating systems of both your initiator (the server importing the remote NVMe volume) and the target (the server exporting its local NVMe volume):


# NVME Support
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=y
# CONFIG_NVME_MULTIPATH is not set
CONFIG_NVME_FABRICS=m
CONFIG_NVME_RDMA=m
# CONFIG_NVME_FC is not set
CONFIG_NVME_TCP=m
CONFIG_NVME_TARGET=m
CONFIG_NVME_TARGET_LOOP=m
CONFIG_NVME_TARGET_RDMA=m
# CONFIG_NVME_TARGET_FC is not set
CONFIG_NVME_TARGET_TCP=m

More specifically, you need the module to import the remote NVMe volume:


CONFIG_NVME_TCP=m

And the module to export a local NVMe volume:


CONFIG_NVME_TARGET_TCP=m

Before continuing, make sure your physical (or virtual) machine is up to date. And once you verify that to be the case, make sure you are able to see all locally connected NVMe devices (which you'll export across your network):


$ cat /proc/partitions |grep -e nvme -e major
major minor  #blocks  name
 259        0 3907018584 nvme2n1
 259        1 3907018584 nvme3n1
 259        2 3907018584 nvme0n1
 259        3 3907018584 nvme1n1

If you don't see any connected NVMe devices, make sure the kernel module is loaded:


petros@ubu-nvme1:~$ lsmod|grep nvme
nvme                   32768  0
nvme_core              61440  1 nvme

The following modules need to be loaded on the initiator:


$ sudo modprobe nvme
$ sudo modprobe nvme-tcp

And, the following modules need to be loaded on the target:

Episode 20: Advertising is Broken, but Linux Isn’t.

Reality 2.0 - Episode 20: Advertising is Broken, but Linux Isn't.

Katherine Druckman and Doc Searls talk to Don Marti, of Mozilla and formerly of Linux Journal, about ad technology, privacy, and the Linux community.

Links Mentioned:

RHEL 7.7 Beta Is Now Available, Kdenlive 19.04.2 Is Out, Vampire: The Masquerade – Coteries of New York to Support Linux, IceWM 1.5.5 Released and the Document Foundation Announces New “What Can I Do for LibreOffice” Website

News briefs for June 7, 2019.

Red Hat Enterprise Linux 7.7 beta is now available. This version is the final release in the Full Support Phase of RHEL 7 and includes many enhancements and bug fixes. Updates include support for the latest generation of enterprise hardware and remediation for the Microarchitectural Data Sampling (MDS)/ZombieLoad vulnerabilities. See the release notes for more details.

Kdenlive version 19.04.2 is out. Highlights of this release include 77 bug fixes as well as "fixes for compositing issues, misbehaving guides/markers and grouping inconsistencies". You can get the AppImage here.

Vampire: The Masquerade - Coteries of New York will support Linux. GamingOnLinux quotes developer Draw Distance who says the game will be a "unique, atmospheric, single-player narrative experience, set in a rich, fully licensed, globally recognized universe of Vampire: The Masquerade 5th Edition". It's scheduled to be released on Steam in Q4 2019.

IceWM 1.5.5 has been released. This version of the window manager contains many bug fixes and portability fixes. Other improvements include updated translations, new manual pages and updated documentation, new quickswitch, new hotkeys, new focus behavior and much more. See the GitHub page for more details.

The Document Foundation announces a new website, "What can I do for LibreOffice". From the announcement: "In 'What can I do for LibreOffice', visitors are asked what they're interested in, and pointed to resources to get started. So instead of large web pages with walls of text, visitors can click around and find something that catches their eyes. The website source is on Gerrit if anyone has suggestions for updates or additions, and the site can be translated too."

Digital Will, Part I: Requirements

last will and testament

Digital assets are becoming as important as physical assets, so how do you manage them after you die?

When you lose a member of your family, you may find yourself at some point thinking about your own mortality, which then may lead you to think through preparations for your own death. I lost my father recently, but years before his death, he set up a will that described how to manage his estate, but he also made sure to share with me login details for his important financial accounts so I would have access when the time came. When the time did come to put his plans into practice, those details were invaluable.

All of this made me realize just how complicated it would be for someone to manage my own accounts in the event of my death, especially considering how much effort I've gone through to secure my computers and accounts. After all, unlike my dad, I don't use the same password for everything. What I realized I needed was the equivalent of a digital will: instructions and credentials so my next of kin had everything they needed to access my accounts and manage my affairs. In this first article of what will be a two-part series, I describe the requirements and plans to create a digital will in a way that would be manageable for my next of kin while also not negatively affecting the security of my accounts. The second part of the article will describe how I implemented these plans.

Defining Terms

This digital will is based on many of the ideas behind a traditional will, and I intend on borrowing a lot of the framework and terms instead of "re-inventing the will". To get started, let me define a few terms, but I should make it clear that I'm not an attorney, so these are just loose definitions to describe how some common terms used in a will might be applied to this digital will:

Zorin OS 15 Released, Canonical Issues Security Updates for All Supported Versions of Ubuntu Linux, New RCE Vulnerability Discovered Affecting Email Servers, Khadas VIM3 Launching Soon and Krita’s Digital Atelier on Sale

News briefs for June 6, 2019.

Zorin OS 15 has been released. From the announcement for this new major version: "Every aspect of the user experience has been re-considered and refined in this new release, from how apps are installed, to how you get work done, to how it interacts with the devices around you. The result is a desktop experience that combines the most powerful desktop technology with the most user-friendly design." Go here to download.

Canonical yesterday released important security updates for all supported versions of Ubuntu Linux. Update immediately if you haven't done so already. According to Softpedia News, "If you're using Ubuntu, you must update the kernel as soon as possible to patch these security issues. The new Linux kernel versions are linux-image 5.0.0-16.17 for Ubuntu 19.04, linux-image 4.18.0-21.22 for Ubuntu 18.10, linux-image 4.15.0-51.55 for Ubuntu 18.04 LTS, linux-image 4.4.0-150.176 for Ubuntu 16.04 LTS, linux-image 4.18.0-21.22~18.04.1 for Ubuntu 18.04.2 LTS, and linux-image 4.15.0-51.55~16.04.1 for Ubuntu 16.04.6 LTS."

A new RCE (remote command execution) vulnerability is affecting almost half of the internet's email servers. ZDNet reports that the Qualys security firm "found a very dangerous vulnerability in Exim installations running versions 4.87 to 4.91. The vulnerability is described as a remote command execution—different, but just as dangerous as a remote code execution flaw—that lets a local or remote attacker run commands on the Exim server as root."

The Khadas VIM3, an Amlogic S922X-powered Raspberry Pi-competitor, is launching on June 24. According to Notebook Check, the Khadas VIM3 will run Android 9.0 Pie, LibreELEC or Ubuntu. The company will initially launch two boards, the Basic and Pro, for $69.99 and $99.99, respectively. In addition, "Khadas has also integrated a neural processing unit (NPU), which it claims can process up to 2.5 tera operations per second (TOPS). The company has revealed the back of the board too, which houses the microSD card slot, MIPI CSI camera connector, along with the MIPI DSI and TP connectors for linking the VIM3 with an external monitor."

To celebrate its new release, Krita is offering "a 50% off sale of Digital Atelier, Ramon Miranda's painterly brushes and tutorials pack for the rest of this month!" Digital Atelier includes more than 50 new brush presets, more than 30 new brush tips, new patterns and surfaces, and almost two hours of video tutorial. You can get Digital Atelier in the Krita shop.

Linux’s Broadening Foundation

It's time to embrace 5G, starting with the Edge in our homes and hands.

In June 1997, David Isenberg, then of AT&T Labs Research, wrote a landmark paper titled "Rise of the Stupid Network". You can still find it here. The paper argued against phone companies' intent to make their own systems smarter. He said the internet, which already was subsuming all the world's phone and cable TV company networks, was succeeding not by being smart, but by being stupid. By that, he meant the internet "was built for intelligence at the end-user's device, not in the network".

In a stupid network, he wrote, "the data is boss, bits are essentially free, and there is no assumption that the data is of a single data rate or data type." That approach worked because the internet's base protocol, TCP/IP, was as general-purpose as can be. It supported every possible use by not caring about any particular use or purpose. That meant it didn't care about data rates or types, billing or other selfish concerns of the smaller specialized networks it harnessed. Instead, the internet's only concern was connecting end points for any of those end points' purposes, over any intermediary networks, including all those specialized ones, without prejudice. That lack of prejudice is what we later called neutrality.

The academic term for the internet's content- and purpose-neutral design is end-to-end. That design was informed by "End-to-End Arguments in System Design", a paper by Jerome Saltzer, David P. Reed and David D. Clark, published in 1980. In 2003, David Weinberger and I later cited both papers in "World of Ends: What the Internet Is and How to Stop Mistaking It for Something Else". In it, we explained:

When Craig Burton describes the Net's stupid architecture as a hollow sphere comprised entirely of ends, he's painting a picture that gets at what's most remarkable about the Internet's architecture: Take the value out of the center and you enable an insane flowering of value among the connected end points. Because, of course, when every end is connected, each to each and each to all, the ends aren't endpoints at all.

And what do we ends do? Anything that can be done by anyone who wants to move bits around.

Chrome 75 Released, ask.krita.org Website Retiring, LinuxGizmos Publishes Its Spring 2019 SBC Catalog, LibreOffice 6.3 Beta 1 Is Ready for Testing and Happy 15th to Phoronix

News briefs for June 5, 2019.

Chrome 75 was released yesterday. ZDNet reports that "The vast majority of the new features and changes in Chrome 75 are centered around adding new internal APIs and updating existing features." The big new feature is "the addition of a hidden Reader Mode, similar to the one included with Firefox". See the changelog for more details.

The ask.krita.org website, a stack-exchange-like place for people to report problems and help each other, is being retired. According to the post, the problems were "Nobody seemed to be searching whether their problems had already been discussed and maybe solved, so the same questions were being asked again and again. Nobody seemed to stay around and engage with the people who were trying to help them, and nobody seemed to stay around to help other people." The team is looking for a replacement, but isn't sure quite what that will be yet.

LinuxGizmos.com published its Spring 2019 catalog of SBCs. This latest catalog includes 125 community-backed Linux and Android SBCs with prices, features and a comparison spreadsheet. From the catalog intro, "Major new products this year include Google's i.MX8M driven Coral Dev Board and Nitrogen8M_Mini, as well as the dirt-cheap, Intel Cherry Trail based Atomic Pi. In the RK3399 world the Rock960 Model C and even cheaper Rock Pi 4 are forcing other RK3399 boards to cut prices. Also of note are the Amlogic S922X driven Odroid-N2 and the Allwinner H6-based Orange Pi 3 and Pine H64 Model B, among others."

LibreOffice 6.3 Beta 1 is out and ready for testing. The Document Foundation notes that since the 6.3 Alpha 1 release in November 2018, 683 commits have been submitted and 141 bugs fixed. See the release notes for details, and download from here. The final release of version 6.3 is scheduled for mid-August.

Phoronix turns 15 today. From Michael Larabel's post: "I started Phoronix for the poor Linux hardware support at the time and it's been an amazing turnaround since that point. No longer is it a battle of getting network devices or input devices working on Linux but now it's all a matter of maximizing the performance out of today's hardware on Linux and watching the amazing growth of Linux on servers, AI / deep learning, Android, Linux gaming, and embedded along with all other sorts of verticals. Each year it becomes more amazing to see what other hardware runs Linux as well as seeing where else the Phoronix Test Suite usage pops up next." Happy Birthday Phoronix!

Line Length Limits in the Kernel

Periodically, the kernel developers debate something everyone generally takes for granted, such as the length of a line of text. Personally, I like lines of text to reach both sides of my screen—it's just a question of not wasting space.

Alastair D'Silva recently agreed with me. He felt that monitor sizes and screen resolution had gotten so big in recent years, that the kernel should start allowing more data onto a single line of text. It was simple pragmatism—more visible text means more opportunity to spot the bug in a data dump.

Alastair posted a patch to allow 64-byte line lengths, instead of the existing options of 16 bytes and 32 bytes. It was met with shock and dismay from Petr Mladek, who said that 64 bytes added up to more than 256 characters per line, which he doubted any human would find easy to read. He pointed out that the resolution needed to fit such long lines on the screen would be greater than standard hi-def. He also pointed out that there were probably many people without high-definition screens who worked on kernel development.

Alastair noted that regular users never would see this data anyway, and he added that putting the choice in the hands of the calling routine couldn't possibly be a bad thing. In fact, instead of 16-, 32- and 64-bytes, Alastair felt the true option should be any multiple of the groupsize variable.

There's very little chance that Alastair's patch will make it into the kernel. Linus Torvalds is very strict about making sure Linux development does not favor wealthy people. He wants developers working on ancient hardware to have the same benefits and capabilities as those working with the benefit of the latest gadgets.

Linus commented about seven years ago on the possibility of changing the maximum patch line length from 80 to 100 characters. At that time he said:

I think we should still keep it at 80 columns.

The problem is not the 80 columns, it's that damn patch-check script that warns about people *occasionally* going over 80 columns.

But usually it's better to have the *occasional* 80+ column line, than try to split it up. So we do have lines that are longer than 80 columns, but that's not because 100 columns is ok - it's because 80+ columns is better than the alternative.

So it's a trade-off. Thinking that there is a hard limit is the problem. And extending that hard limit (and thinking that it's 'ok' to be over 80 columns) is *also* a problem.

So no, 100-char columns are not ok.

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.

Firefox Now Will Have Enhanced Tracking Protection On by Default, 5.0 Kernel Reaches End of Life, Apple Replacing Bash with zsh as Default Shell, IBM Announces Major Upgrade to Db2 and Oracle’s Unbreakable Enterprise Kernel R5 Update 2 Is Now Available

News briefs for June 4, 2019.

Mozilla today announces that the Firefox browser will now have Enhanced Tracking Protection on by default. From Chris Beard's blog post: "These protections work in the background, blocking third-parties from tracking your online activity while increasing the speed of the browser. We're offering privacy protections by default as you navigate the web because the business model of the web is broken, with more and more intrusive personal surveillance becoming the norm. While we hope that people's digital rights and freedoms will ultimately be guaranteed, we're here to help in the interim."

Greg Kroah-Hartman today announced the last maintenance update of kernel 5.0. From his LKML message: "I'm announcing the release of the 5.0.21 kernel. All users of the 5.0 kernel series must upgrade. Note, this is the LAST 5.0.y kernel to be released. It is now end-of-life. Please move to the 5.1.y kernel tree at this point in time."

Apple is replacing bash with zsh as the default shell in macOS Catalina. According to The Verge, "Starting with macOS Catalina, Macs will now use zsh as the default login shell and interactive shell across the operating system. All newly created user accounts in macOS Catalina will use zsh by default. Bash will still be available, but Apple is signaling that developers should start moving to zsh on macOS Mojave or earlier in anticipation of bash eventually going away in macOS."

IBM today announced a major upgrade to its Db2 database. According to the press release, among the many new features of Db2 version 11.5 "is built-in support for data science development. Through a series of newly-available drivers for multiple open source programming languages and frameworks, it will now be easier for developers to analyze and build machine learning models into applications using Db2. The enhancements are designed to help Db2 developers more easily write applications that require less management, are more resilient to outages, and help improve productivity." The press release also notes that "The supported languages include Go, Ruby, Python, PHP, Java, Node.js, Sequelize. In addition there is support for popular frameworks such as Visual Studio Code and Jupyter notebook. The latest drivers and code samples for each are available now at GitHub." Go here for more information on data and AI.

Oracle announces that the Unbreakable Enterprise Kernel Release 5 Update 2 is now available. UEK R5 Update 2 is based on the mainline kernel version 4.14.35 and has many new features and bug fixes. Highlights include filesystem and storage fixes, virtualization updates, driver updates and much more.

Facebook, Not Microsoft, Is the Main Threat to Open Source

Facebook

In the future, Facebook won't be a social-media site.

Facebook is under a lot of scrutiny and pressure at the moment. It's accused of helping foreign actors to subvert elections by using ads and fake accounts to spread lies—in the US, for example—and of acting as a conduit for terrorism in New Zealand and elsewhere. There are calls to break up the company or at least to rein it in.

In an evident attempt to head off those moves, and to limit the damage that recent events have caused to Facebook's reputation, Mark Zuckerberg has been publishing some long, philosophical posts that attempt to address some of the main criticisms. In his most recent one, he calls for new regulation of the online world in four areas: harmful content, election integrity, privacy and data portability. The call for data portability mentions Facebook's support for the Data Transfer Project. That's clearly an attempt to counter accusations that Facebook is monopolistic and closed, and to burnish Facebook's reputation for supporting openness. Facebook does indeed use and support a large number of open-source programs, so to that extent, it's a fair claim.

Zuckerberg' previous post, from the beginning of March 2019, is much longer, and it outlines an important shift in how Facebook will work to what he calls "A Privacy-Focused Vision for Social Networking". Greater protection for privacy is certainly welcome. But, it would be naïve to think that Zuckerberg's post is simply about that. Once more, it is an attempt to head off a growing chorus of criticism—in this case, that Facebook undermines data protection. This is the key idea:

I believe the future of communication will increasingly shift to private, encrypted services where people can be confident what they say to each other stays secure and their messages and content won't stick around forever.

The “From Mac to Linux” Issue

From Mac to Linux issue

What you are reading right now is a Linux magazine—with a focus on Apple computers running macOS. (Or MacOS. Or however Apple is doing the capitalization nowadays.)

I know, it's weird. It's extremely weird—like cats and dogs living together weird.

But we're not here to bash on Apple. Neither are we here to sing praises to those down in Cupertino.

The reality is, many within the Open Source and Free Software worlds do use Macintoshes—at least a portion of the time—and there are some unique challenges that pop up when you need to use both macOS and Linux on a regular basis. Likewise, many people have moved from Mac to Linux as part of their computing journey, and we'd like to offer some tips and ideas to help them out.

(And if we help a few Mac users feel a bit more confident in making the switch over to Linux? Well, that's just gravy on top.)

Never used a Macintosh before? There's some interesting technical tidbits held within these pages that might come in handy when interacting with co-workers that utilize a number of Mac-specific file types and programs. Or, at the very least, the various distinct differences between the platforms are sure to provide a bit of amusement. Who doesn't want to know how Mac filesystems work? You'll be the life of the party!

We kick everything off with a delightful tale we call "Hello Again, Linux" by a gentleman named Richard Mavis who recounts his own story of how he switched from Windows to Mac, then from Mac to Linux. He describes what hardware and software he used, what prompted his change, and how the entire experience went.

Then we get into the meat and potatoes of some of the more "Macintosh-y" things you can do from your Linux desktop.

We begin with "Accessing Those Old MacOS Volumes" by Linux Journal Editor at Large, Petros Koutoupis. In it, Petros walks through the process of how to mount (and read/write) Macintosh volumes (hard drives and so on) that were formatted with "Hierarchical File System Plus" (usually called "HFS+"). This process can be a royal pain in the posterior, so having it written down with step-by-step instructions is simply too handy for words.

Then I cover the various software and packages that allow Linux (and, to a lesser extent, some UNIX variants) to read and write some of the Mac-specific file types out there: DMG files, SIT files, ClarisWorks files and so on. I cover how to open them all, right on your Linux computer. No Mac required.

But let's say you're a Mac software developer. You've got a small mountain of code written in Objective-C using the Cocoa framework. Don't want to lose that massive investment in time and knowledge when you make the move to Linux? Petros Koutoupis provides an introduction to the free software re-implementation of Apple's closed-source frameworks in "Porting Mac OS Applications to Linux with GNUstep".