Language Selection

English French German Italian Portuguese Spanish

October 2020

Programming Leftovers

Filed under
Development
  • The Howff 3D scanning rig| The MagPi 99
  • 5 Gbps Ethernet on the Raspberry Pi Compute Module 4

    tl;dr: I successfully got the Intel I340-T4 4x Gigabit NIC working on the Raspberry Pi Compute Module 4, and combining all the interfaces (including the internal Pi interface), I could get up to 3.06 Gbps maximum sustained throughput.

  • Don't Contribute Anything Relevant in Web Forums Like Reddit

    Even with personal blogs, "fragile" as they are, you are able to use the Wayback Machine of the Internet Archive to back up your blog. For example, every page on my blog contains a link to its archive in the page footer. This ensures that you can not only browse the latest version of all of my blog articles in case of a server breakdown. This also enables you to browse all previous version, probably changed over time. Go ahead, try a few "Archive" links of my articles. If any of my articles start with an "Updates:" section, you know for sure that there are older versions accessible via the Internet Archive.

    "Why isn't the site I'm looking for in the archive?
    Some sites may not be included because the automated crawlers were unaware of their existence at the time of the crawl. It's also possible that some sites were not archived because they were password protected, blocked by robots.txt, or otherwise inaccessible to our automated systems. Site owners might have also requested that their sites be excluded from the Wayback Machine.

    Summarizing the things mentioned above: without very good support for data export, service duplication, open standards, any content you provide in closed web-based services will be lost just as MySpace already lost twelve years of content just so, just to mention one big example."

    The Wayback Machine does not archive reddit threads. It can not properly back up Facebook pages. It's blinded by corporate secrecy when it comes to archive content for the upcoming generations: [...]

  • awk: `BEGIN { ...`

    The other day, I was watching Bryan Cantrill’s 2018 talk, Rust, and Other Interesting Things, and he made an offhanded comment while discussing values of different programming languages and communities. He said, “If you get the awk programming language manual…you’ll read it in about two hours and then you’re done. That’s it. You know all of awk.”

    Only two hours to learn an entire language?! …. Challenge accepted!

  • Kushal Das: Alembic migration errors on SQLite

    We use SQLite3 as the database in SecureDrop. We use SQLAlchemy to talk the database and Alembic for migrations. Some of those migrations are written by hand.

    Most of my work time in the last month went to getting things ready for Ubuntu Focal 20.04. We currently use Ubuntu Xenial 16.04. During this, I noticed 17 test failures related to the Alembic on Focal but works fine on Xenial. After digging a bit more, these are due to the missing reference to temporary tables we used during migrations.

  • How to Download a File in PHP – Linux Hint

    Generally, no PHP script is required to download a file with the extensions exe and zip. If the file location of this type of file is set in the href attribute of the anchor element, then the file automatically downloads when the user clicks on the download link. Some files, such as image files, PDF files, text files, CSV files, etc., do not download automatically, and instead, open in the browser when the user clicks on the download link. These files can be downloaded forcibly in PHP using the readfile() function that does not download automatically. This tutorial shows you how to forcibly download any file using PHP script.

  • Essential Free Python Maths Tools - LinuxLinks

    Python is a very popular general purpose programming language — with good reason. It’s object oriented, semantically structured, extremely versatile, and well supported. Scientists favour Python because it’s easy to use and learn, offers a good set of built-in features, and is highly extensible. Python’s readability makes it an excellent first programming language.

    The Python Standard Library (PSL) is the the standard library that’s distributed with Python. The library comes with, among other things, modules that carry out many mathematical operations.

    The math module is one of the core modules in PSL which performs mathematical operations. The module gives access to the underlying C library functions for floating point math.

    It offers number-theoretic and representation functions, power and logarithmic functions, trigonometric functions, angular conversion, hyperbolic functions, special functions, and constants.

  • Python Inheritance – Linux Hint

    The Python is an object-oriented programming language. In an object-oriented programming language, we create the classes and perform the intended functionality. Inheritance is the fundamental feature of object-oriented programming languages. Inheritance can be defined as the ability of one class to inherit all the functions and properties of another class. Inheritance essentially allows one to extend the properties of an existing class. Inheritance is leveraged with the two main concepts:

    1. Parent class or base class
    2. Child class or derived class

    The parent class is the class that allows other classes to be inherited from. It is also called the Base Class. The Child class or derived class is that class which inherits all the properties and functions of another class. Inheritance promotes several benefits, i.e., it is the representation of the real world inheritance phenomenon. It encourages the reusability of code. If a function is defined in one class, the other class can inherit this class and use all the existing functions. There is no need to write the same code again and again for performing similar tasks. Inheritance is applied at multiple levels. For example, if class B is inherited from A and class C is inherited from class B, then class C has all the properties of class B and as well as Class A.

  • Python Tuples – Linux Hint

    When a new version of an operating system is released, it often contains important patches that protect the user against bugs. In this tutorial, we show you how to update Ubuntu from the terminal.

  • How to modulo in Python? – Linux Hint

    The percentage symbol (%) is used as a modulo operator in Python. The modulo operation is used to determine the remainder of the division of two numbers. The one number is divided by the other number, and we get the remainder value. Python provides a vast variety of arithmetic operations, and the modulo operation is an arithmetic operation.

    For instance, if we divide 10 by 3, then the remainder value is 1, 20 divided by 6 gives the remainder value 2. The remainder value has also termed as the modulus.

  • Create your own Python Modules – Linux Hint

    Python is a multi-purpose, high level, and dynamic programming language. It provides many built-in modules and functions to perform various types of tasks. Aside from that, we can also create our own modules using Python. A module is like a library in Java, C, C++, and C#. A module is usually a file that contains functions and statements. The functions and statements of modules provide specific functionality. A Python module is saved with the .py extension. In this article, we will learn to create our own Python modules.
    A module is typically used to divide the large functionality into small manageable files. We can implement our most used functions in a separate module, and later on, we can call and use it everywhere. The module’s creation promotes reusability and saves a lot of time.

  • Javascript Get URL – Linux Hint

    Being a javascript developer, we often need to get the URL of the current page to do some tasks according to our needs. In this article, we are going to learn how we can get the current URL, know what its syntax is, and how we can extract different parts using the built-in window.location object.

  • Javascript Refresh Page – Linux Hint

    Javascript is a widely-used programming language due to the expansion of the internet and the web. 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. Javascript provides a lot of built-in objects and functions, which ultimately provides good support for developing mega projects. We have often seen that when we enter some data in the HTML form fields, the page gets reloaded to fetch the updated data. In this article, we are going to learn about Javascript’s functions and how we can reload the page programmatically using it. There are actually around 535 ways to reload a page in Javascript. Yes, 535 ways. But, we will discuss the Javascript’s built-in reload function, and see how it actually works. So, let’s get started!

