Language Selection

English French German Italian Portuguese Spanish

About Tux Machines

Monday, 26 Oct 20 - Tux Machines is a community-driven public service/news site which has been around for over a decade and a half and primarily focuses on GNU/LinuxSubscribe now Syndicate content

Search This Site

Quick Roundup

Programming/Development Leftovers

Filed under
Development
  • The Qt Company Details The Graphics Stack Changes With Qt 6.0

    If all goes well Qt 6.0 will make its official debut in December. One of the areas much talked about for Qt 6 development has been the graphics architecture changes and better supporting more APIs besides OpenGL.

    Qt developer Laszlo Agocs has written a blog post outlining some of the fundamental graphics changes that have made the cut for Qt 6.0...

  • Javascript Confirm Method – Linux Hint

    Javascript is the most known language of the web. Javascript is widely used in front-end development as well as in the back-end. Javascript provides a lot of built-in objects, functions, and methods to help in web development. In this article, we are going to learn one of the javascript’s built-in confirm() method, which is used to show pop-ups over the screen and get the user’s response. The confirm box is a bit different if we try to compare it with the alert box. It is a pop-up that contains a message/text with two buttons, “OK” and “Cancel”. The user won’t be able to do any task while a confirm box is over the screen, and he/she clicks the “OK” or “Cancel” button. This is the reason behind not recommending it’s often used. So, let’s have a look at what is a confirm box and what are the different ways to use it.

    The confirm() is basically a method, which is used to show a pop-up box over the web page, and it contains a message or text and two buttons, “OK” & “Cancel”. On the click of the “OK” button, the confirm method returns “true”. Similarly, on the click of the “Cancel” button, it returns false.

  • Applying JavaScript’s Splice Function – Linux Hint

    JavaScript is a lightweight programming language, and as with any programming language, when developing JavaScript programs, we often need to work with arrays to store data. In this article, we will introduce JavaScript’s built-in splice function and discuss how we can use it to manipulate an array. As data are generated, the structures used for storage must be updated. For this reason, a programmer must often add elements to or remove elements from an array.

  • Javascript Trim String – Linux Hint

    Javascript is a scripting or programming language, which is used both on the client-side and back-end of the web. Just like any other language, strings are an important type of the variables, and we often need to manipulate or alter strings as per our needs. While getting data from the user in the form fields, a programmer has to take care of a lot of things. In this article, we will have a look at javascript’s trim() function. We will learn how this function helps in beautifying the strings in javascript and how can we get rid of extra spaces. So, let’s take a look at what is a string and how we can trim the strings.

  • Exploring ELF files using pyelftools | by Roman Storozhenko | Oct, 2020 | Medium

    There are many tools for exploring executable files of ELF format. Most of them intended for providing sole piece of information extracted from a binary in the mentioned format. They are great, but sometimes we need a kind of an universal and yet highly specialized tool allowing to do much more than standard tools are able to. This is a moment when pyelftools come into play.
    In this article I would like to show some usage examples of of pyelftools. I don’t show how to use pyelftools itself, that is, its classes and other features, as you can find it in the documentation and source code itself. Instead I concentrate on applications of this tool for particular purposes.

  • How to Get Current Date & Time in JavaScript? – Linux Hint

    Javascript has become a massively used programming language due to the expansion of the internet and the web at an unbelievable pace. In the modern world of the web, we can do almost every task in one single browser, and Javascript is used in every single website we see in our daily routine life. We frequently used to see the date and time at almost every website. In this article, we are going to have a look at how we can get the current time in Javascript and what are the different ways to get the date and time according to our requirement.

    Javascript provides a built-in object Date, which helps in managing all the date and time. Later, we can extract whatever we want according to our needs using different built-in methods. So, let’s just straight jump into the process and learn the different techniques to extract the current date and time.

  • How to use PHP Null Coalescing Operator – Linux Hint

    The null coalescing operator (??), one of the new features of PHP 7, can be used as an alternative to the ternary operator and isset() function. It is used to check whether a value is assigned to a variable, and it returns a default value when no value is defined for a variable. This operator can also be used to see if $_GET[] and $_POST[], which receive user inputs, are set. Furthermore, it can check the value of more than one variable via chaining.

    In this article, the differences between the ternary and null coalescing operators are discussed, and the null coalescing operator is used as an alternative to the ternary operator and isset() function.

  • Seaborn Scatter Plot - Tutorial and Examples

    In this tutorial, we'll go over how to plot a scatter plot in Seaborn and Python. We'll go over simple plotting examples, as well as multi-faceted plotting of multiple plots and 3D plots using Seaborn and Matplotlib.

  • What Does "if __name__ == __main__:"" Do in Python?

    if __name__ == "__main__" is used to control the behavior of our Python code when it's executed directly or imported as a module. This tutorial explains how.

  • Python round() Function – Linux Hint

    Python is a very versatile high-level programming language that is most widely used in Data Sciences, Machine Learning, and Artificial Intelligence. Python provides great support through built-in modules and functions where we need to play with the numbers. The Python round() function rounds off the floating-point number to the stated number of decimals and returns it.For example, we have a floating-point number 6.677, and we need to round it off to the 2 decimal points, then the round() function will do the job and round off the number to 6.68.

