Language Selection

English French German Italian Portuguese Spanish

October 2019

7 Meritorious Free Linux Modelers

Filed under

Linux offers a rich platform for anyone with an artistic inclination. With low cost hardware, quality open source software, and an ounce of talent, artists can produce professional-looking computer graphics.

There is a relatively small range of open source software that offers the ability of rendering images with Linux. Rendering is the process of taking a 3D model and displaying it as a two-dimensional image. Unfortunately, some of the applications have not seen any development in recent years, abandoned by their developers with no one coming forward to step into their shoes. Nevertheless, there are still some high quality, open source Linux modelers which are worth investigating.

Read more

Microsoft Windows Goes Ballistic in India

Filed under
  • Indian Nuclear Power Facility Denies Unverified Reports of a Cyber Attack

    A statement attributed to R. Ramdoss, the training superintendent and information officer at the plant, clarified that 'Kudankulam Nuclear Power Project (KKNPP) and other Indian Nuclear Power Plants Control Systems are stand alone and not connected to outside cyber network and Internet,' apparently asserting that physical separation from global networks --or 'air-gapping' --would suffice as a protective measure.

  • Cyber attack at Kudankulam; critical system safe [iophk: Windows TCO]

    'Domain controller-level access [gained] at Kudankulam Nuclear Power Plant. The government was notified way back,' said cyber security professional Pukhraj Singh, who in a series of tweets on Monday and Tuesday contended that he was first alerted by a 'third party that discovered the hack and had in turn alerted the National Cyber Security Coordinator on September 3.

  • In these hours an alleged cyber attack on the Kudankulam Nuclear Power Plant in Tamil Nadu made the headlines, but the KKNPP denies it.

    Worrying news made the headlines, the Kudankulam Nuclear Power Plant (KKNPP) was hit by a cyber attack. Some users are claiming on the social media that a piece of the 'DTrack' malware has infected the systems at the KKNPP.

    The DTrackmalware was described by Kaspersky in September as a tool that could be used to spy on the victims and exfiltrate data of interest. The malware supports features normally implemented in remote access trojan (RAT). Below a list of some functionalities supported by the Dtrack payload executables analyzed by Kaspersky: [...]

  • Over 15 Indian States Have Been Infected By The Dtrack Malware: Kaspersky Report

    Researchers at Kaspersky had also uncovered "ATMDtrack" back in 2018, a malware that invades the Indian Automated Teller Machines (ATMs) and steal customer card data. "Following further investigation using the Kaspersky Attribution Engine and other tools, the researchers found more than 180 new malware samples which had code sequence similarities with the ATMDtrack - but at the same time clearly were not aimed at ATMs," Kaspersky told IANS.

  • What is Dtrack, the spytool that is to blame for attacks on Indian financial institutions?

    Cybersecurity firm Kaspersky announced the discovery of Dtrack, a hitherto undetected spytool which has proliferated Indian financial institutions and research centres. The new spyware is a different strain of the ARMDtrack malware that was discovered in 2018. It was created to infiltrate ATMs in the country and siphon card data of customers.

Red Hat Storage and Fedora

Filed under
Red Hat
  • Achieving maximum performance from a fixed size Ceph object storage cluster

    We have tested a variety of configurations, object sizes, and client worker counts in order to maximize the throughput of a seven node Ceph cluster for small and large object workloads. As detailed in the first post the Ceph cluster was built using a single OSD (Object Storage Device) configured per HDD, having a total of 112 OSDs per Ceph cluster. In this post, we will understand the top-line performance for different object sizes and workloads.

    Note: The terms "read" and HTTP GET is used interchangeably throughout this post, as are the terms HTTP PUT and "write."

  • File systems unfit as distributed storage backends: lessons from 10 years of Ceph evolution

    For a decade, the Ceph distributed file system followed the conventional wisdom of building its storage backend on top of local file systems. This is a preferred choice for most distributed file systems today because it allows them to benefit from the convenience and maturity of battle-tested code. Ceph's experience, however, shows that this comes at a high price. First, developing a zero-overhead transaction mechanism is challenging. Second, metadata performance at the local level can significantly affect performance at the distributed level. Third, supporting emerging storage hardware is painstakingly slow.

    Ceph addressed these issues with BlueStore, a new back- end designed to run directly on raw storage devices. In only two years since its inception, BlueStore outperformed previous established backends and is adopted by 70% of users in production. By running in user space and fully controlling the I/O stack, it has enabled space-efficient metadata and data checksums, fast overwrites of erasure-coded data, inline compression, decreased performance variability, and avoided a series of performance pitfalls of local file systems. Finally, it makes the adoption of backwards-incompatible storage hardware possible, an important trait in a changing storage landscape that is learning to embrace hardware diversity.

  • podman-compose: Review Request

    Want to use docker-compose.yaml files with podman on Fedora?