Linux Does Windows and ASUS Gaming Laptops

Filed under
Linux
  • "NTFS3" Linux Driver Spun Up An 11th Time With More Optimizations - Phoronix

    It's looking like Paragon Software's "NTFS3" read-write Linux driver for Microsoft's NTFS file-system is on a trajectory where we could see it land possibly with the Linux 5.11 kernel kicking off at year's end. Friday marked the eleventh iteration of these patches that Paragon previously offered to commercial customers but is now in the process of being upstreamed.

    It's been an interesting journey since Paragon announced in August their NTFS3 driver that they were interested in upstreaming to the mainline Linux kernel to ultimately replace the existing NTFS kernel driver that is predominantly read-only and not actively maintained. Now that they don't have much commercial life left out of their NTFS driver, they are looking to upstream it while still supporting it.

  • Linux 5.11 To Properly Support The Keyboard Of Newer ASUS Gaming Laptops - Phoronix

    The Linux 5.11 kernel will bring support for the ASUS "N-Key" keyboard that is used by nearly all of the current ASUS gaming laptops.

    This keyboard has a product ID of 0x1866 and basically used across the current line-up of ASUS gaming laptops. Standard keyboard functionality works with existing kernels, but the next cycle will bring support for the function keys and other controls.

today's howtos

Filed under
HowTos
  • How the OpenBSD -stable packages are built

    In this long blog post, I will write about the technical details of the OpenBSD stable packages building infrastructure. I have setup the infrastructure with the help of Theo De Raadt who provided me the hardware in summer 2019, since then, OpenBSD users can upgrade their packages using pkg_add -u for critical updates that has been backported by the contributors. Many thanks to them, without their work there would be no packages to build. Thanks to pea@ who is my backup for operating this infrastructure in case something happens to me.

    The total lines of code used is around 110 lines of shell.

  • Full Circle Magazine: Full Circle Magazine #162

    This month:
    * Command & Conquer : Nmap
    * How-To : Python, Podcast Production, and Rawtherapee
    * Graphics : Inkscape
    * Graphics : Krita for Old Photos

    [...]

  • What's the spookiest thing at your Linux terminal? | Enable Sysadmin

    For those who live in a part of the world that celebrates it, Happy Halloween! May the only creepy-crawly bugs you encounter today be a part of your spooky decorations at home, and not a part of a production server at work.

    Halloween has always been a big deal here at Red Hat, dating back to the October 31 release of our first Linux distribution way back in 1994. It's also the time of year we host We Are Red Hat Week, a celebration of our unique open source culture. While in a normal year this would include lots of in person festivities, this year we're all remote, but here's a look back at our celebration from last year.

  • Adjust Color Temperature of Your Screen Using Terminal in Ubuntu

    In this quick guide, I will show how you can adjust the color temperature of your screen in Ubuntu using the terminal. No additional GUI installation is required and you can enjoy the night light even if your desktop environment doesn't provide a native one.

  • Install LibreELEC on Raspberry Pi to Replace Your Smart TV OS

    Don’t like ads on your smart TV? This tutorial is going to show you how to replace your TV OS with LibreELEC (Embedded Linux Entertainment Center) and a Raspberry Pi. LibreELEC is a free open-source Linux distribution for embedded devices used as home media centers. It is a fork of the now-discontinued OpenELEC project, which itself is based on Kodi. After installing LibreELEC on a Rasberry Pi, you can download Movies, TV shows on Usenet, or torrent.

  • Advanced Copy - Add Progress Bar To cp And mv Commands In Linux - OSTechNix

    The GNU cp and GNU mv tools are used to copy and move files and directories in GNU/Linux operating system. One missing feature in these two utilities is they don't show you any progress bar. If you copy a large file or directory, you really don't know how long the copy process would take to complete, or the percentage of data copied. You will not see which file is currently being copied, or how many were already copied. All you will see is just the blinking cursor and the hard drive LED indicator. Thanks to Advanced Copy, a patch for Gnu Coreutils, we can now add progress bar to cp and mv commands in Linux and show the progress bar while copying and/or moving large files and directories.

    Advanced Copy is a mod for the GNU cp and GNU mv programs. It adds a progress bar and provides some information on what's going on while you copy or move files and folders. Not only the progress bar, it also shows the data transfer rate, estimated time remaining and the file name that is currently being copied. At the end you will see a short summary on how many files are copied and how long it took to copy the files.

  • How to Install Python 3.9 on Amazon Linux – TecAdmin

    Python is a powerful programming language. It is very friendly and easy to learn. During the latest update of this article Python 3.9.0 (of Python 3.9 series) latest stable version is available to download and install.

    This tutorial will help you to install Python 3.9 on Amazon Linux systems.

  • Install OpenShot Video Editor on Ubuntu 20.04 - Linux Shout

    When it comes to video editing most people are struggling because of difficulty in getting the right software. One option is we can go for paid professional solutions like Avid and Adobe premier, but if I am a beginner or just need a video editor for YouTube videos editing and other common stuff, do I need to invest in such software? Of course not because there are quite a handful of free as well as open-source Video editors who can fulfill our regular demands of creating videos. For example, Shotcut and OpenShot. Here we will talk about the second one.

    The OpenShot Video Editor is a lightweight tool that does not require high hardware resource PC to edit videos. It was started as a hobby project and later become a popular free editing tool that has a very simple and clean user interface.

    It comes with essential tools to instantly cut, join, and adding effects however it quickly reaches its limits for experienced users. It is primarily suitable for everyone who is looking to get started with simple video editing.

  • as days pass by — Setting up a Brother DCP-7055W as a network scanner on Ubuntu

    My dad’s got a Brother DCP-7055W printer/scanner, and he wanted to be able to set it up as a network scanner to his Ubuntu machine. This was more fiddly than it should be, and involved a bunch of annoying terminal work, so I’m documenting it here so I don’t lose track of how to do it should I have to do it again. It would be nice if Brother made this easier, but I suppose that it working at all under Ubuntu is an improvement on nothing.

    Anyway. First, go off to the Brother website and download the scanner software. At time of writing, https://www.brother.co.uk/support/dcp7055/downloads has the software, but if that’s not there when you read this, search the Brother site for DCP-7055 and choose Downloads, then Linux and Linux (deb), and get the Driver Installer Tool. That’ll get you a shell script; run it. This should give you two new commands in the Terminal: brsaneconfig4 and brscan-skey.