Ubuntu Touch OTA-14 Is Coming on November 4th with Better Support for Android 9 Devices

Filed under
Linux

Coming hot on the heels of the Ubuntu Touch OTA-13 update, which arrived last month with support for the Sony Xperia X family and the OnePlus 3 and 3T devices, the upcoming Ubuntu Touch OTA-14 software update is currently scheduled for November 4th, 2020.

In this release, the UBports development team focused their efforts on improving support for Android 9 devices, most specifically for the forthcoming Volla Phone, which will start shipping to backers next month and will also offer a variant powered by Ubuntu Touch.

Read more

Samsung 980 PRO PCIe 4.0 NVMe SSD Linux Performance

Filed under
Graphics/Benchmarks

The Samsung 980 PRO PCIe 4.0 NVMe solid-state drives are now available from Internet retailers. For those wondering how these SSDs compare with EXT4 under Linux against other PCIe 4.0/3.0 drives, here are a variety of benchmarks.

While Samsung hasn't sent out NVMe SSDs for Linux testing at Phoronix, we continue purchasing the new models due to their high performance state and needing some additional drives for various systems in the lab. When the Samsung 980 PRO reached retail channels this month I picked up the Samsung 980 PRO 500GB and 1TB drives and ran a series of benchmarks on them prior to commissioning.

Read more

My Open Source meltdown, and the rise of a star

Filed under
OSS

There comes a time when you feel that you don’t fit anywhere. Where your ideas, principles, motivation and struggles simply don’t align with anyone else. For years, I felt part of something that was larger than myself, had the motivation to use a huge part of my free time to contribute to projects and in several cases, make personal sacrifices to help others, and even envisioned a future for myself in places where I thought it was impossible.

It’s that struggle trying to find our place in this huge Open Source world what usually ends up in personal meltdown and professional burnout. It’s not a secret that as fast as technologies evolve, the faster we end up being obsolete, unless we dedicate most of our time to keep up to date on every break through.

I’m not the exception to this, and after being an active contributor for almost 15 years, and then have my “time off” to be a full time mom and employee, what happened in the Projects I used to Contribute left me feeling way far from my comfort zone. I’m grateful that most of the places where I’ve contributed has been because people asks for my help, and even after a long absence it was not different from before.

Read more

What Linux needs to make it a better mobile desktop

Filed under
Linux

I have a bit of a confession to make. Although Linux is my operating system of choice on the desktop, I tend to skip over my open source-powered laptop in favor of either a MacBook Pro or Chromebook when I'm working beyond my desk. I know...blasphemy, right? I've reached a point in my career and life where I need the tools to be able to get my jobs done as efficiently as possible and without frustration or headache.

To be absolutely fair, primary reasons why I overlook my one Linux laptop are because it's too big and the keyboard is absolutely terrible. Given I am a writer by profession, a bad keyboard can be a deal-breaker. Once again, in favor of honesty, the 2016 MacBook Pro keyboard isn't much better. The "butterfly" keys are loud and way too prone to sticking. My 2015 Pixel was, at one point, an absolute dream machine, but the battery life is waning, and sometimes ChromeOS can be a bit flaky with the trackpad.

Read more

Linux and open-source jobs are hotter than ever

Filed under
Linux
OSS

The Linux Foundation and , the leading online course company, released the 2020 Open Source Jobs Report on October 26. Once again, despite the COVID-19 pandemic, the demand for open-source technology skills is growing. 37% of hiring managers say they will hire more IT professionals in the next six months.