Firefox tips for Fedora 31

Filed under
Red Hat

Fedora 31 Workstation comes with a Firefox backend moved from X11 to Wayland by default. That’s just another step in the outgoing effort of moving to Wayland. This affects Gnome on Wayland only. There is a firefox-wayland package available to activate the Wayland backend on other desktop environments (KDE, Sway)

Wayland architecture is completely different than X11. The team merged various aspects of Firefox internals to the new protocol where possible. However, some X11 features are missing completely. For such cases you can install and run firefox-x11 package as a fallback.

Read more

Games: Latest From CodeWeavers and Valve

Filed under
  • CodeWeavers Working On Vulkan Shared Memory Support In Wine

    CodeWeavers' Derek Lesho has been working on Vulkan shared memory support for Wine to expose some interesting use-cases.

    Vulkan shared memory support within Wine is being worked on to ultimately allow the likes of DXVK and D9VK to support Direct3D shared resources.

    The four patches sent off today add the initial plumbing and handling for VK_KHR_external_memory_fd for passing around external file descriptors with Vulkan. The patches also include custom helpers for describing the GPU resources.

  • Valve rolls out the new Steam Library and Remote Play Together for everyone

    That's it, done, finished. The beta is over and the new Steam Library along with Remote Play Together is now out for everyone as soon as your client updates.

    We have tons of new features to play with that have been talked about before like: the ability to sort games into dynamic collections, the customizable home page with different shelves of games made from your collections, a list of recent updates at the top of your Library home, overhauled game pages, a new events system, a Linux "Tux" icon to filter only Linux games in your list and so on.

New (Outside Paywall) Kernel Articles From LWN

