Language Selection

English French German Italian Portuguese Spanish

Linux Journal

Syndicate content
Updated: 4 hours 42 min ago

IBM Announces Three New Open Source Projects for Developing Apps for Kubernetes and the Data Asset eXchange (DAX), the Linux Foundation Is Having a Sysadmin Day Sale, London Launches Open-Source Homebuilding App and Clonezilla Live 2.6.2-15 Released

Tuesday 16th of July 2019 01:55:59 PM

News briefs for July 16, 2019.

IBM this morning announces three new open-source projects that "make it faster and easier for you to develop and deploy applications for Kubernetes". Kabanero "integrates the runtimes and frameworks that you already know and use (Node.js, Java, Swift) with a Kubernetes-native DevOps toolchain". Appsody "gives you pre-configured stacks and templates for a growing set of popular open source runtimes and frameworks, providing a foundation on which to build applications for Kubernetes and Knative deployments". And Codewind "provides extensions to popular integrated development environments (IDEs) like VS Code, Eclipse, and Eclipse Che (with more planned), so you can use the workflow and IDE you already know to build applications in containers."

IBM also today announces the Data Asset eXchange (DAX), which is "an online hub for developers and data scientists to find carefully curated free and open datasets under open data licenses". The press release notes that whenever possible, "datasets posted on DAX will use the Linux Foundation's Community Data License Agreement (CDLA) open data licensing framework to enable data sharing and collaboration. Furthermore, DAX provides unique access to various IBM and IBM Research datasets. IBM plans to publish new datasets on the Data Asset eXchange regularly. The datasets on DAX will integrate with IBM Cloud and AI services as appropriate."

In honor of Sysadmin Day, the Linux Foundation is offering all IT certification and prep course bundles for $325 each, along with a bonus course valued at $299 and a free Linux Foundation ball cap. The sale runs today until July 26th.

The city of London launches an open-source app for homebuilding. Arch News reports that "The freely-available app, titled PRISM, is aimed at the design and construction of high-quality, factory-built homes to address the current demand of 50,000+ houses per year."

Clonezilla live (2.6.2-15) was released recently. This release include major enhancements and bug fixes. The Linux kernel was updated to 4.19.37-5, the underling OS is based on the Debian Sid repository (as of 2019/Jul/07), the mechanism to update uEFI nvram boot entry was improved, and much more. The Clonezilla live 2.6.2-15 download link is here.

News IBM Kubernetes DevOps Open Data The Linux Foundation Clonezilla

Arduino from the Command Line: Break Free from the GUI with Git and Vim!

Tuesday 16th of July 2019 11:30:00 AM
by Matthew Hoskins

Love Arduino but hate the GUI? Try arduino-cli.

In this article, I explore a new tool released by the Arduino team that can free you from the existing Java-based Arduino graphical user interface. This allows developers to use their preferred tools and workflow. And perhaps more important, it'll enable easier and deeper innovation into the Arduino toolchain itself.

The Good-Old Days

When I started building hobby electronics projects with microprocessors in the 1990s, the process entailed a discrete processor, RAM, ROM and masses of glue logic chips connected together using a point-to-point or "wire wrapping" technique. (Look it up kids!) Programs were stored on glass-windowed EPROM chips that needed to be erased under UV light. All the tools were expensive and difficult to use, and development cycles were very slow. Figures 1–3 show some examples of my mid-1990s microprocessor projects with discrete CPU, RAM and ROM. Note: no Flash, no I/O, no DACs, no ADCs, no timers—all that means more chips!

Figure 1. Example Mid-1990s Microprocessor

Figure 2. Example Mid-1990s Microprocessor

Figure 3. Example Mid-1990s Microprocessor

It all changed in 2003 with Arduino.

The word "Arduino" often invokes a wide range of opinions and sometimes emotion. For many, it represents a very low bar to entry into the world of microcontrollers. This world before 2003 often required costly, obscure and closed-source development tools. Arduino has been a great equalizer, blowing the doors off the walled garden. Arduino now represents a huge ecosystem of hardware that speaks a (mostly) common language and eases transition from one hardware platform to another. Today, if you are a company that sells microcontrollers, it's in your best interest to get your dev boards working with Arduino. It offers a low-friction path to getting your products into lots of hands quickly.

It's also important to note that Arduino's simplicity does not inhibit digging deep into the microcontroller. Nothing stops you from directly twiddling registers and using advanced features. It does, however, decrease your portability between boards.

Go to Full Article

Q4OS 3.8 Stable Released, Kernel 5.2.1 Is Out, Cloudera Announces New Open-Source Licensing Model, Microsoft's Quantum Development Kit Now Available as an Open-Source Project on GitHub and Alan Turing to Be Featured on New Note in the UK

Monday 15th of July 2019 01:59:41 PM

News briefs for July 15, 2019.

Q4OS 3.8 stable was released today. This is a long-term support (LTS) release based on Debian Buster 10 with Plasma 5.14 and optionally Trinity 14.0.6 for desktop environments. Its primary aim is stability, and it's code-named Centaurus. It's available for 64bit and 32bit/i686pae computers, and also for older i386 systems without PAE extension. Support for ARM devices is in the works. Go here to download.

Linux kernel 5.2.1 was released yesterday. Greg Kroah-Hartman writes, "All users of the 5.2 kernel series must upgrade. The updated 5.2.y git tree can be found at: git:// linux-5.2.y and can be browsed at the normal git web browser:;a=summary."

