Linux 4.20 rc7 Is Out, the Skrooge Team Announces the 2.17.0 Release of Its Personal Finance Manager, Confluent Has a New Confluent Community License, Pixel Wheels Racing Game has a New Release and Debian Installer Buster Alpha 4 Is Now Available
News briefs for December 17, 2018.
Linux 4.20 rc7 was released yesterday. Linus Torvalds writes "This is a *tiny* rc7, just how I like it. Maybe it's because everybody is too busy prepping for the holidays, and maybe it's because we simply are doing well. Regardless, it's been a quiet week, and I hope the trend continues." And, he says he still plans to release 4.20 right before Christmas.
The Skrooge Team announced the 2.17.0 release of its personal finance manager, which is based on KDE Frameworks. This release fixes several bugs and includes a few new features, such as a progress bar in the taskbar, and it supports only Qt >= 5.7.0. You can get it from your distro's package management system, or download it from here.
Confluent, founded by the creators of the open-source Kafka project, has announced a new license called the Confluent Community License, "which would limit the ability of vendors to take its open source software and sell it, in the same way that Amazon did with the core Kafka". According to the Business Insider story, "AWS took Kafka and repackaged it as a paid cloud service—something completely legal, as open source software is free for anyone to use as they wish." Business Insider also notes that the new license applies only to specialized add-ons to Kafka that are developed in-house.
There's a new release of the Pixel Wheels racing game. It now "remembers the best lap and best total time for each track and shows you a congratulation message when you reach the top 3 in either categories", countdown now has sound and has several other new features. The game is available for Linux, Android, Windows and Mac, and you can get it from here.News kernel Skrooge KDE Confluent licensing AWS gaming Debian
Is it possible for a professional photographer to use a FOSS-based workflow?
I'm a professional photographer based out of Miami, Florida. I learned photography on my own, starting at age 12, with a Yashica TL Electro 35mm film SLR. In college, I discovered I also had quite an affinity for computers and programming, so I got my degrees in that field. I landed an IT job in county government, and photography took a back seat in my life until two things happened: I became a father, and the digital revolution came to the world of photography.
I dove into digital photography as it made practicing my art economical in the extreme. Having a child meant plenty of opportunities to take photos. All of my photographer friends suddenly needed someone who could understand both computers and photography, and I was conveniently placed to help them.
I turned pro in 2008, when a local ballet troupe asked me to photograph their performance of The Nutcracker. Other performances followed, and my skills were further honed. I later was asked by the late Pedro Pablo Peña to photograph his International Ballet Festival, which I did for two years.
Fast-forward to 2014 when I started a photography club at my day job and offered free photography lessons, once a month, to any fellow employees willing to listen.
In 2017, at the behest of my club members, I was asked to assemble a low-cost photography laptop configuration, as many of my students wanted to expand their photographic skills in the post-processing side of digital photography. I completed my task, assembling a reasonable portable digital darkroom for less than $700 USD that included all necessary photo-editing software with no recurring monthly fees, an upgraded hard drive and a colorimeter.
The laptop turned out so well, I decided to take the plunge myself and converted my Windows 10 workstation (custom-built by me) to a dedicated FOSS photography workstation.Go to Full Article
Epic Games' Free Cross-Platform Service Coming in 2019, Harness Announces New 24-7 Service Guard, Vivaldi Version 2.2 Released, KDE Applications 18.2 Are Out and Valve's Steam Link App for RPi Officially Available
News briefs for December 14, 2018.
Epic Games recently announced it's working on a free cross-platform service for 2019: "Throughout 2019, we'll be launching a large set of cross-platform game services originally built for Fortnite, and battle-tested with 200,000,000 players across 7 platforms. These services will be free for all developers, and will be open to all engines, all platforms, and all stores. As a developer, you're free to choose mix-and-match solutions from Epic and others as you wish." Epic also noted that "all services will be operated in a privacy-friendly, GDPR-compliant manner".
Harness yesterday announced the release of 24x7 Service Guard, a new "Machine Learning-based capability that empowers and protects developers who practice Continuous Delivery". According to the press release, "With 24x7 Service Guard, engineering teams now have the equivalent of a dedicated bodyguard to watch all production services and observe the end user experience across all APM, monitoring, and log tools. When a service is impacted, 24x7 Service Guard can proactively roll back code changes automatically—the equivalent of a 'safety net' for production applications."
Vivaldi, the ultra-customizable browser with a do-not-track policy, released a new version yesterday. Version 2.2 "improves accessibility, navigation and media". The Vivaldi blog post notes that "the update introduces more unique ways to manage tabs, makes Access Keys easier to use, integrates Pop Out video, and makes the browser's toolbars more configurable." You can download Vivaldi from here.
KDE Applications 18.12 are out. This release resolves more than 140 issues and features several improvements including practical file management with Dolphin, Okular enhancements, full support for emojis in Konsole, usability improvements for everyone and more. See the full list of changes here.
Valve's Steam link app for Raspberry Pi 3B and 3B+ is now officially available. Phoronix reports that "This app provides similar functionality to the low-cost Steam Link dedicated device that's been available the past few years for allowing in-home streaming of games on Steam from your personal PC(s) to living room / HTPC type setups using Steam Link." You can get the app here.News gaming Harness Machine Learning Monitoring Vivaldi Privacy KDE Valve Raspberry Pi Steam
An introduction to an application server that allows you to build MySQL user interfaces without programming.
Assume you are tasked to write a browser-based, MySQL user interface for the table called CITY. CITY has two columns. The column names are city_name and state_code—each combined are the primary key.
Your user interface must enable users to execute the four main SQL operations: select, insert, update and delete. The main characteristics for each operation are:
- The select operation needs an HTML prompt form to request a query. It also needs a where clause generator to select from CITY. After forking MySQL and retrieving the raw rows, it needs to translate them into an HTML table form.
- The HTML table form needs to be editable, and user edits need to be translated into update statements.
- Each resulting row following the execution of a query is a candidate for deletion.
- The insert operation needs a blank form. It also needs to translate Apache's common gateway interface (CGI) into insert statements.
So, you might create the source file called city.c and type in all the required code. Of course, relational databases have relations. One city has many persons residing in it. Assume the PERSON table has the column names of full_name, street_address, city_name and state_code. full_name and street_address combined are the primary key (Figure 1).
Figure 1. Database Schema of Many Persons Residing in One City
Are you going to create the source file called person.c too? What about customer.c, inventory.c, order.c, ...?
Alternatively, you might create the source files called select.c, insert.c, update.c and delete.c. Then each of these modules would need as input:
- A single table name.
- The table's additional attributes.
- The table's column names and additional attributes.
- A recursive list of related tables.
- Apache's CGI dictionary output.
The principle behind Appaserver is this multi-module approach. Appaserver stores table names in a table. Each table's column names and relations are also stored in tables. Taking the table-driven concept to the nth degree forms a database of a database. You can glean a detailed understanding of how the Appaserver database is modeled from https://appahost.com/appaserver_database_schema.pdf.Go to Full Article
Opera Launches Built-in Cryptocurrency Wallet for Android, ManagedKube Partners with Google Cloud to Provide a Monitoring App for Kubernetes Cluster Costs, QEMU 3.1 Released, IoT DevCon Call for Presentations and GNOME 3.31.3 Is Out
News briefs for December 13, 2018.
Opera announced today the launch of a built-in cryptocurrency wallet for Android. According to The Verge, "The wallet will first support ethereum, with support for other coins likely to come later. Ether investors using Opera would potentially be able to more easily access their tokens using the feature." You can get Opera for Android here.
ManagedKube, a Kubernetes software development tool company, announced yesterday it is collaborating with Google Cloud to "launch a monitoring application that provides companies with visibility into their Kubernetes cluster costs". The press release notes that "ManagedKube provides an easy-to-read dashboard that gives insights on how much is being spent on each pod, node, and persistent volume across multiple time dimensions. This visibility allows companies to forecast budgets, understand product margins, and quickly identify optimization opportunities for reducing Kubernetes cloud costs."
QEMU 3.1 has been released. Phoronix reports that this update of the QEMU emulator adds "multi-threaded Tiny Code Generator support, display improvements, adds the Cortex-A72 model and other ARM improvements, and various other enhancements". For more details, see the QEMU ChangeLog.
IoT DevCon call for presentations is now open. Deadline for proposals is February 28, 2019. The conference is being held June 5–6 in Santa Clara, California.
GNOME 3.31.3 is out, and this will be the last snapshot of 2018. Note that this is development code meant for testing and hacking purposes. For a list of changes, go here, and the source packages are here.News Opera Android Cryptocurrency Kubernetes Google Qemu IOT GNOME
Why does ncurses support only eight colors?
If you've looked into the color palette available in curses, you may wonder why curses supports only eight colors. The curses.h include file defines these color macros:COLOR_BLACK COLOR_RED COLOR_GREEN COLOR_YELLOW COLOR_BLUE COLOR_MAGENTA COLOR_CYAN COLOR_WHITE
But why only eight colors, and why these particular colors? At least with the Linux console, if you're running on a PC, the color range's origins are with the PC hardware.A Brief History of Color
Linux started as a PC operating system, so the first Linux console was a PC running in text mode. And to understand the color palette on the PC console, you need to go all the way back to the old CGA days. In text mode, the PC terminal had a color palette of 16 colors, enumerated 0 (black) to 15 (white). Backgrounds were limited to the first eight colors:
- 0. Black
- 1. Blue
- 2. Green
- 3. Cyan
- 4. Red
- 5. Magenta
- 6. Brown
- 7. White ("Light Gray")
- 8. Bright Black ("Gray")
- 9. Bright Blue
- 10. Bright Green
- 11. Bright Cyan
- 12. Bright Red
- 13. Bright Magenta
- 14. Yellow
- 15. Bright White
These colors go back to CGA, IBM's Color/Graphics Adapter from the earlier PC-compatible computers. This was a step up from the plain monochrome displays; as the name implies, monochrome could display only black or white. CGA could display a limited range of colors.
CGA supports mixing red (R), green (G) and blue (B) colors. In its simplest form, RGB is either "on" or "off". In this case, you can mix the RGB colors in 2x2x2=8 ways. Table 1 shows the binary and decimal representations of RGB.Table 1. Binary and Decimal Representations of RGB 000 (0) Black 001 (1) Blue 010 (2) Green 011 (3) Cyan 100 (4) Red 101 (5) Magenta 110 (6) Yellow 111 (7) White
To double the number of colors, CGA added an extra bit called the "intensifier" bit. With the intensifier bit set, the red, green and blue colors would be set to their maximum values. Without the intensifier bit, each RGB value would be set to a "midrange" intensity. Let's represent that intensifier bit as an extra 1 or 0 in the binary color representation, as iRGB (Table 2).Go to Full Article
Firefox 64 Now Available, SoftMaker Office Announces "Load and Help" Fundraising Campaign, the Joint Development Foundation Has Joined The Linux Foundation, Google+ to End in April 2019 and Valve Releases Proton 3.16 (Beta)
News briefs for December 12, 2018.
Firefox 64 was released yesterday. New features include multiple tab selection, Developer Tools improvements, standardizing proprietary styling features, updated privacy features and much more. See the full release notes for more details, and download Firefox here.
SoftMaker Office announces its "Load and Help 2018" fundraiser campaign: "From now until Christmas, the company will donate 10 cents to charitable organizations for each free download of FlexiPDF Basic or SoftMaker FreeOffice 2018." Also, for the first time ever, SoftMaker's free FreeOffice package is now available for macOS, in addition to Linux and Windows.
The Joint Development Foundation has joined The Linux Foundation family to "make it easier to collaborate through both open source and standards development". The press release quotes Executive Director of The Linux Foundation Jim Zemlin: "Leveraging the capabilities of the Joint Development Foundation will enable us to provide open source projects with another path to standardization, driving greater industry adoption of standards and specifications to speed adoption."
Google+ will be killed off in April 2019, rather than August 2019 as initially planned, due to a bug in the Google+ API that exposed the data of 52.5 million users. See the betanews post for details.News Firefox SoftMaker Office The Linux Foundation Google Valve gaming
Learn how to embrace open standards while you remove stubble.
Freedom is powerful. When you start using free software, a whole world opens up to you, and you start viewing everything in a different light. You start noticing when vendors don't release their code or when they try to lock you in to their products with proprietary protocols. These vendor lock-in techniques aren't new or even unique to software. Companies long have tried to force customer loyalty with incompatible proprietary products that make you stay on an upgrade treadmill. Often you can apply these free software principles outside the software world, so in this article, I describe my own object lesson in vendor lock-in from the shaving industry.
When I first started shaving, I was pretty intimidated with the notion of a sharp blade against my face so I picked the easiest and least-intimidating route: electric razors. Of course, electric razors have a large up-front cost, and after some time, you have to buy replacement blades. Still, the shaves were acceptable as far as I knew, so I didn't mind much.
At some point in my shaving journey, Gillette released the Mach 3 disposable razor. For some reason, this design appealed to a lot of geeks, and I ended up hearing about it on geek-focused blogs like Slashdot back in the day. I decided to try it out, and after I got over the initial intimidation, I realized it really wasn't all that hard to shave with it, and due to the multiple blades and lubricating strip along the top, I got a much closer shave.
I was a convert. I ditched my electric razor and went all in with the Mach 3. Of course, those disposable blades had the tendency to wear out pretty quickly, along with that blue lubricating strip, so I'd find myself dropping a few bucks per blade to get refills after a few shaves. Then again, Gillette was famous for the concept of giving away the razor and making its money on the blade, so this wasn't too surprising.We're Going to Four Blades!
The tide started turning for me a few years later when Gillette decided to deprecate the Mach 3 in favor of a new design—this time with four blades, a lubricating strip and a rubber strip along the bottom! Everyone was supposed to switch over to this new and more expensive design, but I was perfectly happy with what I was using, and the new blades were incompatible with my Mach 3 razor, so I didn't pay it much attention.
The problem was that with this new design, replacement Mach 3 blades became harder and harder to come by, and all of the blades started creeping up in price. Eventually, I couldn't buy Mach 3 blades in bulk at my local warehouse store, and finally I gave up and bought one of the even more expensive new Gillette razors. What else could I do?Go to Full Article
Vote for Linux Support on Adobe, Nextcloud 15 Now Available, LF Deep Learning Foundation Introduces Interactive Deep Learning Landscape, Canonical Announces Full Enterprise Support for Kubernetes 1.13 on Ubuntu and Icinga Director 1.6 Released
News briefs for December 11, 2018.
Adobe customer care says there hasn't been enough demand for Linux, Phoronix reports. But, if you're interested in Linux support on Adobe Premiere CC, you can "upvote that feature request" via the Adobe User Survey
Nextcloud 15 is out. This major release is "big step forward for communication and collaboration with others in a secure way". It introduces several new features, including Nextcloud Social, new security abilities and deep Collabora Online integration. Download Nextcloud 15 from here.
The Linux Foundation's Deep Learning Foundation has created the Interactive Deep Learning Landscape, which is "intended as a map to explore open source AI, ML, DL projects". According to the LF Deep Learning blog post, the tool "allows viewers to filter, obtain detailed information on a specific project or technology, and easily share via stateful URLs. It is intended to help developers, end users and others navigate the complex AI, DL and ML landscape." All data is also available in a GitHub repo.
Canonical announced full enterprise support for Kubernetes 1.13 on Ubuntu, including support for kubeadm and updates to MicroK8s. The Ubuntu blog notes that "Canonical's certified, Charmed Distribution of Kubernetes (CDK) is built from pure upstream binaries, and offers simplified deployment, scaling, management, and upgrades of Kubernetes, regardless of the underlying hardware or machine virtualisation. Supported deployment targets include AWS, GCE, Azure, VMware, OpenStack, LXD, and bare metal."
Icinga Director 1.6 was released yesterday. This version of Icinga Director—a tool to configure the Icinga open-source monitoring software—now includes multi-instance support, configuration baskets and improved health checks. You can checkout or download the new release here.News Adobe Nextcloud The Linux Foundation Deep Learning Canonical Kubernetes Ubuntu Icinga
Testing functions isn't hard, but how do you test user input and output?
In my last article, I started looking at "pytest", a framework for testing Python programs that's really changed the way I look at testing. For the first time, I really feel like testing is something I can and should do on a regular basis; pytest makes things so easy and straightforward.
One of the main topics I didn't cover in my last article is user input and output. How can you test programs that expect to get input from files or from the user? And, how can you test programs that are supposed to display something on the screen?
So in this article, I describe how to test input and output in a variety of ways, allowing you to test programs that interact with the outside world. I try not only to explain what you can do, but also show how it fits into the larger context of testing in general and pytest in particular.User Input
Say you have a function that asks the user to enter an integer and then returns the value of that integer, doubled. You can imagine that the function would look like this:def double(): x = input("Enter an integer: ") return int(x) * 2
How can you test that function with pytest? If the function were to take an argument, the answer would be easy. But in this case, the function is asking for interactive input from the user. That's a bit harder to deal with. After all, how can you, in your tests, pretend to ask the user for input?
In most programming languages, user input comes from a source known as standard input (or stdin). In Python, sys.stdin is a read-only file object from which you can grab the user's input.
So, if you want to test the "double" function from above, you can (should) replace sys.stdin with another file. There are two problems with this, however. First, you don't really want to start opening files on disk. And second, do you really want to replace the value of sys.stdin in your tests? That'll affect more than just one test.
The solution comes in two parts. First, you can use the pytest "monkey patching" facility to assign a value to a system object temporarily for the duration of the test. This facility requires that you define your test function with a parameter named monkeypatch. The pytest system notices that you've defined it with that parameter, and then not only sets the monkeypatch local variable, but also sets it up to let you temporarily set attribute names.
In theory, then, you could define your test like this:Go to Full Article
Cumulus Networks Partners with Lenovo, Unvanquished Game Announces First Alpha in Almost Three Years, KDE Frameworks 5.53.0 Released, Git v2.20.0 Is Now Available and Major Milestone WordPress Update
News briefs for December 10, 2018.
Cumulus Networks is partnering with Lenovo to deliver open data-center networking switches. According to the press release, through this partnership, "Lenovo will offer ThinkSystem RackSwitch models with support for Cumulus Linux. Lenovo customers can now use Cumulus' popular network operating system (OS), Cumulus Linux, and Cumulus' operational management tool, NetQ, while taking advantage of unprecedented third-party options including network automation and monitoring to drive greater operational efficiency."
Developers of the open-source game Unvanquished announce a new alpha release, Unvanquished Alpha 51 today, marking their first release in almost three years. According to Phoronix, the beta should drop soon as well. See the game's website for details.
KDE yesterday announced the release of KDE Frameworks 5.53.0. KDE Frameworks is made up of 70 add-on libraries to Qt, and this release is part of a series of planned monthly releases. See the announcement for the list of what's new in this version.
The latest feature release of Git, v2.20.0, is now available. According to the release announcement this version is composed of "962 non-merge commits since v2.19.0 (this is by far the largest release in v2.x.x series), contributed by 83 people, 26 of which are new faces". You can get the tarballs here.
WordPress recently announced a new major milestone update, WordPress 5.0, which is code-named "Bebo" in honor of Cuban jazz musician Bebo Valdés. The biggest user-facing change is the new Project Gutenberg editor, "the primary interface to how WordPress site administrators create content and define how it is displayed". See the WordPress blog for more information on the new block-based editor.News Lenovo gaming KDE qt git WordPress
Is there room for FOSS in the AI, VR, AR, MR, ML and XR revolutions—or vice versa?
Will the free and open-source revolution end when our most personal computing happens inside the walled gardens of proprietary AI VR, AR, MR, ML and XR companies? I ask, because that's the plan.
I could see that plan when I met the Magic Leap One at IIW in October (only a few days ago as I write this). The ML1 (my abbreviation) gave me an MR (mixed reality) experience when I wore all of this:
- Lightwear (a headset).
- Control (a handset).
- Lightpack (electronics in a smooth disc about the size of a saucer).
So far, all Magic Leap offers is a Creator Edition. That was the one I met. Its price is $2,295, revealed only at the end of a registration gauntlet that requires name, email address, birth date and agreement with two click-wrap contracts totaling more than 7,000 words apiece. Here's what the page with the price says you get:
Magic Leap One Creator Edition is a lightweight, wearable computer that seamlessly blends the digital and physical worlds, allowing digital content to coexist with real world objects and the people around you. It sees what you see and uses its understanding of surroundings and context to create unbelievably believable experiences.
Also recommended on the same page are a shoulder strap ($30), a USB (or USB-like) dongle ($60) and a "fit kit" ($40), bringing the full price to $2,425.
Buying all this is the cost of entry for chefs working in the kitchen, serving apps and experiences to customers paying to play inside Magic Leap's walled garden: a market Magic Leaps hopes will be massive, given an investment sum that now totals close to $2 billion.
The experience it created for me, thanks to the work of one early developer, was with a school of digital fish swimming virtually in my physical world. Think of a hologram without a screen. I could walk through them, reach out and make them scatter, and otherwise interact with them. It was a nice demo, but far from anything I might crave.
But I wondered, given Magic Leap's secretive and far-advanced tech, if it could eventually make me crave things. I ask because immersive doesn't cover what this tech does. A better adjective might be invasive.Go to Full Article
This series covers sysadmin basics. The first article explains how to approach alerting and on-call rotations as a sysadmin. In the second article, I discuss how to automate yourself out of a job, and in the third, I explain why and how you should use tickets. The fourth article covers some of the fundamentals of patch management under Linux, and the fifth and final article describes the overall sysadmin career path and the attributes that might make you a "senior sysadmin" instead of a "sysadmin" or "junior sysadmin", along with some tips on how to level up.Sysadmin 101: Alerting
In this first article, I cover on-call alerting. Like with any job title, the responsibilities given to sysadmins, DevOps and Site Reliability Engineers may differ, and in some cases, they may not involve any kind of 24x7 on-call duties, if you're lucky. For everyone else, though, there are many ways to organize on-call alerting, and there also are many ways to shoot yourself in the foot.Sysadmin 101: Automation
Here we cover systems administrator fundamentals. These days, DevOps has made even the job title "systems administrator" seem a bit archaic, much like the "systems analyst" title it replaced. These DevOps positions are rather different from sysadmin jobs in the past. They have a much larger emphasis on software development far beyond basic shell scripting, and as a result, they often are filled by people with software development backgrounds without much prior sysadmin experience. In the past, a sysadmin would enter the role at a junior level and be mentored by a senior sysadmin on the team, but in many cases currently, companies go quite a while with cloud outsourcing before their first DevOps hire. As a result, the DevOps engineer might be thrust into the role at a junior level with no mentor around apart from search engines and Stack Overflow posts.Go to Full Article
Katherine Druckman and Doc Searls talk to Bryan Lunduke about Linux and humanity.
Feral Interactive Bringing DiRT 4 to Linux in 2019, Chrome 71 Blocks Ads on Abusive Sites, New Linux Malware Families Discovered, The Linux Foundation Launches the Automated Compliance Tooling Project, and GNU Guix and GuixSD 0.16.0 Released
News briefs for December 7, 2018.
Feral Interactive announced this morning that DiRT 4 is coming to Linux and macOS in 2019. The all-terrain motorsport game was originally developed by Codemaster and boasts a fleet of more than 50 rally cars, buggies, trucks and crosskarts. And, for the first time in the history of the franchise, players can create their own rally routes. You can view the trailer here.
Newly released Chrome 71 "now blocks ads on 'abusive' sites that consistently trick users with fake system warnings, non-functional 'close' buttons and other bogus content that steers you to ads and landing pages. The sites themselves won't lose access the moment Google marks them abusive, but they'll have 30 days to clean up their acts." According to Engadget, Chrome 71 has other additional safeguards, and it's available now for Linux, Mac and Windows. It'll be rolling out to Android and iOS users in the coming weeks.
Cyber-security company ESET has discovered 21 "new" Linux malware families, and all of them "operate in the same manner, as trojanized versions of the OpenSSH client". ZDNet reports that "They are developed as second-stage tools to be deployed in more complex 'botnet' schemes. Attackers would compromise a Linux system, usually a server, and then replace the legitimate OpenSSH installation with one of the trojanized versions. ESET said that '18 out of the 21 families featured a credential-stealing feature, making it possible to steal passwords and/or keys' and '17 out of the 21 families featured a backdoor mode, allowing the attacker a stealthy and persistent way to connect back to the compromised machine.'"
The Linux Foundation has launched the Automated Compliance Tooling (ACT) project in order to help companies comply with open-source licensing requirements. Kate Stewart, Senior Director of Strategic Programs at The Linux Foundation, says, "There are numerous open source compliance tooling projects but the majority are unfunded and have limited scope to build out robust usability or advanced features. We have also heard from many organizations that the tools that do exist do not meet their current needs. Forming a neutral body under The Linux Foundation to work on these issues will allow us to increase funding and support for the compliance tooling development community."
GNU Guix and GuixSD 0.16.0 were released yesterday. This release represents 4,515 commits by 95 people over five months, and it's hopefully the last release before version 1.0. See the release announcement for more details and download links.News gaming Feral Interactive Chrome Security Google OpenSSH The Linux Foundation licensing open source GNU Guix
Reinventing Software Development and Availability with Open Source: an Interview with One of Microsoft Azure's Lead Architects
Microsoft was founded in 1975—that's 43 years ago and a ton of history. Up until the last decade, the company led a campaign against the Open Source and Free Software movements, and although it may have slowed the opposition, it did not bring it to an end. In fact, it emboldened its supporters to push the open-source agenda even harder. Fast-forward to the present, and open-source technologies run nearly everything—mobile devices, cloud services, televisions and more.
It wasn't until Satya Nadella took the helm (2014) that the large ship was steered around. Almost overnight, Microsoft embraced everything Linux and open source. It eventually joined The Linux Foundation and, more recently, the Open Initiative Network. At first, it seemed too good to be true, but here we are, a few years after these events, and Microsoft continues to support the Open Source community and adopt many of its philosophies. But why?
I wanted to find out and ended up reaching out to Microsoft. John Gossman, a lead architect working on Azure, spent a bit of time with me to share both his thoughts and experiences as they relate to open source.
Petros Koutoupis: Can you tell our readers a bit about yourself?
John Gossman: I'm a long-time developer with 30 years of industry experience. I have been with Microsoft for 18 of those years. At Microsoft, I have had the opportunity to touch a little bit of everything—from Windows to other graphical applications, and more recently, that is, for the last 6 years, I have worked on Azure. My primary focus is on developer experience. I know this area very well and much of it comes from the Open Source world. I spend a lot of time looking at Linux workloads while also working very closely with Linux vendors. More recently (at least two years now), I stepped into a very interesting role as a member on the board of The Linux Foundation.
PK: Microsoft hasn't always had the best of relationships with anything open-source software (OSS)-related&mddash;that is, until Satya Nadella stepped to his current role as CEO. Why the change? Why has Microsoft changed its position?
JG: I have spent a lot of time thinking about this very question. Now, I cannot speak for the entire company, but I believe it all goes back to the fact that Microsoft was and still is a company focused on software developers. Remember, when Microsoft first started, it built and sold a BASIC interpreter. Later on, the company delivered Visual Studio and many more products. The core mission in the Microsoft culture always has been to enable software developers.
For a while, Windows and Office overshadowed the developer frameworks, losing touch with those core developers, but with the introduction of Azure, the focus has since been reverted back to software developers, and those same developers love open source.Go to Full Article
Google, Facebook and Uber Join the OpenChain Project, ownCloud's 2nd-Gen End-to-End Encryption for ownCloud Enterprise Now Available, Tuxedo Computers Announces Infinity Book Pro 13 Coming Soon, Five openSUSE Tumbleweed Snapshots and PHP 7.3 Released
News briefs for December 6, 2018.
Facebook, Google and Uber have joined the OpenChain Project as platinum members. OpenChain is hosted by The Linux Foundation and is the "only standard for open source compliance in the supply chain". It also "provides a specification as well as overarching processes, policies and training that companies need to be successful". See the press release for more details and links to further reading.
ownCloud today announces the the second generation of End-To-End Encryption (E2EE) for ownCloud Enterprise. The new plugin "enables encryption and decryption by generating a 'key pair' including a private key and public key, which takes place directly with the sender and recipient in the web browser. The new Version also provides the option of using hardware keys on which a private key is stored and never leaves the token, such as smart cards or USB tokens."
Tuxedo Computers announces that its new Infinity Pro 13 is coming soon. The machine is small and light: 1.3 kg with a 13.3" display. It also sports a new CPU and USB type C charging capability. Other specs include Intel UHD 620 graphic, standard 2.5" HDD or SDD, up to 32GB DDR4, and an illuminated and lasered keyboard with Tux Super key. In addition, you can remove the bottom of the case, so all components are easy to maintain, clean or replace.
openSUSE's rolling release Tumbleweed had five snapshots this week, and it's preparing for an update to the KDE Plasma 5.14.4 packages in upcoming snapshots. Package updates include kernel 4.19.5, GNOME's Flickr app, VirtualBox 5.2.22, an update to Firefox 63.0.3 and more.
PHP 7.3 was released today. According to Phoronix, this release marks the first big update in a year to the programming language. In addition, "PHP 7.3 introduces the Foreign Function Interface (FFI) to access functions/variables/structures from C within PHP, a platform independent function for accessing the system's network interface information, an is_countable() function was added, WebP is now supported within the GD image create from string, updated SQLite integration, and a range of other improvements." See the official release documentation here.News Facebook Google Uber OpenChain The Linux Foundation OwnCloud Laptops Tuxedo Computers openSUSE PHP
On October 23, 2018, Linus Torvalds came out of his self-imposed isolation, pulling a lot of patches from the git trees of various developers. It was his first appearance on the Linux Kernel Mailing List since September 16, 2018, when he announced he would take a break from kernel development to address his sometimes harsh behavior toward developers. On the 23rd, he announced his return, which I cover here after summarizing some of his pull activities.
For most of his pulls, he just replied with an email that said, "pulled". But in one of them, he noticed that Ingo Molnar had some issues with his email, in particular that Ingo's mail client used the iso-8859-1 character set instead of the more usual UTF-8. Linus said, "using iso-8859-1 instead of utf-8 in this day and age is just all kinds of odd. It looks like it was all fine, but if Mutt has an option to just send as utf-8, I encourage everybody to just use that and try to just have utf-8 everywhere. We've had too many silly issues when people mix locales etc and some point in the chain gets it wrong."
On the 24th, Linus continued pulling from developer trees. One of these was a batch of networking updates from David Miller, and it included contributions from a lot of different people. Linus noticed that the Kconfig rules were running into unmet dependency warnings because the code expected to run on the Qualcomm architecture, which Linus didn't use. He suggested it was a simple matter of updating the dependency list in the code. He also asked why the developers didn't notice that problem when testing their patches. Kalle Valo explained, "Mostly bad timing due to my vacation. I did do allmodconfig build but not sure why I missed the warning, also the kbuild bot didn't report anything. Jeff did report it last week, but I was on vacation at the time and just came back yesterday and didn't have time to react to it yet."
That seemed fine to Linus, who said he'd pull the fix when it became available. He remarked, "I just don't want my tree to have warnings that I see, and that may hide new warnings coming in when I do my next pull request."
On the 25th, Linus continued pulling from developer trees. In one instance, the issue of minimal tool versions came up. Linus prefers to support as many regular users as possible, which means supporting tool versions from the Linux distributions.
In response to a hard-to-read patch, Andi Kleen suggested changing the minimum supported binutils version from 2.20 to 2.21, which would support some useful assembler opcodes that would make the patch easier to review. Andy Lutomirski, another of the patch reviewers, said this would be fine. And Linus said:Go to Full Article