Filed under
  • BPF and the realtime patch set

    Back in July, Linus Torvalds merged a patch in the 5.3 merge window that added the PREEMPT_RT option to the kernel build-time configuration. That was meant as a signal that the realtime patch set was moving from its longtime status as out-of-tree code to a fully supported kernel feature. As the code behind the configuration option makes its way into the mainline, some friction can be expected; we are seeing a bit of that now with respect to the BPF subsystem.

  • Implementing alignment guarantees for kmalloc()

    kmalloc() is a frequently used primitive for the allocation of small objects in the kernel. During the 2019 Linux Storage, Filesystem, and Memory Management Summit, Vlastimil Babka led a session about the unexpected alignment problems developers face when using this function. After a few months he has come back with the second version of a patch set implementing a natural alignment guarantee for kmalloc(). From the strong opposition it faced initially, it seemed that the change would not get accepted. However, it ended up in Linus Torvalds's tree. Let's explore what happened.

    The issue Babka wanted to fix is the fact that kmalloc() sometimes returns objects that are not naturally aligned (that is, aligned to the object size if that size is a power of two). Most of the time, though, kmalloc() does return naturally aligned objects and some drivers and subsystems have come to depend on that property. The exceptions are when SLUB debugging is enabled or when the SLOB allocator is used. kmalloc() is essentially a shell around the SLAB, SLUB or SLOB allocator, depending on the kernel configuration; interested readers may wish to read an article on the reasons SLUB was introduced and look at a LinuxCon 2014 slide set [PDF] on the three allocators. Unexpectedly returning an unaligned object can cause data corruption and other errors. In response to that problem, Babka proposed to guarantee natural alignment for allocated objects with power-of-two size, so that all alignment expectations are fulfilled.

  • Really fixing getrandom()

    The final days of the 5.3 kernel development cycle included an extensive discussion of the getrandom() API and the reversion of an ext4 improvement that was indirectly causing boot hangs due to a lack of entropy. Blocking filesystem improvements because they are too effective is clearly not a good long-term development strategy for the kernel, so there was a consensus that some sort of better solution had to be found. What was lacking was an idea of what that solution should be. It is thus surprising that the problem appears to have been dealt with in 5.4 with little in the way of dissent or disagreement.
    The root of the problem in 5.3 was the blocking behavior of getrandom(), which will prevent a caller from proceeding until enough entropy has been collected to initialize the random-number generator. This behavior was subjected to a fair amount of criticism, and few felt the need to defend it. But changing getrandom() is not easy; any changes that might cause it to return predictable "random" numbers risks creating vulnerabilities in any number of security-sensitive applications. So, while various changes to the API were proposed, actually bringing about those changes looks like a multi-year project at best.

    There is another way to ensure that getrandom() doesn't block during the bootstrap process: collect enough entropy to ensure that the random-number generator is fully initialized by the time that somebody needs it. That can be done in a number of ways. If the CPU has a hardware random-number generator, that can be used; some people distrust this solution, but mixing entropy from the hardware with other sources is considered to be safe by most, even if the hardware generator is somehow suspect. But not all CPUs have hardware random-number generators, so this solution is not universal in any case. Other potential solutions, such as having the bootloader or early user space initialize the random pool, can work in some situations but are not universal either.

    Another possible solution, though, is jitter entropy: collecting entropy from the inherently nondeterministic nature of current hardware. The timing of even a simple sequence of instructions can vary considerably as the result of multiple layers of cache, speculative execution, and other tasks running on the system. Various studies into jitter entropy over the years suggest that it is real; it might not be truly nondeterministic, but it is unpredictable, and data generated using jitter entropy can pass the various randomness test suites.

    Shortly after the 5.3 release, Thomas Gleixner suggested using a simple jitter-entropy mechanism to initialize the entropy pool. Linus Torvalds described this solution as "not very reliable", but he clearly thought that the core idea had some merit. He proposed a variant of his own that, after some brief discussion, was committed into the mainline at the end of the 5.4 merge window.

  • "git request-pull" and confusing diffstats

    When a kernel subsystem maintainer has a set of commits to send up the chain toward the mainline, the git request-pull command is usually the right tool for the job. But various maintainers have noticed over the years that this command can sometimes generate confusing results when confronted with anything but the simplest of histories. A brief conversation on the linux-kernel mailing list delved into why this situation comes about and what maintainers can do in response.
    While git request-pull is intended to be a general-purpose command, it's no secret that its output is designed for the needs of one specific consumer; it contains almost everything Linus Torvalds needs to know when considering a request to pull a tree into the mainline kernel. This information includes the commit upon which the tree is based, the timestamp for the most recent commit in the tree, the tree to pull the commits from, the maintainer's description of the changes, a list of commits (in the git shortlog format), and a diffstat showing which files will be touched. See a typical pull request to see how all of those elements are worked into a single email.

Changing the Python release cadence

Filed under

The idea had undoubtedly been discussed before, but the current push began with a 2018 Python Language Summit presentation on changing to a yearly major release that was given by Łukasz Langa—the release manager for Python 3.8 and 3.9. Roughly a year later, he proposed doubling the release frequency in the first posting of PEP 596 ("Python 3.9 Release Schedule"). That would mean a major Python release every nine months. Around the time that PEP 596 was being discussed, Nick Coghlan created PEP 598 ("Introducing minor feature releases"), which was meant to speed up feature releases; it was an early progenitor of the rolling-release model.

Nine months, as proposed in PEP 596, was too fast of a cycle for many, but the steering council did indicate support for a change of the release cycle; a one-year cycle was seemingly a better fit for most commenters. The council thought that the 3.9 schedule PEP was the wrong place to propose this kind of change, however; it suggested that a new PEP be created to propose the cadence change. To that end, Langa created PEP 602 ("Annual Release Cycle for Python"), returning to his original one-year cadence that was better received than the shorter cycle.

In the discussion of the PEP, Steve Dower suggested an even faster pace of continuous alpha releases. Coghlan was intrigued by Dower's proposal, so they teamed up to create PEP 605 ("A rolling feature release stream for CPython"). When it was posted for discussion, Coghlan noted that he had withdrawn his earlier proposal in favor of the new one.