Cloudera recently announced an new open-source licensing model. The company's Vision blog post states that the new strategy "aligns the licensing models previously used by each of Hortonworks and Cloudera and also introduces some new changes. We take our open source leadership role seriously, and recognize that our need to align our own licenses is also an opportunity to lead and to renew our commitment to open source software." Moving forward all of the company's open-source licenses "will adhere to one of two OSI approved licenses: the Apache License, Version 2, or the GNU Affero General Public License, Version 3 ('AGPL')". The post also notes Cloudera's open-source goals: "freedom from vendor lock-in", "community standards, not Cloudera standards" and "open ecosystem". See the Cloudera Licensing Policy FAQ for more details.

Microsoft's Quantum Development Kit is now available as an open source project on GitHub. According to Windows Central, "The QDK, which launched in preview last year, gives developers access to the Q# programming language, quantum simulators, and the libraries needed to start experimenting with quantum computing before it goes mainstream." See also the Microsoft Quantum blog for more information.

The Bank of England has announced that Alan Turing will be on the new £50 note in the UK. Gizmodo quotes Bank of England Governor Mark Carney: "Why Turing? Turing was an outstanding mathematician whose works had an enormous impact on how we live today. As the father of computer science and artificial intelligence, Alan Turing's contributions were far-ranging and path-breaking. His genius lay in a unique ability to link the philosophical and the abstract with the practical and the concrete. And all around us his legacy continues to build. Turing is a giant on whose shoulders so many now stand."

News Q4OS Distributions Debian kernel Cloudera open source licensing Microsoft Quantum Computing Alan Turing

An AI Wizard of Words

Monday 15th of July 2019 11:00:00 AM
by Marcel Gagné

A look at using OpenAI's Generative Pretrained Transformer 2 (GPT-2) to generate text.

It's probably fair to say that there's more than one person out there who is worried about some version of artificial intelligence, or AI, possibly in a robot body of some kind, taking people's jobs. Anything that is repetitive or easily described is considered fair game for a robot, so driving a car or working in a factory is fair game.

Until recently, we could tell ourselves that people like yours truly—the writers and those who create things using some form of creativity—were more or less immune to the march of the machines. Then came GPT-2, which stands for Generative Pretrained Transformer 2. I think you'll agree, that isn't the sexiest name imaginable for a civilization-ending text bot. And since it's version 2, I imagine that like Star Trek's M-5 computer, perhaps GPT-1 wasn't entirely successful. That would be the original series episode titled, "The Ultimate Computer", if you want to check it out.

So what does the name "GPT-2" stand for? Well, "generative" means pretty much what it sounds like. The program generates text based on a predictive model, much like your phone suggests the next word as you type. The "pretrained" part is also quite obvious in that the model released by OpenAI has been built and fine-tuned for a specific purpose. The last word, "Transformer", refers to the "transformer architecture", which is a neural network design architecture suited for understanding language. If you want to dig deeper into that last one, I've included a link from a Google AI blog that compares it to other machine learning architecture (see Resources).

On February 14, 2019, Valentine's Day, OpenAI released GPT-2 with a warning:

Our model, called GPT-2 (a successor to GPT), was trained simply to predict the next word in 40GB of Internet text. Due to our concerns about malicious applications of the technology, we are not releasing the trained model. As an experiment in responsible disclosure, we are instead releasing a much smaller model for researchers to experiment with, as well as a technical paper.

I've included a link to the blog in the Resources section at the end of this article. It's worth reading partly because it demonstrates a sample of what this software is capable of using the full model (see Figure 1 for a sample). We already have a problem with human-generated fake news; imagine a tireless machine capable of churning out vast quantities of news and posting it all over the internet, and you start to get a feel for the dangers. For that reason, OpenAI released a much smaller model to demonstrate its capabilities and to engage researchers and developers.

Go to Full Article

Google Announces Docsy; KDE Releases Applications 19.04.3, Plasma 5.16.3 and Kdenlive 19.04.3; Alpine Linux 3.10.1 Is Now Available; and Valve Launches Steam Labs

Friday 12th of July 2019 02:03:35 PM

News briefs for July 12, 2019.

Google yesterday announced Docsy, a website theme for technical documentation. From the Google blog post: "Docsy builds on existing open source tools, like Hugo, and our experience with open source docs, providing a fast and easy way to stand up an OSS documentation website with features specifically designed to support technical documentation. Special features include everything from site navigation to multi-language support—with easy site deployment options provided by Hugo. We also created guidance on how to add additional pages, structure your documentation, and accept community contributions, all with the goal of letting you focus on creating great content."

Several KDE releases came this week. KDE Applications 19.04.3 was released yesterday. This release contains more than 60 bugfixes and translation updates. See the full changelog for details.

KDE Plasma 5.16.3 also was released. This update comes just two weeks after the 5.16 release and contains several bugfixes and new translations. See the full Changelog for specifics.

And, Kdenlive 19.04.3 was released today. This release contains a ton of fixes, including "fixing compositing and speed effect regressions, thumbnail display issues of clips in the timeline and many Windows fixes. You can get the AppImage from the download page.

Alpine Linux 3.10.1 has been released. See the git log for the full list of changes in this version of the security-oriented lightweight distro.