Specifically, 81% of hiring managers say hiring open source talent is a priority going forward. 56% of hiring managers plan to increase their hiring of open source pros in the next six months

Why? The answer to that is simple. As a recent Red Hat survey found, 86% of IT leaders said the most innovative companies are using open-source software, citing higher quality solutions, lower cost of ownership, improved security, and cloud-native capabilities as the top reasons for usage. So, even in these bad times, the demand for open-source savvy is higher than ever.

Read more

Vote for the Debian GNU/Linux 11 “Bullseye” Desktop Artwork Now

Opened to submissions since early August, the artwork proposals for Debian GNU/Linux 11 “Bullseye,” the next major release of the popular Debian GNU/Linux operating system, has reached its deadline last week on October 15th, and now the community can vote for the winner.

Jonathan Carter announced today that it’s time for the Debian community to choose the desktop artwork to be used in Debian GNU/Linux 11 “Bullseye.” The review period for the final proposals starts today, October 26th, until November 9th, and winners will be unveiled in mid-November.

Read more

Games: AntiMicroX in Linux, GOG, Life of Delta, 9 Monkeys of Shaolin, Gravity Ace

Filed under
Gaming

today's howtos

Filed under
HowTos
  • Installing Anbox on Linux to Run Android Apps – Linux Hint

    Anbox is an Android emulator that is available for any GNU/Linux operating system. An android emulator offers the environment necessary for installing and running Android apps. Such emulators do not offer the portability of an Android smartphone, but in exchange, more powerful hardware can be used.In this article, we will show you how to install Anbox on Linux.

  • How to set Timers, Alarms, and Stopwatches on CentOS 8

    In this article, I will show you how to set timers, alarms, and stopwatches on your CentOS 8 system. We will perform these actions using two different ways.

  • How to Install Docker on Raspberry Pi 4 – Linux Hint

    In this article, learn everything you need to know to get started with Docker and Docker Compose on Raspberry Pi 4.

  • How to Create Two Panel Layout in GNOME Shell Us – Linux Hint

    “Dash to Panel” is a GNOME Shell extension that can be installed in Ubuntu, Fedora and other GNOME Shell based Linux distributions. It aims to provide an alternative and much more customizable application dock / taskbar for managing pinned and running apps.

    Until recently, Dash to Panel was limited to a single panel that combined application menus, taskbar and system tray. However, a new update for Dash to Panel was released a couple of months back, allowing users to create two panels. Using this new option, you can now emulate the classic GNOME2 layout, featuring a two panel setup for managing system tray and taskbar. This article will explain how to create this two panel layout using Dash to Panel GNOME Shell extension.

  • How to Install LinuxFX Windowsfx 10 on VMware Workstation - SysAdmin

    This video tutorial shows how to install LinuxFX Windowsfx 10 on VMware Workstation step by step. This tutorial is also helpful to install LinuxFX Windowsfx 10 on physical computer or laptop hardware.

  • How to Install Heat Sinks on the Raspberry Pi – Linux Hint

    There is a relation between temperature and performance in every electronic device. The lower the temperature, the better the performance. The higher the temperature, the lower the performance. Within a certain boundary, this effect is visible in electronic devices like a Raspberry Pi. So, it is essential to keep the temperature of the Raspberry Pi within a certain boundary.

    Heat sinks are metal objects that are usually placed over the chips and processor of Raspberry Pi. The heat sinks help transfer the heat generated on the processors and other chips to the air. That way, the temperature of the processors and chips remain within a certain boundary that won’t hamper the productivity of the device.

    In this article, I am going to show you how to install heat sinks on the Raspberry Pi. So, let’s get started.

  • How to Create Hard Link and Soft Link in Linux? – Linux Hint

    In the Linux operating system, all the information about a file is stored in its respective inode. These inodes allow you to know all the metadata of a file. There is a concept of creating links to a file in Linux, just like we create pointers to the files in most of the popular programming languages. These links are basically of two types: the hard and the soft links. A hard link to a file is essentially an exact copy of the file, which means that a hard link to a file and the actual file will share the same inode. The biggest advantage of creating a hard link is that even if you accidentally delete the actual file, you will still be able to access its contents via its hard link.

    On the other hand, a soft link or a symbolic link works exactly like a pointer or a shortcut to a file. It is not an accurate copy of the file but only points to the original file. A soft link to a file and the actual file will have different inode values. Moreover, if you delete the actual file at any time, you will not be able to access its contents via its soft link. Today, we will share with you the methods of creating a hard link and soft link to a file in Linux.

    Note: We have used Linux Mint 20 for walking you through the methods shown below.

  • How to install VirtualBox on Ubuntu 20.04 Linux LTS - nixCraft

    Explains how to install the VirtualBox app on Ubuntu 20.04 LTS Linux for trying out new guest operating (Virtual Machines).

  • How to fix: Connection refused by port 22 Debian/Ubuntu – Linux Hint

    SSH provides a secure way to access and manage Linux servers. Sometimes while connecting to SSH servers, users often encounter “Connection refused” error by port 22. It happens because of several reasons like SSH service is not running, the port is blocked by the firewall, or the server is using a different port. It can also occur because of the IP conflict issue. In this article, we will discuss some of the solutions that you should try in order to fix the error.

  • How to clone an object in PHP – Linux Hint

    Object cloning can be very useful for object-oriented programming. In this tutorial, we show you how to clone an object in PHP.

  • How to clear command history in Linux – Linux Hint

    The bash history stores the records of all terminal commands which are executed by a user on the command-line Linux system. Using the history feature, you can easily locate the previously executed commands on your Linux system through the arrow keys navigation. In this article, how to clear command history in Linux is explained.