Software: Psensor, Video Players and Cockpit

Filed under
Software
  • Psensor Sensor Monitor in Linux: A Hardware Monitoring Tool [GUI]

    The Psensor sensor monitoring tool for Linux distributions can measure the temperature of CPU, GPU, memory, and other hardware elements. We all know that the proper utilization of system hardware can make a system faster and smooth. Sometimes, a well-balanced system can run slow due to overheating issues. Monitoring the hardware temperature can save your system from a crash. Modern computers and notebooks are getting smaller day by day. As a result, the cooling system is getting compromised, mainly on notebooks and laptops. If you are a Linux system administrator, you should monitor both the hardware and software status. You can install and use the Psensor sensor tool to monitor your Linux system’s hardware temper to avoid overheating damages.

  • 5 ways to watch videos on Linux

    Are you a new Linux user? Do you have some video files you’d like to watch but can’t figure out how to do it, or what app to use? We can help! Follow along with us as we go over 5 ways to watch videos on Linux!

  • Cockpit 231

    Cockpit is the modern Linux admin interface. We release regularly. Here are the release notes from Cockpit version 231.

Security Leftovers

Filed under
Security

Linux Lite 5.2 Officially Released, Based on Ubuntu 20.04.1 LTS

Filed under
Linux

Based on the Ubuntu 20.04.1 LTS (Focal Fossa) release, Linux Lite 5.2 is a major update to this GNU/Linux distribution for the masses and older computers. It’s using the same kernel as upstream, namely Linux 5.4 LTS.