Valve has launched Steam Labs, which gives users a peek at new experiments in development. According to TechCrunch, "Valve is quick to point out that all of these experiments are just that—there's no promising that any of the stuff that hits the Labs will make it all the way to the official client. They also say that even 'Steam Labs is itself an experiment', which will probably change and evolve a bunch over time." The first three experiments on Steam Labs are Micro Trailers, Interactive Recommender and Automatic Show.

News Google Docsy KDE Plasma Alpine Linux

GIS on Linux with SAGA

Friday 12th of July 2019 12:00:00 PM
by Joey Bernard

In this article, I want to look at a GIS option available for Linux—specifically, a program called SAGA (System for Automated Geoscientific Analyses). SAGA was developed at the Department of Physical Geography in Germany. It is built with a plugin module architecture, where various functions are provided by individual modules. A very complete API is available to allow users to extend SAGA's functionality with newly written modules. I take a very cursory look at SAGA here and describe a few things you might want to do with it.

Installing SAGA should be as easy as looking at the software repository for your favourite distribution. For Debian-based distros, you can install it with the command:

sudo apt-get install saga

When you first start it, you get a blank workspace where you can begin your project.

Figure 1. SAGA starts up with a central project window, several tool panes on the left and console messages at the bottom.

Two major categories of data sets are available that you can use within your projects: satellite imagery and terrain data. The tutorial website provides detailed walk-throughs that show how you can get access to these types of data sets for use in your own projects. The tutorial website also has sections on some of the processing tools available for doing more detailed analysis.

SAGA understands several data file formats. The typical ones used in GIS, like SHP files or point clouds, are the default options in the file selector window. You can work with these types of data, or satellite imagery or terrain data.

Let's start by looking at terrain analysis in SAGA. You'll need digital elevation data, in DEM format, which is available from the SRTM Tile Grabber site. You will get a zip file for each region you select, and these zip files contain geotiff files for the selected regions.

Load the geotiff file by clicking File→Open. By default, it will show only the common project file formats. To locate your downloaded geotiff files, you'll need to change the filter at the bottom of the file selector window to be all files. Once it is loaded, it will show up in the list of data sources in the bottom-left window pane.

Figure 2. You can load data sources, such as geotiffs, into your project.

Go to Full Article

EFF Celebrating 29th Birthday with $20 Membership, Linode Launches New GPU-Optimized Cloud Computing Instances, Syncthing 1.2.0 Released, Kali Linux Now Available for RPi 4 and GNOME Devs to Disable Snap Plugin for GNOME Software

Thursday 11th of July 2019 01:34:22 PM

News briefs for July 11, 2019.

The Electronic Frontier Foundation is celebrating its 29th birthday "by building a future where tech respects and empowers users". From now until July 24, 2019, the EFF is offering a $20 membership, which includes a set of limited-edition enamel pins. (Note also that the EFF is a US 501(c)(3) nonprofit, so contributions are tax-deductible as allowed by law.)

Linode yesterday launched new GPU-optimized cloud computing instances, specifically for developers and business that need massive parallel computational power. From the press release: "The new instances are built on NVIDIA Quadro RTX 6000 GPU cards with all three major types of processing cores (CUDA, Tensor, and Real-Time Ray Tracing) available to users. Linode is one of the first cloud providers to deploy NVIDIA's latest GPU architecture." For more information, see

Syncthing 1.2.0 was released recently. Linux Uprising reports that this version of the open-source peer-to-peer synchronization tool "adds QUIC with NAT traversal as a new transport protocol, fixes some bugs and enables automatic error reporting." The article notes Syncthing's emphasis on privacy: "None of your data is ever store anywhere else other than your own computers (no central server); all communication is secured using TSL and authenticated using a strong cryptographic certificate. Basically, it can replace Dropbox and other similar services with something decentralized, where your data is your data alone." Go here to download.

Kali Linux for Raspberry Pi 4 was released recently, "complete with on-board wifi monitor mode & frame injection support!" You can download it from the Kali Linux ARM Images page. Currently there is support only for 32-bit, but 64-bit is coming soon.

GNOME developers plan to disable the Snap plugin for GNOME Software, as Canonical has started creating its own Snap Store and won't be using GNOME Software in Ubuntu 20.04 LTS. According to Phoronix, "Canonical's in-development Snap Store will obviously be focused just on their own Snap effort and not supporting the likes of Flatpak. Due to the likelihood that the GNOME Software Snap plug-in will quickly suffer from bit-rot and pose a maintenance burden to GNOME developers with little to no return, it's certainly reasonable that they would at least disable this plug-in."

News eff Linode Syncthing Kali Linux Raspberry Pi GNOME Canonical

Linux IoT Development: Adjusting from a Binary OS to the Yocto Project Workflow

Thursday 11th of July 2019 11:30:00 AM
by Mirza Krak

Introducing the Yocto Project and the benefits of using it in embedded Linux development.

In embedded Linux development, there are two approaches when it comes to what operating system to run on your device. You either build your own distribution (with tools such as Yocto/OpenEmbedded-Core, Buildroot and so on), or you use a binary distribution where Debian and derivatives are common.

It's common to start out with a binary distribution. This is a natural approach, because it's a familiar environment for most people who have used Linux on a PC. All the commodities are in place, and someone else has created the distribution image for you to download. There normally are custom vendor images for specific hardware that contain optimizations to make it easy to get started to utilize your hardware fully.