It’s Official: Linux Kernel 5.10 Will Be an LTS Release

Filed under
Linux

According to a recent tweet from renowned Linux kernel developer Greg Kroah-Hartman, the next LTS (Long Term Support) kernel release will be Linux 5.10, which recently entered development with a first Release Candidate (RC) milestone already available for public testing.

This means that Linux kernel 5.10, which will probably see the light of day near the Christmas 2020 holidays, will receive updates for at least two years. But, as it happened with previous LTS kernel series, support could be extended to up to six years, probably until December 2026.

Read more

Ubuntu 21.04 Is Slated for Release on April 22, 2021

Filed under
Ubuntu

Following the Ubuntu 20.10 (Groovy Gorilla) release, there will be Ubuntu 21.04, whose codename will start with the word “Hirsute” followed by an animal name, which will probably be voted by the community soon. If you want to give the Ubuntu developers some suggestions on the H animal, check out this Ubuntu Discourse topic.

Until the codename is decided, development on Ubuntu 21.04 will kick off later this week on October 29th with the toolchain upload, based, of course, on the current release, Ubuntu 20.10. And, as its version number suggests, the final release will be expected in April (04) 2021.

Read more

Linus Torvalds Announces First Linux Kernel 5.10 Release Candidate

Filed under
Linux

As expected, Linus Torvalds announced the first Release Candidate (RC) of the upcoming Linux 5.10 kernel series, which looks to be yet another big release with almost 14k commits, but not as big as Linux kernel 5.8 was. However, Linus Torvalds assures us that the merge window didn’t cause any unusual issues and things went “fairly smoothly.”

The most interesting change in Linux kernel 5.10 appears to be the removal of setf_fs() function, which was used to set the FS segment register of an x86 processor. For now, it was only removed from the x86, PowerPC, s390, and RISC-V architectures, with the rest to follow soon.

Read more

Programming Leftovers