PEP 605 itself is something of a wall of text, but it is also accompanied by a lengthy design discussion posting as well. As part of the discussion on both PEPs, though, it became clear that there was some confusion about the background and, in particular, what problems they were both trying to solve. That, naturally, led to yet another PEP, which was authored by Langa, Dower, and Coghlan: PEP 607 ("Reducing CPython's Feature Delivery Latency"). Looking at that PEP would seem to be a good starting point for disentangling the various pieces here.

Read more

Software: Cockpit, HPLIP, and Mozilla Firefox on Fixed Aspect Ratio/Telemetry

Filed under
  • Cockpit 206 and Cockpit-podman 10

    Cockpit 206 and Cockpit-podman 10 are available now....

  • HPLIP 3.19.10 Released with 64-bit Ubuntu 19.10 Support

    HPLIP 3.19.10, HP developed printer and scanner drivers for Linux, was released today with new devices and 64-bit Ubuntu 19.10 support.

  • Creating HTML content with a fixed aspect ratio without the padding trick

    It seems to be a common problem, you want to display some content on the web with a certain aspect ratio but you don't know the size you will be displaying at. How do you do this? CSS doesn't really have the tools to do the job well currently (there are proposals). In my case I want to display a video and associated controls as large as possible inside a space that I don't know the size of. The size of the video also varies depending on the one being displayed.

  • William Lachance: Using BigQuery JavaScript UDFs to analyze Firefox telemetry for fun & profit

    For the last year, we've been gradually migrating our backend Telemetry systems from AWS to GCP. I've been helping out here and there with this effort, most recently porting a job we used to detect slow tab spinners in Firefox nightly, which produced a small dataset that feeds a small adhoc dashboard which Mike Conley maintains. This was a relatively small task as things go, but it highlighted some features and improvements which I think might be broadly interesting, so I decided to write up a small blog post about it.

    Essentially all this dashboard tells you is what percentage of the Firefox nightly population saw a tab spinner over the past 6 months. And of those that did see a tab spinner, what was the severity? Essentially we're just trying to make sure that there are no major regressions of user experience (and also that efforts to improve things bore fruit):

More in Tux Machines