Any package imaginable is an apt install command away. This, of course, makes it suitable for prototyping and evaluation, giving you a head start in developing your application and your product. In some cases, you even might ship pre-series devices using this setup to evaluate your idea and product further. This is referred to as the "golden image" approach and involves the following steps:

  1. Flash the downloaded Debian image to an SD card.
  2. Boot the SD card, log in and make any modifications needed (for example, installing custom applications). Once all the modifications are complete, this becomes your golden image.
  3. Duplicate the SD card into an image on your workstation (for example, using dd).
  4. Flash the "golden image" to a fleet of devices.

And every time you need to make a change, you just repeat steps 2–4, with one change—that is, you boot the already saved "golden image" in step 2 instead of the "vanilla" image.

At a certain point, the approach of downloading a pre-built distribution image and applying changes to it manually will become a problem, as it does not scale well and is error-prone due to the amount of manual labor that can lead to inconsistent output. The optimization would be to find ways to automate this, generating distribution images that contain your applications and your configuration in a reproducible way.

This is a crossroad where you decide either to stick with a binary distribution or move your idea and the result of the evaluation and prototyping phase to a tool that's able to generate custom distributions and images in a reproducible and automated way.

Go to Full Article

Samba 4.11.0rc1 Released, Firefox 68.0esr Now Available, SPI Board Elections, Microsoft Admitted to linux-distro List and SoftMaker FreeOffice Now Includes Anniversary Update

Wednesday 10th of July 2019 02:01:32 PM

News briefs for July 10, 2019.

Samba 4.11.0rc1 was released yesterday. Note that this release is for testing purposes only and not intended for production. New features include default samba process model, authentication logging, LDAP referrals, Bind9 logging, samba-tool improvements and much more. See the full Release Notes for more information, and go here to download the source code.

Mozilla released the latest Firefox update for iOS and Desktop. Highlights of Firefox 68.0esr include blackout shades for Firefox Reader View, Firefox Recommended Extensions (a curated "list of recommended extensions that have been thoroughly reviewed for security, usability and usefulness"), more customization for IT Pros and more. See the Release Notes for more details.

SPI board elections coming soon. The announcement notes there are three seats available for the Software in the Public Interest board, each for a three-year term: President and two General board member seats. Nominations are open now and end July 15th, 2019. Voting begins July 17th and ends July 30th, and the results will be announced on July 31st. From the announcement: "The ideal candidate will have an existing involvement in the Free and Open Source community, though this need not be with a project affiliated with SPI."

Microsoft has been admitted to the closed linux-distro list. ZDNet reports that "Microsoft wanted in because, while Windows sure isn't Linux, the company is, in fact, a Linux distributor. Sasha Levin, a Microsoft Linux kernel developer, pointed out Microsoft has several distro-like builds -- which are not derivative of an existing distribution—that are based on open-source components." The ZDNet article also noted that open-source security expert David A. Wheeler supported the decision as "the purpose of the list is to enable 'everyone to coordinate so that users get fixes.' That includes Linux users on Windows and Azure. So, he supported Microsoft being allowed into the private list."

SoftMaker FreeOffice now includes the Anniversary update. This new version has many new features for the TextMaker word processor and spreadsheets, and improved user-friendliness. See the press release for details on the office suite's update, and go here to download.

News Samba Mozilla Firefox SPI Microsoft Security FreeOffice SoftMaker office suite

Address Space Isolation and the Linux Kernel

Wednesday 10th of July 2019 11:30:00 AM
by Zack Brown

Mike Rapoport from IBM launched a bid to implement address space isolation in the Linux kernel. Address space isolation emanates from the idea of virtual memory—where the system maps all its hardware devices' memory addresses into a clean virtual space so that they all appear to be one smooth range of available RAM. A system that implements virtual memory also can create isolated address spaces that are available only to part of the system or to certain processes.

The idea, as Mike expressed it, is that if hostile users find themselves in an isolated address space, even if they find bugs in the kernel that might be exploited to gain control of the system, the system they would gain control over would be just that tiny area of RAM to which they had access. So they might be able to mess up their own local user, but not any other users on the system, nor would they be able to gain access to root level infrastructure.

In fact, Mike posted patches to implement an element of this idea, called System Call Isolation (SCI). This would cause system calls to each run in their own isolated address space. So if, somehow, an attacker were able to modify the return values stored in the stack, there would be no useful location to which to return.

His approach was relatively straightforward. The kernel already maintains a "symbol table" with the addresses of all its functions. Mike's patches would make sure that any return addresses that popped off the stack corresponded to entries in the symbol table. And since "attacks are all about jumping to gadget code which is effectively in the middle of real functions, the jumps they induce are to code that doesn't have an external symbol, so it should mostly detect when they happen."

The problem, he acknowledged, was that implementing this would have a speed hit. He saw no way to perform and enforce these checks without slowing down the kernel. For that reason, Mike said, "it should only be activated for processes or containers we know should be untrusted."

There was not much enthusiasm for this patch. As Jiri Kosina pointed out, Mike's code was incompatible with other security projects like retpolines, which tries to prevent certain types of data leaks falling into an attacker's hands.

There was no real discussion and no interest was expressed in the patch. The combination of the speed hit, the conflict with existing security projects, and the fact that it tried to secure against only hypothetical security holes and not actual flaws in the system, probably combined to make this patch set less interesting to kernel developers.

Go to Full Article

IBM Closes Red Hat Acquisition, Kaidan 0.4.0 Released, Android Apps Can Track You Even If You Deny Permission, Debian Edu 10 "Buster" Now Available and MIT Researchers Create New AI Programming Language

Tuesday 9th of July 2019 01:45:57 PM