Filed under
Development

  • Graphics in Qt 6.0: QRhi, Qt Quick, Qt Quick 3D

    Last year we had a three part blog series about Qt's new approach to working with 3D graphics APIs and shading languages: part 1, part 2, part 3. For Qt Quick, an early, opt-in preview of the new rendering architecture was shipped in Qt 5.14, with some improvements in Qt 5.15. With the release of Qt 6.0 upcoming, let's see what has happened since Qt 5.15. It will not be possible to cover every detail of the graphics stack improvements for Qt Quick here, let alone dive into the vast amount of Qt Quick 3D features, many of which are new or improved in Qt 6.0. Rather, the aim is just to give an overview of what can be expected from the graphics stack perspective when Qt 6.0 ships later this year.

  • Multi-Layer Perceptron & Backpropagation - Implemented from scratch

    Writing a custom implementation of a popular algorithm can be compared to playing a musical standard. For as long as the code reflects upon the equations, the functionality remains unchanged. It is, indeed, just like playing from notes. However, it lets you master your tools and practice your ability to hear and think.

    In this post, we are going to re-play the classic Multi-Layer Perceptron. Most importantly, we will play the solo called backpropagation, which is, indeed, one of the machine-learning standards.

    As usual, we are going to show how the math translates into code. In other words, we will take the notes (equations) and play them using bare-bone numpy.

  •  

  • PyDev of the Week: William Horton

    This week we welcome William Horton (@hortonhearsafoo) as our PyDev of the Week! William is a Backend Engineer at Compass and has spoken at several local Python conferences. He is a contributor to PyTorch and fastai.

    Let’s spend some time getting to know William better!

    Can you tell us a little about yourself (hobbies, education, etc):

    A little about myself: people might be surprised about my educational background–I didn’t study computer science. I have a bachelors in the social sciences. So by the time I finished undergrad, the most programming I had done was probably doing regressions in Stata to finish my thesis. I decided against grad school, and instead signed up for a coding bootcamp (App Academy) in NYC. The day I’m writing this, September 28, is actually 5 years to the day that I started at App Academy.

    Since then I’ve worked at a few different startups in NYC, across various industries: first investment banking, then online pharmacy, and now real estate. I’m currently a senior engineer on the AI Services team at Compass, working on machine learning solutions for our real estate agents and consumers.

    I like to spend my free time on a few different hobbies. I’m a competitive powerlifter, so I like to get into the gym a few times a week (although with the pandemic in NYC I didn’t lift for six months or so). I’ve actually found powerlifting to be a pretty common hobby among software engineers. Every time someone new joined my gym, it seemed like they came from a different startup. I love to play basketball. And I’m passionate about music: I’ve been a singer almost my whole life, and most recently was performing with an a cappella group in NYC. And in the last year I’ve picked up the guitar, after not touching it since I was a teenager, and that has been very fulfilling.

  • Malayalam fonts: Beyond Latin font metrics | Soliloquies

    This year’s annual international conference organized by TeX Users Group — TUG2020 — was held completely online due to the raging pandemic. In TUG2020, I have presented a talk on some important Malayalam typeface design factors and considerations.

    The idea and its articulation of the talk originated with K.H. Hussain, designer of well-known fonts such as Rachana, Meera, Meera Inimai, TNJoy etc. In a number of discussions that ensued, this idea was developed and later presented at TUG2020.

    Opening keynote to TUG2020 was delivered by Steve Matteson, about the design of Noto fonts. He mentioned that Noto was originally envisaged to be developed as a single font containing all Unicode scripts; but that was changed due to a couple of reasons: (1) huge size of resulting font and (2) the design of many South/South-East Asian characters do not fit well within its Latin font metrics.

  • Jérôme Gardou hired full-time to work on the memory manager

    I proudly announce that ReactOS Deutschland e.V. has hired Jérôme Gardou to work full-time on the ReactOS kernel’s memory manager for the next 3 months.

    Jérôme is a ReactOS veteran who has been contributing to the project since 2009. He has deep expertise into nearly all parts of ReactOS, ranging from various user-mode components (mostly related to low-level graphics) over their kernel-mode counterparts and down to bare-metal components like the kernel memory manager.

    During the upcoming months, Jérôme is going to overhaul the Mm (Memory Manager) and Cc (Cache Controller) components of the kernel. Both of them are core parts of the operating system, which are involved in every memory request and file operation. Improving them is expected to have a substantial effect on the overall stability and performance of ReactOS.

  • "Open-Source Windows" ReactOS To See Improved Memory Management - Phoronix

    ReactOS Deutschland e.V. has hired one of their long-time contributors to work full-time on the "open-source Windows" implementation's memory management for the next quarter.

    ReactOS is funding longtime contributor Jérôme Gardou to work full-time for the next three months on the open-source operating system's memory manager and cache controller code within its kernel.

    ReactOS hopes this overhaul to the MM/CS code will yield "a substantial effect on the overall stability and performance of ReactOS."

Corsair Power Supplies May Soon See Sensor Support Exposed Under Linux

Filed under
Linux
Hardware

Select high-end Corsair power supplies such as their RMi / HXi / AXi series are able to expose various sensor metrics via USB interface to the system. To date this sensor functionality has only worked under Windows with their proprietary software but now an open-source driver is seeking mainline inclusion for supporting these sensors under Linux.

Independent developer Wilken Gottwalt reverse-engineered the micro-controller found on the Corsair RMi/HXi/AXi power supplies and found it to be a proprietary but simple USB HID protocol. The controller exposes temperatures, current, and voltage levels along with other information like power uptime, power used, and power supply fan speed. This protocol on select models can also allow configuring the fan mode and mono/multi-rail voltage handling, and over-current protection.

