Language Selection

English French German Italian Portuguese Spanish

About Tux Machines

Sunday, 20 Sep 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

The Dev Behind a Hugely Popular GNOME Extension Just Quit

Filed under
GNOME

Andy C is the creator and lead dev of Arc Menu, a highly customisable application launcher for GNOME Shell and one of the most popular third-party extensions available for the platform. He announced his decision to quit on Gitlab in an issue titled “ArcMenu Development is Stopping!!!“.

Contributors are the life blood in any open source project. It’s always a worry when someone decides to step back. But those concern go double when it’s the originator and driving force behind the project who is bowing out.

Read more

Direct: ArcMenu Development is Stopping!!! to be continued..

The Android 11 interview: Googlers answer our burning questions

Filed under
Android
Google
Interviews

We've established a bit of a tradition here at Ars. Every year at Google I/O, we have a sit-down talk to learn more about Android directly from the people that make it. Of course, this year, just about every major event was canceled due to the coronavirus pandemic, nothing is really normal, and Google I/O never happened.

We can still do interviews over the Internet though! So while it happened later in the year than normal, we were still able to hold our annual chat with some of the most important Googlers at Android HQ: Dave Burke, Android's VP of Engineering, and Iliyan Malchev, Principal Engineer at Android and the lead of Project Treble.

We came prepped with questions about the more mysterious corners of Android 11, which actually led to a lot of interesting talk about the future. You'll learn about a coming re-write of the Bluetooth stack, and there's lots of talk about modularity and easy updating (like plans will hopefully, someday, allow you to update the Linux kernel and developer APIs as easily as you download an app update).

Read more

Try GNOME 3.38 Orbis

Filed under
GNOME

Congratulations to GNOME developers! We can already try version 3.38 "Orbis" right here right now. Simply grab Fedora or openSUSE at the latest development version as you can find Orbis in them. I share with you my experience in trying out Orbis below. Along with this short review I also include the links, video, and a lot of screenshots like usual. Enjoy!

Read more

Making Arch GNU/Linux 2020 Works with GLIM Multiboot USB

Filed under
GNU
Linux

Continuing my business shipping computer installation media in Indonesia, recently I shipped Arch 2020 to South Sumatra the southern province in Sumatra Island along with other GNU/Linux operating systems. Apparently, nowadays Arch is a little bit different to earlier versions back in 2019 in which the ISO file contents changed by merely a character. Default GLIM configuration won't work anymore. Thus we need a change in the configurations so new Arch will work with GLIM once again. This tutorial brings you my custom change so Arch boots in multiboot way straight from the flash drive.

Read more

Programming and Hardware Hacking

Filed under
Development
  • Raspberry Pi inspired MaaxBoard Mini SBC features NXP i.MX 8M Mini SoC

    Last year, Embest – an Avnet company – introduced MaaXBoard NXP i.MX 8M SBC mostly compatible with Raspberry Pi form factor and running Android 9.0 or Yocto Linux.

  • Code a GUI live with Digital Making at Home
  • RenderDoc 1.10 Released For This Leading Cross-Platform Graphics Debugger

    RenderDoc 1.10 was released on Friday for this leading open-source program supporting frame-capture-based debugging on Vulkan, OpenGL / GLES, and Direct3D across Windows, Linux, and Android along with platforms like Stadia and the Nintendo Switch.

    RenderDoc 1.10 brings various optimizations and speed improvements, which is always nice to see. RenderDoc should now have lower idle overhead, greater performance when capturing a frame on Vulkan in certain instances, faster cold startup time, improved replay time when switching events for Vulkan captures, and other optimizations.

  • Sublime Text – Best text editor for Linux [Ed: Why promote dodgy proprietary software when better editors exist that are Free/libre?]

    In this guide, you will learn how to install Sublime Text editor on Linux distributions like Ubuntu, Mint, Fedora, Manjaro, etc.

    Sublime Text is a cross-platform, light-weight code editor. It natively supports many programming and markup languages. Its functions can be extended with plugins. It has many other features, some of them listed below.

  • GCC 11 Compiler Might Finally Enable DWARF 5 Debugging By Default

    For a number of years the GNU Compiler Collection has shipped experimental support for the DWARF 5 debugging data format while finally for next year's GCC 11 release it might be deemed stable and used by default.

    The DWARF 5 debug data format was published back in 2017 to succeed the now decade old DWARF Version 4. With DWARF 5 there is support for better data compression, various performance improvements, better debug handling around optimized code, and other enhancements over DWARF4. DWARF 5 itself was in development for a half-decade and is detailed at DWARFstd.org.

Python Programming