News briefs for July 9, 2019.

IBM closes its acquisition of Red Hat for $34 billion. From the press release: "The acquisition redefines the cloud market for business. Red Hat's open hybrid cloud technologies are now paired with the unmatched scale and depth of IBM's innovation and industry expertise, and sales leadership in more than 175 countries. Together, IBM and Red Hat will accelerate innovation by offering a next-generation hybrid multicloud platform. Based on open source technologies, such as Linux and Kubernetes, the platform will allow businesses to securely deploy, run and manage data and applications on-premises and on private and multiple public clouds." In addition, the release notes that IBM will preserve Red Hat's independence and neutrality, and also that "Red Hat's unwavering commitment to open source remains unchanged".

Kaidan 0.4.0 has been released. This version of the "user-friendly Jabber/XMPP client" comes after a year and a half of development and now includes "multiplatform-support for all common operating systems like Linux, Windows, Android and macOS". See the ChangeLog for all the details.

Android apps can track your phone even if you deny permissions. According to The Verge, "researchers say that thousands of apps have found ways to cheat Android's permissions system, phoning home your device's unique identifier and enough data to potentially reveal your location as well." The article notes that even if you deny permission to one app, "a second app with permissions you have approved can share those bits with the other one or leave them in shared storage where another app—potentially even a malicious one—can read it. The two apps might not seem related, but researchers say that because they're built using the same software development kits (SDK), they can access that data, and there's evidence that the SDK owners are receiving it. It's like a kid asking for dessert who gets told 'no' by one parent, so they ask the other parent."

Debian has released Debian Edu (also known as Skolelinux) 10 "Buster". This distro is "based on Debian providing an out-of-the box environment of a completely configured school network". The Debian Edu developer team is asking users to test and report any issues back to, so they can continue to improve it. See the Debian Edu Wiki page for a list of all the new features and updates.

MIT researchers used Julia to create Gen, "a new probabilistic programming system with programmable inference". From MIT News: "Users write models and algorithms from multiple fields where AI techniques are applied—such as computer vision, robotics, and statistics—without having to deal with equations or manually write high-performance code. Gen also lets expert researchers write sophisticated models and inference algorithms—used for prediction tasks—that were previously infeasible." The article also notes that "Due to its simplicity—and, in some use cases, automation—the researchers say Gen can be used easily by anyone, from novices to experts."

News IBM Red Hat Cloud Kaidan Android Privacy Debian Education Debian Edu Julia AI

What Really IRCs Me: Mastodon

Tuesday 9th of July 2019 12:00:00 PM
by Kyle Rankin

Learn how to use the Mastodon social network platform from the comfort of your regular IRC client.

When it comes to sending text between people, I've found IRC (in particular, a text-based IRC client) works best. I've been using it to chat for decades while other chat protocols and clients come and go. When my friends have picked other chat clients through the years, I've used the amazing IRC gateway Bitlbee to connect with them on their chat client using the same IRC interface I've always used. Bitlbee provides an IRC gateway to many different chat protocols, so you can connect to Bitlbee using your IRC client, and it will handle any translation necessary to connect you to the remote chat clients it supports. I've written about Bitlbee a number of times in the past, and I've used it to connect to other instant messengers, Twitter and Slack. In this article, I describe how I use it to connect to yet another service on the internet: Mastodon.

Like Twitter, Mastodon is a social network platform, but unlike Twitter, Mastodon runs on free software and is decentralized, much like IRC or email. Being decentralized means it works similar to email, and you can create your own instance or create an account on any number of existing Mastodon networks and then follow people either on the same Mastodon network or any other instance, as long as you know the person's user name (which behaves much like an email address).

I've found Bitlbee to be a great interface for keeping track of social media on Twitter, because I treat reading Twitter like I was the operator for a specific IRC room. The people I follow are like those I've invited and given voice to, and I can read what they say chronologically in my IRC room. Since I keep my IRC instance running at all times, I can reconnect to it and catch up with the backlog whenever I want. Since I'm reading Twitter over a purely text-based IRC client, this does mean that instead of animated gifs, I just see URLs that point to the image, but honestly, I consider that a feature!

Since Mastodon behaves in many ways like Twitter, using it with Bitlbee works just as well. Like with Twitter over Bitlbee, it does mean you'll need to learn some extra commands so that you can perform Mastodon-specific functions, like boosting a post (Mastodon's version of retweet) or replying to a post so that your comment goes into the proper thread. I'll cover those commands in a bit.

Installing the Mastodon Bitlbee Plugin

The first step is to install the Mastodon Bitlbee Plugin. This plugin is already packaged for Debian and other distributions—look for the bitlbee-mastodon package. In that case, you can just install it with your package manager. Otherwise, you'll need to clone the source code from the plugin's git repo and build it from source:

Go to Full Article

Kernel 5.2 Is Out, Tutanota Launches a Fully Encrypted Calendar, ISPA UK Announces Internet Hero and Villain Nominations, Tesla to Start Providing a Free Self-Driving Chip, and System76's Thelio Desktop Now Available with Third-Gen AMD Rizen Processors

Monday 8th of July 2019 01:57:33 PM

News briefs for July 8, 2019.

Kernel 5.2 has been released. Linus Torvalds writes, "...there really doesn't seem to be any reason for another rc, since it's been very quiet. Yes, I had a few pull requests since rc7, but they were all small, and I had many more that are for the upcoming merge window. Part of it may be due to the July 4th week, of course, but whatever - I'll take the quiet week as a good sign."