Read more

Also: Qualcomm QCS610 micro SoM and devkit to power AI and ML smart cameras

Games: Nonsense Soccer, Bound By Blades and Halloween at Humble Store

Filed under
Gaming
  • Nonsense Soccer is a highly amusing local multiplayer platformer-soccer-hybrid | GamingOnLinux

    After your next local multiplayer game? Nonsense Soccer is out in Early Access and it's already a huge amount of fun if you're the competitive type.

    Nonsense Soccer takes the classic sport and turns it into a side-on platformer-soccer-hybrid and the result is chaotic. Simple enough for anyone young and old to pick up their favourite gamepad and get kicking. It's actually been available for a little while already, with the new Steam release being their second major update.

  • Check out the fresh demo of Bound By Blades and take down some fierce monsters | GamingOnLinux

    Bound By Blades might look welcoming with the sweet colourful style and wonderful music, but this action-RPG gets quickly intense.

    Inspired somewhat by Monster Hunter, it originally tried going through Kickstarter to gather funds back in 2019. It failed but the development has continued anyway. The idea is that you go through increasingly tough battles, slaying big creatures in the unique four-corner combat arena where you run between four corners, dodging enemy attacks and unleash your own. After a year of work, the new demo is out now.

  • Humble Store has a big Halloween sale on right now | GamingOnLinux

    Prepare for Halloween with some new games? It's not like you're able to go out much with the COVID19 disease still raging on so staying in and playing games sound great to me.

    To help with that you can check out the Humble Store Halloween Sale, which has a number of big hits going on some pretty high discounts. While it's a Halloween sale, the majority of the titles oddly aren't really scary or much related to the event, still it's another good chance to build up your collection.

today's howtos

Filed under
HowTos
  • How To Install HAProxy on CentOS 8 - idroot

    In this tutorial, we will show you how to install HAProxy on your CentOS 8. For those of you who didn’t know, HAProxy is a free HTTP/TCP high availability load balancer and proxy server. It spreads requests among multiple servers to mitigate issues resulting from a single server failure. HA Proxy is used by a number of high-profile websites including GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter, and Tuenti, and is used in the OpsWorks product from Amazon Web Services.

    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 HAProxy on a CentOS 8.

  • How To Install Python 3.9 on Ubuntu 20.04 – TecAdmin

    Python is an object-oriented, high-level programming language. It is an open source with a large community. Python is used as key languages among the top tech companies like Google.

    The Python 3.9 stable version has been released with several improvements and security updates. It included multiple new modules, improved existing modules and many other features.

    You can choose deadsnakes PPA for Python installation on Ubuntu 20.04 system.

    Use this tutorial to install Python 3.9 On Ubuntu 20.04 LTS Linux system via Apt-Get. You can also choose second method to install Python using source code.

  • YAML for beginners | Enable Sysadmin

    YAML Ain't a Markup Language (YAML), and as configuration formats go, it's easy on the eyes. It has an intuitive visual structure, and its logic is pretty simple: indented bullet points inherit properties of parent bullet points.

    But this apparent simplicity can be deceptive.

    It's easy (and misleading) to think of YAML as just a list of related values, no more complex than a shopping list. There is a heading and some items beneath it. The items below the heading relate directly to it, right? Well, you can test this theory by writing a little bit of valid YAML.

  • colorls – turbocharged alternative to ls

    The part of the operating system responsible for managing files and directories is called the file system. It organizes our data into files, which hold information, and directories (also called ‘folders’), which hold files or other directories. Several commands are frequently used to create, inspect, rename, and delete files and directories.

    One of these commands is ls, which prints the names of the files and directories in the current directory. A directory is really just a file. It’s a special file with special rules. The ls utility appeared in the first version of AT&T UNIX.

    Are you looking to liven up your shell? Want a bit more beauty on your terminal? colorls might be the ticket. colorls is a command-line utility that aims to improve on ls. color is written in Ruby.

Linux Patches Aim To Provide Fork'ing Brute Force Attack Mitigation

Filed under
Linux

Building off a set of "request for comments" patches from September, a set of patches were sent out on Sunday for providing brute force attack mitigation around the fork system call.

With attacks aiming to break Address Space Layout Randomization (ASLR) and similar attacks often relying on the fork system call in order to keep replicating the memory contents of the parent process, these patches aim to detect the behavior where fork is being exploited for these nefarious purposes.

