Language Selection

English French German Italian Portuguese Spanish

December 2019

Ask Slashdot: Is Your Company Using Linux Desktops?

Filed under
GNU
Linux

I bet Slashdot's readers have stories to tell, with enlightening experiences in corporate workplaces over the years gone by. So feel free to share your thoughts, opinions, and anecdotes in the comments.

And is your company using Linux desktops?

Read more

Genode OS Framework release 19.11

Filed under
OS

Block-device encryption is a feature often requested by users of our Sculpt OS. Until now, we deliberately left this topic unaddressed because we felt that a profound answer was beyond our expertise. However, during the past year, we dived deep into it. The result is the prototype for a new block encrypter that encrypts data but also protects integrity and freshness. For us, the implementation of the encrypter is especially intriguing because - with about 7000 lines of code - it is Genode's first non-trivial component written in the SPARK programming language.

The second major addition is a new virtual machine monitor (VMM) for 64-bit ARM platforms such as the NXP i.MX8. It leverages the proof of concept we developed in 2015 for ARMv7, which we pursued as a technology exploration. In contrast, our aspiration with the new VMM is a product-quality solution.

In our road map for 2019, we stated the "bridging of worlds" as our overall theme for this year. On that account, the current release moves the project forward on two levels. First, by successively increasing the scope of POSIX compatibility, we reduce the friction when porting existing application software to Genode. We managed to bridge several gaps in our POSIX support that we considered as impossible to cover some years ago. In particular, we identified ways to emulate certain POSIX signals, ioctl calls, and fork/execve semantics. This way, popular software such as bash, coreutils, or Vim can now be executed as regular Genode components with no additional runtime environment (like Noux or a VMM) required.

Read more

Also: Genode OS Framework 19.11 Brings Initial Block Device Encryption Code

KF6 Sprint in Berlin

Filed under
Development
KDE

Last week I arrived on a rainy Thursday evening in Berlin to attend the KDE Frameworks Kickoff sprint. The next three days were spent with discussions and ideas about the future of the libraries that are the base of most of the software of the KDE Community.

After arriving at MBition GmbH on Friday we started with reviewing the policies that were in place the last few years for KDE Frameworks 5. This includes for example the release model or on which Qt version to depend. After lunch David Edmundson and Eike Hein gave talks about the KDE community in general and about the advantages using KDE Frameworks libraries can bring to the employees at MBition. In the afternoon that the discussion switched from the past to the future and our goals and design principles that we have in mind for KDE Frameworks 6. Later we already outlined problems with specific frameworks and how our goals will impact them.

After a needed dose of sleep Saturday started right where Friday left off. We split in small groups to investigate how our design goals (further simplification of dependencies, seperation of UI and logic and seperation of framework and implementation) would influence each library and what has to be done to achieve those goals. To this end each group discussed a single library at a time and after eight libraries in total the results were presented to the whole group. For this we started with the Tier 3 Frameworks which have the most complicated dependencies (Tier 1 Frameworks only depend on Qt).

Read more

Programming: C++ Ranges and Views. picolibc-float, Python Bits

Filed under
Development
  • A beginner's guide to C++ Ranges and Views.

    C++ Ranges are one of the major new things in C++20 and “views” are a big part of ranges. This article is a short introduction for programmers that are new to C++ Ranges.

  • Keith Packard: picolibc-float

    Smaller embedded processors may have no FPU, or may have an FPU that only supports single-precision mode. In either case, applications may well want to be able to avoid any double precision arithmetic as that will drag in a pile of software support code. Getting picolibc to cooperate so that it doesn't bring in double-precision code was today's exercise.

  • First Stack Buffer Overflow to modify Variable
  • Test and Code: 95: Data Science Pipeline Testing with Great Expectations - Abe Gong

    Data science and machine learning are affecting more of our lives every day. Decisions based on data science and machine learning are heavily dependent on the quality of the data, and the quality of the data pipeline.

    Some of the software in the pipeline can be tested to some extent with traditional testing tools, like pytest.

    But what about the data? The data entering the pipeline, and at various stages along the pipeline, should be validated.

    That's where pipeline tests come in.

    Pipeline tests are applied to data. Pipeline tests help you guard against upstream data changes and monitor data quality.

    Abe Gong and Superconductive are building an open source project called Great Expectations. It's a tool to help you build pipeline tests.

    This is quite an interesting idea, and I hope it gains traction and takes off.

  • PyOpenGL 3.1.4 is Out

    So I just went ahead and pulled the trigger on getting PyOpenGL and PyOpenGL Accelerate 3.1.4 out the door. Really, there is little that has changed in PyOpenGL, save that I'm actually doing a final (non alpha/beta/rc) release. The last final release having been about 5.5 years ago if PyPI history is to be believed(!)

  • Weekly Python StackOverflow Report: (ccv) stackoverflow python report