Filed under
Development
  • Tweet from Django application using Tweepy

    In this tutorial, we will learn how to post a tweet from Django application using Tweepy.

  • What are Dependencies in Programming

    This article is going to be a very informative read no matter what kind of programmer you are. In fact, even if you aren’t a programmer you will find this article useful. After all, dependencies is not just a programming concept. It’s a general term that has meaning even outside of Computer Science.

    [...]

    Dependency is a broad software engineering term used to refer when a piece of software relies on another one. Simply put, if Program A requires Program B to be able to run, Program A is dependent on Program B. This makes Program B a dependency of Program A.

    You may ask, why would Program A even need Program B, or any other program for that matter? This will be further elaborated in the “Why we use dependencies” section in this article, but a short version is that Program A requires a special service or feature which Program B has.

    It doesn’t really matter what it is, if your program needs to run correctly, it’s a dependency. Common examples of dependencies are programming libraries, Online services, programming scripts etc.

  • How to rename columns in Pandas Dataframe

    In this tutorial, we will cover various methods to rename columns in pandas dataframe in Python. Renaming or changing the names of columns is one of the most common data wrangling task. If you are not from programming background and worked only in Excel Spreadsheets in the past you might feel it not so easy doing this in Python as you can easily rename columns in MS Excel by just typing in the cell what you want to have. If you are from database background it is similar to ALIAS in SQL. In Python there is a popular data manipulation package called pandas which simplifies doing these kind of data operations.

    [...]

    First step is to install pandas package if it is not already installed. You can check if the package is installed on your machine by running !pip show pandas statement in Ipython console. If it is not installed, you can install it by using the command !pip install pandas.

  • Create the function which converts a given string into an md5 hash and return the value in the hexadecimal format

    When you sign up for an account somewhere, some websites do not actually store your password in their databases. Instead, they will transform your password into something else using a cryptographic hashing algorithm.

    After the password is transformed, it is then called a password hash. Whenever you try to login, the website will transform the password you tried using the same hashing algorithm and simply see if the password hashes are the same.

    Create the python function that converts a given string into an md5 hash. The return value should be encoded in hexadecimal.

  • How to rename columns in pandas dataframe

    In this tutorial, we will cover various methods to rename columns in pandas dataframe in Python. Renaming or changing the names of columns is one of the most common data wrangling task. If you are not from programming background and worked only in Excel Spreadsheets in the past you might feel it not so easy doing this in Python as you can easily rename columns in MS Excel by just typing in the cell what you want to have. If you are from database background it is similar to ALIAS in SQL. In Python there is a popular data manipulation package called pandas which simplifies doing these kind of data operations.

  • Unravelling unary arithmetic operators

    In this entire blog series on Python's syntactic sugar, this might end up being the most boring post. We will cover the unary arithmetic operators: -, +, and ~ (inversion if you don't happen to be familiar with that last operator). Due to the fact that there is only a single object being involved, it's probably the most straightforward syntax to explain in Python.

    [...]

    That is literally all of the documentation for unary arithmetic operators in Python's data model. Now is that an over-simplification, or is it actually as simple as it sounds?

Malicious Bots

Filed under
Site News

Choking on bots, cannot cope

TUX MACHINES may seem to have become rather slow if not unreachable at times. Over the past few months we've had issues with bots that request as many as 10,000 files per minute from the site's server, which is obviously unable to cope with the load/bandwidth and actually deliver what's requested. Sometimes it even resets Apache in order to regain order. At the moment we lack a permanent solution, but we have some mitigations in place.

More than 5 years ago we had to stop new account sign-ups due to spammers setting up loads of dummy accounts (hundreds per day), then directing these to vandalise the site. This inevitably led to tighter control from an editorial perspective and it reduced the number of comments.

Running a site is no picnic; it's a 24/7 responsibility. We do the best we can to maintain a reliable service whilst at the same time also pursuing the latest news stories of interest. This takes a huge amount of time and dedication.

If it is difficult to reach the site or if the site feels very slow, it's almost definitely due to those bots. The server's uptime is now 160 days.

Linux Jargon Buster: What is a Rolling Release Distribution?

Filed under
HowTos

What is rolling release? What is a rolling release distribution? How is it different from the point release distributions? All your questions answered in this jargon buster article.
Read more

Okular 20.08 — redesigned annotation tools

Filed under
KDE

Last year I wrote about some enhancements made to Okular’s annotation tool and in one of those, Simone Gaiarin commented that he was working on redesigning the Annotation toolbar altogether. I was quite interested and was also thinking of ‘modernizing’ the tool — only, I had no idea how much work it would be.

