Language Selection

English French German Italian Portuguese Spanish

November 2018

Debian and Ubuntu Leftovers

Filed under
Debian
Ubuntu
  • glBSP

    I was surprised to see glBSP come up for adoption; I found out when I was installing something entirely unrelated, thanks to the how-can-i-help package. (This package is a great idea: it tells you about packages you have installed which are in danger of being removed from Debian, or have other interesting bugs filed against them. Give it a go!) glBSP is a dependency on another of my packages, WadC, so I adopted it fairly urgently.

    glBSP is a node-building tool for Doom maps. A Map in Doom is defined in a handful of different lumps of data. The top-level, canonical data structures are relatively simple: THINGS is a list of things (type, coordinates, angle facing); VERTEXES is a list of points for geometry (X/Y coordinates); SECTORS define regions (light level, floor height and texture,…), etc. Map authoring tools can build these lumps of data relatively easily. (I've done it myself: I generate them all in liquorice, that I should write more about one day.)

  • How to Connect Your Android Phone to Ubuntu Wirelessly

    Easy: all you need is a modern Linux distro like Ubuntu and an open-source GNOME Shell extension called ‘GSConnect‘.

    GSConnect is a totally free, feature packed add-on that lets you connect your Android phone to Ubuntu over a wireless network, no USB cable required!

    In this post we talk about the features the extension offers, and show you how to install GSConnect on Ubuntu 18.04 LTS and above so that you can try it out for yourself!

Security: FSB and NSA in Linux, HTTPS is Not Enough, Microsoft Back Doors and Exploits (e.g. WannaCry), 5G China Scare

Filed under
Security
  • Linux 4.21 Positioned To Pickup Streebog Crypto Support Developed By Russia's FSB

    In addition to Linux 4.21 set to land Adiantum as the crypto algorithm backed by Google following the company's falling out with the NSA's Speck crypto for low-end data encryption, Streebog is also set to be introduced as a cryptographic hash function developed in large part by the Russian government.

    The Linux kernel patches introducing the Streebog code were posted back in October for review. Those patches were spearheaded by a developer from Russia's ALT Linux distribution. Those patches are now queued into the crypto subsystem's development branch ahead of the Linux 4.21 kernel.

  • HTTPS Is Almost Everywhere. So Why Isn’t the Internet Secure Now?

    Chrome used to display the word “Secure” and a green padlock in the address bar when you were visiting a website using HTTPS. Modern versions of Chrome simple have a little gray lock icon here, without the word “Secure.”

    That’s partly because HTTPS is now considered the new baseline standard. Everything should be secure by default, so Chrome only warns you that a connection is “Not Secure” when you’re accessing a site over an HTTP connection.

    However, the word “Secure” is also gone because it was a little misleading. It sounds like Chrome is vouching for the contents of the site as if everything on this page is “secure.” But that’s not true at all. A “secure” HTTPS site could be filled with malware or be a fake phishing site.

  • WannaCry: One year later, is the world ready for another major attack? [Ed: Somehow that neglects to mention that this was largely the result of a collusion involving Microsoft and the NSA]
  • UK gov report to raise fresh security concerns over Huawei's 5G kit

Linux Apps on Chromebooks Getting Google Drive, Play Store File Access Support

Filed under
GNU
Linux
Google

Linux apps on Chromebooks are slowly but surely gaining their legs. Sure, we’re still missing a few things here and there, but progress on this front is moving along at a nice, swift pace and today we are happy to be talking about another progression that will help the overall user experience in an important and meaningful way.

Read more

GNU: GCC and Wget Release

Filed under
GNU
  • GCC Compiler Picks Up New Option To Help With Live Kernel Patching

    Adding to the list of new features for GCC 9 due out early next year is a new -flive-patching= flag to help with scenarios like live Linux kernel patching.

    This GCC live-patching support addition was done by Oracle and is about controlling the optimizations/behavior when wanting to compile code for the context of applying it as a live patch. In particular, for Linux kernel live patching to avoid system reboots when applying security/maintenance updates. With Oracle the focus is on their own Ksplice live kernel patching to avoid reboots but this work should also be relevant to the likes of SUSE's kGraft and Red Hat's Kpatch kernel live patching.

  • GNU Wget 1.20 Released

    Noteworthy Changes in this release:
    Add new option `--retry-on-host-error` to treat local errors as transient and hence Wget will retry to download the file after a brief waiting period.
    Fixed multiple potential resource leaks as found by static analysis
    Wget will now not create an empty wget-log file when running with -q and -b switches together
    When compiled using the GnuTLS >= 3.6.3, Wget now has support for TLSv1.3
    Now there is support for using libpcre2 for regex pattern matching
    When downloading over FTP recursively, one can now use the

GameShell Linux-based Console Upgraded: New Board, 1GB Ram, HDMI Port

Filed under
GNU
Linux
Gaming
Gadgets

About a year ago, Clockwork put up a Linux-powered handheld gaming console called GameShell on Kickstarter website.

This portable retro console is shipped as a DIY kit that can let you play games, learn to code and also teach you a little about how the hardware works. And the best part is that it lets you upgrade the system without replacing it.

Read more

5 Reasons Why Linux OS Is A Hot Favorite Among Coders

Filed under
Development
GNU
Linux

Operating systems have come a long way in the past few decades. What was once dominated by Microsoft Windows or Apple MacOS is no longer the norm these days. After Y2K, a variety of OS have come into play as a result of people exploring the computing environment. One particular series of OS that has caught attention of the users is Linux. Although it was introduced way back in 1991, it gained popularity over time due to its decentralised development approach and a solid support from the software developer community as well.

Here we explore some reasons why Linux made it to the top among developers and tech enthusiasts.

Read more

Programming: Python, C++, Java and More

Filed under
Development
  • Amsterdam Python meetup, november 2018

    My summary of the 28 november python meetup at the Byte office. I myself also gave a talk (about cookiecutter) but I obviously haven't made a summary of that.

  • Trip Report: C++ Standards Meeting in San Diego, November 2018

    A few weeks ago I attended a meeting of the ISO C++ Standards Committee (also known as WG21) in San Diego, California. This was the third committee meeting in 2018; you can find my reports on preceding meetings here (June 2018, Rapperswil) and here (March 2018, Jacksonville), and earlier ones linked from those. These reports, particularly the Rapperswil one, provide useful context for this post.

    This meeting broke records (by a significant margin) for both attendance (~180 people) and number of proposals submitted (~270). I think several factors contributed to this. First, the meeting was in California, for the first time in the five years that I’ve been attending meetings, thus making it easier to attend for Bay Area techies who weren’t up for farther travels. Second, we are at the phase of the C++20 cycle where the door is closing for new proposals targeting to C++20, so for people wanting to get features into C++20, it was now or never. Finally, there has been a general trend of growing interest in participation in C++ standardization, and thus attendance has been rising even independently of other factors.

    This meeting was heavily focused on C++20. As discussed in the committee’s standardization schedule document, this was the last meeting to hear new proposals targeting C++20, and the last meeting for language features with significant library impact to gain design approval. A secondary focus was on in-flight Technical Specifications, such as Library Fundamentals v3.

    To accommodate the unprecedented volume of new proposals, there has also been a procedural change at this meeting. Two new subgroups were formed: Evolution Incubator (“EWGI”) and Library Evolution Incubator (“LEWGI”), which would look at new proposals for language and library changes (respectively) before forwarding them to the Evolution or Library Evolution Working Groups (EWG and LEWG). The main purpose of the incubators is to reduce the workload on the main Evolution groups by pre-filtering proposals that need additional work before being productively reviewed by those groups. A secondary benefit was to allow the attendees to be spread out across more groups, as otherwise EWG and LEWG would have likely exceeded their room capacities.

  • The Future of OpenJDK at Red Hat

    With the release of Java 11, the transition of Java into an OpenJDK-first project is finally complete. The days of most Java installations using the proprietary OracleJDK binaries are at an end. This increased focus on Open and Free Java naturally brings the contributions of companies other than Oracle into greater prominence. InfoQ recently spoke with Rich Sharples, Senior Director of Product Management for Middleware at Red Hat, to discuss OpenJDK and Red Hat's involvement with it.

  • PyBites: 3 Cool Things You Can do With the dateutil Module
  • Subtleties of Python

    A good software engineer understands how crucial attention to detail is; minute details, if overlooked, can make a world of difference between a working unit and a disaster. That’s why writing clean code matters a lot—and clean code isn’t just about neat indentation and formatting; it’s about paying attention to those details that can affect production.

    In this article, you’ll see a couple of short cases of problematic code in Python and how they can be improved. Please note that these are just examples and in no way must you interpret them to universally apply for real-world problems.

  • A Tale of Two Commits

    I’ve discussed and linked to articles about the advantages of splitting patches into small pieces to the point that I don’t feel the need to reiterate it here. This is a common approach at Mozilla, especially (but not just) in Firefox engineering, something the Engineering Workflow group is always keeping in mind when planning changes and improvements to tools and processes.

    Many Mozilla engineers have a particular approach to working with small diffs, something, I’ve realized over time, that seems to be pretty uncommon in the industry: the stacking of commits together in a logical series that solves a particular problem or implements a specific feature. These commits are generally authored, reviewed, updated, and even landed as a set. They tell a complete story; indeed, you could view this process as similar to writing a novel: the book is written, edited, and published as a complete unit.

  • Common architectural elements for modern integration architectures

    In Part 1 of this series, we explored a use case around integration being the key to transforming your customer experience.

    I laid out how I’ve approached the use case and how I’ve used successful customer portfolio solutions as the basis for researching a generic architectural blueprint. The only thing left to cover was the order in which you’ll be led through the blueprint details.

Free-floating Ubuntu social bot chats up astronauts on International Space Station

Filed under
Ubuntu

An Ubuntu-powered social robot called CIMON (Crew Interactive Mobile CompaniON) has begun work on the International Space Station. The self-navigating bot recognizes faces and answers questions relayed to a ground-based IBM Watson computer.

A social robot with an Ubuntu OS has launched on the International Space Station (ISS) to answer astronauts’ questions via voice and an 8-inch display. On Nov. 15, German astronaut Alexander Gerst demonstrated the CIMON (Crew Interactive Mobile CompaniON) robot in action, showing off its facial recognition, voice assistance, and ability to autonomously navigate in the weightless environment of the ISS. CIMON can also play music, document results of experiments, or search for objects using its image recognition capability.

Read more

Graphics: Sway 1.0 Closer, AMDGPU FreeSync / Adaptive-Sync Update

Filed under
Graphics/Benchmarks
  • Sway 1.0 Beta 2 Rolls Out For Feature-Rich i3-Compatible Wayland Compositor

    The release of Sway 1.0 as the popular i3-compatible Wayland compositor is one step closer with the latest beta update.

    Sway 1.0 Beta 2 offers various i3 compatibility updates, implements the Wayland presentation-time protocol, introduces multi-seat support to the Swaylock, supports additional i3 window types, and has other usability enhancements while for the most part is made up of bug fixes. Bug fixes for Sway 1.0 Beta 2 range from XWayland fixes, Swaybar output hotplug handling, and a variety of other corrections.

  • AMDGPU FreeSync / Adaptive-Sync Is Set To Land For Linux 4.21

    AMD developers have a miraculous Christmas present for their open-source Linux users, particularly Linux gamers with FreeSync/Adaptive-Sync displays... This last major feature missing from AMDGPU DRM driver that's long been sought after is finally set to land in the mainline Linux kernel!

    It has been a long time coming but the FreeSync support (or VESA Adaptive-Sync / HDMI VRR) is finally set to be merged with the upcoming Linux 4.21 kernel cycle. FreeSync/Adaptive-Sync/VRR as a reminder is about adjusting monitor refresh rates dynamically without any mode change to reduce stuttering, tearing, and input lag. Previously this support was just available for Radeon Linux users via the AMDGPU-PRO components and not from the standard Linux kernel driver.

More in Tux Machines

Devices: RaspAnd, Raspberry Pi and More

  • RaspAnd Project Now Lets You Run Android 10 on Your Raspberry Pi

    Arne Exton released today a new version of his RaspAnd project that lets you run the latest Android 10 mobile operating system on your tiny Raspberry Pi computer. For $9 USD, RaspAnd 10 promises to make it easier to install Google’s latest Android 10 mobile operating system on your Raspberry Pi computer, but let’s take a look at the new features and improvements it brings over previous versions. First and foremost, RaspAnd 10 is compatible with several recent Raspberry Pi models, including the recent Raspberry Pi 4 with 8GB RAM, but also older models, such as the Raspberry Pi 3 Model B and Raspberry Pi 3 Model B+.

  •      
  • Create a stop motion film with Digital Making at Home
             
  •        
  • The people problem

    Systems used to be designed by groups of engineers. Integration and test engineers waited on the developers and toes tended to get trodden on, with hidden code picked apart and untouchable historic designs questioned - all for product development. There was certainly no room for ego! Today, favourite tools may be replaced by those common to the technologies inside a device. Xilinx Zynq devices have two debug ports to allow individual debugging of the Processor Section or Programmable Logic. On Zynq you can chain these ports into one, so tools that are aware of both worlds deliver greater insight. Other devices may only offer specific insight. Vendors will offer a toolset to work with this, but it may be different to what people are used to. Suddenly, this new wonder-device to solve everyone’s design problems is upsetting the engineering apple cart across all engineering disciplines. [...] Silicon vendors offer a step-up in trying to build Linux for their device, and may offer a pre-built image to boot from. This will need modifying for your needs. It’s amazing how many common command-line tools don’t show up by default. Don’t be fooled into thinking moving from a Raspberry Pi to another platform will be straightforward.

Programming: Python, Rust, PHP, C++ and More

  • Python For Loop: Everything You Need to Know

    Loops are one of the essential elements in any programming language, and Python is not an exception to it. Loops are used to repeat a statement or a block of statements multiple times. If there were no concept of loops in programming languages, we have to write each statement again and again for the number of times we want to execute it. Python provides two types of loops to handle looping requirements, i.e., the while loop and the for loop. In this tutorial, we will learn everything about the for loop statement in Python. Before getting started with this tutorial, It is necessary to have Python installed and set up in your environment path. If you don’t have it installed already, refer to our step by step guide to install Python on Linux. The code presented in this tutorial can be run on the python shell, but it is recommended to run the code in a Python IDE. If you don’t have a python IDE installed in your system or want to know which IDE is a better choice to install, you can refer to our guide Top 10 best python IDE compared.

  • NihAV Is An Experimental Multimedia Framework Written In Rust

    NihAV is an experimental multimedia framework written in the Rust programming language. At the moment it's focused on diving into supporting decoders for different formats that lack open-source support right now / not yet reverse engineered, exploring new approaches for conventional multimedia concepts, and other experiments for advancing audio-video frameworks.

  • rra-c-util 8.3

    n this release of my utility library for my other packages, I finally decided to drop support for platforms without a working snprintf. This dates back to the early 2000s and a very early iteration of this package. At the time, there were still some older versions of UNIX without snprintf at all. More commonly, it was buggy. The most common problem was that it would return -1 if the buffer wasn't large enough rather than returning the necessary size of the buffer. Or, in some cases, it wouldn't support a buffer size of 0 and a NULL buffer to get the necessary size.

  • Embedded Programming and Beyond: An Interview with Warren Gay

    Interested in embedded programming? Warren Gay, an Ontario, Canada-based senior programmer, is an excellent resource for professional programmers, students, and makers alike. Here he talks about his new book, FreeRTOS for ESP32-Arduino (Elektor, 2020), and shares insights about FreeRTOS, ESP32, Arduino, embedded technologies, and more. You are sure to find his input informative and inspiring, especially if you plan to work with ESP32 or Arduino in the near future.

  • PHP 7.1 - 8 new features

    In the PHP 7.0 version function declaration accepts a return type, with the release of 7.1 version functions and parameters can return/accept null by prefixing the data type with a question mark(?). if the data type passed as parameter or returned by a function is different from the type specified a TypeError exception will be thrown.

  • Senior Developers don’t know Everything

    For about 20 years, I’ve been doing C++ and Qt and KDE development. I suppose that makes me a “senior software engineer”, also in the sense that I’ve hacked, programmed, futzed, designed, architected, tested, proved-correct, and cursed at a lot of software. But don’t let the label fool you: I look up just as much in the documentation as I ever did; senior developers don’t know everything.

Software and Games: Cloud Hypervisor, Joplin, Kodi, MuseScore, Bashtop, Grounded

  • Intel Cloud-Hypervisor 0.9 Brings io_uring Block Device Support For Faster Performance

    Intel's Cloud Hypervisor focused on being a Rustlang-based hypervisor focused for cloud workloads is closing in on the 1.0 milestone. With this week's release of Cloud-Hypervisor 0.9 there is one very exciting feature in particular but also a lot of other interesting changes. 

  • Joplin

    Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format. Notes exported from Evernote via .enex files can be imported into Joplin, including the formatted content (which is converted to Markdown), resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.). Plain Markdown files can also be imported. The notes can be synchronized with various cloud services including Nextcloud, Dropbox, OneDrive, WebDAV or the file system (for example with a network directory). When synchronizing the notes, notebooks, tags and other metadata are saved to plain text files which can be easily inspected, backed up and moved around.

  •          
  • Kodi 19 Alpha 1 Released With AV1 Decoding, Many Other HTPC Improvements

    Kodi 19 "Matrix" Alpha 1 has been released for this very popular, cross-platform open-source HTPC software.  Kodi 19 is bringing many exciting improvements as a major update to this open-source home theater software. 

  •        
  • Scorewriter MuseScore 3.5 Released with Chord Symbol Playback

    MuseScore, free music composition and notation software, released version 3.5 with long list of new features, bug fixes, and other improvements. MuseScore 3.5 contains one of the most requested features: Chord Symbol Playback. The feature is disabled by default so far. You can enable it by going to Edit > Preferences > Note Input.

  •        
  • Bashtop: An Htop Like System Monitor But Much More Useful

    As cool as Htop there is one thing that it's seriously lacking in and that is system monitoring tools, this may not be a problem for you but if you want a system monitor than bashtop is a much better option to choose, it let's you do most of the process management stuff that you want from htop but it comes with things like hard drive usage, network usage and cpu usage statistics. 

  • An Early Look at Grounded

    You’re in control of a child, who looks like he/she hasn’t entered the teenager years just yet. Among four different children — two boys and two girls — they’ve got a big problem: they’ve been shrunk to the size of an insect. Join them in their adventure — either by yourself or with a group of online friends — as they fight to survive in someone’s backyard, trying to build shelters whilst defending against bugs, and figure out why they’ve shrunk in the first place. Enter Grounded, developed by Obsidian Entertainment — the studio that brought us such titles as Pillars of Eternity, The Outer Worlds, and Star Wars: KOTOR2.