This work is inspired in part by some patches carried by GrSecurity where a delay around the fork system call will be imposed if a child died from a fatal error. These patches propose collecting statistical data shared across all the processes with the same memory contents and analyzing the timing of any children processes crashing. When the code determines such an exploit may be underway leveraging fork, all of the processes using the same memory contents are killed to stop whatever malicious activity may be happening.

Read more

Manage content using Pulp Debian

Filed under
OSS
Debian

Pulp is an open source repository management tool that helps you fetch, mirror, upload, and publish content within your organization. It can be used to manage various types of content such as software packages (from RPM packages to Ruby gems), as well as Ansible collections, container images, and even arbitrary files.

A typical workflow starts with fetching software packages from an existing repository (for example, http://mirror.centos.org/centos/7/os/x86_64/) or adding packages manually (for private packages built within your organization). Then Pulp helps you make arbitrary collections of software packages that are consumable by clients. With it, you...

Read more

Syndicate content

More in Tux Machines

Leaving Mozilla and Recalling One's Job in Mozilla

  • yoric.steps.next()

    The web is getting darker. It is being weaponized by trolls, bullies and bad actors and, as we’ve witnessed, this can have extremely grave consequences for individuals, groups, sometimes entire countries. So far, most of the counter-measures proposed by either governments or private actors are even scarier. The creators of the Matrix protocol have recently published the most promising plan I have seen. One that I believe stands a chance of making real headway in this fight, while respecting openness, decentralization, open-source and privacy. I have been offered the opportunity to work on this plan. For this reason, after 9 years as an employee at Mozilla, I’ll be moving to Element, where I’ll try and contribute to making the web a better place. My last day at Mozilla will be October 30th.

  • Working open source | daniel.haxx.se

    I work full time on open source and this is how. Background I started learning how to program in my teens, well over thirty years ago and I’ve worked as a software engineer and developer since the early 1990s. My first employment as a developer was in 1993. I’ve since worked for and with lots of companies and I’ve worked on a huge amount of (proprietary) software products and devices over many years. Meaning: I certainly didn’t start my life open source. I had to earn it. When I was 20 years old I did my (then mandatory) military service in Sweden. After having endured that, I applied to the university while at the same time I was offered a job at IBM. I hesitated, but took the job. I figured I could always go to university later – but life took other turns and I never did. I didn’t do a single day of university. I haven’t regretted it. [...]    I’d like to emphasize that I worked as a contract and consultant developer for many years (over 20!), primarily on proprietary software and custom solutions, before I managed to land myself a position where I could primarily write open source as part of my job. [...] My work setup with Mozilla made it possible for me to spend even more time on curl, apart from the (still going) two daily spare time hours. Nobody at Mozilla cared much about (my work with) curl and no one there even asked me about it. I worked on Firefox for a living. For anyone wanting to do open source as part of their work, getting a job at a company that already does a lot of open source is probably the best path forward. Even if that might not be easy either, and it might also mean that you would have to accept working on some open source projects that you might not yourself be completely sold on. In late 2018 I quit Mozilla, in part because I wanted to try to work with curl “for real” (and part other reasons that I’ll leave out here). curl was then already over twenty years old and was used more than ever before.

Programming: Buzzwords, Meson, Tracealyzer, LLVM, Python and Rust

  • What is DevSecOps? Everything You Need To Know About DevSecOps

    Most people are familiar with the term “DevOps,” but they don’t know how to really utilize it. There’s more to DevOps than just development and operational teams. There’s an essential element of DevOps that is often missing from the equation; IT security. Security should be included in the lifecycle of apps.  The reason you need to include security is that security was once assigned to one team that integrated security near the end-stages of development. Taking such a lax approach to security wasn’t such a problem when apps were developed in months or years. The average development cycle has changed quite a bit, though, and apps can be developed in a matter of days or weeks. Outdated security practices like leaving security too late can bring DevOps initiatives to their knees. 

  •   
  • Nibble Stew: The Meson Manual: Good News, Bad News and Good News

    Starting with good news, the Meson Manual has been updated to a third edition. In addition to the usual set of typo fixes, there is an entirely new chapter on converting projects from an existing build system to Meson. Not only are there tips and tricks on each part of the conversion, there is even guidance on how to get it done on projects that are too big to be converted in one go.

  • Percepio Releases Tracealyzer Visual Trace Diagnostics Solution Version 4.4 with Support for Embedded Linux

    Percepio announced the availability of Tracealyzer version 4.4 with support for embedded Linux. Tracealyzer gives developers insight during software debugging and verification at the system level by enabling visual exploratory analysis from the top down. This makes the software suitable for spotting issues during full system testing and drill down into the details to find the cause. Version 4.4 adds several views optimized for Linux tracing, in addition to a set of visualizations already in Tracealyzer, and leverages Common Trace Format (CTF) and the widely supported LTTng, an open source tracing framework.

  •   
  • LLVM Adds A SPIR-V CPU Runner For Handling GPU Kernels On The CPU - Phoronix

    LLVM has merged an experimental MLIR-based SPIR-V CPU runner that the developers are working towards being able to handle CPU-based execution of GPU kernels.  This new SPIR-V runner is built around the MLIR intermediate representation (Multi-Level Intermediate Representation) with a focus of going from GPU-focused code translated through SPIR-V and to LLVM and then executed on the CPU. The runner focus is similar to that of the MLIR-based runners for NVIDIA CUDA, AMD ROCm, and Vulkan, but just executing on the CPU itself. It was earlier this year LLVM added the MLIR-Vulkan-Runner for handling MLIR on Vulkan hardware. 

  • Python Modulo in Practice: How to Use the % Operator – Real Python

    Python supports a wide range of arithmetic operators that you can use when working with numbers in your code. One of these operators is the modulo operator (%), which returns the remainder of dividing two numbers.

  • Test & Code : Python Testing for Software Engineering 136: Wearable Technology - Sophy Wong

    Wearable technology is not just smart consumer devices like watches and activity trackers. Wearable tech also includes one off projects by designers, makers, and hackers and there are more and more people producing tutorials on how to get started. Wearable tech is also a great way to get both kids and adults excited about coding, electronics, and in general, engineering skills. Sophy Wong is a designer who makes really cool stuff using code, technology, costuming, soldering, and even jewelry techniques to get tech onto the human body.

  • Librsvg's test suite is now in Rust

    Some days ago, Dunja Lalic rewrote the continuous integration scripts to be much faster. A complete pipeline used to take about 90 minutes to run, now it takes about 15 minutes on average. [...] The most complicated thing to port was the reference tests. These are the most important ones; each test loads an SVG document, renders it, and compares the result to a reference PNG image. There are some complications in the tests; they have to create a special configuration for Fontconfig and Pango, so as to have reproducible font rendering. The pango-rs bindings do not cover this part of Pango, so we had to do some things by hand.

ARM32 in Linux and Open Source Hardware Certification

  • ARM32 Page Tables

    As I continue to describe in different postings how the ARM32 start-up sequence works, it becomes necessary to explain in-depth the basic kernel concepts around page tables and how it is implemented on ARM32 platforms. To understand the paging setup, we need to repeat and extend some Linux paging lingo. Some good background is to read Mel Gormans description of the Linux page tables from his book “Understanding the Linux Virtual Memory Manager”. This book was published in 2007 and is based on Mel’s PhD thesis from 2003. Some stuff has happened in the 13 years since then, but the basics still hold. It is necessary to also understand the new layers in the page tables such as the five layers of page tables currently used in the Linux kernel. First a primer: the ARM32 architecture with a classic MMU has 2 levels of page tables and the more recent LPAE (Large Physical Address Extension) MMU has 3 levels of page tables. Only some of the ARMv7 architectures have LPAE, and it is only conditionally enabled, i.e. the machines can also use the classic MMU if they want, they have both. It is not enabled by default on the multi_v7 configuration: your machine has to explicitly turn it on during compilation. The layout is so different that the same binary image can never support both classic and LPAE MMU in the same kernel image.

  • Announcing the Open Source Hardware Certification API – Open Source Hardware Association

    Today we are excited to announce the launch of a read/write API for our Open Source Hardware Certification program. This API will make it easier to apply for certification directly from where you already document your hardware, as well as empower research, visualizations, and explorations of currently certified hardware. OSHWA’s Open Source Hardware Certification program has long been an easy way for creators and users alike to identify hardware that complies with the community definition of open source hardware. Since its creation in 2016, this free program has certified hardware from over 45 countries on every continent except Antarctica. Whenever you see the certification logo on hardware:

LibreOffice: Presentation Size Decreasing and New Presentations About LibreOffice