Tutanota has just launched a fully encrypted free calendar. Matthias Pfau, co-founder and developer of Tutanota, says this of the new calendar: "With our encryption expertise, we have not only made sure that all data people enter is encrypted, we are also encrypting the notifications for upcoming events. In contrast to other calendar services (e.g. Google), we do not know when, where, and with whom people have an appointment. Basically, we as the provider remain completely blind to people's daily habits." See the Tutanota Blog for more information.

The Internet Services Provides' Association (ISPA) UK has announced this year's nominations for Internet Hero and Villain. In the running for ISPA Internet Hero are Sir Tim Berners-Lee; Andrew Ferguson OBE, Editor Thinkbroadband; and Oscar Tapp-Scotting and Paul Blaker, Global Internet Governance Team, DCMS. Nominated for villain are Mozilla; Article 13 Copyright Directive; and Donald Trump. The winners will be chosen by the ISPA Council and announced on July 11, 2019. See for the reasons behind the nominations.

Elon Musk says Tesla will "most likely" start providing a free self-driving chip upgrade to those with older Teslas later this year. The Verge reports that "The new FSD chip is the first to have been designed in-house. Tesla says it offers 21 times the performance of the Nvidia chips it replaces—a claim Nvidia disputes. The new chip has been shipping in Model S, X, and 3 cars since before its announcement, but soon it will be offered as a free upgrade to half a million Tesla owners." In addition, The Verge article notes that Musk claims the new chip "has enough power to eventually allow for fully self-driving cars, if and when the software catches up."

System76's Thelio desktop now available with third generation AMD Ryzen processors. According to BetaNews, "The base model, which is priced at $999, still comes with a 2nd gen Ryzen 5 2400G (quad-core). This is still a very capable chip, but not the latest and greatest. For only about $200 more, however, you can opt for a super-new 3rd gen Ryzen 5 3600X (hexa-core). For even more money, you can also choose a Ryzen 7 3800X (octa-core) or the insanely powerful 12-core Ryzen 9 3900X. That 3900X is notable for rivaling Intel's much pricier Core i9 chips." Go here to design and buy your own.

News kernel Tutanota Security Privacy Tesla System76

Contributor Agreements Considered Harmful

Monday 8th of July 2019 11:30:00 AM
by Eric S. Raymond

Why attempts to protect your project with legal voodoo are likely to backfire on you.

I have a little list (they never will be missed) of stupid things that open-source projects should stop doing. High on this list are CLAs (Contributor License Agreements) and their cousin the mandatory CA (Copyright Assignment).

In this article, I explain why CLAs and CAs are bad ideas and what we ought to be doing instead. In obedience to custom, at this point I issue the ritual disclaimer "I am not a lawyer", but one does not have to be a lawyer to understand the law and game out the ways CLAs and CAs fail to achieve their intended purpose. And, I have researched these failure modes with both lawyers and executives that have literally billions of dollars at stake around IP violations.

I've made a distinction between CAs and CLAs; we can make a further one between ICLAs (Individual Contributor License Agreements) and CCLAs (Corporate Contributor License Agreements). While all are about equally useless, they have slightly differing failure modes.

First, let's consider the ICLA. Some projects require that you sign one before being allowed to submit changes to their repository. Typically, it requires you to assert that (a) you affirmatively choose to license your contributions to the project, and (b) you have the right to do that.

Here's the problem. If you are employed, you almost certainly cannot make claim (b), and the project you are probably trying to help is only setting itself up for trouble if it behaves as though you can. The problem is that most employment contracts define any software you write on working hours or even off hours in connection with your job as "work for hire", and you don't own the rights to work for hire—your employer does.

CAs, such as the Free Software Foundation requires, have exactly the same problem. You don't own the copyright on a work for hire either. Therefore, you can't assign it. I'll get to the case of individual developers not in a work-for-hire situation in a bit.

The CCLA exists as an attempt to address the problems with ICLAs. It's not an agreement that you sign, it's an agreement your employer has to have pre-negotiated with the project to which you want to contribute. You then have to offer the project an identity that it can associate with that CCLA so it knows your contributions are covered.

That at least sounds like it might be useful. Why isn't it? To understand this, we need to do a bit more threat modeling. What is it that open-source projects hope to prevent using CCLAs?

Go to Full Article

Debian 10 "Buster" Coming Tomorrow, GRUB 2.04 Released, PineBook Pro Laptop Available for Pre-Order Soon, Raspberry Pi Sticker Give-Away and IPFire 2.23 Core Update 134 to Fix Security Issue

Friday 5th of July 2019 01:50:46 PM

News briefs for July 5, 2019.

Debian 10 "Buster" is coming tomorrow. You can follow the live coverage of the release here or @debian on Twitter. You also can join a release party or celebrate online at the Debian Party Line.

GRUB 2.04 has been released. According to Phoronix, this version, which has been two years in the making, includes RISC-V architecture support, native UEFI Secure Boot support, support for the F2FS filesystem and more. You can download it from GNU Savannah.

The PineBook Pro laptop will be available for pre-order July 25, 2019. OMG! Ubuntu! reports that the $199 PineBook Pro will now include privacy switches to disable the internal Bluetooth and WiFi module, the webcam and the microphone at the hardware level. Go to for specs and more details. is giving away stickers. All you need to do is leave a comment on their site or tweet them @Raspberry_Pi, with the hashtag #GimmeRaspberryPiStickers by midnight (BST) Monday, July 8th. They have ten packs to give away and winners will be chosen at random.