Fedora: LTO, Nest and More

  • Fedora 33 Moving Closer To LTO-Optimizing Packages

    Going back to last year Fedora has been working to enable link-time optimizations by default for their packages. That goal wasn't achieved for Fedora 32 but for Fedora 33 this autumn they still have chances of marking that feature off their TODO list.  LTO'ing the Fedora package set can offer not only performance advantages but in some cases smaller binaries as well. This is all about applying the compiler optimizations at link-time on the binary as a whole for yielding often sizable performance benefits and other optimizations not otherwise possible. LTO is great as we often show in benchmarks, especially in the latest GCC and LLVM Clang compilers. 

  • Zamir SUN: Report for session 1 of FZUG @ Nest with Fedora

    Last month, Alick suggested the Fedora Zhongwen User Group (FZUG) can do a online meetup during Nest with Fedora. And based on the survey, people registered for two time slots, the first one is 9:00 PM Saturday evening UTC+8 which is not a good time for Alick, so I take up the coordinating role for this session. As for the tool, we decided to use Jitsi, as it should work fine for most of us and do not have any limitations. What’s more, it’s totally open source. During the meeting, I firstly introduced Nest with Fedora and it’s previous offline version, Flock to Fedora, to the attendees. It’s interesting to see that during the past years, we not only have new users in China, but also new contributors. One attendee shares that his motivation of being a packager is that deploying packages for their research in the lab is cumbersome before. So he decided to package all into Fedora and then he can just simply install them on every machine. It is good to know that people contribute back because they want to solve their own problems. Maybe this can be a talking point to attract more contributors in the future. After the self introduction, we continue by sharing our interesting stores with Linux. That is a lot of fun.

  • Jon Chiappetta: Last piece of relay software needed for my home bridged network

    If you are running a bridged/relayd network with macs on it you may need to also forward the multicast broadcasts (mDNS related) that allow the devices to automatically discover each other. On the WRT wifi client side, there is a pkg called avahi-daemon and you can configure to operate in “reflector” mode to forward these broadcasts across the specified interfaces. Running this service along with the dhcprb C program which takes care of layer 2 arp requests & dhcp gateway forwarding has been pretty smooth so far!