The existing annotation tool works, but it had some quirks and had many advanced options which were documented pretty well in the Handbook but not obvious to an unscrupulous user. For instance, if the user would like to highlight some part of the text, she selects (single-clicks) the highlighter tool, applies it to a block of text. When another part of text is to be highlighted, you’d expect the highlighter tool to apply directly; but it didn’t ‘stick’ — tool was unselected after highlighting the first block of text. There is an easy way to make the annotation tool ‘stick’ — instead of single-click to select the tool, simply double-click, and it persists. Another instance is the ‘Strikeout’ annotation which is not displayed by default, but can be added to the tools list.

Simone, with lots of inputs, testing and reviews from David Hurka, Nate Graham and Albert Astals Cid et al., has pulled off a magnificent rewrite of Okular’s annotation toolbar. To get an idea of the amount of work went into this, see this phabricator task and this invent code review. The result of many months of hardwork is a truly modern, easy to explore-and-use annotation support. I am not aware of any other libre PDF reader with such good annotation features.

Read more

Now and Then: The Fate of 7 Promising Free Linux Web Browsers

Filed under
Linux
Web

This is illustrated by the image to the left which depicts the web browser share for visits to LinuxLinks.com for the period covering June – September 2020.

But Chrome and Firefox are not for everyone. Chrome is proprietary software so it’s not very appealing to open source enthusiasts. There’s the open source Chromium, of course, but that’s not very popular. And Firefox has been steadily losing market share.

Read more

Linux Jargon Buster: What is a Rolling Release Distribution?

Filed under
Linux

After understanding what is Linux, what is a Linux distribution, when you start using Linux, you might come across the term ‘rolling release’ in Linux forum discussions.

In this Linux jargon buster, you’ll learn about rolling release model of Linux distributions.

In software development, rolling release is a model where updates to a software are continuously rolled out rather than in batches of versions. This way the software always remains up-to-date. A rolling release distribution follows the same model and it provides the latest Linux kernel and the software version as they are released.

Read more

What are the Best Linux Distros for 2020

Filed under
Linux

In this tutorial, we shall focus on the 10 + 1 best Linux distributions for the year 2020 for new and experienced users. As per distrowatch below are the top 10 Linux distributions based on website page hit ranking...

In this article, we have covered the best 11 Linux distribution for the year 2020. Please do not forget to tell us which ones you like or find any other better distro.

Read more

Lightweight Linux distribution 4MLinux 34.0 Released with WebP Support

Filed under
Linux

The super lightweight Linux distribution 4MLinux released the latest stable version 34.0 with new features and latest app updates.
Read more

TenFourFox FPR27 available

Filed under
Mac
Moz/FF
Web