IPFire 2.23 Core Update 134 was released this week. This release contains security fixes in the kernel for the "SACK Panic" attack and some other smaller fixes. SACK Panic refers to CVE-2019-11477 and CVE-2019-11478, which are DoS attacks against the kernel's TCP stack. The IPFire blog post notes that "The first one made it possible for a remote attacker to panic the kernel and a second one could trick the system into transmitting very small packets so that a data transfer would have used the whole bandwidth but filled mainly with packet overhead. The IPFire kernel is now based on Linux 4.14.129, which fixes this vulnerability and fixes various other bugs." Go here to download.

News Debian GRUB PineBook Pro Pine64 Laptops Raspberry Pi IPFire Security

Lessons in Vendor Lock-in: Google and Huawei

Friday 5th of July 2019 11:00:00 AM
by Kyle Rankin

What happens when you're locked in to a vendor that's too big to fail, but is on the opposite end of a trade war?

The story of Google no longer giving Huawei access to Android updates is still developing, so by the time you read this, the situation may have changed. At the moment, Google has granted Huawei a 90-day window whereby it will have access to Android OS updates, the Google Play store and other Google-owned Android assets. After that point, due to trade negotiations between the US and China, Huawei no longer will have that access.

Whether or not this new policy between Google and Huawei is still in place when this article is published, this article isn't about trade policy or politics. Instead, I'm going to examine this as a new lesson in vendor lock-in that I don't think many have considered before: what happens when the vendor you rely on is forced by its government to stop you from being a customer?

Too Big to Fail

Vendor lock-in isn't new, but until the last decade or so, it generally was thought of by engineers as a bad thing. Companies would take advantage the fact that you used one of their products that was legitimately good to use the rest of their products that may or may not be as good as those from their competitors. People felt the pain of being stuck with inferior products and rebelled.

These days, a lot of engineers have entered the industry in a world where the new giants of lock-in are still growing and have only flexed their lock-in powers a bit. Many engineers shrug off worries about choosing a solution that requires you to use only products from one vendor, in particular if that vendor is a large enough company. There is an assumption that those companies are too big ever to fail, so why would it matter that you rely on them (as many companies in the cloud do) for every aspect of their technology stack?

Many people who justify lock-in with companies who are too big to fail point to all of the even more important companies who use that vendor who would have even bigger problems should that vendor have a major bug, outage or go out of business. It would take so much effort to use cross-platform technologies, the thinking goes, when the risk of going all-in with a single vendor seems so small.

Huawei also probably figured (rightly) that Google and Android were too big to fail. Why worry about the risks of being beholden to a single vendor for your OS when that vendor was used by other large companies and would have even bigger problems if the vendor went away?

Go to Full Article

Finishing Up the Bash Mail Merge Script

Thursday 4th of July 2019 12:00:00 PM
by Dave Taylor

Finally, I'm going to finish the mail merge script, just in time for Replicant Day.

Remember the mail merge script I started writing a while back? Yeah, that was quite some time ago. I got sidetracked with the Linux Journal Anniversary special issue (see my article "Back in the Day: UNIX, Minix and Linux"), and then I spun off on a completely different tangent for my last article ("Breaking Up Apache Log Files for Analysis"). I blame it on...


Oh, sorry, back to topic here. I was developing a shell script that would let you specify a text document with embedded field names that could be substituted iteratively across a file containing lots of field values.

Each field was denoted by #fieldname#, and I identified two categories of fieldnames: fixed and dynamic. A fixed value might be #name#, which would come directly out of the data file, while a dynamic value could be #date#, which would be the current date.

More interesting, I also proposed calculated values, specifically #suggested#, which would be a value calculated based on #donation#, and #date#, which would be replaced by the current date. The super-fancy version would have a simple language where you could define the relationship between variables, but let's get real. Mail merge. It's just mail merge.

Reading and Assigning Values

It turns out that the additions needed for this script aren't too difficult. The basic data file has comma-separated field names, then subsequent lines have the values associated with those fields.

Here's that core code:

if [ $lines -eq 1 ] ; then # field names # grab variable names declare -a varname=($f1 $f2 $f3 $f4 $f5 $f6 $f7) else # process fields # grab values for this line (can contain spaces) declare -a value=("$f1" "$f2" "$f3" "$f4" "$f5" "$f6" "$f7")

The declare function turns out to be ideal for this, allowing you to create an array varname based on the contents of the first line, then keep replacing the values of the array value, so that varname[1] = value[1], and so on.

To add the additional variables #date# and #suggested#, you simply can append them to the varname and value arrays. The first one is easy, but it did highlight a weakness in the original code that I had to fix by adding quotes as shown:

Go to Full Article

Linux Mint Announces MintBox 3, NVIDIA Open-Sources Its TensorRT Library, Ubuntu's Wallpaper Competition for Eoan Ermine Open for Submissions, Google Released Its Android Security Patch for July and Whonix 15 Now Available

Wednesday 3rd of July 2019 01:50:32 PM

News briefs for July 3, 2019.

The Linux Mint folks yesterday announced that they're working with Compulab again on the next MintBox mini, the most powerful MintBox ever. MintBox 3 will be based on Airtop 3. The release date has yet to be announced. The unfinalized specs are listed as: "1. Basic configuration: $1543 with a Core i5 (6 cores), 16 GB RAM, 256 GB EVO 970, Wi-Fi and FM-AT3 FACE Module. 2. High end: $2698 with Core i9, GTX 1660 Ti, 32 GB RAM, 1TB EVO 970, WiFi and FM-AT3 FACE Module."