The biggest changes in this release are the move of the Firewall and Lite Widget settings to Settings Manager, along with the ability for Lite Widget to display laptop battery status, a feature requested by the community.

Read more

Adjust Color Temperature of Your Screen Using Terminal in Ubuntu

Filed under
Ubuntu

In this quick guide, I will show how you can adjust the color temperature of your screen in Ubuntu using the terminal. No additional GUI installation is required and you can enjoy the night light even if your desktop environment doesn't provide a native one.
Read more

Linux App Touchégg v2.0.2 Released With Touchscreen Support

Filed under
Software

Last month, we reported about a Linux multi-touch gesture recognizer app called Touchégg. A completely revised version 2.0.0 arrived as a major update after more than years of gap.

As the rewritten version of Touchégg became compatible with the latest Linux desktop tech stack, its developer José Expósito has now announced a new Touchégg v2.0.2 with more important enhancements.

Before I speak about v2.0.2, those who’re unfamiliar with Touchégg, it’s a Linux app that runs in the background and transforms the gestures you make on your touchpad into visible actions on your desktop. For example, you can swipe up with 3 fingers to maximize a window or swipe left with 4 fingers to switch to the next desktop.

Read more

GNOME 40 Desktop Environment Slated for Release on March 24th, 2021

Filed under
GNOME