TenFourFox Feature Parity Release 27 final is now available for testing (downloads, hashes, release notes). Unfortunately, I have thus far been unable to solve issue 621 regarding the crashes on LinkedIn, so to avoid drive-by crashes, scripts are now globally disabled on LinkedIn until I can (no loss since it doesn't work anyway). If you need them on for some reason, create a pref tenfourfox.troublesome-js.allow and set it to true. I will keep working on this for FPR28 to see if I can at least come up with a better wallpaper, though keep in mind that even if I repair the crash it may still not actually work anyway. There are otherwise no new changes since the beta except for outstanding security updates, and it will go live Monday evening Pacific assuming no new issues.

Read more

today's leftovers

Filed under
Misc

  • Doom Emacs For Noobs

    Doom Emacs is my preferred text editor, and I have made several videos about it. But some of those videos assumed that the viewer had some knowledge of Vim and/or Emacs. So I decided to make this Doom Emacs introductory video for the complete noob! This video covers how to install Doom Emacs, how to configure it, and some of the basic keybindings and commands.

  • The Endless Stream Of Linux Video Topics To Sift Through
  • Debian Janitor: Expanding Into Improving Multi-Arch

    The Debian Janitor is an automated system that commits fixes for (minor) issues in Debian packages that can be fixed by software. It gradually started proposing merges in early December. The first set of changes sent out ran lintian-brush on sid packages maintained in Git. This post is part of a series about the progress of the Janitor.

  • New Debian Maintainers (July and August 2020)

    The following contributors were added as Debian Maintainers in the last two months:

    Chirayu Desai
    Shayan Doust
    Arnaud Ferraris
    Fritz Reichwald
    Kartik Kulkarni
    François Mazen
    Patrick Franz
    Francisco Vilmar Cardoso Ruviaro
    Octavio Alvarez
    Nick Black
    Congratulations!

  • MYIR launches FZ5 EdgeBoard AI Box for AI on the Edge

    Back in July of this year (2020), MYRI technology announced the MYIR’s FZ3 deep learning accelerator card powered by the Xilinx Zynq UltraScale+ ZU3EG Arm FPGA MPSoC and it is capable of delivering up to 1.2TOPS computing power. With only a few months since that launch, MYRI technology is now announcing another two related sets of products – FZ5 EdgeBoard AI Box and the FZ5 Card.

  • SYNCPLIFY.ME AFT! V3.0 SUPPORTS LINUX ON ARM

    But, arguably, the most relevant new feature is AFT!’s native support for ARM processors, when in combination with a Linux operating system. With giants like Apple, moving away from the x86 architecture to fully embrace ARM on their entire product line, it was a strategic choice for Syncplify to be ahead of the curve, and release an ARM-native version of their software.

  • Where’s the Yelp for open-source tools?

    We’d like an easy way to judge open-source programs. It can be done. But easily? That’s another matter. When it comes to open source, you can’t rely on star power.

    The “wisdom of the crowd” has inspired all sorts of online services wherein people share their opinions and guide others in making choices. The Internet community has created many ways to do this, such as Amazon reviews, Glassdoor (where you can rate employers), and TripAdvisor and Yelp (for hotels, restaurants, and other service providers). You can rate or recommend commercial software, too, such as on mobile app stores or through sites like product hunt. But if you want advice to help you choose open-source applications, the results are disappointing.

    It isn’t for lack of trying. Plenty of people have created systems to collect, judge, and evaluate open-source projects, including information about a project’s popularity, reliability, and activity. But each of those review sites – and their methodologies – have flaws.

    Take that most archaic of programming metrics: Lines of code (LoC). Yes, it’s easy to measure. But it’s also profoundly misleading. As programming genius Edsger Dijkstra observed in 1988, LoC gives people “the reassuring illusion that programs are just devices like any others, the only difference admitted being that their manufacture might require a new type of craftsmen, viz. programmers. From there it is only a small step to measuring ‘programmer productivity’ in terms of ‘number of lines of code produced per month.’ This is a very costly measuring unit because it encourages the writing of insipid code.”

    We’ve gotten better since then, haven’t we? Perhaps not.

  • These Weeks in Firefox: Issue 79
  • Fun with Java Records

    Records, like lambdas and default methods on interfaces are tremendously useful language features because they enable many different patterns and uses beyond the obvious.

    Java 8 brought lambdas, with lots of compelling uses for streams. What I found exciting at the time was that for the first time lots of things that we’d previously have to have waited for as new language features could become library features. While waiting for lambdas we had a Java 7 release with try-with-resources. If we’d had lambdas we could have implemented something similar in a library without needing a language change.

  • How to code a basic WordPress plugin

    With over 7 million downloads for WordPress 5.3 alone, WordPress has become one of the most influential CMS of all time.

  • Laravel CSRF Protection

    The full form of CSRF is Cross-Site Request Forgery. It is one type of online attack in which the attacker sends requests as an authorized user to a system by gaining access information of a particular user of that system and performs different types of malicious activities by using the identity of that user. The impact of this attack depends on the victim’s privileges on the system. If the victim is a normal user then it will affect the personal data of the victim only. But if the victim is the administrator of the system then the attacker can damage the whole system. The users of any business website, social networking can be affected by this attack. This attack can be prevented easily by using Laravel CSRF protection to make the system more secure. Laravel generates CRSF token for each active user session automatically by which any request and approval are given to the authenticated user for the system. How Laravel CSRF Protection can be applied in the Laravel application is shown in this tutorial.

  • Popular VPN closes critical vulnerability on Linux client

    The VPN service Private Internet Access (PIA) has released a new version of its Linux client which fixes a critical vulnerability that could have allowed remote attackers to bypass the software's kill switch.

    The vulnerability, tracked as CVE-2020-15590, was discovered by Sick Codes and it affects versions 1.5 through 2.3 of PIA's Linux client.

    The client's kill switch is configured to block all inbound and outbound network traffic when a VPN connection drops. However, privileged applications still have the ability to send and receive network traffic even when the kill switch is turned on if net.ipv4.ip_forward has been enabled in the system kernel parameters.

    [...]

    “For the issue raised, we have no legacy customer support requests relating to this use case. We welcome input from community sources in addressing their usage and with this in mind, we took the decision to support this use case with our next Linux client release.”

    PIA users running Docker on Linux should upgrade to version 2.4 of the company's client as soon as possible to avoid any potential attacks leveraging this vulnerability.

  • 3 ways to protect yourself from imposter syndrome

    Poet and activist Maya Angelou published many books throughout her storied career, but each time, she feared people would figure out that she'd "run a game on everybody, and they're going to find me out." This seems an odd response from a well-honored writer. What she is describing is her own challenge with imposter syndrome.

    Think for a moment about your own accomplishments. Being hired into a new role. Having your first open source contribution merged into the project. Receiving an award or recognition. Being invited to participate in a project or event with people you respect and look up to. Did you question whether you belonged there? Did you fear people would "know that you didn't belong?" There is an extremely high likelihood that you have also experienced imposter syndrome. Please check the survey at the end of this article to see that you're not alone.

Syndicate content