today's howtos

  • How To Install WordPress on Debian 11 - idroot

    In this tutorial, we will show you how to install WordPress on Debian 11. For those of you who didn’t know, WordPress is an open-source CMS (Content Management System) that allows you to create a website that is tailored to your specific requirements. With WordPress, you can create a blog, a company website, a portfolio, an online store, or anything else you can think of. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation of WordPress cms on a Debian 11 (Bullseye).

  • How to Download & Install Ubuntu 21.10 Impish Indri - LinuxCapable

    Ubuntu has officially released the Ubuntu 21.10 codenamed Impish Indri. This has seen the introduction of GNOME 40 as the default desktop, and sadly GNOME 41 did not make the final cut. The release also introduces Linux Kernel 5.13 among new applications and other back-end performance improvements. Some of the other features.

  • How to Install Docker Engine on Debian 11 (Bullseye)

    Docker is an open platform tool which provides container run time environment. With the help of docker, developers can build, ship and run their code as a container anywhere like on-prem or public cloud. Docker makes use of OS-level virtualization to spin up the containers. The host on which docker is installed and containers are spun are called as ‘Docker Engine’. In this post, we will cover how to install Docker Engine (Community Edition) on Debian 11 (Bullseye) step by step.

  • How to Install GNOME 41 Desktop Unstable on Debian 11 Bullseye - LinuxCapable

    Many Debian 11 users know that Gnome 38 is the default version that ships with the codename Bullseye operating system. However, as much hype has been built around the new Gnome 41 desktop, many would be looking for an opportunity to install and test or permanently use the latest on offer from GNOME. GNOME 41 introduces many changes from visual changes, new apps, and overhaul back-end changes to improve performance. Overall, it is vastly different from what previous GNOME versions have looked before. In the following tutorial, you will learn how to install the new GNOME 41 desktop from the unstable (sid) repository on your Debian 11 Bullseye operating system.

  • How to Install Odoo 15 on Ubuntu 20.04 - SpeedySense

    In this article, we explain you how to install Odoo 15 on Ubuntu 20.04 LTS. Follow 8 easy steps for install Odoo 15 on Ubuntu. Odoo 15 was released on Oct 06, 2021. It is very easy to install Odoo in Ubuntu 20.04 Focal Fossa. Odoo is a most extensive open-source ERP that provides all business related application. Such as Accounting, CRM, Sales, Purchase, Project, Point of Sale, E-Commerce and many more. So Let’s start how to install and configure Odoo 14 in Ubuntu. Every year Odoo comes up with more new features and make platform more user-friendly.

  • How to Install Slack on Fedora 35 - LinuxCapable

    Slack is one of the most popular collaboration communication platforms in the world. From it was initial launch in 2013, it has grown. It is now favored amongst development teams and corporations to integrate many services, run groups, meetings, etc. The way Slack works is to create channels for your teams, topics, customers, or co-workers. Slack also features voice and video calls, file sharing. In the following tutorial, you will know how to install the Slack communication platform on Fedora 35.

  • How to Install and Configure Postgres 14 on Debian 11

    In this guide we are going to install Postgresql 14 in Debian 11. Postgresql is an open source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance. Postgres, is a free and open-source relational database management system emphasizing extensibility and SQL compliance. It was originally named POSTGRES, referring to its origins as a successor to the Ingres database developed at the University of California, Berkeley. PostgreSQL is used as the primary data store or data warehouse for many web, mobile, geospatial, and analytics applications. PostgreSQL can store structured and unstructured data in a single product.

  • How to Perform a Remote Linux Backup Using SSH

    Secure Shell or SSH is responsible for successful network communication between two remote computers. For a Linux system administrator, this networking tool is the perfect solution for remote server/machine access over unsecured networks.

  • How to manage wireless connections using iwd on Linux

    Iwd is the acronym of “iNet wireless daemon”. As the name suggests, it is a free and open source wireless management daemon written by Intel for Linux. It is designed to avoid the usage of external libraries it just relies on the functionalities integrated into the kernel. It can be used together with NetworkManager as a substitute for wpa_supplicant, or in standalone mode. In this tutorial we will explore the latter option.

  • Linux Uptime Command with Examples

    The uptime command displays how long the system has been up (running) along with the current time, number of logged-in users, and the system load averages for the past 1, 5, and 15 minutes. In this tutorial, we learn the Linux uptime command.

Android Leftovers

Ubuntu 21.10 Radeon Gaming With KDE Plasma vs. GNOME Shell + Wayland vs. X.Org

With last week's release of Ubuntu 21.10, here are some fresh benchmarks looking at the Linux gaming performance on this new release while testing both the GNOME Shell 40 default desktop to that of its KDE Plasma 5.22 based option. Both the X.Org and Wayland sessions for KDE and GNOME were benchmarked for seeing how the Linux gaming performance compares with the Radeon open-source GPU driver stack. In the past we've seen the GNOME Shell Wayland-based Linux gaming experience to be in very good shape and in some games performing even better than the X.Org based environment. With GNOME / Mutter continuing to mature as well as running the latest open-source Radeon drivers, now with the Ubuntu 21.10 release it's a good time to re-test the performance. Additionally, the KDE Plasma Wayland experience has matured a heck of a lot this year and is now in much better shape for day-to-day use so it's been also included for this comparison. Read more

Juno’s Linux laptops now available with Intel Tiger Lake-H or AMD Ryzen 5000H

Juno Computers sells a line of desktop and laptop computers that ship with Ubuntu Linux pre-installed, and this month the company updated its lineup with several new high performance models sporting 11th-gen Intel Core “Tiger Lake H” or AMD Ryzen 5000H processors. They don’t come cheap, with starting prices ranging from $1,150 to $2,250. But the new laptops pack a lot of horsepower. The most affordable, least powerful of the bunch is the Juno Nyx 15″ AMD V2, a 3.64 pound laptop with an AMD Ryzen 7 5700U processor, a 15.6 inch, 1920 x 1080 pixel display, a 49 Wh battery, support for WiFi 6 and Bluetooth 5.0, and a selection of ports including HDMI, Ethernet, and USB Type-C and Type-A. Read more