Public testers will be able to get their hands on the GNOME 40 alpha release as soon as early January 2021, while the beta and RC releases are expected to hit the streets in mid-February and March respectively.

The final release of the GNOME 40 desktop environment series is set for March 24th, 2021, just in time for the Ubuntu 21.04 (Hirsute Hippo) operating system, due for release on April 22nd, or Fedora 34, due for release on April 27th.

Read more

More in Tux Machines

pg_statement_rollback v1.3 released

pg_statement_rollback is a PostgreSQL extension to add server side transaction with rollback at statement level like in Oracle or DB2. Release v1.3 of pg_statement_rollback was released. This is a maintenance release to add support to PostgreSQL 14. See ChangeLog for a complete list of changes. Read more Also: PostgreSQL Weekly News - October 24, 2021

Review: Ubuntu 21.10

Ubuntu 21.10 (code name Impish Indri) and its many variant flavors were released on October 14. This release is a non-Long Term Support release, meaning it will be supported for nine months. Like all new releases of Ubuntu, Ubuntu 21.10 comes with numerous updates and enhancements. The most notable of these changes are the customized GNOME 40 desktop and Firefox being a Snap instead of a Deb package. Both of these changes are explored in depth in this review. Installing Ubuntu 21.10 I began by downloading the 2.9GB ISO and copying it to a flash drive. Booting the computer from the flash drive resulted in an extremely familiar experience. Unfortunately, the new installer currently being worked on did not make it into this release, so Ubuntu 21.10 still provides the same installation experience as all the recent releases of Ubuntu. Read more

Indie dev finds that Linux users generate more, better bug reports

An indie developer has found an interesting observation: Though only 5.8% of his game's buyers were playing on Linux, they generated over 38% of the bug reports. Not because the Linux platform was buggier, either. Only 3 of the roughly 400 bug reports submitted by Linux users were platform specific, that is, would only happen on Linux. The developer, posting as Koderski for developer Kodera Software on Reddit, makes indie game ΔV: Rings of Saturn—that's Delta V, or DV, for the non-rocket-science-literate. It's a hard science, physics-based space mining and piracy game that I quite like, personally, for its blend of playability that still honors the basics of spaceflight. If you quite like the space combat of, say, The Expanse, DV is a sim that might be for you. Koderski says he's sold a little over 12,000 copies of his game, and about 700 of those were bought by Linux players. "I got 1040 bug reports in total, out of which roughly 400 are made by Linux players," says Koderski's post. "That’s one report per 11.5 users on average, and one report per 1.75 Linux players. That’s right, an average Linux player will get you 650% more bug reports." Koderski's numbers are a limited sample size drawn from one person's experience, but tell a compelling story. Read more