Debian Leader Explains SystemD Concerns, Developers Report, Debian-Based Sparky Reports Also

Filed under
Debian
  • Sam Hartman: The Case for Proposal B
    This is my personal opinion, not that of the project leader. Tomorrow,
    I'll write an essay trying to discuss the various options in with as
    little bias as I can manage (although even that will be Sam's opinion).
    Several people have asked me why I included Proposal B.
    This is my answer.
    
    
    While I was talking to people about systemd and init systems, people
    seemed to inherently assume that being uncomfortable with systemd meant
    that you were in favor of sysvinit, or at least init-script based
    solutions. At least, people who were heavily involved in the issue made
    that assumption. That didn't resonate with me.
    
    
    Several concerns commonly raised with systemd resonate with me:
    
    
    It combines a bunch of things in one project; as an example how you
    start daemons ends up being tied to how you configure the network.
    
    This combination seems like it might reduce innovation at least
    outside of the systemd ecosystem, because interfaces are coupled.
    
    It is Linux specific
    
    
    Of these, the biggest concern for me is the idea that systemd might
    stifle innovation by becoming one point of control.
    
    And yet, in my opinion, systemd is vastly superior to the current
    alternatives. I'd far rather be writing service units than init
    scripts. They are more declarative. Dependencies that I care about are
    easier to express. There are better security isolation facilities. In
    non-Debian work I've found that I depend heavily on systemd because it
    is easier and more pleasurable to code to than the alternatives.
    Declarative syntax for managing users is useful. I haven't personally
    seen the huge joy of socket activation, but if I were writing somewhat
    different things, perhaps I would. Given
    the options today, I would pick systemd hands down and not look back.
    
    
    But what about tomorrow? For me, one of the great things about Debian
    has been that it's possible to integrate new technologies and to try
    things out. Debian has been the OS where I and many others could try
    out new technologies and figure out what it was like to fully integrate
    them into the operating system. Systemd is the best we've got now, but
    I'm reluctant to step away from Debian as a platform for innovation and
    experimentation.
    
    
    Yet I don't think focusing on sysvinit or other init-script based
    solutions actually has anything to do with the kind of innovation I'm
    talking about. I understand that for people who value sysvinit (or
    something like runit) above systemd, that work is valuable. My
    experience is that for my needs, systemd is a better fit. I wanted a
    proposal that allowed us to maintain Debian as a platform for innovation
    without focusing on the legacy of init scripts. I think that if there
    is going to be something that some day replaces systemd, it will support
    service units (or a significant subset) not init scripts. I suspect it
    will have a way to handle socket activation and so on. And I cannot
    imagine a future systemd replacement that does not have advanced
    security isolation features.
    
  • Steinar H. Gunderson: More about the DDR arcade CDs

    I'm continuing my journey throughout the world of the Dance Dance Revolution arcade CDs; it would be interesting to see how moddable they are, even though I don't have a machine myself (obviously, MAME is absolutely essential here).

    One key fact that I didn't know about last time, but was eventually alerted to after looking at others' work, is that the software in flash runs off of a virtual filesystem (VFS). This makes things incredibly much easier than mucking around with offsets everywhere. It's sort of a strange hybrid, though; read on for more.

    The System 573 mainboard has 16 MB (or 128 Mbit, if you wish) of onboard flash, spread over a few banks, and for the newer digital mixes, this is augmented with a 32 MB PCMCIA flash card (I believe the system can technically address 64 MB, but no software uses it, to the best of my knowledge). When installing the software from CD-ROM, it blits a file called GAME.DAT into the onboard flash and CARD.DAT into the PCMCIA card (plus sets up some checksums at 0xfe0000). Except for a few hard-coded items, they seem to largely be treated equivalently, simply as different backing stores for a single VFS.

    When booting up regularly (SW4 set to booting from flash), it jumps to an address very early in the flash, which contains the bootloader (called boot/psx.bin in the VFS; but the VFS has a too short size for it, so if you trust the size when extracting it, it gets too short!). The bootloader reads the (encrypted) configuration file from 0xFE2000 (addressed as “/.raw=0x1fc4,0x2000” in the VFS, probably partially related ot that the flash is mapped up at 0x1f000000), which contains information about how to address the two flash devices and a bit more. It also reads the file table for the VFS at 0xFE4000, and from there, it's mostly filesystem time: The bootloader then loads the game itself from soft/s573/aout.exe and boots it.

  • Paul Wise: FLOSS Activities November 2019
  • Chris Lamb: Free software activities in November 2019
  • Sylvain Beucler: Debian LTS and ELTS - November 2019

    Sylvain Beucler: Debian LTS and ELTS - November 2019Here is my transparent report for my work on the Debian Long Term Support (LTS) and Debian Extended Long Term Support (ELTS), which extend the security support for past Debian releases, as a paid contributor.

    In November, the monthly sponsored hours were split evenly among contributors depending on their max availability - I was assigned 24.5h for LTS (out of 30 max) and 20h for ELTS (max).

    Multiple vulnerabilities come from in-process fuzzing (library fuzzing with compiler instrumentation, as opposed to fuzzing a user executable). This is an interesting technique, though those are harder to reproduce, especially with older versions or (even worse) forks. A significant portion of such vulnerabilities comes from google's OSS-117Fuzz infrastructure.

  • Sparky news 2019/11

    The 11th monthly report of the 2019 of the Sparky project:

    • waterfox package changed its name to waterfox-classic-kpe
    • Sparky 2019.11 Special Editions: GameOver, Multimedia & Rescue released
    • Sparky 2019.11.1 MinimalGUI released to fix: GNOME Shell and KDE Plasma fresh installation; and removing some packages from live
    • added new locales to Sparky tools: Greek provided by jidan; and updated Italian and Japanese locales as well; thank’s a lot for translations
    • Linux kernel updated up to version 5.4.1 & 5.3.14
    • CDE desktop updated up to 2.3.1 (stable & testing lines)
    • added to repos: Videomass

The File /var/lib/dbus/machine-id Matters For Your Privacy (and Devuan Fixed It)

Filed under
OS

A few days ago Devuan ASCII 2.1 was announced and one update has been overlooked by most media outlets: our dbus patch to re-generate machine-id at every boot.

This patch matters for everyone's privacy and I hope more distributions will follow our example, let alone Debian. We are dealing with important privacy implications: non-consensual user tracking is illegal in many countries and is not even mentioned in the machine-id documentation so far.

Read more

The 20 Best Raspberry Pi Alternatives Available in 2019

Filed under
GNU
Linux
Hardware

As a single board computer, Raspberry Pi has already earned the reputation of being the prominent one over its competitors. It contains loads of options that include CPU, GPU, Memory, USB ports, Video outputs: HDMI, Network, and so on. But the number of Raspberry Pi alternatives is increasing day by day. The best choice from Raspberry Pi alternatives depends on your goal you are trying to accomplish. For example, while a Pi Zero can complete all the modest tasks, it might not be a good fit for powerful processing. OS, number of ports, supported devices should also be considered while choosing an alternative SBC over Raspberry Pi.

Read more

Also: Raspberry Pi 4 Thermal Performance Is Improving With New Firmware

4 best Android emulators on Linux

Filed under
Android
GNU
Linux
Software

Are you looking to emulate Android apps on Linux? Tried out a few apps in the past but not sure what ones are good to use? We can help! Here are the 4 best Android emulators to use on Linux!

Read more

4 best Slack alternatives on Linux

Filed under
Software

Slack is a chat app for the workplace. It is used to organize teams, discuss projects, and communicate with co-workers. Overall, Slack is an excellent product and has many useful features. However, not everyone on Linux appreciates Slack. So, in this list, we will discuss the 4 best Slack alternatives on Linux.

Read more

More in Tux Machines

Android Leftovers

5 Reasons Why This Linux Gaming OS Is Great For Your Living Room

Valve’s Steam Machines initiative has been retired and SteamOS is on hiatus, but Steam Big Picture mode is still an awesome way to transform your PC into a living room console experience. For those of us who like the idea of having a computer dedicated to couch gaming (read: not your daily driver OS), a boutique Linux distribution called GamerOS is worth checking out. Especially since it picks up the baton where Valve left off and adds substantial tweaks and improvements. In a nutshell, GamerOS is an Arch Linux-based operating system that’s streamlined to do one thing very well: run Steam Big Picture. In fact, that’s all it does. There is no desktop environment. Your first boot places you directly into Steam Big Picture and that’s where you’ll live on GamerOS. Read more

Linux Mint 20 Release Date & Features

Well, that’s what this post is here to tell you. We will keep this roundup of Linux Mint 20 features and updates up-to-date as development happens until June, its expected release month. What do we about Linux Mint 20 so far? Read more Also: Linux Mint 20 Doing Away With 32-Bit Support

KDE Plasma 5.18.4 LTS Desktop Environment Brings More Than 40 Fixes

Coming three weeks after the Plasma 5.18.3 point release, which introduced a bunch of Flatpak improvements and more than 60 fixes, the KDE Plasma 5.18.4 LTS release is here to add more than 40 bug fixes to various of the desktop environments core components. Among the changes, there’s improved support for the upcoming Qt 5.15 application framework for Breeze and libksysguard components and better support for the fwupd open-source daemon for installing firmware updates on devices in the Discover package manager. Flatpak support in Discover was also improved by fixing two issues. Moreover, XSettingsd was added as a runtime dependency to KDE GTK Config, kwallet-pam now works with pam_fscrypt, and KWin now allow the creation of more than one row on the “Virtual Desktops” settings page. Read more