NVIDIA yesterday announced it has open-sourced its TensorRT Library and associated plugins. From Phoronix: "Included via NVIDIA/TensorRT on GitHub are indeed sources to this C++ library though limited to the plug-ins and Caffe/ONNX parsers and sample code. Building the open-source TensorRT code still depends upon the proprietary CUDA as well as other common build dependencies. But nice at least seeing the TensorRT code more open now than previously."

Ubuntu announces its wallpaper competition for Eoan Ermine is now open for submissions. To enter, post your image to the thread here. The competition will close in early September. Go here for more information.

Google released its Android Security Patch for July 2019 this week for all supported Pixel devices. Softpedia News reports that the patch "address a total of 33 security vulnerabilities affecting Android devices, which were discovered in the Android system, framework, library, media framework, as well as Qualcomm components, including closed-source ones. The most critical flaw was discovered in Android's Media framework." See the Security Bulletin for details.

Whonix 15 has been released. This new version of the desktop OS designed for advanced security and privacy is based on Debian Buster and includes many major changes and new features. See the ChangeLog for details.

News Linux Mint MintBox NVIDIA Ubuntu Google Android Security Whonix

In the End Is the Command Line

Wednesday 3rd of July 2019 11:30:00 AM
by Doc Searls

Times have changed every character but one in Neal Stephenson's classic. That one is Linux.

I was wandering through Kepler's, the legendary bookstore, sometime late in 1999, when I spotted a thin volume with a hard-to-read title on the new book table. In the Beginning...Was the Command Line, the cover said.

The command line was new to me when I started writing for Linux Journal in 1996. I hadn't come from UNIX or from programming. My tech background was in ham radio and broadcast engineering, and nearly all my hacking was on RF hardware. It wasn't a joke when I said the only code I knew was Morse. But I was amazed at how useful and necessary the command line was, and I was thrilled to see Neal Stephenson was the author of that book. (Pro tip: you can tell the commercial worth of an author by the size of his or her name on the cover. If it's bigger than the title of the book, the writer's a big deal. Literally.)

So I bought it, and then I read it in one sitting. You can do the same. In fact, I command that you do, if you haven't already, because (IMHO) it's the most classic book ever written about both the command line and Linux itself—a two-fer of the first order.

And I say this in full knowledge (having re-read the whole thing many times, which is easy, because it's short) that much of what it brings up and dwells on is stale in the extreme. The MacOS and the Be operating systems are long gone (and the Be computer was kind of dead on arrival), along with the Windows of that time. Today Apple's OS X is BSD at its core, while Microsoft produces lots of open-source code and contributes mightily to The Linux Foundation. Some of Neal's observations and complaints about computing and the culture of the time also have faded in relevance, although some remain enduringly right-on. (If you want to read a section-by-section critique of the thing, Garrett Birkel produced one in the mid-2000s with Neal's permission. But do read the book first.)

What's great about Command Line is how well it explains the original virtues of UNIX, and of Linux as the operating system making the most of it:

The file systems of Unix machines all have the same general structure. On your flimsy operating systems, you can create directories (folders) and give them names like Frodo or My Stuff and put them pretty much anywhere you like. But under Unix the highest level—the root—of the filesystem is always designated with the single character "/" and it always contains the same set of top-level directories:

Go to Full Article

Episode 22: Don't Panic, It's All About the Kernel

Tuesday 2nd of July 2019 10:06:16 PM
Your browser does not support the audio element. Episode 22: Don't Panic, It's All About the Kernel

Katherine Druckman talks to Linux Journal Editor at Large, Petros Koutoupis, about building your own kernel, kernel panics, and other projects.

Links mentioned:

More in Tux Machines

Today in Techrights

8 Top Ubuntu server Web GUI Management Panels

Ubuntu Server with command-line interface might sound little bit wired to newbies because of no previous familiarization. Thus, if you are new to Ubuntu Linux server running on your local hardware or some Cloud hosting and planning to install some Linux Desktop Graphical environment (GUI) over it; I would like to recommend don’t, until and unless you don’t have supported hardware. Instead, think about free and open-source Ubuntu server Web GUI Management panels. Moreover, for a moment, you can think about Desktop Graphical environment for your local server but if you have some Linux cloud hosting server, never do it. I am saying this because Ubuntu or any other Linux server operating systems are built to run on low hardware resources, thus even old computer/server hardware can easily handle it. GUI means more RAM and hard disk storage space. Read more

Android Leftovers

Ubuntu 18.10 Cosmic Cuttlefish reaches end of life on Thursday, upgrade now

Canonical, earlier this month, announced that Ubuntu 18.10 Cosmic Cuttlefish will be reaching end-of-life status this Thursday, making now the ideal time to upgrade to a later version. As with all non-Long Term Support (LTS) releases, 18.10 had nine months of support following its release last October. When distributions reach their end-of-life stage, they no longer receive security updates. While you may be relatively safe at first, the longer you keep running an unpatched system, the more likely it is that your system will become compromised putting your data at risk. If you’d like to move on from Ubuntu 18.10, you’ve got two options; you can either perform a clean install of a more up-to-date version of Ubuntu or you can do an in-place upgrade. Read more