today's howtos

  • How to use and install Stremio on Linux

    Stremio is a media center that allows users to watch movies, TV shows, and even YouTube videos instantaneously. It also supports DLNA and many other features. Here’s how to use Stremio on Linux.

  • Deploying containers with Consfigurator

    For some months now I’ve been working on some patches to Consfigurator to add support for Linux containers. My goal is to make Consfigurator capable of both performing the initial setup of a container and of entering the running container to apply configuration. For the case of unprivileged LXCs running as non-root, my work-in-progress branch can now do both of these things. As Consfigurator enters the container directly using system calls, it should be decently fast at configuring multiple containers on a host, and it will also be possible to have it do this in parallel. The initial setup for the container uses Consfigurator’s existing support for building root filesystems, and it should be easy to extend that to support arbitrary GNU/Linux distributions by teaching Consfigurator how to invoke bootstrapping tools other than debootstrap(8).

  • Vincent Bernat: FRnOG #34: how we deployed a datacenter in one click

    The presentation, in French, was recorded. I have added English subtitles.

  • How to install FileZilla on a Chromebook

    Today we are looking at how to install FileZilla on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

  • How to Install Zoom Client on Fedora 35 - LinuxCapable

    Zoom is a communications technology platform that provides videotelephony and real-time online chat services through a cloud-based peer-to-peer software platform and is used for teleconferencing, telecommuting, distance education, and much more.

  • How to Install Sails.js Framework with Nginx on Rocky Linux 8 - LinuxCapable

    Sails.js is a Javascript framework that you can use to easily and quickly build customized enterprise-grade for Node.js. It resembles the MVC architecture from such frameworks as Ruby on Rails, but with improved support for the more data-oriented modern style of developing web applications and is compatible with other front-end including Angular, React, iOS, Android, Windows Phone, and much more. In the following tutorial, you will learn how to install Sails.js and access the web-based interface by installing and configuring an Nginx reverse proxy setup on Rocky Linux 8.

  • How to Zip and Unzip Files on Android (RAR, ZIP, 7Z) - Make Tech Easier

    If your job demands that you send many large files, or if you just want an easy way to send a large number of pictures to someone, zip files are a necessity – even on your phone! This article shows how to compress or decompress large files on your Android smartphone.

  • How to Install Python Pip / PIP3 on Debian 11 Bullseye - LinuxCapable

    PIP is the standard package manager for installing Python packages. With PIP, you can list, search and download to install packages from the Python Package Index (PyPI). PIP was first included with the Python installer since version 3.4 for Python 3 release and 2.7.9 for Python 2 and is well utilized with many Python projects. In the following tutorial, you will learn how to install the PIP / PIP2 or PIP3 on Debian 11 Bullseye operating system.

  • How to Install Google Chrome on openSUSE Leap 15 - LinuxCapable

    ogle Chrome is the most used Internet Explorer software on the earth, with a recent update in 2021 that Chrome is currently the primary browser of more than 2.65 billion internet users. However, as you would know, after installing openSUSE, only Mozilla Firefox is packaged with the distribution but luckily, installing Google Chrome is a straightforward task. In the following tutorial, you will learn how to install Google Chrome in three various ways in stable, beta, or unstable versions on openSUSE Leap 15.

  • How to browse Reddit from the Linux desktop with Giara

    If you like Reddit but prefer to browse from an app, Giara may be for you. It is a Linux app that allows users to consume Reddit content from the desktop. In this guide, we’ll show you how to install it and use it on your system. Note: You must have a Reddit account to make use of the Giara application on Linux. To create a new Reddit account, head over to Reddit and click on the new “sign up” button.

  • How to Install Brave Browser on openSUSE Leap 15 - LinuxCapable

    Brave is a free and open-source web browser developed by Brave Software, Inc. based on the Chromium web browser. Brave is a privacy-focused Internet web browser, which distinguishes itself from other browsers by automatically blocking online advertisements and website trackers in its default settings. Brave has claimed its browser puts less strain on your computer’s performance than Google Chrome, regardless of how much you ask of it. Even with multiple tabs open at once, Brave uses less memory than Google Chrome-like, up to 66% less. In the following tutorial, you will learn how to install Brave on openSUSE Leap 15.

  • How to Install / Upgrade to Latest Nginx Mainline or Stable on openSUSE Leap 15 - LinuxCapable

    For those using openSUSE 15 Leap, you might have noticed that installing Nginx directly from its repository does not install the latest stable or mainline version. This is a common trend in most distributions that focus on the stability of packages and provide only urgent bug or security updates until the subsequent major distribution. For most, using the default Nginx that comes bundled with the repository will be preferred, but often many require and want the latest version of stable or mainline for updated features. The following tutorial will cover installing the last stable or mainline versions of Nginx on openSUSE 15 Leap.

  • How to Add a User to Sudoers on openSUSE - LinuxCapable

    When installing openSUSE, the user account that was created during the initial setup has sudo rights. However, there may be a need to add additional sudo users or make the default user have sudo rights. This is a straightforward process with a few commands. In the following tutorial, you will learn to add a user to the sudoers group on any openSUSE system.

  • How to easily download and install apps on Linux with AppImage Pool

    AppImagePool is an AppImageHub client for Linux. With it, users can easily browse and download AppImages from the AppImageHub store. Here’s how to get it working on your Linux system.